classificadores em dados não balanceados aula 9 data mining sandra de amo
TRANSCRIPT
![Page 1: Classificadores em Dados não Balanceados AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/1.jpg)
Classificadores em Dados não Balanceados
AULA 9
DATA MINING
Sandra de Amo
![Page 2: Classificadores em Dados não Balanceados AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/2.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/3.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/4.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/5.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/6.jpg)
Trade-off entre TP e FP
POSITIVOS REAIS NEGATIVOS REAIS
TPFP
FN TN
![Page 7: Classificadores em Dados não Balanceados AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/7.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/8.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/9.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/10.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/11.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/12.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/13.jpg)
Cálculo de TPR e FPR para cada modelo Mi
![Page 14: Classificadores em Dados não Balanceados AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/14.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/15.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/16.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/17.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/18.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/19.jpg)
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 AULA 9 DATA MINING Sandra de Amo](https://reader035.vdocuments.site/reader035/viewer/2022070311/552fc105497959413d8c0482/html5/thumbnails/20.jpg)
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/