Calcular curva ROC para dados

9

Portanto, tenho 16 ensaios em que estou tentando autenticar uma pessoa de uma característica biométrica usando a Distância de Hamming. Meu limite está definido como 3,5. Meus dados estão abaixo e apenas o teste 1 é um verdadeiro positivo:

Trial   Hamming Distance
1   0.34
2   0.37
3   0.34
4   0.29
5   0.55
6   0.47
7   0.47
8   0.32
9   0.39
10  0.45
11  0.42
12  0.37
13  0.66
14  0.39
15  0.44
16  0.39

Meu ponto de confusão é que não tenho muita certeza de como fazer uma curva ROC (FPR vs. TPR OU FAR vs. FRR) a partir desses dados. Realmente não importa qual, mas estou realmente confuso sobre como proceder para calculá-lo. Qualquer ajuda seria apreciada.

rohanbk
fonte
Aqui stats.stackexchange.com/a/105577/49130 pode encontrar algumas informações adicionais sobre como desenhar uma curva ROC
Alexey Grigorev

Respostas:

7

Sugiro gráficos ROC: notas e considerações práticas para pesquisadores de Tom Fawcett, realmente uma excelente leitura. Pelo que entendi sua pergunta, você encontrará tudo o que precisa neste documento.

Edit: Inspirado por Adam Também quero recomendar meu pacote R favorito para esta tarefa: ROCR .

Steffen
fonte
Você conhece algum bom pacote Matlab que pode fazer o trabalho?
rohanbk
@rohanbk Desculpe, não. Faz muito tempo que não uso o Matlab.
amigos estão dizendo sobre steffen
O link @steffen está quebrado.
Alleo
@Alleo, obrigado pela notificação, o link agora está apontando para o cidadão (onde o pdf está disponível) ... isso deve durar mais tempo.
amigos estão dizendo sobre steffen
4

Por que você quer fazer uma curva ROC? Deseja representar graficamente a curva para suas variáveis ​​dependentes ou pretende usá-la como uma estatística de teste para avaliar a precisão de suas previsões de probabilidade (nesse caso, você está procurando a AUC [área sob a curva] )

Se você conhece R, o pacote de verificação em R tem duas funções que você achará úteis: roc.plot (), que permitirá plotar sua curva ROC, e roc.area (), que permitirá calcular AUC.

Adão
fonte
Você conhece algum bom pacote Matlab que pode fazer o trabalho?
precisa saber é o seguinte