A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Marcus Sampaio DSC/UFCG Os slides 3-15 foram copiados de Pang-Ning Tan.

Apresentações semelhantes


Apresentação em tema: "Marcus Sampaio DSC/UFCG Os slides 3-15 foram copiados de Pang-Ning Tan."— Transcrição da apresentação:

1 Marcus Sampaio DSC/UFCG Os slides 3-15 foram copiados de Pang-Ning Tan

2 Marcus Sampaio DSC/UFCG Dada uma coleção de instâncias (conjunto de treinamento) –Cada instância contém um conjunto de atributos, um dos atributos é a classe  classificação supervisionada A meta é induzir um modelo para o atributo classe como uma função de valores de outros atributos Objetivo: instâncias novas ou de previsão ou de execução devem ser classificadas tanto acuradamente quanto possível –Um conjunto de teste é usado para ajudar a estimar a acurácia de previsão (execução) do modelo Classificação: Definição

3 Marcus Sampaio DSC/UFCG Ilustração da Tarefa de Classificação

4 Marcus Sampaio DSC/UFCG Predizer tumores em células: benigno, maligno Classificar transações de cartão de crédito: legítimas, fraudulentas Classificar estruturas secundárias de proteínas: “alpha-helix”, “beta-sheet”, “random coil” Categorizar notícias como finanças, tempo, esporte, etc Exemplos de Tarefas de Classificação

5 Marcus Sampaio DSC/UFCG Árvores de Decisão Regras de Classificação Modelos Estatísticos –Naïve Bayes –Bayesian Belief Networks* “Support Vector Machines”* Redes Neurais* Técnicas de Classificação *- Não serão vistas

6 Marcus Sampaio DSC/UFCG categorical continuous class Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Splitting Attributes Training Data Model: Decision Tree Árvore de Decisão

7 Marcus Sampaio DSC/UFCG categorical continuous class MarSt Refund TaxInc YES NO Yes No Married Single, Divorced < 80K> 80K There could be more than one tree that fits the same data! The induced tree is algorithm-dependent Outro Exemplo de Árvore de Decisão

8 Marcus Sampaio DSC/UFCG Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Test Data Start from the root of tree. Testando o Modelo

9 Marcus Sampaio DSC/UFCG Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Test Data Testando o Modelo

10 Marcus Sampaio DSC/UFCG Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Test Data Testando o Modelo

11 Marcus Sampaio DSC/UFCG Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Test Data Testando o Modelo

12 Marcus Sampaio DSC/UFCG Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Test Data Testando o Modelo

13 Marcus Sampaio DSC/UFCG Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Test Data Assign Cheat to “No” Testando o Modelo Accuracy?!

14 Marcus Sampaio DSC/UFCG Outras interpretações para acurácia de treinamento –Alta acurácia significa que o modelo é um espelho dos dados Síntese dos dados (importante) –Baixa acurácia não significa necessariamente que o modelo é ruim O modelo não é uma síntese perfeita dos dados, mas possivelmente –Alta acurácia de testes, e consequentemente de previsão Qualidade de Modelos Revisitada

15 Marcus Sampaio DSC/UFCG Em resumo –Modelo-espelho Bom para conhecer os dados –Alta acurácia de teste Importante para acertar com o o conjunto de previsão (execução) –Estimativa da acurácia de previsão (execução) –Numa análise comparativa, é comum situações como

16 Marcus Sampaio DSC/UFCG ID3J48Análise espelho altamédia ID3 para conhecer os dados acurácia de teste médiaalta J48 tende a ser melhor para o conj. de prev. acurácia de previsão médiaalta J48 tende a ser mais confiável que ID3 Complementaridade de Algoritmos de Árvore de Decisão

17 Marcus Sampaio DSC/UFCG Árvores 1R Árvores de decisão com um só nível (fora a raiz)  árvores 1R O interessante e surpreendente é que árvores 1R podem ser confiáveis –Alta acurácia de previsão Exemplo: Prever a realização de jogo, dadas as condições meteorológicas –Problema do tempo

