Como formar uma curva Precision-Recall quando eu tenho apenas um valor para PR?

12

Tenho uma atribuição de mineração de dados em que faço um sistema de recuperação de imagens com base em conteúdo. Eu tenho 20 imagens de 5 animais. Assim, no total, 100 imagens.

Meu sistema retorna as 10 imagens mais relevantes para uma imagem de entrada. Agora, preciso avaliar o desempenho do meu sistema com uma curva Precision-Recall. No entanto, não entendo o conceito de uma curva Precision-Recall. Digamos que meu sistema retorne 10 imagens para uma imagem de gorila, mas apenas 4 delas são gorilas. As outras 6 imagens retornadas são de outros animais. Portanto,

  • precisão é 4/10 = 0.4(relevantes retornados) / (todos retornados)
  • recall é 4/20 = 0.2(relevantes retornados) / (todos os relevantes)

Então, eu só tenho um ponto <0.2,0.4>, não uma curva. Como tenho uma curva (ou seja, um conjunto de pontos)? Devo alterar o número de imagens retornadas (isso é fixado em 10 no meu caso)?

jeff
fonte
2
A maioria dos modelos atribui uma probabilidade de pertencer a uma classe, não a uma classe em si - ou você extrai uma de um classificador. A curva é derivada alterando o corte de probabilidade. Você provavelmente obterá respostas mais detalhadas se mencionar o classificador que está usando.
charles
Eu calculo vetores de características (cor, textura e forma) e obtenho pontuações de semelhança para cada uma, somando-as para uma pontuação total de similaridade e, em seguida, decido. os 10 principais índices de imagem são os mais relevantes. Posso obter o índice de classe no índice de imagens, já que as imagens são ordenadas (20 gorilas, 20 girafas etc.) Espero ter me esclarecido, pois não entendo completamente os conceitos de classificador / descritor etc.
jeff
Percebi que não li bem a pergunta. Pensei que você tivesse um problema de duas classes (gorila / não-gorila). Com mais aulas muito além de mim, isso pode ser útil: stats.stackexchange.com/questions/2151/…
charles

Respostas:

11

Gerar uma curva PR é semelhante a gerar uma curva ROC. Para desenhar esses gráficos, você precisa de uma classificação completa do conjunto de testes. Para fazer essa classificação, você precisa de um classificador que produza um valor de decisão em vez de uma resposta binária. O valor da decisão é uma medida de confiança em uma previsão que podemos usar para classificar todas as instâncias de teste. Como exemplo, os valores de decisão de regressão logística e SVM são uma probabilidade e uma distância (assinada) para o hiperplano de separação, respectivamente.

f(x)=0,5(0 0,1)

(TEu,PEu,REu)(PEu,REu)

Se entendi seu comentário corretamente, a pontuação total de similaridade que você calcula pode ser usada como um valor de decisão.

Marc Claesen
fonte
Isso não está claro para mim, você pode trabalhar com um exemplo detalhado semelhante à situação de recuperação de imagem animal do OP?
MR