Title: Aprendizado baseado em inst
1Aprendizado baseado em instâncias(Aprendizagem
Preguiçosa)
- Vizinhos mais Próximos (kNN)
- Raciocínio Baseado em Casos (CBR)
2Experiência o que o especialista tem de mais
valioso
- Sistemas Especialistas convencionais
- Aprendizagem gulosa ID3, Version Space, ...
- Aprendizagem preguiçosa kNN, CBR,...
3Aprendizagem 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.
4Aprendizagem Baseada em Instância
5Aprendizagem 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
6k vizinhos mais próximos
7k 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 lta1(x), a2(x), a3(x), ...,
an(x)gt 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
8k vizinhos mais próximos exemplo
- x lt idade(x), altura(x), peso(x)gt, 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 (lt36, 1.80, 76gt, ???) a ser classificado
- josé (lt30, 1.78, 72gt, sim)
- maria (lt25, 1.65, 60gt, sim)
- anastácia (lt28, 1.60, 68gt, não)
- Distância
- d(joão,josé) (36-30)2 (1.80-1.78)2
(76-72)21/2 (360.000416)1/2 7,21 - d(joão,maria) (1210.0225256)1/2 19,41
As distâncias entre os pontos podem ser
eventualmente normalizadas
9k vizinhos mais próximos
- A função de classificação
- 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) - Caso seja contínua, seu resultado é a média dos
resultados dos k vizinhos mais próximos
10k vizinhos mais próximos Algoritmo para estimar f
- //Treinamento
- Adicione cada instância de treinamento ltx,f(x)gt
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
- Caso contínuo retorna
11k vizinhos mais próximos exemplo
- Caso discreto
- Percebe-se que o k é determinante na classificação
-
k 1 classifica xq como k 5 classifica xq
como -
-
-
-
-
xq
-
12k vizinhos mais próximos exemplo
- Caso contínuo
- exemplo filme ltano, bilheteriagt
- 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) (435)/3 4
13k vizinhos mais próximos
- Visualização da superfície de decisão, para k
1 - Diagrama de Voronoi gt 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/Delauna
y.html
14k 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
- Caso contínuo
-
onde
15k 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
16Regressã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
17Regressão localmente ponderada
- Função de aproximação mais comum
- Escolher ?i que minimiza a soma dos quadrados dos
erros em relação ao conjunto de treinamento 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,...
18Raciocínio Baseado em Casos (CBR)
- Mais que um método de aprendizagem preguiçosa é
um método de resolução de problemas!!!!!!
19Compreensã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
20Experiê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
R25.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
21Experiê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
22Raciocí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.
23Exemplo
- Usos
- - classificação (casa dos meus sonhos?)
- - estimação de preços
24Funcionamento do CBR ciclo dos 4 REs
Recuperar
novo caso (alvo)
novo caso (alvo)
Indexar
caso recupe-rado (fonte)
problema
base
Reutilizar
caso aprendido
caso solução
solução sugerida
Reter
caso testado e corrigido
solução final
Revisar
25Desenvolvimento 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?
26Natureza 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)
27Representaçã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
28Indexaçã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
29Indexação (cont.)
- Interpretação de situação
- 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
30Crité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)
31k vizinhos mais próximos (k 1)
- 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
32Exemplo
Carro 2
Carro 1
Carro 3
ano 1996 modelo Golf marca VW cor
azul Preço 1500
ano 1997 modelo Gol marca VW cor
vermelho Preço 1000
ano 1995 modelo Tempra marca Fiat cor
azul Preço 1300
- Pesos
- ano 2, modelo 3, marca 2, cor 1, preco 1
- Funções primitivas
- ano (diferença ? 2) gt 1 (2 lt dif ? 4) gt 0,5
(dif gt 4) gt 0 - modelo igual gt 1 diferente gt 0
- marca igual gt 1 diferente gt 0
- cor igual gt 1 parecida gt 0,5 diferente gt 0
- preço (dif ? 250) gt 1 (250 lt dif lt 1000) gt
0,5) (dif gt 1000) gt 0
33Organizaçã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!)
34Características compartilhadas
35Organizaçã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, ...
36Similaridade e recuperação
- O casamento é parcial !!!! gtMais 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
37Reutilizaçã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
38Reutilizaçã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
39Exemplo 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)
40Outros 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?
41Revisã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
42Aplicaçõ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
43Mais 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
44Algumas 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
45Problemas
- 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
46Balanç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
47Quando 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
48Balanço entre aprendizado guloso e preguiçoso
- Guloso
- Generaliza função de classificação
- Aproximação global
- Treinamento lento
- Classificação rápida
- Preguiçoso
- Não generaliza a função de classificação
- Aproximação local
- Treinamento rápido
- Classificação lenta
- KNN - considera todos os atributos
49Referê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.h
tml - CBR archive http//www.ai-cbr.org/cases.html
- CBR in the Web http//wwwagr.informatik.uni-kl.de
/lsa/CBR/CBR-Homepage.html - CBR Bibliography http//www.surveying.salford.ac.
uk/AI-CBR/biblio/search.html