Aprendizado baseado em instâncias
(Aprendizagem Preguiçosa)
Vizinhos mais Próximos (kNN)
Raciocínio Baseado em Casos (CBR)
Geber Ramalho & Márcio Dahia
1
Experiência: o que o especialista tem de
mais valioso
Novo
Problema
 Sistemas Especialistas convencionais
Experiência (exemplos)
Dedução
Regras
 Aprendizagem gulosa: ID3, Version Space, ...
Experiência (exemplos)
Regras
Dedução
Indução
 Aprendizagem preguiçosa: kNN, CBR,...
Experiência (exemplos)
Geber Ramalho & Márcio Dahia
S O L U Ç Ã O
Engenheiro de
conhecimento
Indução
2
Aprendizagem Baseada em Instância
 Aprendizagem Gulosa (convencional)
• construção explícita da função f que generaliza os exemplos de
treinamento.
• Estima f de uma vez por todas para todo o espaço de exemplos
• métodos: ID3, Version Space, MLP Neural Nets, ...
 Aprendizagem Baseada em Instância (IBL) ou
aprendizagem preguiçosa:
• simplesmente armazena os exemplos de treinamento
• deixa a generalização de f só para quando uma nova instância
precisa ser classificada
• a cada nova instância, uma f nova e local é estimada
• métodos: vizinhos mais próximos, regressão localmente
ponderada, raciocínio baseado em casos, etc.
Geber Ramalho & Márcio Dahia
3
Aprendizagem Baseada em Instância
Objetos (dados)
clustering
(ap. não-supervisionada)
1
Redes neurais, agrupamento
conceitual, estatítica, ...
2
3
ap. supervisionada
Gulosa
(árvore de decisão, conjunto de
regras, redes neurais c/ pesos ajustados,...)
K em intenção
outro
objeto
Identificação
classificador
Preguiçosa
ID3, version space, RN-MLP
naive bayes, ...
Knn, LWR, CBR,
classe
novo
algoritmo
Identificação
classe
1,2 ou 3
1,2 ou 3
Aprendizagem Baseada em Instância
 Como?
• Armazena as instâncias de treinamento
• Calcula a distância entre as instâncias de treinamento e
a instância desconhecida
• Avalia o valor da função de classificação a partir dos
valores das instâncias mais próximas
 Diferentes métodos possuem diferentes formas de:
• Representar as instâncias de treinamento
• Calcular a distância entre instâncias
• Avaliar o valor da função de classificação
Geber Ramalho & Márcio Dahia
5
k vizinhos mais próximos
Geber Ramalho & Márcio Dahia
6
k vizinhos mais próximos
 Método mais antigo (1967) e difundido
 Instâncias são representadas por pontos num espaço
n dimensional n
• instância x = <a1(x), a2(x), a3(x), ..., an(x)>
Onde ar(x) representa o valor do r-ésimo atributo
 A distância entre as instâncias pode ser calculada
pela distância euclidiana ou outras
d ( xi , x j ) 
Geber Ramalho & Márcio Dahia
n
 (a ( x )  a ( x ))
2
r 1
r
i
r
j
7
k vizinhos mais próximos: exemplo
 x = < idade(x), altura(x), peso(x)>,
onde adimplente pode ser “sim”, “não”]
 Exemplo de treinamento = (x,f(x)), onde f(x) é a função de
classificação a ser aprendida
• joão = (<36, 1.80, 76>, ???) a ser classificado
• josé = (<30, 1.78, 72>, sim)
• maria = (<25, 1.65, 60>, sim)
• anastácia = (<28, 1.60, 68>, não)
 Distância
• d(joão,josé) = [(36-30)2 + (1.80-1.78)2 + (76-72)2]1/2 =
(36+0.0004+16)1/2 = 7,21
• d(joão,maria) = (121+0.0225+256)1/2 = 19,41
As distâncias entre os pontos podem ser eventualmente normalizadas
Geber Ramalho & Márcio Dahia
8
k vizinhos mais próximos
 A função de classificação
