Aprendizado baseado em instâncias (Aprendizagem Preguiçosa)

Slides:



Advertisements
Apresentações semelhantes
Construção de listas de decisão Os tópicos anteriores tratam de indução de conceitos que podem ser descritos usando uma única região de decisão Neste tópico.
Advertisements

Programação em Java Prof. Maurício Braga
Agenda Introdução Justificativa Objetivo Detecção de Spam
Experiments with Clustering as a Software Remodularization Method Nicolas Anquetil and Timothy C. Lethbridge University of Ottawa, Canada WCRE 1999:
UNICAMP Universidade Estadual de Campinas Centro Superior de Educação Tecnológica Divisão de Telecomunicações Propagação de Ondas e Antenas Prof.Dr. Leonardo.
Inversor Trifásicos com Três Pernas
AULA 8 Profa. Sandra de Amo GBC053 – BCC
O Modelo de Jesus para Crescimento e Serviço
Operadores e Funções do LINGO
Exercício do Tangram Tangram é um quebra-cabeças chinês no qual, usando 7 peças deve-se construir formas geométricas.
Pesquisa Bibliográfica Disciplina de Metodologia da Pesquisa Profª Tereza Yoshiko Kakehashi 1.
Mineração de Dados Avaliação de Classificadores
1 INQUÉRITOS PEDAGÓGICOS 2º Semestre 2003/2004 ANÁLISE GERAL DOS RESULTADOS OBTIDOS 1.Nº de RESPOSTAS ao inquérito 2003/2004 = (42,8%) 2.Comparação.
Excel Profa. Cristina M. Nunes.
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
Redes Neurais Artificiais
Resolução.
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Árvores.
1 MergeSort Seja uma lista A de n elementos. O algoritmo consiste das seguintes fases Dividir A em 2 sub-listas de tamanho n/2 Conquistar: ordenar cada.
EXPRESSÕES ARITMÉTICAS
EXPRESSÕES ARITMÉTICAS
Raciocínio Baseado em Casos (CBR)
Agentes Baseados em Conhecimento
Raciocínio Baseado em Casos
FACENS – Engenharia da Computação Inteligência Artificial
APLICAÇÕES DE RBC EM NUTRIÇÃO
FUNÇÃO MODULAR.
Mecânica dos Sólidos não Linear
Listas Encadeadas.
Classes e objetos Arrays e Sobrecarga
Classes e objetos Modelagem
Classes e objetos P. O. O. Prof. Grace.
INF 1771 – Inteligência Artificial
Provas de Concursos Anteriores
Raciocínio Baseado em Casos
MATEMÁTICA PARA NEGÓCIOS
APRESENTAÇÃO Está prevista a utilização de 6 aulas (6 blocos de 90 minutos) para o ensino do Subtema das Funções Quadráticas. Todas as aulas servirão.
Módulo Financeiro Centro de Custo.
Aprendizado de Máquina
MECÂNICA - DINÂMICA Exercícios Cap. 13, 14 e 17. TC027 - Mecânica Geral III - Dinâmica © 2013 Curotto, C.L. - UFPR 2 Problema
Inteligência Artificial
Aprendizado Baseado em Instâncias – Algoritmo k-NN
Classificação. Classificação: Atribuição a uma classe (rótulo de um atributo categórico). Classifica dados (constrói um modelo) baseado em um conjunto.
Estruturas de Dados com Jogos
Estruturas de Dados com Jogos
Estruturas de Dados com Jogos
Coordenação Geral de Ensino da Faculdade
Análise Fatorial Factor analysis.
Modelagem Estatística
INF 1771 – Inteligência Artificial
Introdução e Busca Cega
Aprendizado de Máquina - Introdução
Projeto de Banco de Dados
Sistemas Especialistas
DIEGO RICARDO DE ARAUJO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO INSTITUTO DE CIÊNCIA EXATAS UNIVERSIDADE FEDERAL DE JUIZ DE FORA Seleção de Características.
Tópicos especiais em controle inteligente e distribuído Professor: Jorge Dantas de Melo Rafael Marrocos Magalhães.
Marcílio C. P. de Souto DIMAp/UFRN
Redes Neuronais/Neurais/ Conexionistas Introdução
Máquina de Turing Universal
Técnicas de Localização para Robôs em Ambientes Internos Claudia Patricia Ochoa Díaz Mestrado em Sistemas Mecatrônicos UnB
Geber Ramalho 1 Objetivo da aprendizagem Conhecimento em extensão (exemplos percepção-ação, características-conceitos, etc.) Conhecimento em intenção.
Classificação/Categorização Christian Diego – cdad Icamaan Viegas – ibvs.
Regressão e Previsão Numérica.
Classificação de Texto Baseada na aula de Henrique Borges e Ícaro Medeiros Alterada por Flávia Barros.
Márcio Leal de Melo Dahia1 Aprendizado baseado em instâncias.
Aprendizado Baseado em Instancias. Introdução Em contraste aos métodos de aprendizado que constroem uma descrição explicita genérica da função alvo. Os.
Luana Bezerra Batista Redes Neurais Luana Bezerra Batista
Classificação de Textos
Projeto de Banco de Dados
Transcrição da apresentação:

