Top Banner
Adivinhador de Filmes Alex F. Brandt Bruno E. Crepaldi Douglas O. Santos Mauricio Zambon Thiago Cavalcante MC906 - Inteligência Artificial Profº. Anderson de Rezende Rocha
20

Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Nov 27, 2018

Download

Documents

lamanh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Adivinhador de Filmes

Alex F. Brandt Bruno E. Crepaldi Douglas O. Santos Mauricio Zambon Thiago Cavalcante

MC906 - Inteligência Artificial Profº. Anderson de Rezende Rocha

Page 2: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Introdução

o O que é o jogo 20 Questions? • cada jogador tem que adivinhar o que o outro esta

pensando

• o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não

• ao final das 20 questões o adivinhador tem que dizer o que o outro jogador estava pensando

o Jogo popular na década de 40 virou um show de rádio e depois passou à televisão.

o Em algumas variações é escolhido antes uma categoria.

Page 3: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Exemplos

Akinator

Page 4: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Exemplos

20Q

Page 5: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Exemplo – 20Q

Page 6: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Exemplo – 20Q

Page 7: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Exemplo – 20Q

Page 8: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Objetivos

o Criar um adivinhador de filmes ao estilo 20Q, utilizando uma árvore de decisão

o Quantidade limitada de perguntas:

• quantidade compatível com o número de filmes na base de dados

• com 20 questões binárias seria possível distinguir entre 220 elementos

Page 9: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Objetivos

o Aprendizagem

• alteração das probabilidades a cada jogo

• adição de novos filmes quando não adivinha

o Recuperação de erros

• perguntas ambíguas

• perguntas onde erros são freqüentes

Page 10: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Solução Adotada

o Uso do algoritmo de árvore de decisão (Learning Decision Tree - LDT)

o Combinado com o Teorema de Bayes (Testes)

o Motivação: • Seqüência de perguntas a serem feitas

• Baixa complexidade na classificação

• Probabilidades

Page 11: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Árvore de Decisão

o Algoritmo:

1. Etapa de crescimento top-down recursivo i. Critério de ramificação: Ganho de informação

O ganho de informação ao escolher o atributo ai (i-ésima pergunta) como

teste a ser feito num nó é dado por, seja: S: conjunto de instâncias de treinamento num dado nó; aii: i-ésimo atributo vijij: j-ésimo valor possível do atributo ai

S(vij): subconjunto das instâncias de S tal que ai = vij C: conjunto das classes (filmes)

Page 12: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Árvore de Decisão

ii. Critério de parada

Tuplas restantes são da mesma classe (filme)

Atingida a profundidade máxima

A informação obtida pela melhor ramificação não é melhor que um threshold

2. Etapa de poda

remover ramos que prejudicam a generalização e, conseqüentemente, a classificação das instâncias não marcadas

Page 13: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Árvore de Decisão

o A árvore de decisão obtida indica quais perguntas devem ser feitas e qual o filme que o usuário pensou (caminho na árvore).

o Problemas: • A folha atingida contem mais de um filme possível • Usuário da alguma resposta diferente do esperado para

um filme • Nem todas as perguntas são respondidas por todos os

usuários (missing values) • Subconjunto dos filmes mais freqüentes (problemas com a

atualização da árvore)

Page 14: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Teorema de Bayes

o Permite calcular a probabilidade de cada filme dada as questões respondidas

o É possível deixar pré-calculado na árvore de decisão

o A árvore de decisão com número limitado de questões não garante chegar a um único filme, e se chegar, pode não ser o correto

Page 15: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Missing Values

o Freqüente em dados reais;

o Intrínseco do problema em questão;

o Solução inicial

• "Vazio" é considerado um valor;

• Atributo não preenchido é relevante para a classificação;

Page 16: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Missing Values

o Solução mais sutil • Atribuição de pesos baseados na porcentagem de

respostas positivas e negativas das instâncias para quais se sabe o valor do atributo correspondente ao missing value;

• Descida na árvore por ambos os branches carregando os respectivos pesos;

• Atributo não preenchido não é relevante para a classificação;

• Mais de uma folha pode ser atingida; • Escolha deve ser feita baseando-se nos pesos

atingidos.

Page 17: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Normalização

o Permitir uma distribuição mais uniforme dos dados

o Janela deslizante sobre as instâncias de cada classe

o Descarte das instancias mais antigas das classes mais freqüentes

o Replicação de instâncias de filmes pouco freqüentes (menor que o tamanho da janela)

Page 18: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Online Adaptive Decision Tree

Page 19: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Banco de Dados

o Script para pegar dados do 20Q – Movies e colocar a resposta encontrada no Banco de Dados.

o Problema: grande quantidade de perguntas com poucos filmes associados e filmes com poucas informações.

Page 20: Adivinhador de Filmes - ic.unicamp.brrocha/teaching/2011s2/mc906/seminarios/2011s2... · •o adivinhador tem direito a fazer 20 perguntas que as respostas devem ser sim ou não ...

Referências

• Stuart J. Russell and Peter Norvig. 1995. Artificial Intelligence: A Modern Approach. Prentice-Hall, Inc., Upper Saddle River, NJ, USA.

• Lior Rokach and Oded Maimon. Data Mining with Decision Trees: Theroy and Applications. World Scientific Publishing Co., Inc., River Edge, NJ, USA, 2008.

• Ian H. Witten and Eibe Frank. 2005. Data Mining: Practical Machine Learning Tools and Techniques, Second Edition (Morgan Kaufmann Series in Data Management Systems). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA.

• J. R. Quinlan. Learning decision tree classifiers. ACM Comput. Surv., 28:71–72, March 1996.

• Ron Kohavi. Scaling up the accuracy of naive-bayes classifiers: a decision-tree hybrid. In Proceedings of the Second International Conference on Knowledge Discovery and Data Mining, pages 202–207. AAAI Press, 1996.

• Sattar Hashemi and Ying Yang. 2009. Flexible decision tree for data stream classification in the presence of concept change, noise and missing values. Data Min. Knowl. Discov. 19, 1 (August 2009), 95-131

• Jayanta Basak. 2006. Online Adaptive Decision Trees: Pattern Classification and Function Approximation. Neural Comput. 18, 9 (September 2006), 2062-2101.

• Akinator: pt.akinator.com/

• 20Q: www.20q.net/