Aprendizado de Máquina
George Darmiton da Cunha Cavalcanti gdcc@cin.ufpe.brAgenda
❖
Aprendizado de máquina: definição
❖Aplicações
❖
Regressão versus Classificação
❖
Componentes do aprendizado de máquina
❖Tipos de aprendizado
What is Machine Learning
❖
Arthur Samuel (1959)
❖
"Machine learning: field of study that gives computers the
ability to learn without being explicitly programmed”
❖
Tom Mitchell (1997)
❖
"Study of algorithms that improve their performance P at
some task T with experience E”
Aplicações - iPhoto
Faces: Detecção e Reconhecimento
Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Valoração de imóveis: um exemplo
Pr eç o (R$) 0 400 800 1200 1600 Área (m2) 0 150 300 450 600Tumor: maligno
versus não-maligno
Clas se: 1 (s im ) | 0 (não ) 0.0 1.0 Tumor size 0 2 4 6 8 10 12Tumor: maligno
versus não-maligno
Clas se: 1 (s im ) | 0 (não ) 0.0 1.0 Tumor size 0 2 4 6 8 10 12Regressão
Versus
Aprendizado de Máquina é usando quando…
➡
Existência de padrão
➡
Não existe uma função que resolve o problema
Componentes do Aprendizado
❖
Problema:
Análise de Crédito
❖Dados:
idade 25 anos
sexo masculino
salário R$5.000
anos na residência 1 ano débito atual R$20.000
Componentes do Aprendizado
❖
Problema:
Análise de Crédito
❖Dados:
idade 25 anos
sexo masculino
salário R$5.000
anos na residência 1 ano débito atual R$20.000
… …
Componentes do Aprendizado
➡
Formalização
:
•
Entrada: x
(dados do cliente)
•Saída: y
(bom ou mal cliente?)
•Função objetivo:
(função ideal)
•Dados: (x
1,y
1),(x
2,y
2),…,(x
d,y
d)
(registros históricos)
Componentes do Aprendizado
FUNÇÃO OBJETIVO DESCONHECIDAEXEMPLOS DE TREINAMENTO
(x1,y1),(x2,y2),…,(xd,yd)
ALGORITMO DE APRENDIZADO
Um exemplo: o
Perceptron
❖
Entrada x = (x
1, x
2, …, x
d)
(atributos de um cliente)
Aprovar crédito se
Um exemplo: o
Perceptron
❖
Entrada x = (x
1, x
2, …, x
d)
(atributos de um cliente)
Aprovar crédito se
Negar crédito se
Um exemplo: o
Perceptron
❖
Entrada x = (x
1, x
2, …, x
d)
(atributos de um cliente)
Aprovar crédito se
Negar crédito se
Introduzir uma coordenada artificial x0=1
Introduzir uma coordenada artificial x0=1
Na forma vetorial, o Perceptron implementa
+ + + + _ _ _ _ + + + + + _ _ _ _ + h(x) = !! d " i=1 wi xi # + w0 # x0 = 1 h(x) = ! d " i=0 wi xi # h(x) = (w x) ⃝ AML
Introduzir uma coordenada artificial x0=1
Na forma vetorial, o Perceptron implementa
+ + + + _ _ _ _ + + + + + _ _ _ _ + h(x) = !! d " i=1 wi xi # + w0 # x0 = 1 h(x) = ! d " i=0 wi xi # h(x) = (w x) ⃝ AML Dados linearmente separáveis
Introduzir uma coordenada artificial x0=1
Na forma vetorial, o Perceptron implementa
+ + + + _ _ _ _ + + + + + _ _ _ _ + h(x) = !! d " i=1 wi xi # + w0 # x0 = 1 h(x) = ! d " i=0 wi xi # h(x) = (w x) ⃝ AML + + + + _ _ _ _ + + + + + _ _ _ _ + h(x) = !! d " i=1 wi xi # + w0 # x0 = 1 h(x) = ! d " i=0 wi xi # h(x) = (w x) ⃝ AML Dados linearmente separáveis
Algoritmo de aprendizado do Perceptron
Algoritmo de aprendizado do Perceptron
O Perceptron implementa
Dado o conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
Algoritmo de aprendizado do Perceptron
O Perceptron implementa
Dado o conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
Algoritmo de aprendizado do Perceptron
O Perceptron implementa
Dado o conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
Selecione um padrão que é incorretamente classificador
Algoritmo de aprendizado do Perceptron
O Perceptron implementa
Dado o conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
Selecione um padrão que é incorretamente classificador
Atualize o vetor de pesos
h(x) = (w x) (x1, y1), (x2, y2), · · · , (xN, yN) (w xn) ̸= yn w ← w + ynxn w+ xy y w+ x y= +1 x w x w −1 y= ⃝ AML
Algoritmo de aprendizado do Perceptron
O Perceptron implementa
Dado o conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
Selecione um padrão que é incorretamente classificador
Atualize o vetor de pesos
h(x) = (w x) (x1, y1), (x2, y2), · · · , (xN, yN) (w xn) ̸= yn w ← w + ynxn w+ xy y w+ x y= +1 x w x w −1 y= ⃝AML h(x) = (w x) (x1, y1), (x2, y2), · · · , (xN, yN) (w xn) ̸= yn w ← w + ynxn w+ xy y w+ x y= +1 x w x w −1 y= ⃝ AML
Iterações do algoritmo
Uma iteração do algoritmo de aprendizado do Perceptron
Iterações do algoritmo
Uma iteração do algoritmo de aprendizado do Perceptron
sabendo que (x,y) é um padrão de treinamento incorretamente classificado Para cada iteração, t=1,2,3,…, selecione um padrão incorretamente
classificado do conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
Iterações do algoritmo
Uma iteração do algoritmo de aprendizado do Perceptron
sabendo que (x,y) é um padrão de treinamento incorretamente classificado Para cada iteração, t=1,2,3,…, selecione um padrão incorretamente
classificado do conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
e execute o algoritmo usando esse padrão
Iterações do algoritmo
Uma iteração do algoritmo de aprendizado do Perceptron
sabendo que (x,y) é um padrão de treinamento incorretamente classificado Para cada iteração, t=1,2,3,…, selecione um padrão incorretamente
classificado do conjunto de treinamento
(x
1,y
1),(x
2,y
2),…,(x
d,y
d)
e execute o algoritmo usando esse padrão
That’s it! + + + + + _ _ _ _ • w ← w + yx (x, y) • t = 1, 2, 3, · · · (x1, y1), (x2, y2), · · · , (xN, yN) • ⃝ AML
Tipos de Aprendizado
❖
Supervisionado
❖
Não-supervisionado
Aprendizado Supervisionado
Exemplo: reconhecimento de moeda em vending machine
25 5 1 Mass Size 10 25 5 1 Mass Size 10 ⃝ AML
Aprendizado Supervisionado
Exemplo: reconhecimento de moeda em vending machine
25 5 1 Mass Size 10 25 5 1 Mass Size 10 ⃝ AML 25 5 1 Mass Size 10 25 5 1 Mass Size 10 ⃝ AML
Aprendizado Não-supervisionado
Ao invés de (
entrada, saída correta
), temos (
entrada, ?
)
Mass
Size
Aprendizado Não-supervisionado
Ao invés de (
entrada, saída correta
), temos (
entrada, ?
)
Mass
Size
⃝AML
Aprendizado de alto nível: aprender línguas
Aprendizado Por Reforço
Ao invés de (entrada, saída correta),
temos (entrada, alguma "saída correta”, escore para a saída)
O campeão mundial foi uma Rede Neural Artificial
Aprendizado Por Reforço
Ao invés de (entrada, saída correta),
temos (entrada, alguma "saída correta”, escore para a saída)
O campeão mundial foi uma Rede Neural Artificial
Bebê e xícara de café Playing Games
Um desafio de aprendizado
f = −1
f = +1
f = ?
Um exemplo: Jogar Damas
Dado um tabuleiro, a função escolhe o melhor movimento
❖ ChooseMove: Board → Move
Uma alternativa é encontrar uma função que atribui um valor
a um tabuleiro
❖ V: Board → ℜ
65
Jogar Damas: representando o problema
bp(b): número de peças pretas no tabuleiro b
rp(b): número de peças vermelhas no tabuleiro b bk(b): número de rainhas pretas em b
rk(b): número de rainhas vermelhas em b
bt(b): número de peças vermelhas ameaçadas pelas pretas (i.e., as quais
podem ser capturadas na próxima jogada)
rt(b): número de peças pretas ameaçadas pelas vermelhas
( )
b bp( )
b rp( )
b bk( )
b rk( )
b bt( )
b rt( )
bRevisão
❖ Definição: Aprendizado de Máquina ❖ Regressão versus Classificação
❖ Quando usar Aprendizado de Máquina
❖ Formalização e Componentes do Aprendizado ❖ Algoritmo de treinamento do Perceptron
❖ Dados linearmente separáveis ❖ Tipos de aprendizado
❖
Alguns slides foram adaptados dos slides do prof. Yaser
Informações básicas
❖Site da disciplina:
❖www.cin.ufpe.br/~if699
❖Horário:
❖Quarta-feira, 10-12
❖Sexta-feira, 08-10
Bibliografia
❖ Tom Mitchell. Machine Learning. McGraw-Hill. 1997.
❖ Richard O. Duda, Peter E. Hart and David G. Stork. Pattern Classification.
Wiley-Interscience. 2000.
❖ S. Theodoridis and K. Koutroumbas. Pattern Recognition. Academic Press. 2006. ❖ Christopher M. Bishop. Pattern Recognition and Machine Learning. Springer. 2006 ❖ Yaser S. Abu-Mostafa et al. Learning From Data. AMLBook. 2012.