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.

Slides:



Advertisements
Apresentações semelhantes
DISTRIBUIÇÕES AMOSTRAIS
Advertisements

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.
Inteligência Artificial
Fluxo em Redes Prof. Ricardo R. Santos.
Indução de Árvores de Decisão
ANÁLISE DISCRIMINANTE LIG, 18 de novembro de 2008.
ANÁLISE DISCRIMINANTE
Mineração de Dados Avaliação de Classificadores
Unidade 1: Do espaço ao plano. Figuras semelhantes.
Araken de Medeiros Santos Anne Magály de Paula Canuto
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
Formato dos Dados % 1. Title: Database for fitting contact lenses
PERCEPTRON (CONTINUAÇÃO)
Perceptron Simples Algoritmo do Bolso com catraca
Aprendizado de Máquinas
Weka Coleção de algoritmos de aprendizado de máquina implementado em Java Tanto é API como aplicativo!!! Open source software Framework para o desenvolvimento.
FACENS – Engenharia da Computação Inteligência Artificial
Fast Effective Rule Induction (Willian W. Cohen)
Classificação: conceitos básicos e árvores de decisão
Rejane Sobrino Pinheiro Tania Guillén de Torres
Aprendizagem a partir de observações
INF 1771 – Inteligência Artificial
Aprendizado de Máquina
Sistemas Inteligentes
3. Árvore de Decisão.
Aprendizado de Máquina
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.
Métodos de Classificação por Árvores de Decisão
Sistemas Inteligentes
Sistemas Inteligentes
Indução de Árvore de Decisão
Learning Sets of Rules Tom Mitchel (cap. 10)
Sistemas Inteligentes
Seleção de Atributos Ricardo Prudêncio.
Teste de Hipótese.
O Processo de KDD Data Mining SUMÁRIO - AULA1 O processo de KDD
Métodos e Técnicas de Avaliação em Educação Física
Ademir Rafael Marques Guedes
Árvores de Decisão Valmir Macário.
1 Naïve Bayesian Learning Marcílo Souto DIMAp/UFRN.
WEKA Jacques Robin João Batista Marcelino Pereira junho/2001.
Análise de Agrupamentos Marcílio Souto DIMAp/UFRN.
Mineração de Dados: Classificação e Predição
PROCESSAMENTO DIGITAL DE IMAGENS

Prof. Anne Magály de Paula Canuto
Regressão e Previsão Numérica.
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
1 Aprendizado de Máquina Marcílio Souto DIMAp/UFRN.
Inteligência Artificial I
Regras. Regras Rudimentarias 1R: aprende uma regra por atributo  atribuí a classe mais freqüente  taxa de erro: proporção de instâncias que não pertence.
Software Weka Waikato 2004, Witten & Frank 2000.
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.
Paradigmas de Mineração de Dados
Aprendizado de Máquinas
Usando Excel Prof. Rosemberg Trindade. Parte 1 Representação tabular de distribuição com variáveis discretas e contínuas.
Aprendizagem Simbólica
FEATURE SELECTION. Introdução  Estudo de metodologias relacionadas a seleção de atributos  Maldição da dimensionalidade  O número de atributos do desenvolvedor.
Aula Pratica Aprendizagem WEKA Prof. Ivan Gesteira Costa Filho Centro de Informática Universidade Federal de Pernambuco.
NOÇÕES DE TESTE DE HIPÓTESES (I) Teste de hipóteses para a proporção populacional.
Mineração de Dados (Data Mining)
Aula X: Curva ROC e teste de hipóteses M-ário
Aula 1. Introdução à Inferência Estatística
Aprendizado de Máquina
Naïve Bayesian Learning
Marcílio Souto DIMAp/UFRN
Transcrição da apresentação:

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 arranjadas yLevam a uma decisão zEstrutura da árvore determinada por meio de aprendizado

3 ADs – treinamento (1/10) zTreinamento yAD encontra regras que recursivamente bifurcam (baseadas nos valores dos atributos) o conjunto de dados xSub-conjuntos homogêneos intra sub-conjuntos e xSub-conjuntos heterogêneos inter sub-conjuntos zConteúdo dos sub-conjuntos pode ser descrito por um conjunto de regras

