marcus sampaio dsc/ufcg os slides 3-15 foram copiados de pang-ning tan

39
Marcus Sampaio DSC/UFCG s slides 3-15 foram copiados de Pang-Ning Ta

Upload: armando-freire-chagas

Post on 07-Apr-2016

222 views

Category:

Documents


4 download

TRANSCRIPT

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

Marcus SampaioDSC/UFCG

Os slides 3-15 foram copiados de Pang-Ning Tan

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

Marcus SampaioDSC/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 devem ser classificadas tanto acuradamente quanto possível– Um conjunto de teste é usado para ajudar a estimar a

acurácia de previsão do modelo

Classificação: Definição

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

Marcus SampaioDSC/UFCG

Apply Model

Induction

Deduction

Learn Model

Model

Tid Attrib1 Attrib2 Attrib3 Class

1 Yes Large 125K No

2 No Medium 100K No

3 No Small 70K No

4 Yes Medium 120K No

5 No Large 95K Yes

6 No Medium 60K No

7 Yes Large 220K No

8 No Small 85K Yes

9 No Medium 75K No

10 No Small 90K Yes 10

Tid Attrib1 Attrib2 Attrib3 Class

11 No Small 55K ?

12 Yes Medium 80K ?

13 Yes Large 110K ?

14 No Small 95K ?

15 No Large 67K ? 10

Test Set

Learningalgorithm

Training Set

Ilustração da Tarefa deClassificação

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

Marcus SampaioDSC/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 deClassificação

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

Marcus SampaioDSC/UFCG

• Árvores de Decisão• Regras de Classificação• Modelos Estatísticos

– Naïve Bayes – Bayesian Belief Network*

• Support Vector Machines*• Redes Neurais*

*- Não serão vistos

Modelos de Classificação

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

Marcus SampaioDSC/UFCG

Tid Refund MaritalStatus

TaxableIncome Cheat

1 Yes Single 125K No

2 No Married 100K No

3 No Single 70K No

4 Yes Married 120K No

5 No Divorced 95K Yes

6 No Married 60K No

7 Yes Divorced 220K No

8 No Single 85K Yes

9 No Married 75K No

10 No Single 90K Yes10

categorical

categorical

continuous

class

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Splitting Attributes

Training Data Model: Decision Tree

Árvore de Decisão

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

Marcus SampaioDSC/UFCG

Tid Refund MaritalStatus

TaxableIncome Cheat

1 Yes Single 125K No

2 No Married 100K No

3 No Single 70K No

4 Yes Married 120K No

5 No Divorced 95K Yes

6 No Married 60K No

7 Yes Divorced 220K No

8 No Single 85K Yes

9 No Married 75K No

10 No Single 90K Yes10

categorical

categorical

continuous

classMarSt

Refund

TaxInc

YESNO

NO

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

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

Marcus SampaioDSC/UFCGAcurácia de Treinamento

• Cada árvore induzida terá uma acurácia de treinamento– Acurácia 100%: cada regra (ramo da árvore) com

acurácia = 100%– Acurácia de treinamento 100% Alta acurácia

de teste• Veremos as explicações, adiante

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

Marcus SampaioDSC/UFCG

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Test DataStart from the root of tree.

Testando o Modelo

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

Marcus SampaioDSC/UFCG

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Test Data

Testando o Modelo

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

Marcus SampaioDSC/UFCG

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Test DataTestando o Modelo

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

Marcus SampaioDSC/UFCG

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Test Data

Testando o Modelo

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

Marcus SampaioDSC/UFCG

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Test Data

Testando o Modelo

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

Marcus SampaioDSC/UFCG

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Test Data

Assign Cheat to “No”

Testando o Modelo

Test Accuracy?!

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

Marcus SampaioDSC/UFCG

• Acurácias de treinamento e teste– Alta acurácia significa que o modelo é um espelho

dos dados• Síntese dos dados (importante)

– Alta acurácia de treinamento não significa necessariamente que o modelo terá alta acurácia de teste

• Pode haver regras cobrindo poucas instâncias– Sem validade estatística, o que levaria a erro nos teste