18 Marcus Sampaio DSC/UFCG EstadoTempUmidVentoJogo ensolquentealtafalsonão ensolquentealtaverdadenão nubladoquentealtafalsosim chuvosoamenaaltafalsosim chuvosofrianormalfalsosim chuvosofrianormalverdadenão nubladofrianormalverdadesim ensolamenaaltafalsonão ensolfrianormalfalsosim

19 Marcus Sampaio DSC/UFCG chuvosoamenanormalfalsosim ensolamenanormalverdadesim nubladoamenaaltaverdadesim nubladoquentenormalfalsosim chuvosoamenaaltaverdadenão

20 Marcus Sampaio DSC/UFCG Chuvoso Estado Ensolarado Nublado SimNãoSim

21 Marcus Sampaio DSC/UFCG Algoritmo de Indução de Árvores 1R Para cada atributo (  atributo de classificação) Para cada valor do atributo, faça Conte quantas vezes cada classe aparece Encontre a classe mais freqüente Forme um ramo da árvore Calcule a taxa de erro da árvore candidata Escolha uma das árvores candidatas com a menor taxa de erro

22 Marcus Sampaio DSC/UFCG atributoregraserrostotal de erros 1estado ensolarado  não nublado  sim chuvoso  sim 2/5 0/4 2/5 4/14 2temperatur a quente  não* amena  sim fria  sim 2/4 2/6 1/4 5/14 3umidade alta  não normal  sim 3/7 1/7 4/14 4ventania falso  sim verdade  não* 2/8 3/6 5/14 *- Escolha aleatória

23 Marcus Sampaio DSC/UFCG Algoritmo Interpretação da árvore –Com possivelmente alta probabilidade, existirá jogo (previsão) quando o tempo estiver nublado ou chuvoso (vocês estão percebendo que isto é coisa de inglês, ou da "commonwealth"!), mas não quando o tempo estiver ensolarado Exercício –Qual é a acurácia de treinamento do modelo?

24 Marcus Sampaio DSC/UFCG Full Training Set outlook: sunny-> no overcast-> yes rainy-> yes (10/14 instances correct) === Confusion Matrix === a b <-- classified as 7 2 | a = yes 2 3 | b = no Rodando o OneR

25 Marcus Sampaio DSC/UFCG Árvores de Decisão aceitorejeitado Salário  2.000 < 2.000 pós-grad aceito Educação Análise de Crédito  graduado Conj. de Treinamento

26 Marcus Sampaio DSC/UFCG Construção de Árvores Problema recursivo –Seleciona-se um atributo para ser o atributo-raiz da árvore –Cada valor do atributo é um ramo da árvore Decompõe o conjunto-treinamento em sub-conjuntos, um para cada valor do atributo (intervalo, às vezes) –Em princípio, quando todas as instâncias em um ramo tiverem a mesma classificação, o processo de decomposição pára Não esquecer que acurácia de treinamento de 100% pode não ser o objetivo Como determinar cada atributo-raiz? –A determinação é baseada no conceito de entropia

27 Marcus Sampaio DSC/UFCG Entropia –Conceito emprestado da Termodinâmica, que significa grau de desordem das moléculas de um gás  entropia do gás Exemplo: o problema do tempo

28 Marcus Sampaio DSC/UFCG

29 Marcus Sampaio DSC/UFCG O primeiro atributo-raiz a ser escolhido é Estado –Menor entropia (entropia: grau de desordem) Ver, no livro-texto, como a entropia é calculada –A ‘olho nu’, podia ser também Umidade –Note que o algoritmo 1R, por outras vias  menor taxa de erro  chega a conclusões similares (menor entropia), mas pára no primeiro nível da árvore

30 Marcus Sampaio DSC/UFCG

31 Marcus Sampaio DSC/UFCG Umidade é o segundo nodo do primeiro ramo da árvore –Note que não há necessidade de dividir os conjuntos de instâncias deste modo Induzir uma árvore-espelho não necessariamente leva à melhor acurácia de previsão A aplicação recursiva da mesma idéia conduz à árvore final para o problema do tempo

