?? A UCRÂNIA ESTÁ SENDO ATACADA PELO EXÉRCITO RUSSO. CIVIS ESTÃO SENDO MORTOS. ÁREAS RESIDENCIAIS ESTÃO SENDO BOMBARDADAS.
- Ajude a Ucrânia através de:
- Fundação de Caridade Serhiy Prytula
- Fundação de caridade Come Back Alive
- Banco Nacional da Ucrânia
- Mais informações sobre war.ukraine.ua e MFA da Ucrânia
Leia isto em outros idiomas: Español
Você pode estar interessado em:
- GPT caseiro • JS
- Experimentos interativos de aprendizado de máquina
Para a versão Octave/MatLab deste repositório, verifique o projeto machine-learning-octave.
Este repositório contém exemplos de algoritmos populares de aprendizado de máquina implementados em Python, com a matemática por trás deles sendo explicada. Cada algoritmo possui uma demonstração interativa do Jupyter Notebook que permite que você brinque com dados de treinamento, configurações de algoritmos e veja imediatamente os resultados, gráficos e previsões diretamente no seu navegador . Na maioria dos casos, as explicações são baseadas neste excelente curso de aprendizado de máquina de Andrew Ng.
O objetivo deste repositório não é implementar algoritmos de aprendizado de máquina usando one-liners de bibliotecas de terceiros , mas sim praticar a implementação desses algoritmos do zero e obter uma melhor compreensão da matemática por trás de cada algoritmo. É por isso que todas as implementações de algoritmos são chamadas de “caseiras” e não se destinam ao uso em produção.
Na aprendizagem supervisionada temos um conjunto de dados de treinamento como entrada e um conjunto de rótulos ou “respostas corretas” para cada conjunto de treinamento como saída. Em seguida, estamos treinando nosso modelo (parâmetros do algoritmo de aprendizado de máquina) para mapear corretamente a entrada e a saída (para fazer a previsão correta). O objetivo final é encontrar parâmetros de modelo que continuem com êxito o mapeamento correto de entrada → saída (previsões), mesmo para novos exemplos de entrada.
Em problemas de regressão, fazemos previsões de valores reais. Basicamente, tentamos desenhar uma linha/plano/plano n-dimensional ao longo dos exemplos de treinamento.
Exemplos de uso: previsão de preços de ações, análise de vendas, dependência de qualquer número, etc.
country happiness
pelo economy GDP
country happiness
por economy GDP
e freedom index
Em problemas de classificação, dividimos os exemplos de entrada por determinadas características.
Exemplos de uso: filtros de spam, detecção de idioma, localização de documentos semelhantes, reconhecimento de cartas manuscritas, etc.
class
da flor Iris com base em petal_length
e petal_width
validity
do microchip com base em param_1
e param_2
28x28
pixels28x28
pixels O aprendizado não supervisionado é um ramo do aprendizado de máquina que aprende com dados de teste que não foram rotulados, classificados ou categorizados. Em vez de responder ao feedback, a aprendizagem não supervisionada identifica pontos em comum nos dados e reage com base na presença ou ausência de tais pontos em comum em cada novo dado.
Em problemas de agrupamento dividimos os exemplos de treinamento por características desconhecidas. O próprio algoritmo decide qual característica usar para divisão.
Exemplos de uso: segmentação de mercado, análise de redes sociais, organização de clusters computacionais, análise de dados astronômicos, compressão de imagens, etc.
petal_length
e petal_width
A detecção de anomalias (também detecção de valores discrepantes) é a identificação de itens raros, eventos ou observações que levantam suspeitas por diferirem significativamente da maioria dos dados.
Exemplos de uso: detecção de intrusão, detecção de fraude, monitoramento da integridade do sistema, remoção de dados anômalos do conjunto de dados, etc.
latency
e threshold
A rede neural em si não é um algoritmo, mas sim uma estrutura para que muitos algoritmos de aprendizado de máquina diferentes trabalhem juntos e processem entradas de dados complexas.
Exemplos de uso: como substituto de todos os outros algoritmos em geral, reconhecimento de imagem, reconhecimento de voz, processamento de imagem (aplicando estilo específico), tradução de idiomas, etc.
28x28
pixels28x28
pixels A fonte do seguinte mapa de tópicos de aprendizado de máquina é esta maravilhosa postagem no blog
Certifique-se de ter o Python instalado em sua máquina.
Você pode querer usar a biblioteca Python padrão venv para criar ambientes virtuais e ter Python, pip
e todos os pacotes dependentes para serem instalados e servidos a partir do diretório local do projeto para evitar mexer com pacotes de todo o sistema e suas versões.
Instale todas as dependências necessárias para o projeto executando:
pip install -r requirements.txt
Todas as demonstrações do projeto podem ser executadas diretamente em seu navegador sem instalar o Jupyter localmente. Mas se quiser iniciar o Jupyter Notebook localmente, você pode fazer isso executando o seguinte comando na pasta raiz do projeto:
jupyter notebook
Após este Jupyter Notebook estará acessível por http://localhost:8888
.
Cada seção de algoritmo contém links de demonstração para Jupyter NBViewer. Este é um visualizador on-line rápido para notebooks Jupyter, onde você pode ver códigos de demonstração, gráficos e dados diretamente no seu navegador, sem instalar nada localmente. Caso queira alterar o código e experimentar o notebook de demonstração você precisa iniciar o notebook no Binder. Você pode fazer isso simplesmente clicando no link "Executar no Binder" no canto superior direito do NBViewer.
A lista de conjuntos de dados que estão sendo usados para demonstrações do Jupyter Notebook pode ser encontrada na pasta de dados.
Você pode apoiar este projeto via ❤️️ GitHub ou ❤️️ Patreon.