Indução de Árvore de Decisão

Slides:



Advertisements
Apresentações semelhantes
Introdução a Algoritmos
Advertisements

Inteligência Artificial
Metodologia de testes Nome: Gustavo G. Quintão
Análise de Voz e Vídeo Reconhecimento de voz baseado em modelos de palavras conectadas André Vitor de Almeida Palhares.
INTELIGÊNGIA COMPUTACIONAL
ANÁLISE DISCRIMINANTE
Lógica Fuzzy Aplicada a Sistemas de Diagnóstico
Mineração de Dados Avaliação de Classificadores
Modelos de Mineração de Dados
2 de Junho de 2005Conclusão1 Pedro Barahona DI/FCT/UNL Junho 2005.
1 Conclusão DI/FCT/UNL 1º Semestre 2004/ Ciclos de Simulação A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas.
Sinais e Sistemas – Capítulo 2
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
PERCEPTRON (CONTINUAÇÃO)
Inteligência Artificial Alex F. V. Machado. Tecnologia de Processamento da Informação que envolve processos de raciocínio, aprendizado e percepção. Winston.
Aprendizado de Máquina
Lema do Bombeamento – Gramáticas Livres do Contexto
Aprendizado de Máquinas
Medida do Tempo de Execução de um Programa
Computação Evolutiva: Programação Genética
Jacques Robin, Francisco Carvalho, Flávia Barros
APRENDIZAGEM COM CONHECIMENTO A PRIORI
1 Projeto Filtragem de Mensagens Eletrônicas Disciplina: Inteligência Artificial Simbólica Professores: Geber Ramalho e Jacques Robin.
FACENS – Engenharia da Computação Inteligência Artificial
FACENS – Engenharia da Computação Inteligência Artificial
Aprendizagem de Máquina
Algoritmos Escher.
Aprendizagem a partir de observações
INTRODUÇÃO À PROGRAMAÇÃO
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Sistemas Inteligentes
3. Árvore de Decisão.
Aprendizado de Máquina
Aprendizado de Máquina Aula 8
Departamento de Informática – Marcos Henrique Fonseca Ribeiro – Slide 1 Construindo Árvores de Decisão NoTrueHighMildRainy YesFalseNormalHotOvercast YesTrueHighMildOvercast.
Aprendizado de Árvores de Decisão
Prof. Sergio Queiroz CIn-UFPE
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.
MyContext – tarefa 2 João França Pedro Peixoto. Recolha traces Detecção de locais de interesse Classificação dos locais Criação de um mapa pessoal.
DISTRIBUIÇÕES AMOSTRAIS
Aula 03 – BCC202 Análise de Algoritmos (Parte 1) Túlio Toffolo www
Métodos de Classificação por Árvores de Decisão
Algoritmos e Programação de Computadores
INF 1771 – Inteligência Artificial
Introdução e Busca Cega
Sistemas Inteligentes
Aprendizagem de Máquina “Learning a Neural Tree” Paulo Amorim - prfa.
Sistemas Inteligentes
Inferência Estatística
O Processo de KDD Data Mining SUMÁRIO - AULA1 O processo de KDD
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
Árvores de Decisão Valmir Macário.
1 Árvores de Decisão Marcílio Souto DIMAp/UFRN. 2 Árvores de Decisão – ADs (1/4) zForma mais simples: yLista de perguntas  respostas “sim” ou “não” yHierarquicamente.
Sistema de Previsão Financeira Tendências e medidas de probabilidade.
Projeto Final MCI 2004 Filtragem de s Agente de Classificação de SPAM.
PUCC 1 Tópicos em Sistemas Inteligentes. PUCC 2 Agenda - Aula 03 Buscas Agentes que Planejam.
Jacques Robin CIn-UFPE Tipologia do conhecimento de saída da mineração de dados.
Universidade Federal Fluminense Faculdade de Medicina Mestrado Profissional em Saúde Materno-Infantil 2011 BIOESTATÍSTICA-aula 2 Prof. Cristina Ortiz Valete.
Prof. Alexandre Monteiro Recife
Complexidade de Computação Katia Guimarães. Avaliando a Qualidade de um Algoritmo É preciso ter bem definido –O que é dado de entrada e –O que é esperado.
Inteligência Artificial I
Inteligência Artificial I
Paradigmas de Mineração de Dados
Busca Competitiva Disciplina: Inteligência Artificial
Classificação de Textos
Aprendizagem Simbólica
Mineração de Dados (Data Mining)
Inferência 1:Estimação de Parâmetros Relembrando o Teorema Central do Limite Da aula anterior: a) Os estimadores da média e da s 2 são não viciados e de.
Transcrição da apresentação:

Indução de Árvore de Decisão Jacques Robin