4 ADs – treinamento (2/10) Base de Dados “Tempo”

5 ADs – treinamento (3/10) Outlook? Sunny Overcast Rain

6 ADs – treinamento (4/10)

7 ADs – treinamento (5/10) Outlook? Sunny Overcast Rain Humidity? InstOutlookTempHumWindPlay D9sunnycoolnormalweak yes D11sunnymildnormalstrong yes InstOutlookTempHumWindPlay D1sunnyhothighweak no D2sunnyhothighstrong no D8sunnymildhighweak no NormalHigh YES

8 ADs – treinamento (6/10)

9 ADs – treinamento (7/10) Outlook? Sunny Overcast Rain Humidity? Normal High YES NO Wind? WeakStrong

10 ADs – treinamento (8/10) Outlook? Sunny Overcast Rain Humidity? Normal High YES NO Wind? WeakStrong YES NO

11 ADs – treinamento (9/10)

12 ADs – treinamento (10/10) Como classificar ? Outlook? Sunny Overcast Rain Humidity? Normal High YES NO Wind? WeakStrong YES NO

13 Indução top-down de árvores de decisão zQual é o melhor atributo? [29+, 35-] [21+, 5-][8+, 30-] [29+, 35-] A2=? [18+, 33-][11+, 2-] A1=?

14 Entropia (1/3) zS é uma amostra dos exemplos de treinamento zp  é a proporção de exemplos positivos em S zp  é a proporção de exemplos negativos em S zEntropia mede a “impureza” de S: yEntropia(S)=- p  log 2 p  - p  log 2 p  yPara mais de duas (n) classes

15 Entropia (2/3) zEntropia(S)=especifica o nr. mínimo de bits de informação necessário para codificar uma classificação de um membro arbitrário de S.

16 Entropia (3/3) zPortanto, o nr. de bits esperados para codificar  ou  de elementos aleatórios de S: y p  (-log 2 p  ) + p  (-log 2 p  ) yEntropia(S)=- p  log 2 p  - p  log 2 p 

17 Entropia - Exemplo I zSe p  é 1, o destinatário sabe que o exemplo selecionado será positivo yNenhuma mensagem precisa ser enviada yEntropia é 0 (mínima) zSe p  é 0.5, um bit é necessário para indicar se o exemplo selecionado é  ou  yEntropia é 1 (máxima) zSe p  é 0.8, então uma coleção de mensagens podem ser codificadas usando-se - em média menos de um bit - códigos mais curtos para  e mais longos para 

18 Entropia - Gráfico

19 Entropia - Exemplo I zSuponha que S é uma coleção de 14 exemplos, incluindo 9 positivos e 5 negativos (o exemplo da base de dados “Tempo”) yNotação: [9+,5-] zA entropia de S em relação a esta classificação booleana é dada por:

20 Critério de ganho (1/2) Gain(S,A)=redução esperada da entropia devido a “classificação” de acordo com A

21 Critério de ganho (2/2) zUsar o critério de ganho para decidir! [29+, 35-] [21+, 5-][8+, 30-] [29+, 35-] A2=? [18+, 33-][11+, 2-] A1=?

22 Critério de ganho - Exemplo (1/2) zSuponha que S é uma coleção de exemplos de treinamento ([9+,5-]) descritos por atributos incluindo Wind, que pode ter os valores Weak and Strong (base d dados “Tempo”).

23 Critério de ganho - Exemplo (2/2)

24 Exemplos de treinamento (1/3)

25 Exemplos de treinamento (2/3) zQue atributo deve ser selecionado para ser a raiz da árvore? yGain(S,Outlook) = yGain(S,Humidity) = yGain(S,Wind) = yGain(S,Temperature) = zem que S denota a coleção de exemplos na tabela anterior

26

27 Overfitting em árvores de decisão zSuponha que adicionamos um exemplo de treinamento com ruído #15: ySunny, Hot, Normal, Strong, PlayTennis=No yQual seria seu efeito na árvore anterior:

28 Overfitting zConsidere o erro da hipótese h sobre ydados do treinamento: erro train (h) ydistribuição completa D dos dados: erro D (h) zUma hipótese h  H “overfits” (se super ajusta) o conjunto de dados se há uma hipótese alternativa h´  H tal que yerro train (h) < erro train (h´) e yerro D (h) > erro D (h´)

