20
Classificadores em Dados não Balanceados AULA 9 DATA MINING Sandra de Amo

Classificadores em Dados não Balanceados

  • Upload
    fell

  • View
    28

  • Download
    0

Embed Size (px)

DESCRIPTION

Classificadores em Dados não Balanceados. AULA 9 DATA MINING Sandra de Amo. Acur á cia – Taxa de erros. Acc(M) = porcentagem das tuplas dos dados de teste que são corretamente classificadas. Err(M) = 1 – Acc(M) Matriz de Confus ã o. Classes Preditas. Classes Reais. - PowerPoint PPT Presentation

Citation preview

Page 1: Classificadores em Dados não Balanceados

Classificadores em Dados não Balanceados

AULA 9

DATA MINING

Sandra de Amo

Page 2: Classificadores em Dados não Balanceados

Acurácia – Taxa de erros Acc(M) = porcentagem das tuplas dos dados de

teste que são corretamente classificadas. Err(M) = 1 – Acc(M) Matriz de Confusão

C1 C2

C1 Positivosverdadeiros

Falsos Negativos

C2 Falsos Positivos

Negativosverdadeiros

Classes Preditas

Classes Reais

Page 3: Classificadores em Dados não Balanceados

Problemas: Classes “não-balanceadas”

Exemplo : acc(M) = 90%

C1 = tem-câncer (4 pacientes)

C2 = não-tem-câncer (500 pacientes) Classificou corretamente 454 pacientes que não tem

câncer

Não acertou nenhum dos que tem câncer

Pode ser classificado como “bom classificador”

mesmo com acurácia alta ?

Page 4: Classificadores em Dados não Balanceados

Medidas para classificadores (classes não-balanceadas) Sensitividade (recall) = true-pos

pos

Especificidade = true-neg neg

Precisão = true-pos true-pos + falso-pos

% pacientes classificados corretamente como positivos dentre todos os que foram classificados como positivos

% pacientes classificados corretamente como positivos dentre todos os que realmente são positivos

Precisão e Recall : medidas originadas em Recuperação de Informação utilizadas em Classificação, quando se lida com “classes não-balanceadas”

Page 5: Classificadores em Dados não Balanceados

Medida F1 : Média harmônica de Precisão e Recall

r + pF1 =

2 rp

Exercicio: 1. Mostrar que F1 = 2 TP

2 TP + FP + FN

Exercicio: 2. Mostrar que F1 = 2

1 1+ r p

= média harmônica entre p e r

Média harmônica entre dois números x e y tende a ser próxima de min(x,y)

Assim, F1 alto implica que precisão e recall são razoavelmente altos.

Page 6: Classificadores em Dados não Balanceados

Trade-off entre TP e FP

POSITIVOS REAIS NEGATIVOS REAIS

TPFP

FN TN

Page 7: Classificadores em Dados não Balanceados

Curva ROC ROC = Receiver Operating Characteristic Curve Enfoque gráfico que mostra um trade-off entre as taxas de TP

(TPR) e FP (FPR) de um classificador.

TPR = TP/(TP + FN) ( = recall) = Porcentagem de amostras corretamente classificadas como positivas dentre todas as

positivas reais FPR = FP/(TN + FP)

Porcentagem de amostras erroneamente classificadas como positivas dentre todas as negativas reais

Ideal : TPR = 1 e FPR = 0

Page 8: Classificadores em Dados não Balanceados

Exercício Total de amostras = 12 Positivas = 8 Negativas = 4 TP = 5 FP = 2 Calcular precisão, recall, acurácia, TPR, FPR,

TNR, FNR, F1

Page 9: Classificadores em Dados não Balanceados

O que é uma curva ROC de um classificador ?

Classificador = método de classificação (ID3, J48, SVM,...)

Classificador + Dados de Amostras M1, M2, ..., Mk

Mi = modelo do classificador Mi TPR, FPR

Curva ROC do classificador: Plotagem da tabela FPR/TPR

Page 10: Classificadores em Dados não Balanceados

Como classificar uma amostra usando diferentes modelos do classificador ? O classificador precisa produzir, para cada

