View
602
Download
7
Category
Preview:
Citation preview
Machine LearningAplicado
Dionisio Chiuratto AgourakisJ!Quantdionisio@jquant.com.br@josaumhttps://br.linkedin.com/in/dionisioca
Short bioSENAI: Torneiro Mecânico + Mecânico Multifuncional
FGV/EAESP: Graduação em Administração de Empresas
ETEC Rubens de Faria: Técnico em Mecânica
ITA : Mestrado em Eng. Da Computação
Fundador/CEO da J!QuantAPIs de IA/Otimização
Soluções – Enterprise SaaS
O que é Machine Learning?
6
Inteligência Artificial
Fraca ForteUm algoritmo que tenha
comportamentos semelhantes à mente
humana.
Um algoritmo que constitua, seja uma
mente como a humana.
Definição de Machine Learning
7
"A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E"
Mitchell, T. (1997). Machine Learning, McGraw Hill. p.2.
Definição de Machine Learning
9
Aprendizado = generalização do conhecimento
Dados conhecidos
Ex: Vendas dos últimos 3 anos
Definição de Machine Learning
10
Aprendizado = generalização do conhecimento
Dados conhecidosEx: Vendas dos últimos 3 anos
Modelo“treinamento”
Definição de Machine Learning
11
Aprendizado = generalização do conhecimento
Dados conhecidosEx: Vendas dos últimos 3 anos
Modelo“treinamento” “previsão”
Dados desconhecidosEx: Vendas do próximo ano
Classificação
12
Tarefa Tipo
Classificação Supervisionado / Semi-Supervisionado
Regressão Supervisionado
Clusterização Não-Supervisionado
Estimativa de Densidade Não-Supervisionado
Redução de Dimensionalidade Não-Supervisionado
+ Aprendizagem por Reforço *
16
Natureza dos algoritmos
𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔
Como resolver?
Solução Analítica
𝑥𝑥 =−𝑏𝑏 ± 𝑏𝑏2 − 4𝑎𝑎𝑎𝑎
2𝑎𝑎
𝑥𝑥 =−(−5) ± (−5)2−4.1.6
2.1
𝑥𝑥𝑥 = 3𝑥𝑥𝑥𝑥 = 2
17
Natureza dos algoritmos
𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔
Como resolver?
Método Newton-Raphson
Começar de um “chute inicial”e melhorar aos poucos.
18
Natureza dos algoritmos
𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔
Como resolver?
Método Newton-Raphson
Começar de um “chute inicial”e melhorar aos poucos.
iterativamente
19
𝒇𝒇 𝒙𝒙 = 𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔
Como resolver?
Método Newton-Raphson
𝑥𝑥𝑛𝑛+1 = 𝑥𝑥𝑛𝑛 −𝑓𝑓(𝑥𝑥𝑛𝑛)𝑓𝑓𝑥(𝑥𝑥𝑛𝑛)
𝒇𝒇′ 𝒙𝒙 = 𝟐𝟐.𝒙𝒙 − 𝟓𝟓
20
Como resolver?
Método Newton-Raphson
𝑥𝑥1 = 𝑥𝑥0 −𝑓𝑓(𝑥𝑥0)𝑓𝑓𝑥(𝑥𝑥0)
𝒇𝒇 𝒙𝒙 = 𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔 𝒇𝒇′ 𝒙𝒙 = 𝟐𝟐.𝒙𝒙 − 𝟓𝟓
𝑥𝑥1 = 1,2 −𝑓𝑓(1,2)𝑓𝑓𝑥(1,2)
𝑥𝑥1 = 1.75
21
Como resolver?
Método Newton-Raphson
𝒇𝒇 𝒙𝒙 = 𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔 𝒇𝒇′ 𝒙𝒙 = 𝟐𝟐.𝒙𝒙 − 𝟓𝟓
𝑥𝑥2 = 𝑥𝑥1 −𝑓𝑓(𝑥𝑥1)𝑓𝑓𝑥(𝑥𝑥1)
𝑥𝑥2 = 1,75 −𝑓𝑓(1,75)𝑓𝑓𝑥(1,75)
𝑥𝑥2 = 1,96
22
Como resolver?
Método Newton-Raphson
𝒇𝒇 𝒙𝒙 = 𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔 𝒇𝒇′ 𝒙𝒙 = 𝟐𝟐.𝒙𝒙 − 𝟓𝟓
𝑥𝑥3 = 𝑥𝑥2 −𝑓𝑓(𝑥𝑥2)𝑓𝑓𝑥(𝑥𝑥2)
𝑥𝑥3 = 1,96 −𝑓𝑓(1,96)𝑓𝑓𝑥(1,96)
𝑥𝑥3 = 2,00
23
Como resolver?
Método Newton-Raphson
𝒇𝒇 𝒙𝒙 = 𝒙𝒙𝟐𝟐 − 𝟓𝟓𝒙𝒙 + 𝟔𝟔 𝒇𝒇′ 𝒙𝒙 = 𝟐𝟐.𝒙𝒙 − 𝟓𝟓
𝑥𝑥3 = 𝑥𝑥2 −𝑓𝑓(𝑥𝑥2)𝑓𝑓𝑥(𝑥𝑥2)
𝑥𝑥3 = 3,07 −𝑓𝑓(3,07)𝑓𝑓𝑥(3,07)
𝑥𝑥3 = 3,00
26
Quanto mais você “usa”, melhor fica?“…its performance at tasks in T, as measured by P, improves with experience E."
27
Machine Learning
Tarefa Tipo
Classificação Supervisionado / Semi-Supervisionado
Regressão Supervisionado
Clusterização Não-Supervisionado
+ Aprendizagem por Reforço *
28
RegressãoX Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
29
RegressãoX Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Dados conhecidos!Você está mostrando, para cada X, qual é o Y correto.
30
RegressãoX Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Dados conhecidos!Você está mostrando, para cada X, qual é o Y correto.
Aprendizagem ~SUPERVISIONADA~
31
RegressãoX Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Método de Previsão
32
Regressão (linear)X Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Y = aX + b
33
Regressão (linear)X Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Y = aX + b
Precisamos achar a e b !
34
Regressão (linear)X Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Y = aX + b
Precisamos achar a e b !
Com qual propósito?
35
Regressão (linear)X Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Y = aX + b
Precisamos achar a e b !
Com qual propósito objetivo?
36
Regressão (linear)Se a = 1 e b = 0
Y’ = 1.X + 0
X Y Y' ERRO (Y-Y')^20 2,898319 0 8,4002519021 5,839758 1 23,423253242 7,850841 2 34,232343453 6,523894 3 12,417826954 10,33009 4 40,070037385 13,21322 5 67,457046946 15,56836 6 91,553561287 14,09511 7 50,340517148 16,04708 8 64,755448629 21,49065 9 156,016457910 ? ?11 ? ?12 ? ?13 ? ?
Erro Total: 548,6667448
37
Regressão (linear)Se a = 1 e b = 0
Y’ = 1.X + 0
X Y Y' ERRO (Y-Y')^20 2,898319 0 8,4002519021 5,839758 1 23,423253242 7,850841 2 34,232343453 6,523894 3 12,417826954 10,33009 4 40,070037385 13,21322 5 67,457046946 15,56836 6 91,553561287 14,09511 7 50,340517148 16,04708 8 64,755448629 21,49065 9 156,016457910 ? ?11 ? ?12 ? ?13 ? ?
Erro Total: 548,6667448
MINIMIZAR
38
Método
Equações Normais,Gradiente,
outros
Conjunto de treinamento (gabarito)
X Y Y' 0 2,898319 01 5,839758 12 7,850841 23 6,523894 34 10,33009 45 13,21322 56 15,56836 67 14,09511 78 16,04708 89 21,49065 910 ? ?11 ? ?12 ? ?13 ? ?
Parâmetros a,b
ERRO (Y-Y')^28,40025190223,4232532434,2323434512,4178269540,0700373867,4570469491,5535612850,3405171464,75544862156,0164579
Avaliação - Objetivo
40
RegressãoX Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Método de Previsão
X Y Y' ERRO (Y-Y')^20 2,898319 3,2 0,0910115431 5,839758 5,02 0,6720024582 7,850841 6,84 1,0218000523 6,523894 8,66 4,5629500394 10,33009 10,48 0,0224730565 13,21322 12,3 0,8339779036 15,56836 14,12 2,0977539847 14,09511 15,94 3,4036369958 16,04708 17,76 2,9341051249 21,49065 19,58 3,65060184510 ? ?11 ? ?12 ? ?13 ? ?
Erro Total: 19,290313
41
RegressãoX Y0 2,8983191 5,8397582 7,8508413 6,5238944 10,330095 13,213226 15,568367 14,095118 16,047089 21,4906510 ?11 ?12 ?13 ?
Método de Aprendizado
Método de Previsão
Y = 1,82x + 3,20
X Y Y'10 ? 21,411 ? 23,2212 ? 25,0413 ? 26,86
43
Machine Learning
Tarefa Tipo
Classificação Supervisionado / Semi-Supervisionado
Regressão Supervisionado
Clusterização Não-Supervisionado
+ Aprendizagem por Reforço *
44
Classificação
• Mesma idéia da regressão• Output não é um número real• Avalia o acerto da classificação em categorias• Regressão Regressão Logística
Input Método
Categoria A
Categoria B
Categoria C
1
2
3
45
ClassificaçãoX Y Y' ERRO (Y-Y')^20 1 0 11 2 2 02 1 1 03 2 2 04 2 1 15 2 2 06 1 1 07 2 1 18 3 3 09 3 3 010 ?11 ?12 ?13 ?
Erro Total: 3
48
Regressão com Redes Neurais Artificiais
x
x
x
x
x
x
x
x
x
x
x
y
w
Achar os w’s para minimizar o erro
w
w
w
50
Regressão com Redes Neurais Artificiais
Reconhecimento de imagens?
Se a imagem possuir 28x28 pixels...
784 inputs para a rede neural
54
Machine Learning
Tarefa Tipo
Classificação Supervisionado / Semi-Supervisionado
Regressão Supervisionado
Clusterização Não-Supervisionado
+ Aprendizagem por Reforço *
55
Clusterização
• Objetivo: Agrupar dados semelhantes (formar clusters)
•• Não é dado um “gabarito” ao algoritmo (ele seria a resposta, não?)• Necessária uma regra de “similaridade”
• Ex: Distância Euclideana
Aprendizagem ~NÃO-SUPERVISIONADA~
56
Clusterização
X Y3,63 5,254,70 5,485,07 5,665,70 7,436,02 7,466,26 5,057,24 5,99
12,58 20,4713,60 20,0513,02 18,6212,89 20,2712,80 17,8313,97 20,1912,42 20,36
57
Clusterização
N = 1
X Y3,63 5,254,70 5,485,07 5,665,70 7,436,02 7,466,26 5,057,24 5,99
12,58 20,4713,60 20,0513,02 18,6212,89 20,2712,80 17,8313,97 20,1912,42 20,36
58
Clusterização
N = 2
X Y3,63 5,254,70 5,485,07 5,665,70 7,436,02 7,466,26 5,057,24 5,99
12,58 20,4713,60 20,0513,02 18,6212,89 20,2712,80 17,8313,97 20,1912,42 20,36
59
Clusterização
X Y3,63 5,254,70 5,485,07 5,665,70 7,436,02 7,466,26 5,057,24 5,99
12,58 20,4713,60 20,0513,02 18,6212,89 20,2712,80 17,8313,97 20,1912,42 20,36
Cluster A
Centroide (médias em X e Y)
X = 7,16Y = 8,75
Cluster B
Centroide (médias em X e Y)
X = 8,75Y = 20,27
60
Clusterização Cluster A
Distância média de cada pontoaté o centroide do cluster
45,22/9 = 5,02
Cluster B
X Y Dist3,63 5,25 4,974,70 5,48 4,095,07 5,66 3,735,70 7,43 1,976,02 7,46 1,726,26 5,05 3,817,24 5,99 2,76
12,58 20,4713,60 20,0513,02 18,62 11,4712,89 20,2712,80 17,83 10,6913,97 20,1912,42 20,36
61
Clusterização Cluster A Cluster B
X Y Dist3,63 5,254,70 5,485,07 5,665,70 7,436,02 7,466,26 5,057,24 5,99
12,58 20,47 0,5513,60 20,05 0,5513,02 18,6212,89 20,27 0,2112,80 17,8313,97 20,19 0,8812,42 20,36 0,68
2,86/5 = 0,5745,22/9 = 5,02
Distância média de cada pontoaté o centroide do cluster
Distância média de cada pontoaté o centroide do cluster
62
Clusterização Cluster A Cluster B
Devemos alterar os membros de cada clusteraté alcançar a distância mínima entre os pontosde cada cluster e seu centroide!
45,22/9 = 5,02
Distância média de cada pontoaté o centroide do cluster
Distância média de cada pontoaté o centroide do cluster
2,86/5 = 0,57
63
Clusterização Cluster A Cluster B
Centróide (médias em X e Y)
X = 5,52Y = 6,05
Centróide (médias em X e Y)
X = 13,04Y = 19,68
X Y Dist3,63 5,25 2,054,70 5,48 1,005,07 5,66 0,595,70 7,43 1,396,02 7,46 1,516,26 5,05 1,247,24 5,99 1,73
12,58 20,47 0,9113,60 20,05 0,6713,02 18,62 1,0712,89 20,27 0,6012,80 17,83 1,8713,97 20,19 1,0612,42 20,36 0,91
64
Clusterização Cluster A Cluster B
9,50/7 = 1,36
Distância média de cada pontoaté o centroide do cluster
Distância média de cada pontoaté o centroide do cluster
7,10/7 = 1,01
X Y Dist3,63 5,25 2,054,70 5,48 1,005,07 5,66 0,595,70 7,43 1,396,02 7,46 1,516,26 5,05 1,247,24 5,99 1,73
12,58 20,47 0,9113,60 20,05 0,6713,02 18,62 1,0712,89 20,27 0,6012,80 17,83 1,8713,97 20,19 1,0612,42 20,36 0,91
66
Tarefa Tipo
Classificação Supervisionado / Semi-Supervisionado
Regressão Supervisionado
Clusterização Não-Supervisionado
+ Aprendizagem por Reforço *
Machine Learning
67
http://www.cs.ubc.ca/~murphyk/Bayes/pomdp.html
Aprendizagem por Reforço (Reinforcement Learning / Neuro-dynamic programming)
68
Aprendizagem por Reforço (Reinforcement Learning / Neuro-dynamic programming)
Você não consegue dizer ao seu cachorro o que fazer, mas ainda sim consegue ensiná-lo ao dar bonificações/penalizações de acordo com suas
ações.
69
Aprendizagem por Reforço (Reinforcement Learning / Neuro-dynamic programming)
• Tomada de decisão sequencial• Maximização da soma das recompensas descontadas
Agente
Ambiente
RecompensaEstadoAção
Obrigado!Dionisio Chiuratto AgourakisJ!Quantdionisio@jquant.com.br@josaumhttps://br.linkedin.com/in/dionisioca
Recommended