29 Overfitting na aprendizagem de árvores de decisão (1/2)

30 Overfitting na aprendizagem de árvores de decisão (2/2) zComo evitar overfitting? yParar o crescimento da árvore quando a divisão dos dados não é estatisticamente significativa yDeixar a árvore crescer completamente para, então, poda-la (post-prune) zComo escolher a “melhor” árvore: yMedir a performance sobre o cj. de dados treinamento yMedir a performance sobre um cj. de dados (separado) de validação yMDL: minimizar - size(tree)+size(misclassification(tree))

31 Reduzindo o erro através da poda zDivida os dados em cj. de treinamento e validação zFaça até que uma poda adicional seja prejudicial: y1. Avalie o impacto sobre o cj. de validação de podar cada nó possível (e seus descendentes) y2. Gulosamente remova aquele que melhora mais a performance no cj. de validação

32 Efeito do uso da técnica de poda

33 Podando as regras z1. Converta a árvore para um conjunto equivalente de regras z2. Pode cada regra independentemente umas das outras z3. Ordene as regras finais em uma seqüência deseja para uso yEstes é um dos métodos mais utilizados (e.g., C4.5)

34 Atributos com valores contínuos zCrie um atributo discreto para testar um que seja contínuo yTemperature = 82.5 y(Temperature > 72.3) = t,f Temperature: PlayTennis: NO NO YES YES YES NO

35 Atributos Numéricos: Exemplo

36 Atributos Numéricos: Exemplo

37 Atributos Numéricos: Exemplo

38 Atributos Numéricos: Exemplo

39 Atributos Numéricos: Exemplo Sensor_1? > 83,46<= 83,46

40 Atributos Numéricos: Exemplo

41 Atributos Numéricos: Exemplo Sensor_1? > 83,46<= 83,46

42 Atributos Numéricos: Exemplo Sensor_1? > 83,46<= 83,46 Sensor_2? > 12,84 <= 12,84

43 Atributos Numéricos: Exemplo

44 Atributos Numéricos: Exemplo (Ruído)

45 Atributos Numéricos: Exemplo (Ruído) Sensor_1? > 83,46<= 83,46 Sensor_2? > 12,74 <= 12,74

46 Atributos Numéricos: Exemplo (Ruído) Sensor_1? > 83,46<= 83,46 Sensor_2? > 12,74 <= 12,74 Sensor_2? >13,30 <=13,30 Overfitting!

47 Atributos com vários valores (1/2) zProblema: ySe o atributo tem vários valores, Gain o selecionará ySuponha o uso de Date = 3/06/00 como atributo zUm abordagem: use GainRatio

48 Atributos com vários valores (2/2) Onde S i é um subconjunto de S para o qual A tem valor v i

49 Atributos com custo zConsidere yDiagnóstico médico, BloodTest tem custo R$500 yRobótica, Width_from_1ft tem custo 23 sec. zComo aprender uma árvore consistente com um valor de custo esperado baixo? zUma abordagem: substitua Gain por:

50 Atributos com custo (2/2) Tan e Schlimmer (1990) Nunez (1988) Onde w  [0,1] determinar a importância do custo

51 Valores de atributo desconhecidos (1/2) zE se valores do atributo A estão faltando para alguns exemplos? zMesmo assim use os exemplos de treinamento, e organize a árvore como segue: ySe um nó n testa A, atribua um valor para A que seja o mais comum entre os outros exemplos classificados nó n yAtribua para A um valor que seja o mais comum entre os outros exemplos com o mesmo valor objetivo (target value )

52 Valores de atributo desconhecidos (2/2) yAtribua uma probabilidade p i para cada valor possível v i de A xatribua uma fração p i de exemplos para cada descendente da árvore yClassifique exemplos novos da mesma maneira

53 ADs - conclusão zVantagens: yEstrutura de fácil manipulação yProduzem modelos que podem ser facilmente interpretados por humanos zDesvantagens: yPouca robustez a dados de grande dimensão yAcurácia afetada por atributos pouco relevantes yDificuldade em lidar com dados contínuos