32 Marcus Sampaio DSC/UFCG

33 Marcus Sampaio DSC/UFCG Exercício –Calcule a acurácia de treinamento da árvore do slide anterior

34 Marcus Sampaio DSC/UFCG Rodando o ID3 Full Training Set outlook = sunny | humidity = high: no | humidity = normal: yes outlook = overcast: yes outlook = rainy | windy = TRUE: no | windy = FALSE: yes Correctly Classified Instances 14 100 % Incorrectly Classified Instances 0 0 % === Confusion Matrix === a b <-- classified as 9 0 | a = yes 0 5 | b = no

35 Marcus Sampaio DSC/UFCG Rodando o J48 J48 unpruned tree Percentage split: 66% ------------------ outlook = sunny | humidity = high: no (3.0) | humidity = normal: yes (2.0) outlook = overcast: yes (4.0) outlook = rainy | windy = TRUE: no (2.0) | windy = FALSE: yes (3.0) === Classifier model (full training set) === Correctly Classified Instances 2 40 % Incorrectly Classified Instances 3 60 %

36 Marcus Sampaio DSC/UFCG === Classifier model (full training set) === Percentage split: 66% J48 pruned tree ------------------ outlook = sunny | humidity = high: no (3.0) | humidity = normal: yes (2.0) outlook = overcast: yes (4.0) outlook = rainy | windy = TRUE: no (2.0) | windy = FALSE: yes (3.0)

37 Marcus Sampaio DSC/UFCG Idealmente, o processo termina quando todos os nós-folhas são puros, isto é, todos os conjuntos de instâncias têm a mesma classe Entretanto, pode não ser possível alcançar esta 'feliz' situação –Podemos ter duas instâncias do conjunto- treinamento com os mesmos valores do conjunto de atributos, porém com classes diferentes Um tipo de ‘sujeira’ Uma ‘feliz’ situação pode não ser desejável: algoritmos sofisticados, como o J48, preferem errar no treinamento para acertar na previsão!

38 Marcus Sampaio DSC/UFCG Algoritmos Que Induzem Árvores ID3 –Objetiva 100% de acurácia de treinamento Bom para conhecer os dados de mineração C4.5 –Produz modelos em geral mais confiáveis que o ID3 –Pode se afastar do conjunto de treinamento Mecanismo de poda (“pruning”), para a solução do problema de “overfitting” –‘Desconfia’ que há erro de dados –Classes mal representadas J.48 –Versão WEKA do C4.5 C5.0 (See5) –Versão comercial do C4.5 Outros algoritmos –Ver a biblioteca WEKA

39 Marcus Sampaio DSC/UFCG Poda ("Pruning") Principal técnica para contornar “overfitting” Exemplo: os dados a minerar referem-se a contratos de trabalho

40 Marcus Sampaio DSC/UFCG Antes da Poda Acurácia de Treinamento = 100%

41 Marcus Sampaio DSC/UFCG Depois da Poda Acurácia de Treinamento < 100%, mas o modelo se torna mais confiável (acurácia de previsão)

42 Marcus Sampaio DSC/UFCG Os algoritmos de indução de árvores são muito eficientes, em termos de tempo Algoritmos de navegação em árvores – oráculo --, para previsão, são extremamente eficientes Árvores de decisão são fáceis de interpretar, se a sua complexidade for simples ou mediana –Muito frequentemente, não é assim Impossibilidade de gerar ‘galhos’ com negação ou disjunção Os algoritmos de árvores de decisão induzem modelos tão eficientes, na média, quanto os algoritmos que induzem outros tipos de modelo Um processo de MD deve decidir entre n modelos, incluindo árvores e outros tipos de modelo –Não existe o melhor modelo, mas –Pode existir aproximadamente o melhor modelo para um dado problema! Conclusões sobre Árvores de Decisão


Carregar ppt "Marcus Sampaio DSC/UFCG Os slides 3-15 foram copiados de Pang-Ning Tan."

Apresentações semelhantes


Anúncios Google