reconhecimento de padrões receiver operating characteristics (roc)

21
Reconhecimento de Padrões Receiver Operating Characteristics (ROC) David Menotti, Ph.D. www.decom.ufop.br/menoti Universidade Federal de Ouro Preto (UFOP) Programa de Pós-Graduação em Ciência da Computação (PPGCC)

Upload: yahto

Post on 18-Mar-2016

27 views

Category:

Documents


2 download

DESCRIPTION

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. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

Reconhecimento de Padrões

Receiver Operating Characteristics (ROC)

David Menotti, Ph.D.www.decom.ufop.br/menoti

Universidade Federal de Ouro Preto (UFOP)Programa de Pós-Graduação em Ciência da Computação (PPGCC)

Page 2: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

Page 3: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

Desempenho

• Dado um classificador com duas saídas, existem saídas possíveis.

Page 4: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

DesempenhoTrue Positive

FalsePositive

FalseNegative

True Negative

AB

TP – Classe é A e classificamos como ATN – Classe é B e classificamos como BFP – Classe é B e classificamos como AFN – Classe é A e classificamos como B

Page 5: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

Page 6: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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)

Page 7: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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)

Page 8: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

Desempenho Aleatório

• Um classificador que aparece abaixo da diagonal principal é pior que o desempenho aleatório.

Page 9: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

Page 10: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

Page 11: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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

Page 12: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

Exemplo (cont)• Após ordenar os dados pelo score, temos o

seguinte gráfico

Note que cada ponto operacional tem um limiar associado.

Page 13: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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

Page 14: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

Fawcett (2006).

Page 15: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

Page 16: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

Page 17: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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).

Page 18: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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

Page 19: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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

53,01.025,01.018,0

kGere um k entre [0,1]Escolha:- A se k > 0,53,- B, caso contrário.

Page 20: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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).

Page 21: Reconhecimento de Padrões Receiver Operating Characteristics  (ROC)

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.

• WikipediaReceiver Operating Characteristicen.wikipedia.org/wiki/Receiver_operating_characteristic