Bem-vindo(a) à documentação do Stacking!

Mestrado em Ciência da Computação - Universidade Estadual de Maringá (UEM)

Implementação do trabalho do Mestrado em Ciência da Computação. O trabalho consistem em realizar a extração das features de áudios utilizando a ferramenta MARSYAS. Depois dessa extração será utilizado a técnica conhecida como Stacking combinada com Redes Neurais Convolucionais para recomendação de tags musicais.

build status Codacy https://codecov.io/gh/JDonini/Stacking/branch/master/graph/badge.svg Documentation Status License

Sobre o Projeto

Implementação do trabalho do Mestrado em Ciência da Computação. O trabalho consistem em realizar a extração das features de áudios utilizando a ferramenta MARSYAS. Depois dessa extração será utilizado a técnica conhecida como Stacking combinada com Redes Neurais Convolucionais para recomendação de tags musicais.

Visão Geral de Stacking

Visão Geral de Espectrograma

Visão Geral de Audio-Features

Visão Geral de Auto-Tagging

Visão Geral de Redes Neurais Convolucionais (CNN)

Visão Geral do Pytorch

Instalação do Pytorch

Visão Geral do Marsyas

Instalação do Marsyas

K-Fold Cross-validation

Constumava-se utilizar a divisão dos dados em dois conjuntos train e test, porém com o passar dos tempo, essa maneira de divisão acabou não sendo a forma mais eficiente de fazer a divisão e obter resultados eficientes.

Assim sendo, vamos utilizar na implementação do nosso trabalho o K-Fold Cross-validation, esta técnica consiste em dividir meu conjunto de dados da seguinte maneira, se o valor do K for igual a 3, uma Fold será utilizada para treino e as outras duas serão utilizada para teste, se o valor do K for igual a 5, uma Fold será utilizada para teste e as outras quatro serão utilizadas para treino, a mesma ideia acontece caso o valor de K seja 10, uma Fold será utilizada para teste enquanto as outras nove serão utilizadas para treino. Além disso, este técnica ajuda a previnir os dados de sofrerem overfitting ou underfitting.

Para fazermos a implementação do K-Fold utilizaremos uma biblioteca do python chamada scikit-learn e o módulo KFold.

Métricas de Validações

Matriz de Confusão

Visão Geral de HDF5

Esse tipo de arquivo trabalha com grandes e complexos dados, no formato de hierarquia.

Instalação

Numpy:

pip install numpy

HDF5:

sudo apt-get install libhdf5-serial-dev

Pandas:

pip install pandas

Exemplos

Abrir arquivos:

with h5py.File('path', 'r') as hdf:

Visão Geral de Travis-CI

Travis CI é uma plataforma/serviço de Integração Contínua, que é free para todos os projetos open source hospedados no GitHub. Com apenas um arquivo chamado .travis.yml contendo algumas informações sobre o projeto, podemos produzir builds automatizados com todas as mudanças, para o branch master ou outro, e até mesmo através de pull request.

Visão Geral de Codacy

É uma ferramenta responsável pela revisão de código automátioca. Ferramenta no qual analisa o código, o que está errado, informa onde é possivel melhorar, envia e-mail quando algum erro é detectado, monta um dashbord com informações relevanetes.

Até o presente momento uma ferramente muito útil.

Visão Geral de Codecov

Trata-se de uma ferramenta para cobrir o código, ou seja, ferramenta para verificar se o código escrito apresenta falhas, como por exemplo, bug. Verifica o que está coberto no código.

O Codecov possui ótimas referências quando abordado para verificar códigos em Python. Além disso, apresenta outras 3 vantagens: Fácil integração com ferramentas de código de integração, como o Travis-CI. Ótimas estatísticas e visualizações. Mensagens e-mail informando o que mudou na cobertura de código.

Configurando o Codecov

  • Realizar o cadastro gratuito com sua conta do GitHub em https://codecov.io/.
  • Selecionar o repositório no qual se deseja fazer o monitoramento de cobertura de código.
  • Adicionar as seguintes linhas na configuração do Travis-CI

Installation

codecov:

pip install codecov

Depois chamar o “codecov” no Travis-CI:

codecov

Antes de instalar:

pip install --user codecov

Depois de instalar:

codecov --file coverage/lcov.info --disable search

Referências:

https://github.com/codecov/example-python

Visão Geral de Read The Docs

Visão Geral do Sphinx

Referências

Índices e tabelas