MEDIDAS DE DESEMPENHO Classificação SUPERVISIONADA Matriz de Confusão • A matriz de confusão de uma hipótese h oferece uma medida efetiva do modelo de classificação, ao mostrar o número de classificações corretas versus as classificações preditas para cada classe, sobre um conjunto de exemplos T • O número de acertos, para cada classe, se localiza na diagonal principal M(Ci,Ci) da matriz • Os demais elementos M(Ci,Cj), para i ≠ j, representam erros na classificação • A matriz de confusão de um classificador ideal possui todos esses elementos iguais a zero uma vez que ele não comete erros Medidas de Desemepenho • Acurácia: porcentagem de amostras positivas e negativas classificadas corretamente sobre a soma de amostras positivas e negativas TP TN Accuracy TP TN FP FN Estimação da taxa de erro (ou de acerto = Acuracia) • Holdout - 2/3 treinamento, 1/3 teste • Validação cruzada (k-fold) • K conjuntos exclusivos e exaustivos • O algoritmo é executado k vezes • Bootstrap • Com reposição de amostras Desbalanceamento de Classes • Suponha um conjunto de amostras com a seguinte distribuição de classes • dist(C1, C2, C3) = (99.00%, 0.25%, 0.75%) • Um classificador simples que classifique sempre novos exemplos como pertencentes à classe majoritária C1 teria uma precisão de 99,00% • Isto pode ser indesejável quando as classes minoritárias são aquelas que possuem informação importante. Por exemplo: • C1: paciente normal, • C2: paciente com doença A • C3: paciente com doença B Desbalanceamento de Classes Exemplo : C1 = pacientes com câncer (4 pacientes) C2 = pacientes saudáveis (500 pacientes) acc(M) = 90% • Classificou corretamente 454 pacientes que não tem câncer • Não acertou nenhum dos que tem câncer Pode ser considerado um “bom classificador”? Desbalanceamento de Classes • Quando se trabalha com classes desbalanceadas é desejável utilizar uma medida de desempenho diferente da precisão • A maioria dos sistemas de aprendizado é projetada para otimizar a precisão. Estes classificadores apresentam um desempenho ruim se o conjunto de treinamento encontrase fortemente desbalanceado, • Algumas técnicas foram desenvolvidas para lidar com esse problema, tais como a introdução de custos de classificação incorreta, a remoção de amostras redundantes ou prejudiciais ou ainda a detecção de exemplos de borda e com ruído Medidas de Desemepenho • Sensitividade (Recall): porcentagem de amostras positivas classificadas corretamente sobre o total de amostras positivas Sensitivity = TP TP = TP + FN Positive • Precisão: porcentagem de amostras positivas classificadas corretamente sobre o total de amostras classificadas como positivas TP P recision TP FP • Especificidade: porcentagem de amostras negativas identificadas corretamente sobre o total de amostras negativas TN TN Specificity = = TN + FP Negative Medidas de Desempenho • F-measure também chamada F-score. É uma média ponderada de precisão e recall 2 (P recision Recall) F (P recision Recall) 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 Exemplo Pts without the disease Pts with disease Test Result Limiar Call these patients “negative” Call these patients “positive” Test Result Call these patients “negative” Call these patients “positive” True Positives Test Result without the disease with the disease Call these patients “negative” Call these patients “positive” Test Result False Positives Call these patients “negative” Call these patients “positive” True negatives Test Result Call these patients “negative” Call these patients “positive” False negatives Test Result Movendo o Limiar para a direita ‘‘’’ ‘‘+ ’’ Test Result Movendo o Limiar para a esquerda ‘‘’’ ‘‘+ ’’ Test Result Curva ROC True Positive Rate (sensitivity) 100% 0 % 0 % False Positive Rate (1-specificity) 100 % 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. Comparação curvas ROC A poor test: A good test: 100% True Positive Rate True Positive Rate 100% 0 % 0 % 100% False Positive Rate 0 % 0 % 100% False Positive Rate Comparando performance relativas de diferentes classificadores • Curvas Roc são utilizadas para se medir a performance relativa de diferentes classificadores. M1 M2 Até aqui M2 é melhor do que M1 A partir daí, M1 fica melhor do que M2 x Análise da curva ROC • Ponto (0,1) é o classificador perfeito: classifica todas as amostras positivas e negativas corretamente. FPR=0 e TPR=1. • O ponto (0,0) representa um classificador que classifica todas as amostras como negativas, enquanto o ponto (1,1) corresponde a um classificador que classifica todas as amostras como positivas. • O ponto (1,0) é o classificador que classifica incorretamente todas as amostras. • Em muitos casos, os classificadores possuem um parâmetro que pode ser ajustado para aumentar TP aumentando também FP. Cada parâmetro fornece um par (FP, TP). Um classificador não-paramétrico é representado por um único ponto na curva ROC. Extremos da curva ROC Best Test: Worst test: 100% True Positive Rate True Positive Rate 100% 0 % 0 % 0 % False Positive Rate 100 % The distributions don’t overlap at all 0 % False Positive Rate 100 % The distributions overlap completely 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 AUC para diferentes curvas ROC 100% 100% True Positive Rate True Positive Rate AUC = 100% 0 % 0 % 0 % False Positive Rate 100 % 0 % False Positive Rate 100 % 100% 100% 0 % False Positive Rate True Positive Rate AUC = 90% True Positive Rate 0 % AUC = 50% 100 % 0 % AUC = 65% 0 % False Positive Rate 100 % 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/