Post on 11-Feb-2017
Quem sou?
● Rubens Pinheiro
● Bacharel em Ciências da Computação (UECE)
● Desenvolvedor Front End
● Entusiasta Python
● Sempre aprendendo!
Sobre a apresentação
● Introdução
● Ideia e definição básica sobre machine learning
● Exemplo prático
● Regressão
● Classificação
● Ferramentas
● Dúvidas
O que é?
“Aprendizagem de máquina é um método de análise de dados que automatiza a construção de modelos analíticos.
Usando algoritmos que iterativamente aprendem a partir de dados, o aprendizado de máquina permite que os
computadores encontrem 'insights' ocultos sem ser explicitamente programados para onde olhar.” - SAS
Francis Galton
Vox Populi - 1907
543,4 Kg
552kG
510kG
490kG
Média de 787 tickets547,4 Kg
Menos de 1% de erro!
Paper disponível em: http://galton.org/essays/1900-1911/galton-1907-vox-populi.pdf
Quanto mais experiência, mais próximo do acerto
543,4 Kg552kG510kG
490kG
Dados baseado em experiência!
Treinando o modelo
Dados de aprendizado
400 Kg
Todas vaquinhas tem o valor de nosso “prediction target”, que é o peso.
Importante:
Durante o treino são utilizados como referências, features dos “dados” (as vacas), como a raça da vaca, sua idade, se está prenha, além de outros aspectos que podem ser externos, como a época do ano ou o bioma local. Pode ser usado tudo que influencie no nosso target, o peso.
Validação do modelo
ModeloDados
de teste
? Kg
Predição501Kg
Escondemos o peso e fazemos que oModelo tente prever o valor...
Modelo Dados de teste
501Kg
Predição501Kg
Acerto *
Continua o processo
Validação do modelo (acerto)
* Dentro de uma margem de erro definida
Modelo Dados de teste
510Kg
Predição501Kg
Erro
Corrige o modelo e continua o processo
Validação do modelo (erro)
“Aprenda com seus erros!”
Modelo Dados de teste
510Kg
Predição501Kg
Erro
Corrige o modelo e continua o processo
Validação do modelo (erro)
“Aprenda com seus erros!”
Formalizando: Regressão
Dados
yi` (Valor previsto)
yi (Valor real)
Função gerada f(x)Resíduo/Erro
Feature
Target
E daí?
● O que queremos?
– Minimizar o erro → Min(RSS)● Como fazermos?
– Derivando o RSS
Tendo que a derivada da soma residual dos quadrados ...
… dará a função de previsão f(x)` = ax + b
Classificação
Identificar elementos (rótular) baseado em features
!Wow!
Such precision!
So fast!
Very Pythonic!
Wow!
Treinando o modelo
bom +1
incrível+5
4 estrelas(Texto marcado como bom)(se, fora, amanhã, depois, ...)
Treinando o modelo
(se, fora, amanhã, depois, ...)
páia -3
ruim -2
1 estrelas(Texto marcado como ruim)
Testando o modelo
páia -3
bom +1
incrível+5
Esse carro é bom.É incrível como o consumo dele é baixo! Só a direção que achei páia.
Pontuação total: +1 +5 -3 = +3 (Positivo)
? estrelas
Testando o modelo
páia -3
bom +1
incrível+5
Esse carro é bom.É incrível como o consumo dele é baixo! Só a direção que achei páia.
Pontuação total: +1 +5 -3 = +3 (Positivo)
4 estrelas
ACERTO
Testando o modelo (erro)
ruim -2
Eu com esse carro? Pense em uma vida ruim...
Pontuação total: -2 (Negativo)
5 estrelas
ERRO
Corrige o modelo(Recalculo da pontuação das palavras)
Testando o modelo (erro)
páia -2
Eu com esse carro? Pense em uma vida ruim...
Pontuação total: -2 (Negativo)
5 estrelas
ERRO