• Nenhum resultado encontrado

Classificação - conceitos básicos, árvores de decisão, avaliação de resultados. Mineração de Dados 2011

N/A
N/A
Protected

Academic year: 2022

Share "Classificação - conceitos básicos, árvores de decisão, avaliação de resultados. Mineração de Dados 2011"

Copied!
31
0
0

Texto

(1)

Classificação - conceitos básicos, árvores de decisão, avaliação de resultados

Mineração de Dados 2011

Luís Rato

(Capítulo 4 do livro “Introduction to Data Mining”)

(2)

Universidade de Évora, 2011 Mineração de dados / Data Mining 2

Classificação: Definição

● Dado um conjunto de dados em que cada registo correspondente a um objecto tem vários atributos sendo uma deles a classe.

● Encontar um modelo (fórmula, algoritmo,

função...) que preveja a classe em função dos

atributos.

(3)

Classificação: Objectivo

● Objectivo: face a novos dados (sem classe determinada) prevêr a classe de cada novo objecto, com o máximo de precisão possível.

● Usalmente, no processo de construção do

modelo, divide-se os dados em “dados de treino”,

usados para treinar o modelo proposto, e “dados

de teste”, para validar o resultado, através de uma

estimativa da sua qualidade.

(4)

Universidade de Évora, 2011 Mineração de dados / Data Mining 4

Exemplos

● Prever se um tumor é maligno ou benigno

● Classificar transações de cartão de crédito como: “legítimas” ou “fraude”

● Classificar a forma (estrutura) das proteínas como: alpha-helix, beta-sheet, ou aleatório

● Classificar documentos ou notícias em função do tema principal: “economia”,

“tempo”, “viagens”, “desporto”

(5)

Técnicas de classificação

● Árvores de decisão

● Regras

● Redes neuronais

● Bayesiano - Naïve Bayes e redes Bayesianas

● SVMs – Máquinas de vector de Suporte

Lazy - Métodos baseados em instâncias

(6)

Universidade de Évora, 2011 Mineração de dados / Data Mining 6

Exemplo de uma árvore de decisão

Tid Refund Marital Status

Taxable

Income 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 Yes

10

no m in al

nu m ér ico

Cl as se n om in al

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Splitting Attributes

Dados de Treino Modelo: árvore de

decisão

(7)

Outro exemplo

Tid Refund Marital Status

Taxable

Income 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 Yes

10

MarSt

Refund

TaxInc

YES NO

NO

NO

Yes No

Married Single,

Divorced

< 80K > 80K

Pode haver mais do que uma árvore

que se adaptam aso dados, com igual

sucesso

(8)

Universidade de Évora, 2011 Mineração de dados / Data Mining 8

Modelo aplicado a dados de teste

Refund

MarSt

TaxInc

NO YES NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable

Income Cheat

No Married 80K ?

10

Dados de teste

Iniciar pela raiz da árvore

(9)

Modelo aplicado a dados de teste

Refund

MarSt

TaxInc

NO YES NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable

Income Cheat

No Married 80K ?

10

Dados de teste

(10)

Universidade de Évora, 2011 Mineração de dados / Data Mining 10

Modelo aplicado a dados de teste

MarSt

TaxInc

NO YES NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable

Income Cheat

No Married 80K ?

Refund

10

Dados de teste

(11)

Modelo aplicado a dados de teste

Refund

MarSt

TaxInc

NO YES NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable

Income Cheat

No Married 80K ?

10

Dados de teste

(12)

Universidade de Évora, 2011 Mineração de dados / Data Mining 12

Modelo aplicado a dados de teste

Refund

MarSt

TaxInc

NO YES NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable

Income Cheat

No Married 80K ?

10

Dados de teste

(13)

Modelo aplicado a dados de teste

Refund

MarSt

TaxInc

NO YES NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable

Income Cheat

No Married 80K ?

10

Resultado = “No”

(14)

Universidade de Évora, 2011 Mineração de dados / Data Mining 14

Construção da árvore de decisão

● Muitos Algoritmos:

– Algoritmo de Hunt (simples) – CART

– ID3, C4.5 (baseados no alg de hunt)

– SLIQ,SPRINT

(15)

Algoritmo de Hunt

Seja D

t

o conjunto de objectos dos dados de treino que chegam ao nó t

– Se D

t

tem tem objectos que têm classe y

t

, então a folha é identificada com y

t

– Se D

t

é conjunto vazio, então a folha é identificada com a classe por default, y

d

– Se D

t

contém tem objectos que têm várias

classes , usar um teste dos atributos, para dividir os dados em subconjuntos menores.

Aplicar recursivamente a cada subconjunto.

Tid Refund Marital Status

Taxable

Income 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 Yes

10

D

t

?

(16)

Universidade de Évora, 2011 Mineração de dados / Data Mining 16

Algoritmo de Hunt

Don’t Cheat

Refund

Don’t Cheat

Don’t Cheat

Yes No

Refund

Don’t Cheat

Yes No

Marital Status

Don’t Cheat

Cheat

Single,

Divorced Married

Taxable Income

Don’t Cheat

< 80K >= 80K

Refund

Don’t Cheat

Yes No

Marital Status

Don’t Cheat

Cheat

Single,

Divorced Married

Tid Refund Marital Status

Taxable