Roteiro Entrada e saída da indução de árvore decisão Tarefas de aprendizagem implementadas por ID3 Exemplo Algoritmo básico e complexidade Heurísticas de escolha do atributo de partição de exemplos Poda da árvore para evitar overfitting Atributos numéricos, multi-valorados, nulos e numerosos Árvores de regressão e de modelo Vantagens e limitações de ID3

Entrada e saída da indução de árvore de decisão (ID3) age? student? credit rating? no yes fair excellent <=30 >40 30..40

Tarefas de aprendizagem realizáveis por ID3 Classificação: Atributos classificadores nos ramos Valores da classe nas folhas Regressão: Valores das variáveis fornecidas nos ramos Valor da variável a estimar nas folhas Previsão temporal: Valores passadas do atributo a prever nos ramos Valor futura do atributo a prever nas folhas Detecção de padrão: Valores antecedentes da associação nos ramos Valores conseqüentes da associação nas folhas Controle: Atributos descrevendo situação nos ramos Ação a executar nessa situação nas folhas Otimização: Valores das variáveis do domínio da função a otimizar nos ramos Valor da imagem máxima ou mínima da função das folhas

Expressividade das árvores de decisão Representação como programa lógico: buy(X,computer) :- age(X) <= 30, student(X), creditRating(X,fair). buy(X,computer) :- age(X) >= 30, age(X) <= 40. buy(X,computer) :- age(X) > 40, creditRating(X,fair). age? student? credit rating? no yes fair excellent <=30 >40 30..40

Expressividade das árvores de decisão Representação proposicional: ((under30  student)  30something  (over40  fairCreditRating)  buyComputer  ((under30   student)   (over40  excellentCreditRating)   buyComputer)  (under30  30something  over40)   (under30  30something)   (under30  over40)   (over40  30something)  (fairCreditRating  excellentCreditRating)   (fairCreditRating  excellentCreditRating) age? <=30 30..40 >40 student? credit rating? no yes excellent fair no yes yes no yes

Expressividade das árvores de decisão Pode representar qualquer função booleana No entanto, algumas funções – como a função de paridade ou de maioria – só podem serem representadas por uma árvore de tamanho exponencial no número de atributos Cardinal do espaço de hipótese de uma tarefa de aprendizagem com 6 atributos booleanos: 18.446.744.073.709.551.661 Mesmo para problemas pequenos: Aprender árvores pequenos o suficiente para serem inteligível e então validáveis Requer heurísticas (i.e., viés) podendo a busca no espaço de hipótese de maneira violenta Em recuperação de informação utiliza-se geralmente um número de atributo igual a o número de palavras na língua utilizada nos documentos ...

Algoritmo básico de ID3 Escolher dentro do conjunto de atributo atual A = {A1,..., Ak} o atributo Ai que separa melhor o conjunto atual de exemplos E em termos dos valores do atributo a prever P Dividir E em termos dos valores de Ai = {Vi1,..., Vik} i.e., E =  Ej, x  Ej, Ai(x) = Vij, criando um novo arco teste Ai(x) = Vii na árvore para cada Ej Para todos Ei ainda heterogêneos em termos do valor de P i.e., x,y  Ei, P(x)  P(y), Recursivamente reaplicar algoritmo sobre Ej com o conjunto de atributo A´= A – {Ai} Continuar até que: Todos os Ej seja homogêneos em termos do valor de P Não tenha mais atributos a processar, i.e., A´= 

Viés de aprendizagem de ID3 <=30 30..40 >40 student credit + - excel fair buy Árvore aprendida com viés de ID3 Número de bits: 3 Árvore “aprendida” sem viés Número de bits: 6 age <=30 30..40 >40 income high medium low student + - CR e f BC ?

Heurísticas de escolha de atributo de partição de exemplos Ganho da informação Índice GINI

Ganho da informação Informação (em número de bits) esperada necessária para classificar, em m classes, amostra arbitrária de s exemplos: Informação esperada necessária para classificar, em m classes, dado o valor, entre V valores possíveis, do atributo A (entropia de A): Ganho de informação pelo conhecimento do valor de A: Si = numero de exemplos de classe i Si j = numero de exemplos de classe i com valor j para atributo A

Exemplo de escolha de atributo baseado na heurística do maior ganho de informação Class p: buysComputer = “yes” Class n: buysComputer = “no” I(p, n) = I(9, 5) = 0.940 Entropia para age: age <= 30 para 5/14 dos exemplos dos quais 2 buyComputer = yes e 3 buyComputer = no

Exemplo de ID3 age? <=30 31..40 >40 +: e9, e11 +: e3, e7, e12, e13 +: e4, e5, e10 -: e1, e2, e8 -: e6, e14

Exemplo de ID3 age? <=30 >40 31..40 +: e9, e11 -: e1, e2, e8 student? no yes +: e9, e11 -: e1, e2, e8

Exemplo de ID3 age? <=30 >40 31..40 +: e9, e11 -: e1, e2, e8 student? no yes credit rating? fair excellent -: e6, e14 +: e4, e5, e10

Poda de árvores para evitar overfitting Broto de decisão: árvore de decisão de profundidade 1 Em muitos casos, tão precisão se não melhor sobre conjunto de teste do que árvore de decisão completa gerada por ID3 Caso também de kNN, Classificador Bayesiana Ingênuo e Regra de Classificação 1R, i.e., regra da forma: atributo a = v  classe = c Em processo de aprendizagem qualquer, sempre começar pelo uso desses métodos simplórios, pós as vezes eles são suficientes, e sempre eles constituem um caso base para a avaliação de métodos mais sofisticados Sugere idéia de podar árvores geradas por ID3 para melhorar sua generalidade Pré-poda: Introduzir novo ramo na árvore apenas para gerar divisão de exemplos estatisticamente significativa (por exemplo usando um test 2 Pós-poda: Podar árvore completa testando diferencia de precisão sobre outro conjunto de exemplos de duas operações de poda, colapso de ramo e subida de ramo

Operações de pós-poda: colapso de ramo age? student? credit rating? no yes fair excellent <=30 >40 30..40 age? credit rating? fair excellent no yes <=30 >40 30..40

Operações de pós-poda: elevação de ramo no yes student? credit rating? age? fair excellent <=30 >40 30..40 age? student? credit rating? no yes fair excellent <=30 >40 30..40

Pós-poda Processa a árvore de baixo para cima estimando benefício, em cada nó, de uma das duas operações Divide conjunto de exemplos em 3 partes: Conjunto de construção da árvore Conjunto de poda da árvore Conjunto de teste da árvore podada Problemático com conjunto de exemplos pequenos: Solução de C4.5 Executa poda sobre mesmo conjunto do que a construção, usando um estimador estatístico diferente do ganho de informação usado para construção

Complexidade de ID3 Abstrair e exemplos de treinamento, cada um descrito por a atributos por uma árvore de decisão de profundidade O(log n) Execução: O(log n) Treinamento sem poda: O(mn log n) Pós-poda: O(n (log n)2)

Outras dificuldades práticas Atributos multi-valorados ID3 supõe que cada atributo de cada exemplo possui apenas um único valor Nem é sempre o caso: ex, filhos de uma pessoa Atributos com distribuição de valores muito desigual ID3 tende a gerar broto de decisão

Atributos numerosos Ganho de informação super-estima atributos com muitos valores distintos Atributos com um valor distinto por exemplo, completamente inútil para classificação, no entanto com maior ganho de informação Uma solução simples: usar razão do ganho sobre número de valores do atributo

Atributos nulos Utilização: Treinamento: Como classificar novo exemplo com atributo nulo ? Prever valor nulo como sendo valor adicional Treinamento: Simplesmente excluir exemplos ou atributos com valores nulos não é sempre viável porque: As vezes exemplo com valor nulo para determinado atributo, é extremamente informativo com respeito a outros atributos, ou atributo com valor com valor nulo para determinado exemplo, é extremamente informativo via seus valores para outros exemplos tamanho e dimensionalidade dos exemplos de treinamento ficam baixo demais É necessário modificar a fórmula do ganho de informação para a tornar tolerante a valores nulos

Atributos numéricos Qual é a partição em faixa de valores que maximiza o ganho de informação ?

Árvore de regressão Regressão linear paramêtrica: PRP = - 56.1 + 0.049MYCT + 0.015MMIN + 0.006MMAX + 0.630CACH - 0.270CHMIN + 1.46CHMAX Árvore de regressão para mesma tarefa:

Árvore de modelo Árvore de modelo para mesma tarefa: LM1: PRP = 8.29 + 0.004 MMAX + 2.77 CHMIN LM2: PRP = 20.3 + 0.004 MMIN – 3.99 CHMIN + 0.946 CHMAX LM3: PRP = 38.1 + 0.012 MMIN LM4: PRP = 19.5 + 0.002 MMAX + 0.698 CACH + 0.969 CHMAX LM5: PRP = 285 – 1.46 MYCT + 1.02 CACH – 9.39 CHMIN LM6: PRP = -65.8 + 0.03 MMIN – 2.94 CHMIN + 4.98 CHMAX

Vantagens de ID3 Muito versátil Algoritmo de aprendizagem muito simples, e então fácil de entender Muito bem estudado Eficiente e escalável Disponível na grande maioria das caixas de ferramenta gerais para aprendizagem Processa cada exemplo apenas uma única vez

Limitações de ID3 Redundância para representar sem muita redundância funções sem ordem claro de poder separativo dos exemplos entre atributos Não pode aprender relacionamentos genéricos entre vários indivíduos, ex: árvore de decisão definindo conceito de mãe, de ancestral ? Não é incremental: todos os exemplos tem que ser disponíveis com antecedência