fˆ
• Caso seja discreta, seu resultado é aquele que aparecer
mais vezes entre os k vizinhos mais próximos (V = conjunto
de valores possíveis da função)
f :  V
n
• Caso seja contínua, seu resultado é a média dos resultados
dos k vizinhos mais próximos
f : 
n
Geber Ramalho & Márcio Dahia
9
k vizinhos mais próximos: Algoritmo para
estimar f
//Treinamento
Adicione cada instância de treinamento <x,f(x)> na lista
instancias_treinamento
//Classificação
Para cada instância xq a ser classificada
Chame de x1,x2,...xk as k instâncias mais próximas de xq na lista
instancias_treinamento
Caso discreto retorna
k
fˆ ( xq )  arg max   (v, f ( xi ))
vV
i 1
onde δ(a,b)é igual a 1 se a  b e 0 se a  b
Caso contínuo retorna
k
fˆ ( xq ) 
Geber Ramalho & Márcio Dahia
 f (x )
i
i 1
k
10
k vizinhos mais próximos: exemplo
 Caso discreto
+
+
x+
q
-
-
k = 1 classifica xq como +
k = 5 classifica xq como -
-+
• Percebe-se que o k é determinante na classificação
Geber Ramalho & Márcio Dahia
11
k vizinhos mais próximos: exemplo
 Caso contínuo
• exemplo = filme = <ano, bilheteria>
• classificação f = recomendação r  Z, r = [1...5]
• r(x1) = 4, r(x2) = 3, r(x3) = 5, r(x4) = 2
• para k = 3 e supondo que x1, x2 e x3 são os mais próximos
de xq, temos
• f(xq) = (4+3+5)/3 = 4
Geber Ramalho & Márcio Dahia
12
k vizinhos mais próximos
 Visualização da “superfície de decisão”, para k = 1
• Diagrama de Voronoi => poliedro convexo para cada
instância de treinamento.
• As instâncias dentro do poliedro são completamente
classificados pela instância associada
http://www.cs.cornell.edu/Info/People/chew/Delaunay.html
Geber Ramalho & Márcio Dahia
13
k vizinhos mais próximos
 Refinamento óbvio (p/ melhorar robustez)
• ponderar a contribuição de cada um dos k vizinhos de
acordo com sua distância ao ponto de consulta xq
– Caso discreto
k
fˆ ( xq )  arg max   i (v, f ( xi ))
vV
i 1
– Caso contínuo
k
•
fˆ ( xq ) 

i 1
i
onde
k

i 1
Geber Ramalho & Márcio Dahia
f (xi )
i
1
ωi 
d(xi ,xq )
14
k vizinhos mais próximos
 Problema da dimensionalidade
• Para calcular a distância entre os pontos, o método utiliza
todos os atributos da instância
 Conseqüências:
• pode custar caro
• atributos irrelevantes podem deturpar a classificação
 Soluções
• Atribuir pesos j aos atributos de maneira que minimize a
taxa de erro de classificação
• Usar a técnica de validação cruzada para automaticamente
escolher os pesos
• Eliminar atributos do espaço de instâncias
Geber Ramalho & Márcio Dahia
15
Regressão Localmente Ponderada (LWR)
 Há como generalizar K vizinhos mais próximos
• Constrói uma aproximação explicita de uma função f(xq)
em uma região próxima de xq levando em conta a distância
entre estas e xq
• A aproximação é então usada para calcular o valor ponto xq.
• A descrição de f’(x) é apagada, pois a função de
aproximação será construída para cada instância a ser
consultada
Geber Ramalho & Márcio Dahia
16
Regressão localmente ponderada
 Função de aproximação mais comum
fˆ ( x)  0  1a1 ( x)  ... n an ( x)
 Escolher i que minimiza a soma dos quadrados dos