– Overfitting• Alta acurácia de treinamento Baixa acurácia de teste

Qualidade de Modelos

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

Marcus SampaioDSC/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

– Estimativa da acurácia de previsão

– Numa análise comparativa, é comum situações como

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

Marcus SampaioDSC/UFCG

ID3 (WEKA)

J48 (WEKA) Análise

Acurácia de treinamento

alta médiaID3 é bom

para síntese dos

dados

Acurácia de teste

média altaJ48 tende a ser melhor para testes

Acurácia de previsão

média altaJ48 tende a

ser mais confiável que ID3

Complementaridade de Algoritmosde Árvore de Decisão

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

Marcus SampaioDSC/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

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

Marcus SampaioDSC/UFCG

Estado Temp Umid Vento Jogoensol quente alta falso nãoensol quente alta verdade nãonublado quente alta falso simchuvoso amena alta falso simchuvoso fria normal falso sim

chuvoso fria normal verdade nãonublado fria normal verdade simensol amena alta falso nãoensol fria normal falso sim

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

Marcus SampaioDSC/UFCG

chuvoso amena normal falso sim

ensol amena normal verdade sim

nublado amena alta verdade sim

nublado quente normal falso sim

chuvoso amena alta verdade não

Atenção: Não é o mesmo conjunto das provas sim e não invertidos

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

Marcus SampaioDSC/UFCG

Chuvoso

Estado

EnsolaradoNublado

SimNão Sim

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

Marcus SampaioDSC/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 apareceEncontre a classe mais freqüenteForme um ramo da árvore

Calcule a taxa de erro da árvore candidata Escolha uma das árvores candidatas com a menor taxa de erro

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

Marcus SampaioDSC/UFCG

  atributo regras erros total de erros

1 estado ensolarado nãonublado simchuvoso sim

2/50/42/5

4/14

2 temperatura

quente não*amena simfria sim

2/42/61/4

5/14

3 umidade alta nãonormal sim

3/71/7

4/14

4 ventania falso simverdade não*

2/83/6

5/14

*- Escolha aleatória

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

Marcus SampaioDSC/UFCGAlgoritmo

• 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“, ou do livro-texto), mas não quando o tempo estiver ensolarado

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

Marcus SampaioDSC/UFCG

Árvores de Decisão Stricto Sensu

Salário Educação Status1.000 secundária rejeitado4.000 graduado aceito1.500 graduado rejeitado7.500 pós-grad aceito1.800 pós-grad aceito

aceito rejeitado

Salário

2.000< 2.000

pós-grad

aceitoEducação

Análise de Crédito

graduado

Conj. de Treinamento

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

Marcus SampaioDSC/UFCGConstruçã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

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

Marcus SampaioDSC/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

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

Marcus SampaioDSC/UFCG

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

Marcus SampaioDSC/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

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

Marcus SampaioDSC/UFCG

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

Marcus SampaioDSC/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

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

Marcus SampaioDSC/UFCG

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

Marcus SampaioDSC/UFCG

• Exercício– Calcule a acurácia de treinamento da árvore do

slide anterior

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

Marcus SampaioDSC/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!

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

Marcus SampaioDSC/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”

• J.48– Versão WEKA do C4.5

• C5.0 (See5)– Versão comercial do C4.5

• Outros algoritmos– Ver a biblioteca WEKA

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

Marcus SampaioDSC/UFCGPoda ("Pruning")

• Principal técnica para contornar “overfitting”• Exemplo: os dados a minerar referem-se a

contratos de trabalho

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

Marcus SampaioDSC/UFCGAntes da Poda

Acurácia de Treinamento = 100%

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

Marcus SampaioDSC/UFCGDepois da Poda

Acurácia de Treinamento < 100%, mas o modelo se torna mais confiável (acurácia de previsão)

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

Marcus SampaioDSC/UFCG

• Os algoritmos de indução de árvores são muito eficientes, em termos de tempo

• Algoritmos de navegação em árvores, 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– Existe o melhor modelo para um dado problema!

Conclusões sobreÁrvores de Decisão