Normalisierter Fluss

Aus testwiki
Zur Navigation springen Zur Suche springen

Ein flussbasiertes generatives Modell ist ein generatives Modell, welches die Wahrscheinlichkeitsdichte der zugrundeliegenden Trainingsdaten schätzt, indem der normalisierte Fluss (normalizing flow)[1] berechnet wird. Der normalizing flow wird aus den Rechenregeln zum Wechseln der Variablen bei Integration (siehe Transformationssatz) hergeleitet, wobei eine einfache Verteilung in die komplizierte Zielverteilung transformiert wird.

Hintergrund

Normalisierten Flüssen liegt die folgende Tatsache zugrunde: Betrachten wir die bijektive Abbildung g, sodass Y=g(X), dann gilt laut Transformationssatz

pX(x)=pY(g(x))|g(x)x|pY(y)=pX(g1(y))|g(x)x|1,

wobei |g(x)x| der Betrag der Funktionaldeterminante ist und g durch neuronale Netze parametrisiert wird.

Methode

Schema, welches den normalisierten Fluss darstellt

Log Likelihood

Betrachte Bijektionen fi, sodass z1=f1(z0), sodass z0=f11(z1).

Aufgrund des Transformationssatzes gilt:

p1(z1)=p0(z0)|detdf11(z1)dz1|, bzw.
log(p1(z1))=log(p0(z0))+log(|detdf11(z1)dz1|)=log(p0(z0))log(|detdf1(z1)dz1|),

daher gilt

log(pn(zn))=log(pn1(zn1))log(|detdfn(zn)dzn|),

und wiederholtes Einsetzen der Regel liefert:

logpK(zK)=logp0(z0)i=1Klog|detdfi(zi1)dzi1|

Training

Ziel des Trainings ist es die Kullback-Leibler-Divergenz zwischen der geschätzten Wahrscheinlichkeitsdichte pθ:=pK und der wahren, die Stichproben generierende, Wahrscheinlichkeitsdichte p* zu minimieren:

θ^=argminθ DKL[p*(x)||pθ(x)].

Durch Schätzen des Erwartungswertes in der Kullback-Leibler-Divergenz mithilfe einer Realisierung des Stichprobenmittelwertes (und Vernachlässigung konstanter Terme) können die optimalen Maximum-Likelihood Parameter θ^ geschätzt werden:

θ^=argminθ𝔼^p*(x)[log(pθ(x))]=argminθ1Ni=0Nlog(pθ(xi))

Varianten

Planarer Fluss

Das früheste Beispiel einer Abbildung f ist der planare Fluss[1]. Bei gegebener Aktivierungsfunktion h, und Parametern θ=(u,w,b) mit entsprechender Dimension, istx=fθ(z)=z+uh(w,z+b) und die inverse fθ1 (ohne allgemeingültige geschlossene Form).

Der Jacobian ist |det(I+h(w,z+b)uwT)|=|1+h(w,z+b)u,w|.

Damit der Fluss invertierbar ist, muss die Determinante überall ungleich null sein, was z. B. mit h=tanh und u,w>1 der Fall ist.

Einzelnachweise