tupla X, a probabilidade que a tupla X ser classificada na classe Positiva.

Classificadores como redes neurais e redes bayesianas produzem tais probabilidades.

Para outros tipos de classificadores, é preciso calcular esta probabilidade.

Page 11: Classificadores em Dados não Balanceados

Como classificar uma amostra usando diferentes modelos do classificador ? D = conjunto de amostras classificadas Amostragem de D = (Tr, Te)

Tr = Treinamento , Te = Testes , Tr U Te = D Uma amostragem (Tr, Te) induz um modelo M do

classificador Classificação de uma amostra X

Pi = probabilidade de X ser classificada na classe ci = porcentagem de modelos que classifica X na classe ci

Page 12: Classificadores em Dados não Balanceados

Construção da Curva ROC de um classificador Escolhe-se aleatoriamente m amostras da massa de dados: x1, ..., xm Calcula-se pi = probabilidade de xi ser classificada na classe positiva. Ordena-se as amostras xi por ordem crescente das probabilidades

x1, x2, ..., xm

Existem modelos M1, M2, ..., Mm, Mm+1 tais que: M1: Classificam todos os xi como positivos M2: Classificam um como negativo e os outros como positivos ... Mi: Classificam (i-1) como negativos e os outros como positivos

Logo, é razoável supor que:

Page 13: Classificadores em Dados não Balanceados

Cálculo de TPR e FPR para cada modelo Mi

Page 14: Classificadores em Dados não Balanceados

Exemplo

TP

FP

TN

FN

TPR

FPR

Classe - + - - - + - +++

0.43 0.53 0.76 0.85 0.85 0.85 0.87 0.930.25 0.95

5

5

0

0

1

4

5

0

1

0.8

1

4

4

1

1

0.8

0.8

3

4

1

2

0.6

0.8

1

3

3

2

2

0.6

0.6

3

2

3

2

0.6

0.4

3

1

4

2

0.6

0.2

2

1

4

3

0.4

0.2

2

0

5

3

0.4

0

1

0

5

4

0.2

0

0

0

5

5

0

0

1.00

Page 15: Classificadores em Dados não Balanceados

Exemplo

0.1

0.3

0.2

0.4

0.5

0.6

0.7

0.8

0.9

1.0

0.00.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 FPR

TPR

Page 16: Classificadores em Dados não Balanceados

Curva Roc Cada ponto na curva corresponde a um dos

modelos induzidos pelo classificador Um bom modelo deve estar localizado

próximo do ponto (0,1) Modelos localizados na diagonal são modelos

aleatórios – TPR = FPR Modelos localizados acima da diagonal são

melhores do que modelos abaixo da diagonal.

Page 17: Classificadores em Dados não Balanceados

Exemplo

0.1

0.3

0.2

0.4

0.5

0.6

0.7

0.8

0.9

1.0

0.00.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 FPR

TPRModelo ideal

Modelos que fazem previsões aleatórias

Page 18: Classificadores em Dados não Balanceados

Comparando performance relativas de diferentes classificadores Curvas Roc são utilizadas para se medir a

performance relativa de diferentes classificadores. M1

M2

x

Até aqui M2 é melhor do que M1A partir daí, M1 fica melhor do que M2

Page 19: Classificadores em Dados não Balanceados

Area abaixo da curva ROC (AUC) A área abaixo da curva ROC fornece medida

para comparar performances de classificadores.

Quanto maior a área AUC melhor a performance global do classificador.

Classificador optimal: área =1 Classificador randômico : área = 0.5

Page 20: Classificadores em Dados não Balanceados

Referências P-N Tan et al. Introduction to Data Mining – Capitulo 5,

seção 5.7 Jesse Davis, Mark Goadrich - The Relationship between

Precision-Recall and ROC Curves. Proc. 23rd Int. Conf. On Machine Learning. 2006.

Gary M. Weiss. Mining with Rarity: A Unifying Framework. SIGKDD Explorations, Vol. 6, Issue 1, 2007.

Software: AUCCalculator 0.2

A Java program for finding AUC-ROC and AUC-PR

http://www.cs.wisc.edu/~richm/programs/AUC/