erros em relação ao conjunto de treinamento D


2
1
ˆ
E(xq )   f ( x)  f ( x)
2 xD
 Mas existem diferentes propostas para minimizar o
erro...
• Erro quadrático sobre os k-vizinhos mais próximos
• Erro quadrático ponderado em D,...
Geber Ramalho & Márcio Dahia
17
Raciocínio Baseado em Casos (CBR)
Mais que um método de aprendizagem preguiçosa:
é um método de resolução de problemas!!!!!!
Geber Ramalho & Márcio Dahia
18
Compreensão de histórias (Sistema IPP)
 IRA guerrilas ambushed a military patrol in west Belfast
yesterday killing one british soldier and badly wounding
another Army quarters
 a suspected IRA gunman killed a 50-year old unarmed
security guard in east Belfast early today the police said
 A gunman shot and killed a part-time policeman at a
soccer match Saturday and escaped through the crowd...
situação-explicação
ou
problema solução
Geber Ramalho & Márcio Dahia
Nova explicação/solução
Nova situação/problema
19
“Experiência vivida”
 Classificação: “Os problemas de ouvido deste paciente são
casos típicos de otite média”
 Soluções compiladas: “Os sintomas de coração do paciente
X podem ser explicados da mesma maneira que aquele
paciente Y”
 Avaliando medidas: Minha casa é como aquela que foi
vendida mais em baixo nesta rua por R$25.000,00 mas ela tem
uma vista melhor”
 Concepção (design): para projetar este hospital, vou me
basear naquele que já fiz com um número de leitos parecido,
embora tenha de adaptá-lo pois este é de esquina
 Avaliando opções: se nós atacássemos as instalações dos
mísseis cubanos/russos, seria como no caso de Pearl Harbor
Geber Ramalho & Márcio Dahia
20
Experiência: o que o especialista tem de mais
valioso
 Case-based reasoning system
• Um método de resolução de problemas onde novos problemas
são resolvidos adaptando-se soluções de antigos problemas
similares
• Raciocínio analógico intra-domínio
• aprendizado incremental on-line
 Em termos de IBL
• Representação mais complexa das instâncias
• Cálculo diversificado da distância entre instâncias
• Não só classifica, mas adapta!!! É um método de resolução de
problemas
Geber Ramalho & Márcio Dahia
21
Raciocínio baseado em casos
 Historicamente:
• Wittgenstein (conceituação em extensão)
• Edel Tulving (memória episódica)
• Gentner (analogia), ....
• Roger Schank (scripts)
• Janet Kolodner (memória dinâmica)
 Um caso
• é um episódio vivido
• contém a descrição de : problema + solução
• exemplos: um paciente, um projeto arquitetônico, uma
situação, uma causa jurídica, uma melodia, etc.
Geber Ramalho & Márcio Dahia
22
Exemplo
 Usos
- classificação (casa dos meus sonhos?)
- estimação de preços
Geber Ramalho & Márcio Dahia
23
Funcionamento do CBR: ciclo dos 4 RE´s
Recuperar
problema
Indexar
novo
caso
(alvo)
novo
caso
caso
recupe- (alvo)
rado
(fonte)
base
Reutilizar
caso
aprendido
Reter
solução
final
caso
solução
caso
testado
e
corrigido
Revisar
solução
sugerida
Desenvolvimento de um sistema CBR
 Qual a natureza e conteúdo dos casos?
 Como representá-los?
 Como indexá-los de maneira a poder encontrá-los
adequadamente e rapidamente mais tarde?
 Qual são os critérios para a escolha do melhor caso e
como recuperá-lo?
 Como estruturar (organizar) os casos da base?
 Como adaptar o caso recuperado?
Geber Ramalho & Márcio Dahia
25
Natureza e conteúdo dos casos
 Pergunta chave
• O que é um caso no domínio abordado?
 Conteúdo
