Sie sind auf Seite 1von 73

Aprendizagem de Máquina

Filipo Studzinski Perotto


Luís Otávio Álvares

Porto Alegre,
Novembro de 2005.
Aprendizagem de Máquina

I. Introdução

II. Problemas de Aprendizagem de Máquina


1. Clusterização
2. Descoberta
3. Explanação
4. Política de Ações
5. Classificação
I

Introdução
Comportamento Inteligente
X
Aprendizagem
O que significa aprender?

• Discussão Filosófica
• Discussão Psicológica
• Discussão Pedagógica
Aprendizagem de Máquina
Definição: “Aprender é um processo multifacetado. O
processo de aprendizagem inclui a aquisição de novos
conhecimentos declarativos, o desenvolvimento de
habilidades motoras e cognitivas através da prática ou
de instrução, a organização de novos conhecimentos
em representações gerais e efetivas, e a descoberta de
novos fatos e teorias através da observação e da
experimentação (...). O estudo e modelagem
computacional dos processos de aprendizagem em
suas múltiplas manifestações constitui o problema da
‘Aprendizagem de Máquina’”. (Carbonell, Michalski,
Mitchell, 1983)
Aprendizagem de Máquina

Definição: “Aprendizagem denota mudanças em um


sistema que são adaptativas no sentido de que elas
capacitam o sistema a fazer a mesma tarefa, ou
tarefas similares, mais eficiente e efetivamente na
próxima vez” (Simon, 1983)
Aprendizagem de Máquina
(Machine Learning)

Definição:
• Sistema capaz de transformar-se;
• As mudanças são adaptativas;
– melhoram o desempenho do sistema
– aumentam a eficiência na resolução das tarefas
II

Problemas
Aprendizagem de Máquina

Problemas:

– Clusterização
– Descoberta
– Explanação
– Política de Ações
– Classificação
Aprendizagem de Máquina

Abordagens: Questões:
– Representação
– Simbólica – Ruído
– Conexionista – Processo

– Analítica
Fonte:
– Evolutiva – Supervisionado
– Estatística – Não-Supervisionado
– Por Reforço
Problema 1:

Clusterização
(Aprendizagem Não-Supervisionada)
Clusterização
Definição do Problema

• Dados:
– Um Espaço de Características
– Um Conjunto de Instâncias situadas nesse espaço

• Encontrar:
– Grupos de Instâncias (Clusters)
Clusterização
• Aprendizagem Não-Supervisionada
– Não há exemplos nem classes pré-definidas
– Domínios naturalmente divididos em classes
– Análise de padrões nos dados de entrada através da
distribuição no espaço

• Clusters:
– Grupos de entidades similares
– Regiões com alta densidade relativa de pontos no espaço
Clusterização

• Exemplo:
Método Hierárquico Divisivo

• Todos os objetos são inicialmente alocados a um


único grupo, e esse vai sendo dividido (ou partido) em
grupos menores.

Geral teste de discriminação

Sub1 Sub2 Sub n

...
Método de Centróides
Pontos representativos de possíveis conceitos são
espalhados inicialmente no espaço de entradas. Cada um
desses pontos conceituais vai se aproximando da nuvem
de pontos de entrada mais próxima.
Método de Centros
• Problema: Desequilíbrio na distribuição dos centros
Problema 2:

Descoberta
Descoberta
Definição do Problema

• Dados:
– Um Espaço de Características
– Um Conjunto de Instâncias situadas nesse espaço
– Uma Teoria de Domínio (um conjunto de operações)

• Encontrar:
– Relações Regulares entre as Características
Descoberta
• Exemplo: Aprendizagem de Determinações

material tamanho massa temperatura condutância


cobre 3 12 26 0,59
cobre 3 12 100 0,57
cobre 6 24 26 0,59
chumbo 2 12 26 0,05
chumbo 2 12 100 0,04
chumbo 4 24 26 0,05
– Material & Temperatura > Condutância
– Material > (Tamanho & Massa)

• Complexidade exponencial pelo número de características


Indução Baseada em Conhecimento
• Hipóteses:
– consistentes com o conhecimento de domínio (a priori)
– adaptadas às observações

• Ex.:
– Observação:
• Nascido na Rússia
• Fala Russo
• Chama-se Bóris
– Inferências:
• Quem nasce na Rússia fala russo
• Quem nasce na Rússia chama-se Bóris (?!)
• Quem chama-se Bóris fala russo (?!)
Problema 3:

Explanação
Explanação
Definição do Problema

• Dados:
– uma teoria de domínio (conjunto de regras e operações)
– a definição do conceito alvo (descrição)
– um exemplo (fato)

