Universidade Federal de Ouro Preto (UFOP)
Programa de Pós-Graduação em Ciência da Computação (PPGCC)
Reconhecimento de Padrões
Receiver Operating Characteristics
(ROC)
David Menotti, Ph.D.
www.decom.ufop.br/menoti
Introdução
• A escolha do limiar de rejeição é uma
aspecto muito importante na construção
de um classificador.
– Mudança deste limiar afeta o desempenho do
sistema.
– ROC é uma ferramenta muito útil na análise e
comparação de classificadores.
Desempenho
• Dado um classificador com duas saídas,
existem saídas possíveis.
Desempenho
True
Positive
True
Negative
B
False
Negative
A
False
Positive
TP – Classe é A e classificamos como A
TN – Classe é B e classificamos como B
FP – Classe é B e classificamos como A
FN – Classe é A e classificamos como B
Tipos de Erro
• Erro Tipo I
– Também conhecido como α-erro ou falso
positivo.
– Acontece quando aceita-se como genuína
uma coisa que é falsa.
• Erro Tipo II
– Também conhecido como β-erro ou falso
negativo.
– Acontece quando rejeitamos algo que deveria
ter sido aceito.
Terminologia
•
•
•
•
•
True Positive  Acerto
True Negative  Rejeição correta
False Positive  Erro Tipo I, falso alarme
False Negative  Erro Tipo II
True Positive Rate (TPR)  Sensitivity
– TPR = TP/P = TP/(TP+FN)
• False Positive Rate (FPR)  (1 – Specificity)
– FPR = FP/N = FP/(FP+TN)
• Accuracy (Exatidão)
– ACC = (TP+TN)/(P+N)
Gráfico ROC
• Gráfico em duas
dimensões
– X: FPR, Y: TPR
• Vários pontos são
interessantes de
serem observados
– Conservador (A/B)
– Liberal
(B/A)
Desempenho Aleatório
• Um classificador que aparece abaixo da
diagonal principal é pior que o
desempenho aleatório.
Gráfico ROC
• Conservador
– Aquele classificador que aceita poucos “False
Positives”, mas consequentemente penaliza
bastante o desempenho dos “True Positives”
• Liberal
– Aquele classificador que não se importa muito
em aceitar bastante “False Positive”. Por
outro lado, seu desempenho nos “True
Positives” é muito bom.
Gráfico ROC
• Equal Error Rate
– Ponto do gráfico no qual FPR é igual a 1-TPR
– Medida de desempenho e comparação
quando não existe um ponto operacional
específico.
Exemplo
• Considere 20 amostras:
– 10 positivas e 10 negativas.
#
Classe
Score
#
Classe
Score
1
+
0.90
11
-
0.70
2
+
0.80
12
-
0.53
3
+
0.60
13
-
0.52
4
+
0.55
14
-
0.505
5
+
0.54
15
-
0.39
6
+
0.51
16
-
0.37
7
+
0.40
17
-
0.36
8
+
0.38
18
-
0.35
9
+
0.34
19
-
0.33
10
+
0.30
20
-
0.10
Exemplo (cont)
• Após ordenar os dados pelo score, temos o
seguinte gráfico
Note que cada ponto
operacional tem um limiar
associado.
Exemplo (cont)
• Suponha que a
especificação do seu
sistema diga que o
máximo FPR do seu
sistema é 0.10. Qual
seria o limiar de
rejeição?
• Qual seria a taxa de
acerto do sistema?
Para o limiar 0.54, a taxa de reconhecimento seria 70%
(5 + 9) / 20 = 0.70
Fawcett (2006).
Classes Desbalanceadas
• Uma propriedade bastante interessante da
curva ROC é que ela é insensível a
distribuição de classes.
• Taxa de reconhecimento é sensível
– Suponha que tenhamos 5 vezes mais
elementos na classe a do que na classe b.
– A taxa de reconhecimento pode ser elevada
mas errar quase todos os exemplos da classe
b.
Classes Desbalanceadas
• Se a proporção de exemplos positivos e
negativos muda na base de teste, a curva
ROC não sofre alterações.
• Isso permite uma fácil visualização do
desempenho dos classificadores
independentemente da distribuição das
classes.
Convex-Hull
• O conceito de
convex-hull em
ROC possibilita
– Descartar
classificadores que
não fazem parte do
convex-hull
• Classificadores B e
D nesse caso não
são necessários.
– Gerar novos
classificadores
• Através da
interpolação.
Fawcett (2006).
Convex-Hull
• Um novo classificador H, pode ser gerado da seguinte
maneira.
– Gere um número aleatório entre 0 e 1.
– Se o número for maior que k, então escolha A, caso contrário,
escolha B.
k =0.5
Um exemplo
• Deseja-se oferecer uma nova apólice de seguros para
– 4000 clientes, porém $$$ somente para 800
– (A priori) 6% respondem
• 240 respondem / 3760 não-respondem
• Dois Classificadores
– A: (0,10 ; 0,2)  0.2 x 240 + 0,10 x 3760 = 424 candidatos
– B: (0,25 ; 0,6)  0.6 x 240 + 0,25 x 3760 = 1084 candidatos
k
0,18  0.1
 0,53
0,25  0.1
Gere um k entre [0,1]
Escolha:
- A se k > 0,53,
- B, caso contrário.
Area Under the Curve (AUC)
• Métrica usada para comparar
classificadores.
Classificador B tem uma
área maior, logo um
desempenho médio melhor.
Fawcett (2006).
Referências Bibliográficas
• Fawcett,
An introduction to ROC analysis
Pattern Recognition Letters, 27:8-861–874, 2006.
• Provost & Fawcett
Robust Classification for Imprecise Environments
Machine Learning Journal, 42:3 pp. 203-231, 2001.
• Wikipedia
Receiver Operating Characteristic
en.wikipedia.org/wiki/Receiver_operating_characteristic
Download

slides - DECOM-UFOP