Saya mencoba mencari perkiraan MAP untuk model berdasarkan gradient descent. Sebelumnya saya adalah multivariat Gaussian dengan matriks kovarian yang dikenal.
Pada tingkat konseptual, saya pikir saya tahu bagaimana melakukan ini, tetapi saya berharap bantuan dengan detailnya. Secara khusus, jika ada cara yang lebih mudah untuk mendekati masalah, maka itu akan sangat berguna.
Inilah yang saya pikir perlu saya lakukan:
- Untuk setiap dimensi, temukan distribusi bersyarat, mengingat posisi saya saat ini di dimensi lain.
- Ini memberi saya Gaussian univariat lokal di setiap dimensi, dengan mean dan standar deviasi yang benar.
- Saya pikir gradien seharusnya hanya menjadi vektor turunan untuk masing-masing distribusi univariat ini.
Pertanyaan saya memiliki dua bagian:
- Apakah ini pendekatan terbaik untuk diambil, atau ada cara yang lebih mudah?
- Dengan asumsi saya harus menempuh rute ini, apa cara terbaik untuk menemukan distribusi bersyarat ini?
normal-distribution
covariance-matrix
regularization
gradient-descent
ridge-regression
David J. Harris
sumber
sumber
Jawaban:
Bagaimana dengan optimasi?
Mari kita lihat apakah saya mengerti Anda dengan benar. Anda punya modelp ( y| x,θ) dikondisikan pada beberapa pengamatan x dan seperangkat parameter θ dan sebelumnya p ( θ ) mengarah ke kemungkinan gabungan L =p(y| x,θ)p(θ) . Parameter didistribusikan menurut normal multivariat yang dikenal, yaituθ ∼ N( μ , Σ ) . Anda ingin menemukan solusi MAP untuk masalah ini, yaitu
Seperti yang sudah Anda catat, triknya adalah ituargmaxθL =argmaxθcatatanL. . Ketika Anda mengambil log dari kepadatan Gaussian, banyak istilah jelek (eksponensial) menghilang dan Anda akan berakhir dengan sth seperticatatanp ( θ ) =12( θ - μ)TΣ- 1( θ - μ ) + const . Jika Anda membedakannya, identitas matriks Sam Roweis akan berguna dan membiarkan Anda tiba
(Harap verifikasi, ini dilakukan dengan cepat dan di kepala saya.) Bersama dengan turunan dari model Anda, Anda dapat menggunakan pengoptimal di luar rak untuk sampai pada solusi MAP.
Pembaruan : Komentar yang dimasukkan oleh David J. Harris. Formula seharusnya benar sekarang.
sumber
Jika kemungkinannya bukan Gaussian, tidak mungkin untuk mengatakan jika ada hasil analitik. Juga, peluru kedua kemudian salah secara umum. Karena Gaussian sebelum dan kemungkinan umum tidak membuat untuk distribusi gaussian bersyarat pada komponen vektor.
Salah satu cara untuk mendapatkan MAP adalah dengan melakukan analisis Bayesian penuh, misalnya menggunakan MCMC dan menggunakan sampel dari posterior untuk memperkirakannya. [Dalam hal ini Anda akan memiliki informasi yang lebih baik daripada hanya menggunakan MAP.] Karena tidak tertarik - mengapa tidak turun rute ini?
Pendekatan lain bisa dilakukan (saya tidak melihat ini dilakukan secara umum sehingga seseorang tolong perbaiki saya jika itu gila):
Kemudian pecahkan untukθ (mungkin secara numerik).
sumber