Aprendizado baseado em instâncias (Aprendizagem Preguiçosa) Vizinhos mais Próximos (kNN) Raciocínio Baseado em Casos (CBR)

Experiência: o que o especialista tem de mais valioso S O L U Ç Ã O Regras Engenheiro de conhecimento Novo Problema Dedução Sistemas Especialistas convencionais Aprendizagem gulosa: ID3, Version Space, ... Aprendizagem preguiçosa: kNN, CBR,... Experiência (exemplos) Regras Indução Dedução Experiência (exemplos) Mede semelhança Experiência (exemplos)

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.

Aprendizagem Baseada em Instância Objetos (dados) clustering (ap. não-supervisionada) Redes neurais, agrupamento conceitual, estatítica, ... 1 2 3 novo algoritmo classe 1,2 ou 3 extensão K em Identificação Gulosa ap. supervisionada (árvore de decisão, conjunto de regras, redes neurais c/ pesos ajustados,...) ID3, version space, RN-MLP naive bayes, ... K em intenção Preguiçosa Knn, LWR, CBR, Identificação outro objeto classificador classe 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 Determine o melhor fechamento para o seu público e apresentação. Feche com um resumo; ofereça opções; recomende uma estratégia; sugira um plano; defina uma meta. Mantenha o seu foco durante sua apresentação e será mais fácil atingir sua finalidade.

k vizinhos mais próximos

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

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

k 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

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 Caso contínuo retorna

k 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 + + - +

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

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

k vizinhos mais próximos Refinamento I: distância para o vizinho melhora 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

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 Refinamentos Atribuir pesos j aos atributos de maneira que minimize a taxa de erro de classificação (Importância do atributo) Usar a técnica de validação cruzada para automaticamente escolher os pesos Eliminar atributos do espaço de instâncias

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

Regressã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,...

Raciocínio Baseado em Casos (CBR) Mais que um método de aprendizagem preguiçosa: é um método de resolução de problemas!!!!!!

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... Nova explicação/solução Nova situação/problema situação-explicação ou problema solução

“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

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

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.

Exemplo Usos - classificação (casa dos meus sonhos?) - estimação de preços

Funcionamento do CBR: ciclo dos 4 RE´s 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

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?

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)

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)  ... objeto: disputa; atributos: protagonistas, objetoDisputado

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

Indexação (cont.) Interpretação de situação preço ano modelo marca opcionais kilometragem motor cor .... 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

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)

k vizinhos mais próximos (k = 1) 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

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 = 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) => 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

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!) Abordagem mista: filtra com a árvore de indexação e calcula explicitamente a similaridade com os casos pré-selecionados

Características compartilhadas situaçãoDeMediação = disputa Tipo: disputa física (Korea) Tipo: disputa política (Panama) Protagonistas: países tipoDeObjetoDisputado: terras Protagonistas: crianças tipoDeObjetoDisputado: comida Desejo: objeto inteiro (Laranja1) Desejo: diferentes partes do objeto (Laranja2) objDisputado: laranja relaçãoFamiliar: irmãs idades: adolescentes objDisputado: Candy (Candy) Serve como árvore de indexação

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, ...

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 em relação o alvo Questão: a similaridade basta? nas tarefas de design (projeto), não basta! É preciso: adaptation-based retrieval

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

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;

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)

Outros Métodos Ajuste de parâmetros Substituição baseado em casos 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?

Revisão e retenção Revisão Retençã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

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

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

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

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

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”

Balanço entre aprendizado guloso e preguiçoso 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 inexistente Classificação lenta

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.uni-kl.de/~lsa/CBR/CBR-Homepage.html CBR Bibliography: http://www.surveying.salford.ac.uk/AI-CBR/biblio/search.html