Ich versuche, die MAP-Schätzung für ein Modell durch Gradientenabstieg zu finden. Mein Prior ist ein multivariater Gaußscher mit einer bekannten Kovarianzmatrix.
Auf konzeptioneller Ebene glaube ich zu wissen, wie man das macht, aber ich hatte auf Hilfe bei den Details gehofft. Insbesondere wenn es einen einfacheren Weg gibt, sich dem Problem zu nähern, wäre dies besonders nützlich.
Ich denke, ich muss Folgendes tun:
- Finden Sie für jede Dimension die bedingte Verteilung unter Berücksichtigung meiner aktuellen Position in den anderen Dimensionen.
- Dies gibt mir einen lokalen univariaten Gaußschen Wert in jeder Dimension mit dem richtigen Mittelwert und der richtigen Standardabweichung.
- Ich denke, dass der Gradient nur ein Vektor von Ableitungen für jede dieser univariaten Verteilungen sein sollte.
Meine Frage besteht aus zwei Teilen:
- Ist dies der beste Ansatz oder gibt es einen einfacheren Weg?
- Angenommen, ich muss diesen Weg gehen, was ist der beste Weg, um diese bedingten Verteilungen zu finden?
normal-distribution
covariance-matrix
regularization
gradient-descent
ridge-regression
David J. Harris
quelle
quelle
Antworten:
Was ist mit Optimierung?
Mal sehen, ob ich dich richtig verstehe. Sie haben ein Modell , das von einer Beobachtung abhängig ist, und einen Satz von Parametern und ein vorheriges was zu einer gemeinsamen Wahrscheinlichkeit von . Die Parameter werden gemäß einer bekannten multivariaten Normalen verteilt, dh . Sie möchten die MAP-Lösung für dieses Problem finden, dh Ein Sonderfall dieses Problems ist in der Gemeinschaft der neuronalen Netze, der als Gewichtsabfall bekannt ist, gut untersucht. In diesem Fall und .x θ p ( θ ) L = p ( y | x , θ ) p ( θ ) θ ~ N ( μ , Σ ) argmax θ L . μ = 0 Σ = I σ 2p ( y| x,θ) x θ p ( θ ) L =p(y| x,θ)p(θ) θ ∼ N.( μ , Σ )
Wie Sie bereits bemerkt haben, besteht der Trick darin, dass . Wenn Sie das Protokoll der Gaußschen Dichte nehmen, verschwinden viele hässliche Terme (das Exponential) und Sie erhalten etw wie . Wenn Sie das unterscheiden, sind die Matrixidentitäten von Sam Roweis nützlich und lassen Sie zu log p ( & thgr ; ) = 1argmaxθL=argmaxθlogL logp(θ)=12(θ−μ)TΣ−1(θ−μ)+const
(Bitte überprüfen Sie, dass dies schnell und in meinem Kopf erledigt wurde.) Zusammen mit den Derivaten Ihres Modells können Sie Standardoptimierer verwenden, um zu einer MAP-Lösung zu gelangen.
Update : Eingebauter Kommentar von David J. Harris. Formeln sollten jetzt korrekt sein.
quelle
Wenn die Wahrscheinlichkeit nicht Gaußsch ist, kann nicht gesagt werden, ob analytische Ergebnisse vorliegen. Auch die zweite Kugel ist dann im Allgemeinen falsch. Da die Gaußsche vorherige und allgemeine Wahrscheinlichkeit keine bedingten Gaußschen Verteilungen auf den Vektorkomponenten ergibt.
Eine Möglichkeit, den MAP zu erhalten, besteht darin, eine vollständige Bayes'sche Analyse durchzuführen, z. B. mit MCMC, und die Proben aus dem Seitenzahnbereich zu verwenden, um sie abzuschätzen. [In welchem Fall hätten Sie bessere Informationen als nur die Verwendung des MAP.] Aus Interesse - warum nicht trotzdem diesen Weg gehen?
Ein anderer Ansatz könnte sein, dies zu tun (ich habe dies im Allgemeinen nicht gesehen, also korrigiert mich bitte jemand, wenn es verrückt ist):
Dann lösen Sie nach (wahrscheinlich numerisch).θ
quelle