• Mínima: descrição do problema e da solução
• Extensões: avaliação da solução (falhas, sucesso, etc.) ,
contexto (justificação, links com outros casos, etc.),
 Outros
• Tamanho e composição (casos compostos)
 Quantidade de casos
• distribuir bem no espaço de problema n-dimensional (n
atributos)
Geber Ramalho & Márcio Dahia
26
Representação dos casos
 Várias linguagens
• de vetores de características
• Atributo-valor (frames, redes semânticas, objetos, ...)
• lógica de primeira ordem
 Depende da natureza do que se quer representar
• Velho problema da expressividade x eficiência
• ex.
– situaçãoDeMediação(c1, disputa)  protagonistas (c1,
criança11, criança20, criança32)  objetoDisputado (c1,
chocolate)  ...
• ex.
– objeto: disputa;
– atributos: protagonistas, objetoDisputado
Geber Ramalho & Márcio Dahia
27
Indexação
 Objetivo: dar ao sistema conhecimento sobre como
estocar e comparar (match) casos
 Vocabulário de indexação
• índice = atributo, característica, predicado, ...
• Pode ser feita manual ou automaticamente
– Checklist, difference-based, inductive learning, ...
 Conselhos
• levar em conta a utilização que se quer fazer (propósito)
– ex. para um mecânico e para um cliente de locadora, a
descrição de um automóvel é bem diferente
Geber Ramalho & Márcio Dahia
28
Indexação (cont.)
 Interpretação de situação
preço
ano
modelo
marca
opcionais
kilometragem
motor
cor
....
• os índices realmente relevantes para um problema/situação
em particular
• ex. em uma disputa entre crianças a profissão não conta,
enquanto na disputa entre adultos, ela conta
Geber Ramalho & Márcio Dahia
29
Critério para escolha dos casos
 A recuperação é baseada na similaridade entre caso
alvo e casos fontes
• Dois tipos de cálculo de similaridade: explícito ou indireto
 Medida explícita (mais usado!)
• independente da estratégia de recuperação ou da
organização da memória
• k vizinhos mais próximos (knn)
 Medida indireta
• dependente da estratégia de recuperação e/ou da
organização da memória
• memória dinâmica (hierárquica)
Geber Ramalho & Márcio Dahia
30
k vizinhos mais próximos (k = 1)

Sim il( X , Y ) 
n
i 1
wi  simi (valor(axi ), valor(a yi ))

n
i 1
wi
wi - peso da característica i
axi e ayi - valores da característica f nos casos C e S
simi - função primitiva para a característica i
 Observações
• similaridade global [0-1], sem ordem de testes
• mais fácil introduzir conhecimento do domínio: pesos
• os pesos podem ser definidos manualmente ou por
métodos automáticos
Geber Ramalho & Márcio Dahia
31
Exemplo
Carro 1
Carro 2
Carro 3
ano
= 1997
modelo = Gol
marca = VW
cor
= vermelho
Preço = 1000
ano
= 1996
modelo = Golf
marca = VW
cor
= azul
Preço = 1500
ano
=
modelo =
marca =
cor
=
Preço =
1995
Tempra
Fiat
azul
1300
 Pesos
• ano = 2, modelo = 3, marca = 2, cor = 1, preco =1
 Funções primitivas
• ano: (diferença  2) => 1; (2 < dif  4) => 0,5; (dif > 4) => 0
• modelo: igual => 1; diferente => 0
• marca: igual => 1; diferente => 0
• cor: igual => 1; parecida => 0,5; diferente => 0
• preço: (dif  250) => 1; (250 < dif < 1000) => 0,5); (dif > 1000) => 0
Geber Ramalho & Márcio Dahia
32
Organização da memória
 Memória plana
• Implementação: lista simples (1 nível de indexação)
• Métodos de recuperação
– Busca serial (custa caro)
– Busca paralela
• Medida de similaridade
– explícita (knn)
 Memória hierárquica
• Implementação:
– características compartilhadas
– redes de discriminação
• Métodos de recuperação & Medida de similaridade
– implícita (basta percorrer!)
Geber Ramalho & Márcio Dahia
33
Características compartilhadas
situaçãoDeMediação = disputa
Protagonistas: países
tipoDeObjetoDisputado: terras
Tipo: disputa física Tipo: disputa política
(Korea)
(Panama)
Protagonistas: crianças
tipoDeObjetoDisputado: comida
objDisputado: laranja
relaçãoFamiliar: irmãs
idades: adolescentes
Desejo: objeto inteiro
(Laranja1)
objDisputado: Candy
(Candy)
Desejo: diferentes partes do objeto
(Laranja2)
Organização da memória
 Trade-offs:
• eficiência x completude
– eficiência na inserção x eficiência na consulta
– ordem fixa dos testes pode levar a a recuperação do caso que
não é o mais similar
• “plausibilidade” x facilidade de introduzir conhecimento
 Organizações alternativas de memória
• template trees, z-trees, ...
Geber Ramalho & Márcio Dahia
35
Similaridade e recuperação
 O casamento é parcial !!!! =>Mais robustez
 Etapas da recuperação
• Matching: encontrar os N casos mais similares ao caso alvo
• Ranking: Escolher o melhor caso MC em relação o alvo
 Questão: a similaridade basta?
• nas tarefas de design (projeto), não basta!
• É preciso: adaptation-based retrieval
Geber Ramalho & Márcio Dahia
36
Reutilização
 Objetivo: compensar as diferenças entre o problema-alvo e
problema-fonte escolhido
 Adaptação: 3 tipos
• Cópia: usada normalmente em classificação
• Adap. Estrutural: a partir da própria solução recuperada
• Adap. Derivacional: a partir da maneira com que a solução
recuperada foi gerada
 Para as duas últimas as operações são:
• ajuste de parâmetros, abstração e especialização, substituição,...
 Problema:
• depende do domínio,coordenação do conjunto de operadores de
transformação
Geber Ramalho & Márcio Dahia
37
Reutilização
 Exemplo
• JULIA precisa criar uma refeição italiana (e que não
contenha carne) composta de entrada, massas, refeição
principal e sobremesa;
• Baseando-se em casos anteriores, JULIA escolhe lasanha
como prato principal. Porém:
– a refeição original inclui um prato de massas. Para simplificar,
JULIA elimina o prato de massas;
– lasanha inclui carne. Devido à restrição do problema, uma
lasanha vegetariana é proposta;
Geber Ramalho & Márcio Dahia
38
Exemplo de reutilização: reinstanciação
 Método
• Determine os papéis dos envolvidos no caso retido;
• Faça a correspondência dos papéis no problema proposto;
• Reinstancie os atributos e relações do caso retido de
acordo com as respectivas correspondências;
 Ex.: MEDIATOR
• resolução de conflitos: como dividir uma laranja entre duas
crianças interessadas?
• caso anterior: método utilizado por pescadores;
• reinstanciação: identificação dos papéis de cada entidade
envolvida (pescador  criança, peixe  laranja, objetivo 
divisão)
Geber Ramalho & Márcio Dahia
39
Outros Métodos
 Ajuste de parâmetros
• ex.: cálculo de novo valor de um imóvel;
 Substituição baseado em casos
• encontrar outro caso que sugira uma alternativa;
• por que não utilizar logo este caso?
Geber Ramalho & Márcio Dahia
40
Revisão e retenção
 Revisão
1) Avaliar a solução
(automaticamente ou não)
2) Consertar o caso
 Retenção
1) Extração da informação a reter
2) indexação
3) inserção do caso na base
Geber Ramalho & Márcio Dahia
41
Aplicações: estado da arte
 Todas as classes de problemas dos SEs baseados em
regras
• diagnóstico, planejamento, scheduling, interpretação, cozinha,
design, seleção, ensino,....
 Existem ferramentas (shells)
• ReMind, CAsePOint,CASUEL, ART*, ReCall, CBR-Express,...
 Exemplos
• Machine Tool Fault Diagnosis
• Computer Network Diagnosis
• Credit Analysis
• Geological Deposit Prediction
• Battle Planning
Geber Ramalho & Márcio Dahia
42
Mais aplicações...
• Bank Telex Classification
• Natural Language Understanding
• Network Management
• Legal Reasoning
• Claims Settlement
• Medical Diagnosis
• Weather Prediction
• Fraud Detection
• Industrial Planning and Scheduling
• Residential Domain
• Aircraft Maintenance Domain
• Helpdesk Systems for PC Network Diagnostics
Algumas aplicações na WEB
 FindMe agents
• sugere filmes e carros em locadoras
• raciocino através de exemplos
• busca não hierárquica
 Correspondent agents
• usa técnicas de recuperação de casos para encontrar
textos: FAQ-finder
 Analog Devices
• help desk: o sistema responde às dúvidas mais simples,
restringindo a necessidade em contatar seus engenheiros
Geber Ramalho & Márcio Dahia
44
Problemas
 Aquisição & descrição dos casos
• nem sempre é trivial além de demandar conhecimento do
domínio!
 O controle da medida de similaridade é fraco pois o
matching é parcial
• o acúmulo de semelhanças “irrelevantes” faz com que certos
casos sejam escolhidos em detrimento dos outros
• como ter certeza que as propriedades A e B serão
determinantes na recuperação de um caso que contém 20
atributos?
 A explicação
• pode ser prejudicada quando a recuperação é baseada em
uma medida de similaridade numérica
Geber Ramalho & Márcio Dahia
45
Balanço e conclusões
 Apesar das limitações, é bem mais fácil e rápido
desenvolver e manter um sistema CBR. E ele é mais
robusto!
• CLAVIER na Lockheed (fornos) - de 60% para 10%, taxa de
erro
• General dynamics (barcos) - 5 homens-ano x 2 homens-ano.
• CANASTA da DEC: 8 vezes mais rápido
Geber Ramalho & Márcio Dahia
46
Quando usar CBR?
 Existe uma grande volume de dados históricos
 Os especialistas falam sobre seus domínio dando
exemplos
 A experiência vale tanto quanto o conhecimento dos livros
texto
 Os problemas não são completamente formalizáveis
• fraca compreensão do problema, dificuldade de verbalização
 Existem conhecimento para adaptação de casos
• adequado para tarefas de projeto (design)
 Existem muitas exceções às regras
 É preciso aprender “on-line”
Geber Ramalho & Márcio Dahia
47
Balanço entre aprendizado guloso e
preguiçoso
 Guloso
 Preguiçoso
• Generaliza função de
classificação
• Não generaliza a
função de classificação
• Aproximação global
• Aproximação local
• Treinamento lento
• Treinamento rápido
• Classificação rápida
• Classificação lenta
• KNN - considera todos
os atributos
Geber Ramalho & Márcio Dahia
48
Referências básicas
 Aamodt, A; Plaza, E. (1994). “
Case-Based Reasoning: Foundational Issues, Methodological
Variantions, and System Approaches”. Em AI Communications,
Vol. 7, nr. 1;
 Kolodner, J. (1993)
Case Based Reasoning. Morgan Kaufmann.
 Web
• AI-CBR Home Page: http://www.ai-cbr.org/theindex.html
• CBR archive: http://www.ai-cbr.org/cases.html
• CBR in the Web: http://wwwagr.informatik.unikl.de/~lsa/CBR/CBR-Homepage.html
• CBR Bibliography: http://www.surveying.salford.ac.uk/AICBR/biblio/search.html
Geber Ramalho & Márcio Dahia
49
Download

Aprendizado Baseado em Instâncias