Vad är intuitionen för SVM-Rank och när ska jag använda den?

Bästa svaret

Jag stötte på ett antal möjliga tillämpningar av Ranking SVM i litteraturen:

* Ordinal regression * AUC-optimering * Klass-obalans * Lära sig att rangordna problem

Ursprungligen har de föreslagits för ordinal regression; AUC-optimering är bara ett speciellt fall av det (två klasser). Klassobalans är relaterad till AUC-optimering, eftersom AUC är ett rimligt resultatmått för problem med klassobalans. Rankning av SVM har också föreslagits för Learning 2 Rank-problem i samband med informationshämtning. De passar inte bra IMHO, för även om AUC också kan ses som en rangordning, skiljer den sig från standardrankningsprestandamätvärden som NDCG och genomsnittlig genomsnittlig precision: de senare är topptunga; dvs de lägger stor vikt vid de första exemplen i rangordningen (ofta exempel under rang 10 och 20 spelar ingen roll alls) medan AUC behandlar alla positioner i rankingen lika.

Med detta sagt, jag ” har använt Ranking SVM för alla ovanstående problem och IMHO har de aldrig visat sig vara användbara – t.ex. enligt min erfarenhet fungerar exempelvis viktning oftast bättre för klassobalans och för att lära sig att rangordna enkel regression på relevanspoängen (+ en icke-linjär modell) ger bättre prestanda på de flesta L2R-riktmärken. Skillnaden i AUC-prestanda mellan vanlig svm och ranking svm är försumbar IMHO.

Den mest intressanta applikationen av Ranking SVM som jag stötte på var av Thorsten Joachims och hans grupp där de använde implicit feedback från användare av en webbsökmotor (dvs användaren klickade på position 2 först och inte 1) för att generera ”exempelpar” (doc\_2 – doc\_1) som matas in i Ranking SVM – träningssignaler i det här formuläret fungerar bara för parvisa metoder som Ranking SVM. / p>

Svar

Vad står AUC för och vad är det? :

Förkortningar

AUC används mestadels för att betyda AUROC, vilket är en dålig praxis eftersom som Marc Claesen påpekade AUC är tvetydig (kan vara vilken kurva som helst) medan AUROC inte är det.

Interpreti av AUROC

AUROC har flera motsvarande tolkningar :

  • Förväntningen att en enhetligt ritad slumpmässig positiv rangordnas före en enhetlig ritad slumpmässig negativ.
  • Den förväntade andelen positiva rankade före en enhetligt ritad slumpmässig negativ.
  • Den förväntade verkliga positiva frekvensen om rankningen är dela strax före en enhetligt ritad slumpmässig negativ.
  • Den förväntade andelen negativ rangordnade efter en enhetligt ritad slumpmässig positiv.
  • Den förväntade falska positiva frekvensen om rankningen delas strax efter en enhetlig dras slumpmässigt positivt.

Beräknar AUROC

Antag att vi har en probabilistisk, binär klassificering som logistisk regression. Innan ROC-kurvan presenteras (= mottagarens funktionskaraktäristiska kurva) måste begreppet förvirringsmatris förstås. När vi gör en binär förutsägelse kan det vara fyra typer av fel:

  • Vi förutsäger 0 medan vi borde ha klassen faktiskt 0: detta kallas en True Negative , dvs. vi förutsäger korrekt att klassen är negativ (0). Ett antivirusprogram upptäckte till exempel inte en ofarlig fil som ett virus.
  • Vi förutspår 0 medan vi borde ha klassen faktiskt 1: detta kallas en Falskt negativt , dvs vi förutspår felaktigt att klassen är negativ (0). Till exempel misslyckades ett antivirus med att upptäcka ett virus.
  • Vi förutspår 1 medan vi borde ha klassen faktiskt 0: detta kallas Falskt positivt , dvs vi förutspår felaktigt att klassen är positiv (1). Till exempel ansåg ett antivirus som en ofarlig fil att vara ett virus.
  • Vi förutspår 1 medan vi borde ha klassen är faktiskt 1: detta kallas en True Positive , dvs. vi förutsäger korrekt att klassen är positiv (1). Till exempel upptäckte ett antivirus med rätta ett virus.

För att få förvirringsmatrisen går vi igenom alla förutsägelser som gjorts av modellen och räknar hur många gånger var och en av dessa fyra typer av fel förekommer:

I detta exempel på en förvirringsmatris, bland de 50 datapunkterna som klassificeras, är 45 korrekt klassificerade och de 5 är felklassificerade.

Eftersom det ofta är bekvämare att ha en enda mätning snarare än flera, för att jämföra två olika modeller, beräknar vi två mätvärden från förvirringsmatrisen, som vi senare kommer att kombinera till en:

  • Verklig positiv frekvens ( TPR ), aka. känslighet, träfffrekvens och återkallelse , som definieras som TPTP + FN. Intuitivt motsvarar detta mått andelen positiva datapunkter som korrekt betraktas som positiva, med avseende på alla positiva datapunkter. Med andra ord, ju högre TPR, desto färre positiva datapunkter kommer vi att missa.
  • Falsk positiv frekvens ( FPR ), aka. fall-out , som definieras som FPFP + TN. Intuitivt motsvarar detta mått andelen negativa datapunkter som felaktigt betraktas som positiva, med avseende på alla negativa datapunkter. Med andra ord, ju högre FPR, desto mer negativa datapunkter kommer vi att missklassificeras.

För att kombinera FPR och TPR till en enda mätning beräknar vi först de två tidigare mätvärdena med många olika tröskel (till exempel 0,00; 0,01,0,02,…, 1,00) för den logistiska regressionen, plotta dem sedan i ett enda diagram, med FPR-värdena på abscissan och TPR-värdena på ordinaten. Den resulterande kurvan kallas ROC-kurva, och det mått som vi anser är AUC för denna kurva, som vi kallar AUROC.

Följande bild visar AUROC grafiskt:

I denna figur motsvarar det blå området området under kurvan för mottagarens driftkarakteristik (AUROC). Den streckade linjen i diagonalen presenterar vi ROC-kurvan för en slumpmässig prediktor: den har en AUROC på 0,5. Den slumpmässiga prediktorn används ofta som en baslinje för att se om modellen är användbar.

Om du vill få en förstahandsupplevelse:

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *