Successfully reported this slideshow.

Árvores de Decisão

18,979 views

Published on

Published in: Education
  • Be the first to comment

Árvores de Decisão

  1. 1. UNIVERSIDADE DE PERNAMBUCOÁrvores de Decisão
  2. 2. UNIVERSIDADE DE PERNAMBUCORoteiro da Apresentação: Conceito de Árvores de Decisão; Representação de Árvores de Decisão; Características Básicas para o Uso de Árvores de Decisão; Cálculo da Entropia; Ganho de Informação; Razão de Ganho; Critério de Parada; Sobre – Ajustamento (Overfiting); Principais Algoritmos Usados Atualmente; Apresentação da Aplicação; Agradecimentos.
  3. 3. UNIVERSIDADE DE PERNAMBUCO Árvores de Decisão Árvores de decisão são ferramentas que podem ser utilizadaspara dar ao agente a capacidade de aprender, bem como paratomar decisões. Os elementos do agente são usados também, para aumentar acapacidade do agente de agir no futuro; O aprendizado ocorre na medida em que o agente observa suasinterações com o mundo e seu processo interno de tomada dedecisões.
  4. 4. UNIVERSIDADE DE PERNAMBUCO Aprendizado de árvores de decisão é um exemplo deaprendizado indutivo; Árvores de decisão também podem ser representadascomo um conjunto de regras SE- ENTÃO (if-then); As árvores de decisão tomam como entrada umasituação descrita por um conjunto de atributos e retornauma decisão.
  5. 5. UNIVERSIDADE DE PERNAMBUCO Características Básicas para o Uso de Árvores de Decisão As instâncias (exemplos) são representadas porpares atributo-valor; A função objetivo assume apenas valoresdiscretos; O conjunto de dados do treinamento podeconter erros ou valores de atributos faltando.
  6. 6. UNIVERSIDADE DE PERNAMBUCO Para facilitar o entendimento dos conceitos que serão vistos durante a apresentação, usaremos o exemplo do Jogo de Tênis para ilustrar.
  7. 7. UNIVERSIDADE DE PERNAMBUCOÁrvore de Decisão para o Exemplo do Jogo de TênisÁrvore criada para auxiliar na decisão de jogar ou não jogar tênis. Conjunto de Atributos Tempo Temperatura Umidade Vento
  8. 8. UNIVERSIDADE DE PERNAMBUCO Base de Treinamento do Jogo de Tênis: Tempo Temperatura Umidade Vento Joga Sol Alta Media Não Não Sol Alta Alta Sim NãoNublado Alta Alta Não Sim Chuva Baixa Alta Não Sim Chuva Baixa Media Não Sim Chuva Baixa Baixa Sim NãoNublado Baixa Baixa Sim Sim Sol Media Alta Não Não Sol Baixa Baixa Não Sim Chuva Media Media Não Sim Sol Media Baixa Sim SimNublado Media Alta Sim SimNublado Alta Baixa Não Sim Chuva Baixa Alta Sim Não
  9. 9. UNIVERSIDADE DE PERNAMBUCO Representação Cada nó de decisão contem um teste num atributo; Cada ramo descendente corresponde a um possívelvalor deste atributo; Cada nó folha está associado a uma classe; Cada percurso na árvore (do nó raiz a um nó folha)corresponde a uma regra de classificação.
  10. 10. UNIVERSIDADE DE PERNAMBUCOFigura 1: Representação de uma árvore de decisão.
  11. 11. UNIVERSIDADE DE PERNAMBUCOExemplos de Aplicações para Árvores de Decisão Diagnóstico Médico; Diagnóstico de Equipamentos; Análise de Crédito; Análise de Compra e Venda.
  12. 12. UNIVERSIDADE DE PERNAMBUCO Entropia A Entropia é uma medida quecaracteriza a aleatoriedade (impureza) deuma coleção arbitrária de exemplos.
  13. 13. UNIVERSIDADE DE PERNAMBUCODado uma coleção S de exemplos + e – de umconceito alvo, a entropia de S relativa a estaclassificação booleana é:Entropia(S) = - p log2 p - p log2 p p é a proporção de exemplos positivos em S p é a proporção de exemplos negativos em S
  14. 14. UNIVERSIDADE DE PERNAMBUCO A função Entropia relativa a uma classificação booleana,como a proporção, p de exemplos positivos varia entre 0 e 1. Figura 2: Representação gráfica da função Entropia.
  15. 15. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo do TênisUma coleção S com 14 exemplos sendo 9 positivos(sim) e 5 negativos (não) [9+, 5-] o valor da entropia é:
  16. 16. UNIVERSIDADE DE PERNAMBUCO Ganho de Informação A construção de uma árvore de decisão é guiada peloobjetivo de diminuir a entropia, ou seja, a aleatoriedade -dificuldade de previsão - da variável que define asclasses. Ganho de Informação é a redução esperada naentropia causada pela partição dos exemplos de acordocom o teste no atributo A.
  17. 17. UNIVERSIDADE DE PERNAMBUCO A Sim NãoFigura 3: Exemplo de um teste no atributo A.
  18. 18. UNIVERSIDADE DE PERNAMBUCO Base de Treinamento do Jogo de Tênis: Tempo Temperatura Umidade Vento Joga Sol Alta Media Não Não Sol Alta Alta Sim NãoNublado Alta Alta Não Sim Chuva Baixa Alta Não Sim Chuva Baixa Media Não Sim Chuva Baixa Baixa Sim NãoNublado Baixa Baixa Sim Sim Sol Media Alta Não Não Sol Baixa Baixa Não Sim Chuva Media Media Não Sim Sol Media Baixa Sim SimNublado Media Alta Sim SimNublado Alta Baixa Não Sim Chuva Baixa Alta Sim Não
  19. 19. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de TênisCalculando o valor do Ganho de Informação para o atributo Tempo = Sol Tempo Temperatura Umidade Vento Joga Sol Alta Media Não Não Sol Alta Alta Sim Não Sol Media Alta Não Não Sol Baixa Baixa Não Sim Sol Media Baixa Sim Sim
  20. 20. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de TênisCalculando o valor do Ganho de Informação para o atributo Tempo = Solp (sim | tempo = sol) = 2/5p (não | tempo = sol) = 3/5Entropia ( joga | tempo = sol) == - (2/5) * log2 (2/5) – (3/5) * log2 (3/5) = 0.971
  21. 21. UNIVERSIDADE DE PERNAMBUCO Base de Treinamento do Jogo de Tênis: Tempo Temperatura Umidade Vento Joga Sol Alta Media Não Não Sol Alta Alta Sim NãoNublado Alta Alta Não Sim Chuva Baixa Alta Não Sim Chuva Baixa Media Não Sim Chuva Baixa Baixa Sim NãoNublado Baixa Baixa Sim Sim Sol Media Alta Não Não Sol Baixa Baixa Não Sim Chuva Media Media Não Sim Sol Media Baixa Sim SimNublado Media Alta Sim SimNublado Alta Baixa Não Sim Chuva Baixa Alta Sim Não
  22. 22. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de TênisCalculando o valor do Ganho de Informação para o atributo Tempo = Nublado Tempo Temperatura Umidade Vento Joga Nublado Alta Alta Não Sim Nublado Baixa Baixa Sim Sim Nublado Media Alta Sim Sim Nublado Alta Baixa Não Sim
  23. 23. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de TênisCalculando o valor do Ganho de Informação para o atributo Tempo = Nublado:p (sim | tempo = Nublado) = 1p (não | tempo = Nublado) = 0Entropia ( joga | tempo = nublado) == - (1/5) * log2 (1/5) – 0 * log2 (0) = 0
  24. 24. UNIVERSIDADE DE PERNAMBUCO Base de Treinamento do Jogo de Tênis: Tempo Temperatura Umidade Vento Joga Sol Alta Media Não Não Sol Alta Alta Sim NãoNublado Alta Alta Não Sim Chuva Baixa Alta Não Sim Chuva Baixa Media Não Sim Chuva Baixa Baixa Sim NãoNublado Baixa Baixa Sim Sim Sol Media Alta Não Não Sol Baixa Baixa Não Sim Chuva Media Media Não Sim Sol Media Baixa Sim SimNublado Media Alta Sim SimNublado Alta Baixa Não Sim Chuva Baixa Alta Sim Não
  25. 25. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de TênisCalculando o valor do Ganho de Informação para o atributo Tempo = Chuva Tempo Temperatura Umidade Vento Joga Chuva Baixa Alta Não Sim Chuva Baixa Media Não Sim Chuva Baixa Baixa Sim Não Chuva Media Media Não Sim Chuva Baixa Alta Sim Não
  26. 26. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de TênisCalculando o valor do Ganho de Informação para o atributo Tempo = Chuva:p (sim | tempo = Chuva) = 3/5p (não | tempo = Chuva) = 2/5Entropia ( joga | tempo = chuva) == - (3/5) * log2 (3/5) – (2/5) * log2 (2/5) = 0,971
  27. 27. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo de Tênis Ganho de Informação obtida neste atributo:Informação (tempo) == 5/14 * 0.971 + 4/14 * 0 + 5/14 * 0.971 = 0.693Ganho (S, Tempo) = Entropia (joga) – Informação (tempo)Ganho (S, Tempo) = 0.940 – 0.693 = 0.247
  28. 28. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo do TênisCalculando o valor de Ganho de Informação para todos os outrosatributos temos: Ganho (S, Umidade) = 0,057 Ganho (S, Vento) = 0,048 Ganho (S, Temperatura) = 0,029 Ganho (S, Tempo) = 0,247
  29. 29. UNIVERSIDADE DE PERNAMBUCO Implicações do Cálculo de Ganho de Informação O critério de ganho seleciona como atributo-testeaquele que maximiza o ganho de informação; O grande problema ao se utilizar o ganho deinformação é que ele dá preferência a atributos commuitos valores possíveis;
  30. 30. UNIVERSIDADE DE PERNAMBUCO Um exemplo claro desse problema ocorreria aoutilizar um atributo totalmente irrelevante; Nesse caso, seria criado um nó para cada valorpossível, e o número de nós seria igual ao número deidentificadores; Essa divisão geraria um ganho máximo, embora sejatotalmente inútil;
  31. 31. UNIVERSIDADE DE PERNAMBUCO Razão de Ganho Razão de Ganho = Ganho Entropia (nó) A Razão de Ganho é o ganho de informação relativo(ponderado) como critério de avaliação; A razão não é definida quando o denominador é igual a zero, ouseja, quando o valor da entropia do nó é zero; Além disso, a razão de ganho favorece atributos cujo o valor daentropia é pequeno.
  32. 32. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo do TênisCalculando o valor da Razão de Ganho para o atributo do tempotemos:RazãoGanho (Tempo) = Ganho (S, Tempo) Entropia = 0,247 0,940 = 0,263
  33. 33. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo do TênisCalculando o valor de Ganho de Informação para todos os outrosatributos temos:Razão de Ganho (tempo) = 0,263Razão de Ganho (umidade) = 0,06Razão de Ganho (vento) = 0,051Razão de Ganho (temperatura) = 0,031
  34. 34. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo do Tênis Atributo Ganho de Informação Razão de Ganho Tempo 0,247 0,263Temperatura 0,029 0,031 Umidade 0,057 0,06 Vento 0,048 0,051Qual é o melhor atributo para ser selecionado como a raiz da árvore?
  35. 35. UNIVERSIDADE DE PERNAMBUCO Exemplo do Jogo do Tênis S = [9+, 5-] E = 0,940Ganho (S, Tempo) = 0,247 Razão de Ganho = 0,263 TempoSol Nublado Chuva
  36. 36. UNIVERSIDADE DE PERNAMBUCOÁrvore gerada para o exemplo do jogo de Tênis.
  37. 37. UNIVERSIDADE DE PERNAMBUCO Critério de Parada Quando parar as divisões? Quando todos os exemplos pertencem a mesma classe; Quando todos os exemplos têm os mesmos valores dosatributos (mas diferentes classes); Quando o número de exemplos é inferior a certo limite; Quando o mérito de todos os possíveis testes departição dos exemplos é muito baixo.
  38. 38. UNIVERSIDADE DE PERNAMBUCO Sobre-Ajustamento (Overfitting) Arestas ou sub-árvores podem refletir ruídos ouerros; Isso acarreta em um problema conhecido como sobreajuste significa um aprendizado muito específico do conjunto de treinamento, não permitindo ao modelo generalizar.
  39. 39. UNIVERSIDADE DE PERNAMBUCO Como Evitar o Sobre – Ajuste? Para detectar e excluir essas arestas e sub-árvores,são utilizados métodos de poda (pruning) para a árvore; O objetivo é melhorar a taxa de acerto do modelopara novos exemplos, os quais não foram utilizados notreinamento; A árvore podada é mais fácil de ser interpretada etambém é mais simples.
  40. 40. UNIVERSIDADE DE PERNAMBUCOExistem dois métodos de poda em uma árvore: Pré – Pruning: Para o crescimento quando a partiçãode dados não for estatisticamente significante etransformar o nó corrente em um nó folha; Pós – Pruning: Desenvolve uma árvore completa eentão executa o método de poda, onde tudo que estáabaixo de um nó interno é excluído e esse nó étransformado em folha.
  41. 41. UNIVERSIDADE DE PERNAMBUCO Principais Algoritmos deIndução de Árvores de Decisão ID3 C4.5 CART
  42. 42. UNIVERSIDADE DE PERNAMBUCO ID3 Mais simples de entender e de implementar; É um algoritmo recursivo; É baseado em busca exaustiva; Utiliza o Ganho de Informação para selecionar a melhordivisão; A principal limitação do ID3 é que ele só lida comatributos categóricos não-ordinais; Não apresenta nenhuma forma para tratar valoresdesconhecidos; Não apresenta nenhum método de pós-poda.
  43. 43. UNIVERSIDADE DE PERNAMBUCO C4.5 Usa a técnica de “dividir para conquistar”; É baseado em busca exaustiva; Lida tanto com atributos categóricos (ordinais ou não-ordinais) como com atributos contínuos; Trata valores desconhecidos; Utiliza a medida de razão de ganho para selecionar oatributo que melhor divide os exemplos; Lida com problemas em que os atributos possuem custosdiferenciados; Apresenta um método de pós-poda das árvores geradas.
  44. 44. UNIVERSIDADE DE PERNAMBUCOClassification and Regression Trees (CART) Consiste de uma técnica não-paramétrica que induz tantoárvores de classificação quanto árvores de regressão,dependendo se o atributo é nominal (classificação) ou contínuo(regressão); Utiliza a técnica de pesquisa exaustiva para definir oslimiares a serem utilizados nos nós para dividir os atributoscontínuos; As árvores geradas pelo algoritmo são sempre binárias, degrande simplicidade e legibilidade; Realiza o método de pós-poda por meio da redução do fatorcusto-complexidade.
  45. 45. UNIVERSIDADE DE PERNAMBUCO Referências Bibliográficas[1] POZZER, C. T.. Aprendizado Por Árvores de Decisão.Departamento de Eletrônica e Computação, Universidade Federal deSanta Maria, 2006. Apostila.[2] MITCHELL, T.. Machine Learning. Mc-Graw Hill, 1997.[3] QUINLAN, J. R.. Induction of Decision Trees. In: SHAVLIK J.W., DIETTERICH, T. G.. Readings in Machine Learning. 1 ed.Morgan Kaufman, 1986. P. 81-106.
  46. 46. UNIVERSIDADE DE PERNAMBUCO[4] ZUBEN, F. J. V., ATTUX, R. R. F.. Árvores de Decisão.Universidade de Campinas, 2004. Apostila.[5] QUINLAN, J. R.. C4.5: Programs for Machine Learning.Morgan Kaufman, 1993.[6] BREIMAN, L. et al. Classification and Regression Trees.Belmont, California: Wadsworth, 1984.

×