View
589
Download
4
Category
Preview:
DESCRIPTION
Citation preview
Uma introdução a Machine Learning
Guilherme Silveirahttp://www.caelum.com.br
Uma introdução a Machine Learning
Guilherme Silveirahttp://www.alura.com.br
a idéia
problemasperguntas
soluçõesrespostas
quem sou eu
casa ==> caelum
decidi ir de carro
<== piada
pego o carro...
assisto o trânsitode camarote
decidi ir de metrô
quem conhecesão paulo?
quem conhece o metrôem são
paulo?
Problema?
vista interna
além do trânsito
minha vida pessoal
mudança
o preço dos imóveis
está caro?
Tamanho Preço100 750000200 860000150 977000140 81900160 984000180 1127000130 63800080 64700040 346000
p: qual um preço justo para esse
imóvel?
está caro?
regressão linear f(x) = ax + b
planilha
preço = 5053x + 57758preço = 5053x + 57758
regressão linear f(x) = ax + b
polinômiosf(x) = a + bx + cx^2 + ... + dx^n
preço = a + ... + dx^npreço = a + ... + dx^n
p: como estimar o valor de algo?
possível resposta: regressão
p: quanto tempo os alunos precisarão para essa
prova?
p: qual a nota que o aluno vai tirar na prova final?p: qual será a nota do
hipólito na próxima olimpíada?
simplicidade++bizarro--
função Brad Pitt(a função perfeita?)
e o número de dormitórios?
Tamanho Preço100 750000200 860000150 977000140 81900160 984000180 1127000130 63800080 64700040 346000
e o número de dormitórios?
Tamanho Dormitório Preço100 2 750000200 3 860000150 4 977000140 3 81900160 3 984000180 4 1127000130 3 63800080 3 64700040 1 346000
bibliotecas
http://math.nist.gov/javanumerics/jama/http://mahout.apache.org/
http://commons.apache.org/math/
google: language + regression
chego no trabalho
abro os emails
p: classificaçãoÉ spamzis!É spamzis!
Não é!Não é!
11
00
treino!
valido!
p: ele é 1?
acredito que sim, acredito que sim, com chance de com chance de
78%78%
classificação humana
lista com 1000 itens
treino da máquina
valida a qualidade
99% de acerto99% de acerto
lista com 200 itens
p: ele é 1?
chance de x%chance de x%
r: regressão logística
p: o email é spam?
p: qual a chance do aluno acertar esse exercício?
p: o aluno está com dificuldade?p: o aluno domina o conteúdo?
p: qual a chance de essa imagem ser o número 3?
ou 8?p: qual a chance de essa imagem ser um cancêr?
nota: simplificações desses problemas
e o cartão de credito?
você gastou 50dia 30loja 15
você gastou 30dia 30loja 17
você gastou 25dia 30loja 21
você gastou 25dia 30loja 21
você gastou 2500dia 30loja 7
dia valor loja
30 30 15
30 35 17
30 100 8
1 37 9
30 2500 7
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
treina
37% de acerto37% de acerto
valida
eu continuo eu continuo roubandoroubando
regressão logística é, em geral, linear
ou lerdíssimaregularização
polinômiosoutras
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
87% de acerto87% de acerto
treina
treina
treina
treina
treina
treina
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
o seu telefone o seu telefone tocatoca
p: o email é spam?
p: essa movimentação é uma fraude?
p: qualquer pergunta sim/não como antes?http://neuroph.sourceforge.net/
dia valor loja
30 30 MAX PAD
30 35 MUNI TR
30 149 CAELUM
1 499FACULDAD
E
30 5 BUTECO
o que é isso?o que é isso?
o que é isso?o que é isso?
alimentaçãoalimentação
profissionalprofissional
profissionalprofissional
p: a movimentação 15 é?
p: a movimentação 15 é entretenimento ou não? (0
ou 1)
p: a movimentação 15 é alimentação ou não? (0 ou 1)
p: a movimentação 15 éprofissional ou não? (0 ou 1)
dia valor loja categoria
30 30 MAX PADalimentaçã
o
30 35 MUNI TR transporte
30 149 CAELUMprofissiona
l
1 499FACULDAD
Eprofissiona
l
30 5 BUTECOalimentaçã
o
onde estão osonde estão os0 e 1?0 e 1?
dia valor loja categoria
30 30 MAX PAD 0
30 35 MUNI TR 1
30 149 CAELUM 2
1 499FACULDAD
E2
30 5 BUTECO 0
é 0, 1 ou 2?é 0, 1 ou 2?
dia valor loja categoria
30 30 MAX PAD é
30 35 MUNI TR resto
30 149 CAELUM resto
1 499FACULDAD
Eé
30 5 BUTECO resto
é 0 ou o resto?é 0 ou o resto?77%77%
dia valor loja categoria
30 30 MAX PAD resto
30 35 MUNI TR é
30 149 CAELUM resto
1 499FACULDAD
Eresto
30 5 BUTECO é
é 1 ou o resto?é 1 ou o resto?53%53%
dia valor loja categoria
30 30 MAX PAD resto
30 35 MUNI TR resto
30 149 CAELUM é
1 499FACULDAD
Eé
30 5 BUTECO resto
é 2 ou o resto?é 2 ou o resto?64%64%
dia valor loja label
30 30 15 0
30 35 17 0
30 100 8 0
1 37 9 1
30 2500 7 0
dia valor loja label
30 30 15 0
30 35 17 1
30 100 8 1
1 37 9 0
30 2500 7 0
dia valor loja label
30 30 15 1
30 35 17 0
30 100 8 0
1 37 9 0
30 2500 7 1
77%77%
entretenimento
alimentação
profissional
treina
você ficou esperando ooutro robô aparecer né?
53%53%
64%64%
entretenimententretenimentoo
One vs All
p: dentre as categorias A,B,C a qual categoria ele
pertence?
p: o aluno está motivado, desanimado, desiludido,
decepcionado, contente ou malandrão?
o aluno não terminou :(
será que eu poderia ter
ajudado ele?
qto tempo em cada exercício?
alunos = []alunos << [12, 150, 3, 15]alunos << [4, 170, 32, 25]alunos << [1, 10, 3, 25]alunos << [12, 20, 31, 15]
se ele termina o curso em 3 meses
ou não
labels = [1, 1, 0, 0]
alunos = []alunos << [12, 150, 3, 15]alunos << [4, 170, 32, 25]alunos << [1, 10, 3, 25]alunos << [12, 20, 31, 15]
treina
e o guilherme?
guilherme = [6, 140, 25, 10]
model.predict(Node.features(guilherme))
adivinhe!
SVM
dados fake
labels = [1, 1, 0, 0]
alunos = []alunos << [12, 150, 3, 15]alunos << [4, 170, 32, 25]alunos << [1, 10, 3, 25]alunos << [12, 20, 31, 15]
dados reais
dados reais
C utilizado ACERTOS NO TREINO PREVISOES COM ACERTO0.08 93.18% 85.71%
C utilizado ACERTOS NO TREINO PREVISOES 0.001 70.45454545454545 61.9047619047619050.04 88.63636363636364 71.428571428571430.08 93.18181818181819 85.714285714285710.2 100.0 100.0
SVM para classificar (0,1, ...)
p: dentre as categorias A,B,C a qual categoria ele
pertence?
p: o aluno vai desistir do curso?
p: essa pessoa tem perfil de terrorista?
grupos de alunos
dificuldade != facilidade
user id 15 ?? user id 17user id 15 ?==? user id 17
333784321236738126783 ?==? 1238793923832178612397
características em comum
número de respostas erradastempo gasto
número de exercícios feitosfeedbacks dados
notas de feedback recebidos
likescursos
quantidade de caracteres
altura???
joga no plano
olha eles aqui!
chuta um ponto
X
X
genial
X
X
melhora
X
XX
X
e melhora...e melhora...e melhora...e melhora...e melhora...e melhora...e melhora...
esses são os grupos
grupos esperados:
muitas perguntas,
muitos erros
poucos erros,poucas perguntas
poucos erros,poucas perguntas,
ajuda bastante
X XX
grupos encontrados:
muitas perguntas,
poucos erros
muitos erros,poucas perguntas
muitos erros,poucas perguntas,
ajuda bastante
entre outros
p: como meus _____ se agrupam?
p: como os alunos se comportam?
p: como os instrutores se comportam?
p: como os exercícios se comportam?
p: como meus clientes se agrupam?
p: como meus produtos se agrupam?
p: como minhas features se agrupam?
p: como os clientes usam o sistema?
resumindo
machine learningregressão linearclassificadoresredes neurais
logistick-cluster
artefatos mais comitados x complexidade deles
metricminer.org.br
se usar o computador
não dirija
se beber não dirija
se ler, não dirija
se falar, não dirija
eu quero beber e ler
eu não quero dirigir
“carros” automáticos
detectando...margem de margem de
erroerro
o que você quer sabersobre um cliente?
o que o cliente quer sabersobre ele mesmo?
como os clientes se agrupam?
como seus itens se agrupam?
quando o cliente fará algo?
nós respondemos 2levante as suas
obrigado 1
guilherme.silveira@caelum.com.br
@guilhermecaelum
http://www.alura.com.br
Recommended