Come formare una curva di richiamo di precisione quando ho un solo valore per PR?


12

Ho un incarico di data mining in cui realizzo un sistema di recupero di immagini basato sul contenuto. Ho 20 immagini di 5 animali. Quindi in totale 100 immagini.

Il mio sistema restituisce le 10 immagini più rilevanti in un'immagine di input. Ora devo valutare le prestazioni del mio sistema con una curva di richiamo di precisione. Tuttavia, non capisco il concetto di curva di richiamo di precisione. Supponiamo che il mio sistema restituisca 10 immagini per un'immagine di gorilla, ma solo 4 di loro sono gorilla. Le altre 6 immagini restituite sono di altri animali. Così,

  • precisione è 4/10 = 0.4(resi pertinenti) / (tutti restituiti)
  • il richiamo è 4/20 = 0.2(resi rilevanti) / (tutti i pertinenti)

Quindi ho solo un punto <0.2,0.4>, non una curva. Come posso avere una curva (cioè una serie di punti)? Devo cambiare il numero di immagini restituite (questo è fissato a 10 nel mio caso)?


2
La maggior parte dei modelli assegna una probabilità di appartenenza a una classe, non a una classe stessa, oppure ne si estrae una da un classificatore. La curva viene derivata modificando il limite di probabilità. Probabilmente otterrai risposte più dettagliate se menzioni il classificatore che stai utilizzando.
charles,

Calcolo i vettori delle caratteristiche (colore, trama e forma) e ottengo i punteggi di somiglianza per ciascuno, li riassumo per un punteggio di somiglianza totale, quindi ordina in ordine decrescente. i primi 10 indici di immagini sono i più rilevanti. Posso ottenere l'indice di classe dall'indice delle immagini poiché le immagini sono ordinate (20 gorilla, 20 giraffe, ecc.) Spero di essermi chiarito, dal momento che non capisco completamente i concetti classificatore / descrittore ecc.
Jeff

Realizzato che non ho letto bene la domanda. Pensavo di avere un problema di due classi (gorilla / no-gorilla). Con più lezioni ben oltre me, questo può essere utile: stats.stackexchange.com/questions/2151/…
charles,

Risposte:


11

La generazione di una curva PR è simile alla generazione di una curva ROC. Per disegnare tali grafici è necessario un ranking completo del set di test. Per fare questa classifica, hai bisogno di un classificatore che emetta un valore di decisione piuttosto che una risposta binaria. Il valore della decisione è una misura di fiducia in una previsione che possiamo usare per classificare tutte le istanze di test. Ad esempio, i valori decisionali della regressione logistica e SVM sono rispettivamente una probabilità e una distanza (firmata) per l'iperpiano di separazione.

Se disponi di valori di decisione, definisci un insieme di soglie su detti valori di decisione. Queste soglie sono impostazioni diverse di un classificatore: ad esempio puoi controllare il livello di conservatorismo. Per la regressione logistica, la soglia predefinita sarebbe ma è possibile superare l'intero intervallo di . In genere, le soglie vengono scelte come valori di decisione univoci resi dal modello per il set di test.( 0 , 1 )f(x)=0.5(0,1)

Ad ogni scelta della soglia, il modello produce previsioni diverse (ad es. Diverso numero di previsioni positive e negative). Come tale, ottieni una serie di tuple con precisione diversa e richiama ad ogni soglia, ad esempio una serie di tuple . La curva PR viene disegnata in base alle coppie .( P i , R i )(Ti,Pi,Ri)(Pi,Ri)

Se ho compreso correttamente il tuo commento, il punteggio di somiglianza totale che calcoli può essere utilizzato come valore decisionale.


Questo non è chiaro per me, puoi elaborare un esempio dettagliato simile alla situazione di reperimento di immagini di animali dell'OP?
MR
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.