Softmax-Regressionsbias und vorherige Wahrscheinlichkeiten für ungleiche Klassen

8

Ich verwende die Softmax-Regression für ein Klassifizierungsproblem mit mehreren Klassen. Ich habe nicht für jede Klasse die gleichen vorherigen Wahrscheinlichkeiten.

Ich weiß aus der logistischen Regression (Softmax-Regression mit 2 Klassen), dass die vorherigen Wahrscheinlichkeiten der Klassen implizit zum Bias addiert werden ( log(p0/p1) ).

Normalerweise entferne ich diesen Begriff manuell aus der Verzerrung.

Meine Frage ist, was ist der entsprechende Begriff in Softmax-Regressionsbias?

Vielen Dank.

Ran
quelle

Antworten:

2

W,b

yCat(σ(Wx+b));σi(z)=expzijexpzj.
bp(x,y|W,b)p(y|W,b,x)Wmit kleinen Werten nahe 0 und dass eine Bezeichnung in , also: Addiert die Log-Wahrscheinlichkeiten für alle angenommenen unabhängigen Beispiele , eine gute Initialisierung für würde die ungefähre Gesamtwahrscheinlichkeit des Datenprotokolls minimieren: Der Gradient des obigen wrt ist , mity[K]Wx0
logp(y|W,b,x)=k=1K1y=klogσk(Wx+b)logσy(b)
{(xi,yi)}i=1nb
i=1nlogσyi(b)=i=1nbyinlogk=1Kexpbk
bcnσ(b)cNKder Zählvektor jeder Klasse. Die obige Funktion ist ebenfalls konkav, siehe die Frage hier zu Smooth Max für einen Beweis.

Die beiden obigen Tatsachen implizieren, dass ein Maximum verfügbar ist, wenn . Dies legt wiederum nahe, dass eine brauchbare Initialisierung für den ten Term des Bias tatsächlich , der Anteil der markierten Beispiele im Trainingssatz (auch bekannt als Randstatistik). Möglicherweise sehen Sie, dass Sie eine beliebige Konstante hinzufügen und eine weitere wahrscheinlichkeitsmaximierende Verzerrung erzielen können. Ein großer Umfang würde jedoch das Lernen von . Die Beziehung zur logistischen Tendenz ist kein Zufall - in diesem Tutorial wird die Ähnlichkeit erörtert.σ(b)=c/nibiblogpiibW

VF1
quelle