• Encontrar:
– uma generalização do exemplo de treinamento que é uma descrição
suficiente do conceito
(ligação ente exemplo e conceito)
Abordagem Analítica

• Aprendizagem Baseada em Explanação (EBL)


• EBL utiliza métodos analíticos (dedutivos)
• EBL precisa de uma Teoria de Domínio
• Hipótese (Explanação):
– derivada do conhecimento de domínio (a priori)
– adaptada à observação
– construída por operações sobre as expressões

• Questão: não cria-se nada novo, apenas uma nova maneira de


expressar um conhecimento que sempre esteve implícito
Explanação
Exemplo:

• Teoria de Domínio:
Lógica Proposicional
• Conceito Alvo:
“não está chovendo”
• Fatos:
Se “está chovendo” Então “ruas molhadas”
“ruas não molhadas”
• Explanação:
(p → q) & (~q) .: ~p
Problema 4:

Política de Ações
(Aprendizagem por Reforço)
Política de Ações
Definição do Problema

• Dados: Agente

– Um Agente em um Ambiente
– A cada instante de tempo: Percepções
Ação
• o agente está em um estado s
Reforço (+/-)
• executa uma ação a
• vai para um estado s’
Ambiente
• recebe uma recompensa r
• Encontrar:
– uma política de ações que maximize o total de recompensas
recebidas pelo agente
Questão da Autonomia
• Como um agente aprende a escolher ações
apenas interagindo com o ambiente?
– Muitas vezes, é impraticável o uso de
aprendizagem supervisionada
• Como obter exemplos do comportamento correto e
representativo para qualquer situação?
• E se o agente for atuar em um ambiente
desconhecido?
A Função de Recompensa
• Feedback do ambiente sobre o
comportamento do agente
• Indicada por r:(S × A) → R
– r(s,a) indica a recompensa recebida quando se
está no estado s e se executa a ação a
– Pode ser determinística ou estocástica
Política de Ações
• Aprendizagem por Reforço
– não há exemplos
– existe um feedback do ambiente (recompensa) que avalia o
comportamento do agente

• Aprendizagem Incremental
– Desempenho + Exploração
Estimativa da Recompensa

Recompensas Utilidade
0 0 0 0 10 3 4 6 8 10
0 0 0 0 0 2 3 4 6 8
0 0 0 0 0 1 2 3 4 6
0 0 0 0 0 0 1 2 3 4
Métodos de Função de Utilidade
Uπ(s) : (S → R)

• Cálculo da Função de Utilidade do Estado:


– Faz uma tabela com a utilidade de cada estado
– Utilidade é a estimativa de recompensas futuras
– Constrói um Modelo de Transição de Estados

• Algotitmos: TD, PDA


Métodos de Valor das Ações
Qπ(s,a) : (S × A) → R

• Cálculo do Valor das Ações:


– Faz uma tabela com o valor de cada par (estado-
ação)
– Avalia cada par (estado-ação) pelas recompensas
– Método Livre de Modelo

• Algoritmos: Q-Learning
Estimativa da Recompensa
• A idéia:
– R := Rt + γ*Rt+1 + γ2*Rt+2 + ...

– Rt é a Recompensa da ação atual


– γ é um fator de desconsideração para as
recompensas previstas nos passos futuros
Estimativa da Recompensa
• Atualização da Tabela Utilidade do Estado:
– V = R + γ(V[s’])
– U[s] ← U[s] + α(V - U[s])

• Atualização da Tabela Valor da Ação:


– V = R + γ maxa’ (Q[s’, a’])
– Q[a,s] ← Q[a,s] + α(V - Q[a,s])
Abordagem Evolutiva
• Sistemas Classificadores
– Constrói um conjunto de regras (estado, ação)
– Aplica Algoritmos Genéticos neste conjunto
– Recompensas avaliam a força das regras
Criar Regras
Avaliar Regras
Descoberta
Escolher Regras
(Algoritmos Genéticos)

Atribuição de Crédito
(Bucket Brigade)
Entrada
Desempenho Saída
(Sistema Classificador)

Recompensa
Exemplo: Labirinto (γ=0.9)
Função recompensa Função V*

Função Q* Uma política de ações ótima


Algoritmo Q-Learning
(para mundos determinísticos)
• Para todo estado s e ação a, inicialize a tabela
Q[s][a] = 0;
• Para sempre, faça:
– Observe o estado atual s;
– Escolha uma ação a e execute;
– Observe o próximo estado s’ e recompensa r
– Atualize a tabela Q:
• V = R + γ maxa’ (Q[s’, a’])
• Q[a,s] ← Q[a,s] + α(V - Q[a,s])
Complexidade de Q-Learning
• Escolher uma ação é barato no tempo
– No entanto, o tempo de treinamento cresce com
#S
• Em espaço: O(#S x #A)
– Problemas
• o número de estados possíveis cresce
exponencialmente com a quantidade de
características representadas
Maldição da Dimensionalidade
“Maldição da Dimensionalidade”: o número de classificadores
que devem ser considerados aumenta exponencialmente com o
número de atributos do conjunto de dados, ficando mais difícil
para o algoritmo de aprendizagem encontrar um modelo
preciso (Bellman, 1961).

“O número de exemplos necessários para se aprender um certo


conceito cresce exponencialmente de acordo com o número de
atributos” (Valiant, “A Theory of The Learnable”, 1984).
Q-Learning
• Atualiza-se Q(st) após observar o estado st+1 e
recompensa recebida

• Q(s1,aright) = r + γmaxa’Q(s2,a’)
= 0 + 0.9 max{63,81,100}
= 90
Dilema aproveitamento-
exploração
• Na aprendizagem por reforço ativa o agente
enfrenta dilema aproveitamento-exploração:
– Quando gulosamente aproveitar da estimação atual da
função valor e escolher ação que a maximiza?
– Quando curiosamente explorar outra ação que pode
levar a melhorar estimação atual da função valor?
– Taxa de exploração = proporção de escolhas curiosas
– Geralmente se começa com uma taxa de exploração alta
que vai decrescendo com tempo
Questões
• É melhor aprender um modelo e uma
função de utilidade ou apenas uma função
de ação-valor sem um modelo?

• E mundos Não-Determinísticos?
• E mundos Não-Estacionários?
Exemplo Não-Determinístico
Ações: ,,,
Chance da execução correta: 90%

-1 -1 -1 -1 +100
-1 -1 -1 -1 -100
-1 -1 -1 -1 -1 -50 -50 -50 -50 +100
A -1 -1 -1 -1 -50 -50 -50 -50 -100
-50 -50 -50 -50 -50
A -50 -50 -50 -50
Problema 5:

Classificação
(Aprendizagem Supervisionada)
Classificação
Definição do Problema

• Dados:
– Um conjunto de exemplos de treinamento
• na forma (entrada-saída)

• Encontrar:
– uma função geral capaz de prever adequadamente as saídas
para novos exemplos, por representar, em princípio, a função
geradora dos exemplos de treinamento
Princípio Heurístico
Princípio da Teoria da Aprendizagem Computacional: “É
quase certo que qualquer hipótese que esteja seriamente
errada será ‘desmascarada’ com alta probabilidade após
um pequeno número de exemplos, porque fará uma
previsão incorreta. Desse modo, qualquer hipótese que seja
consistente com um conjunto suficientemente grande de
exemplos de treinamento terá pouca probabilidade de estar
seriamente errado: isto é, ela deve estar provavelmente
aproximadamente correta” (R, N, 2004)
Abordagem Estatística
• Modelo Incremental:
– inicia com uma hipótese a priori da distribuição
– atualiza a distribuição conforme recebe os exemplos
Aprendizagem Bayesiana
• Aprendizagem de Topologia
– criar e destruir vínculos entre as variáveis

Hábito 1 Hábito 2 Hábito 3

Sintoma 1 Sintoma 2 Sintoma 3


Aprendizagem Bayesiana
• Aprendizagem de Variáveis Ocultas
– criar e destruir variáveis
– problema: complexidade exponencial

Hábito 1 Hábito 2 Hábito 3

Doença

Sintoma 1 Sintoma 2 Sintoma 3


Abordagem Conexionista
• Rede Neural
– O conhecimento da rede fica armazenado nos pesos das ligações
entre os nós

• O conhecimento é distribuído:
– uma unidade pode participar
de diversos padrões
– um padrão pode estar ligado
à diversas unidades
Redes Neurais
Máquinas de Núcleo
• Aumentar a Dimensionalidade do Espaço.
• Tornar o Problema
Linearmente Separável
• Uso de Vetores de Suporte
• Uso de Funções de Núcleo
Modelos Simbólicos para
Aprendizagem de Conceitos
(Classificação)
Aprendizagem de Conceitos
Definição do Problema

• Dados:
– Um Espaço de Características
– Um conjunto de exemplos de treinamento
• Características (f1, f2, f3, ..., fn)
• Rótulo z

• Encontrar:
– Um Modelo de Classificação
Mundo dos Blocos
Um Arco é:
- 2 blocos azuis em pé paralelos

+ - um bloco azul sobre os outros dois

Um Arco é:
- 2 blocos em pé paralelos
- um bloco sobre os outros dois
+

Um Arco é:
- 2 blocos azuis em pé separados e paralelos
- um bloco azul sobre os outros dois
-
Melhor Hipótese Corrente
H ← Qualquer Hipótese consistente com o 1º Exemplo
Para cada Novo Exemplo faça:
Se é falso positivo para H então:
H ← Especialização de H (+ condições)
Se é falso negativo para H então:
H ← Generalização de H (- condições)
Espaço de Versões

• Preserva todas as Hipóteses Válidas


• Representação:
– G (Conjunto de Hipóteses mais Gerais)
– S (Conjunto das Hipóteses mais Específicas)
– Conjunto Parcialmente Ordenado
• Atualização do Espaço de Versões:
– Especializa G com um falso positivo
– Generaliza S com um falso negativo
Espaço de Versões
-
- -
- -
- G1 -
- -
G2
S + +
+ +
- + + + -
+ +
+ + -
+ +
- + -
-
- -
- -
-
Hipóteses mais

G1 G2 G3 G4 G5 Gn Gerais
...

...

S1 S2 S3 S4 S5 Sm Hipóteses mais
...
Específicas
Árvores de Decisão
Árvores de Decisão

F1 • Nós Superiores:
Testes de Discriminação

F2 F3 Fn

...
• Folhas:
y1 ym
Rótulo da Classe
Árvores de Decisão
Exemplo:

$ do Estrago

médio baixo alto

Anonimato Ficar Explicação

não sim boa ruim

Ficar Fugir Ficar Fugir


Árvore de Decisão
• Percorrer a Árvore
– Tomada de Decisão
– Expressão através de Regras: Disjunção de Conjunções

Estrago

médio baixo alto

Anonimato Ficar Explicação

não sim boa ruim

Ficar Fugir Ficar Fugir

Se (Estrago = Alto) e (Explicação = Ruim) Então Fugir


Indução de Árvores de Decisão
Algoritmo geral de construção da árvore de decisão

S inicial = o conjunto de todos os exemplos de treinamento;

SE todos os elementos em S satisfazem o critério de parada,


ENTÃO:
Cria um Nó Folha, caracterizando uma classe;
SENÃO
Seleciona um Atributo A
Cria um Nó de Discriminação baseado em A;
Particiona S em subconjuntos, conforme A;
Aplica o algoritmo recursivamente em cada subconjunto;
Indução de Árvores de Decisão
Indução de Árvores de Decisão

• Construção da Árvore
– Critério de Escolha dos Atributos Discriminantes
– Critério de Parada do Particionamento
– Objetivo: minimizar a árvore

• Complexidade
– Encontrar a árvore mínima é NP-Completo
– Saída: Utilização de Heurísticas
Indução de Árvores de Decisão
• Critério para Seleção de Atributos
– Baseado no Ganho de Informação
– Um bom candidato separa bem os exemplos entre as classes
– Critério de Ganho: Redução Esperada da Entropia

• Entropia
– Quantidade de Informação necessária para fazer a descrição dos
elementos do conjunto
– Muitas classes misturadas e homogeneamente distribuídas dentro de
um grupo representam alta entropia
Indução de Árvores de Decisão
Entropia(S) = Σ -pj log2 pj

• Entropia( 50% / 50%) = 1


• Entropia( 100% / 0%) = 0

• Outros Critérios para Seleção de Atributos


– Razão do Ganho
– Gini
– Qui-Quadrado
– Twoing
(todos utilizam fundamentos semelhantes)
Indução de Árvores de Decisão
• Superadaptação
– Ramos excessivos que não contribuem significativamente para a
classificação

• Poda
– Pode considerar
• Taxa de Erro
• Limite Mínimo de Ganho
– Pode ser feita
• Durante a construção (limite como critério de parada)
• Depois da construção (revisão)
– Substitui uma subárvore por uma folha
Algoritmos de Indução de AD
• ID3
– Representa apenas atributos categóricos
– Subdivide o grupo pela cardinalidade do atributo de teste
– Não faz tratamento de ruídos
– Utiliza critério de ganho de informação no particionamento

• CART
– Permite atributos numéricos
– Gera sempre divisões binárias (agrupando valores)
– Pode fazer regressão (função numérica)

• C4.5
– Permite atributos numéricos e valores desconhecidos
– Utiliza Poda
Aprendizagem de Máquina

Filipo Studzinski Perotto


Luís Otávio Álvares

Porto Alegre,
Novembro de 2005.

Das könnte Ihnen auch gefallen