Income 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 Yes

10

(17)

Construção da árvore

● Dividir os registos baseados num teste dos atributos que optimiza um certo critério

● Questões

– Como dividir ?

 Como definir o teste dos atributos?

 Como determinar a melhor maneira de dividir os dados?

– Definir quando parar...

(18)

Universidade de Évora, 2011 Mineração de dados / Data Mining 18

Teste dos atributos e divisão

● Depende dos atributos – Nominal

– Ordinal – Contínuo

● Depende do modo de dividir – 2 ramos

– Vários ramos

(19)

Divisão de atributos nominais

● N ramos: tantos quantos os valores.

● 2 ramos (binária): tem de encontar a melhor divisão.

CarType

Family

Sports

Luxury

CarType

{Family,

Luxury} {Sports}

CarType

{Sports,

Luxury} {Family} ou

(20)

Universidade de Évora, 2011 Mineração de dados / Data Mining 20

Divisão de atributos contínuos

● Duas abordagens – Discretização

 estática – discretiza no início

 dinâmica – intervalo igual, frequência igual, clustering.

– Decisão binária: (A < v) or (A ≥ v)

 Considerar todas as hipótese de v e escolher a melhor

 Pode ser muito “pesada” computacionalmente

(21)

Como definir a melhor divisão?

Antes da divisão: 10 objectos da classe 0, 10 objectos da classe 1

Qual a melhor?

(22)

Universidade de Évora, 2011 Mineração de dados / Data Mining 22

Como definir a melhor divisão?

● Nós com classes mais homogénias são melhores

● É necessária uma medida de “pureza”

Não homogénio grande impureza

Homogénio

grande impureza

(23)

Medida de pureza

● Entropia

● Erros de classificação

● Outros (índice de gini, ….)

(24)

Universidade de Évora, 2011 Mineração de dados / Data Mining 24

Como escolher a melhor?

B?

Yes No

Node N3 Node N4

A?

Yes No

Node N1 Node N2

Antes da divisão

C0 N10 C1 N11

C0 N20 C1 N21

C0 N30 C1 N31

C0 N40 C1 N41 C0 N00

C1 N01

M0

M1 M2 M3 M4

M12 M34

Gain = M0 – M12 vs M0 – M34

(25)

Critério baseado na informação

● Entropia num nó t:

(p( j | t) é a frequência relativa da classe j no nó t ).

– Measures homogeneity of a node.

 Máxima entropia (mínima informação) quando as classes são igualmente distribuídas

Entropia ( t )=− ∑

j

p ( j ∣t ) log p ( j ∣t )

(26)

Universidade de Évora, 2011 Mineração de dados / Data Mining 26

Exemplo

C1 0

C2 6

C1 2

C2 4

C1 1

C2 5

P(C1) = 0/6 = 0 P(C2) = 6/6 = 1

Entropia = – 0 log 0 – 1 log 1 = – 0 – 0 = 0

P(C1) = 1/6 P(C2) = 5/6

Entropia = – (1/6) log

2

(1/6) – (5/6) log

2

(1/6) = 0.65

P(C1) = 2/6 P(C2) = 4/6

Entropia = – (2/6) log

2

(2/6) – (4/6) log

2

(4/6) = 0.92

Entropy ( t )=− ∑

j

p ( j∣t ) log 2 p ( j ∣t )

(27)

Baseada na informação

● Ganho de informação

O nó pai, p é dividido em k partes;

n

i

é o número de objectos na partição i

– Escolher a que maximiza o ganho – ID3 e C4.5

– Tende a favorecer muitas partições

GANHO split = Entropia ( p )− ( i =1 k n n i Entropia ( i ) )

(28)

Universidade de Évora, 2011 Mineração de dados / Data Mining 28

Baseada na informação

● Rácio de ganho:

– Usado no C4.5

GainRATIO split = GAIN Split SplitINFO

SplitINFO=−

i= 1

k n i

n log n i

n

(29)

Comparação de critérios

2-classes:

(30)

Universidade de Évora, 2011 Mineração de dados / Data Mining 30

Critério de paragem

● Parar quando cada ramo for “puro”

(31)

Exercício

● Aplicar critério da

informação (ID3) a

Referências

Documentos relacionados

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades

Durante as nictemerais, os valores do fósforo total e do fosfato total nos dois viveiros apresentaram também valores acima do recomendado pela GAA, exceto para o fosfato total na

Distribuição espectral dos sistemas de iluminação LED e do controle Observa-se na Figura 12A, a análise de componentes principais, relacionado à biometria das mudas pré-brotadas

A respeito das propostas de desregulamentação nas relações de trabalho e da seguridade social no Brasil, percebidas tanto nas defesas do Banco Mundial quanto nas

O destaque é dado às palavras que abrem signi- ficados e assim são chaves para conceitos que fluem entre prática poética na obra de arte e sua reflexão em texto científico..

O TBC surge como uma das muitas alternativas pensadas para as populações locais, se constituindo como uma atividade econômica solidária que concatena a comunidade com os

Discussion The present results show that, like other conditions that change brain excitability, early environmental heat exposure also enhanced CSD propagation in adult rats.. The

Pode haver alguns acordos prévios, como visto na classificação proposta em trabalho anterior (GUERRERO, 2006), mas estes são propostos sempre mantendo elevado