Apa perbedaan antara EM dan Gradient Ascent?

28

Apa perbedaan antara algoritma EM (Ekspektasi Maksimalisasi) dan Gradient Ascent (atau keturunan)? Apakah ada kondisi di mana mereka setara?

Aslan986
sumber

Jawaban:

21

Dari:

Xu L dan Jordan MI (1996). Pada Properti Konvergensi dari Algoritma EM untuk Campuran Gaussian . Komputasi Saraf 2: 129-151.

Abstrak:

Kami menunjukkan bahwa langkah EM dalam ruang parameter diperoleh dari gradien melalui matriks proyeksi P, dan kami memberikan ekspresi eksplisit untuk matriks.

Halaman 2

Secara khusus kami menunjukkan bahwa langkah EM dapat diperoleh dengan pra-mengalikan gradien dengan matriks denit positif. Kami memberikan ekspresi eksplisit untuk matriks ...

Halaman 3

Artinya, algoritma EM dapat dilihat sebagai variabel metrik gradien pendakian algoritma ...

Ini adalah, makalah ini menyediakan transformasi eksplisit dari algoritma EM menjadi gradien-pendakian, Newton, kuasi-Newton.

Dari wikipedia

Ada metode lain untuk menemukan perkiraan kemungkinan maksimum, seperti gradient descent, gradien konjugat atau variasi metode Gauss-Newton. Tidak seperti EM, metode seperti ini biasanya memerlukan evaluasi turunan pertama dan / atau kedua dari fungsi kemungkinan.

Ron Coleman
sumber
5
Jawaban ini tampaknya mengisyaratkan bahwa EM dan gradient descent pada dasarnya adalah algoritma yang sama, dengan transformasi yang tersedia untuk beralih dari satu algoritma ke yang lain. Ini jelas tidak benar secara umum, dan sangat tergantung pada model generatif yang dipertimbangkan. Makalah yang dikutip hanya menarik kesimpulan untuk model campuran Gaussian (yang merupakan model generatif yang relatif sederhana), dan memang demikian. Dalam pengalaman saya (diakui terbatas), ketika model ini sangat non-linear dan peran variabel laten penting, EM adalah satu-satunya cara untuk mendapatkan aturan pembaruan yang masuk akal.
biru
9

Tidak, mereka tidak setara. Secara khusus, konvergensi EM jauh lebih lambat.

Jika Anda tertarik pada titik pandang optimasi pada EM, dalam makalah ini Anda akan melihat bahwa algoritma EM adalah kasus khusus dari kelas algoritma yang lebih luas (algoritma titik proksimal).

Elvis
sumber
2
Atau untuk jenis ide serupa, Hinton dan Neal (1998)
conjugateprior
2
"Konvergensi EM jauh lebih lambat"; ini tidak didefinisikan dengan baik, dan tentu saja tidak secara umum benar. Algoritma EM adalah seluruh kelas algoritma. Untuk banyak masalah, algoritma EM tertentu adalah yang paling canggih.
Cliff AB
@CliffAB jangan ragu untuk menguraikan ini, saya akan senang membaca argumen Anda - karena saya membaca jawaban ini dari 4 tahun, saya menyadari bahwa saya tidak akan menjawab ini hari ini. Sejak itu saya menemukan bahwa dalam banyak kasus, EM adalah kenaikan gradien dengan parameter 'tingkat pembelajaran' tergantung pada titik saat ini ... (saya dapat mengedit jawaban ini sebentar untuk menunjukkan hasil semacam itu)
Elvis
"Konvergensi yang lebih lambat" dapat didefinisikan dalam hal tingkat konvergensi. Tingkat konvergensi kenaikan gradien akan tergantung pada 'tingkat pembelajaran', yang tidak mudah untuk dipilih, membuat kenaikan gradien sulit dalam banyak kasus. Namun saya masih punya firasat bahwa walaupun EM dapat dalam beberapa kasus satu-satunya algoritma yang layak (turunan dari kemungkinan atau kemungkinan itu sendiri sulit untuk dihitung), tingkat konvergensinya buruk, dibandingkan dengan metode seperti Newton.
Elvis
Algoritma "The" EM sebenarnya adalah seluruh kelas algoritma; di mana fungsi target asli sulit untuk dioptimalkan, tetapi jika beberapa variabel lain diketahui, solusinya akan jauh lebih mudah (biasanya dalam bentuk tertutup). Garis besar dasar adalah untuk mengisi variabel yang diharapkan tergantung pada nilai saat ini dari parameter lain, kemudian memperbarui parameter berdasarkan nilai yang diharapkan dari variabel. Telah ditunjukkan bahwa seberapa cepat algoritma konvergen tergantung pada seberapa informatif data yang diimputasi itu; semakin "informatif" data yang hilang adalah, semakin lambat konvergensi.
Cliff AB