Motivasi dari algoritma Maksimalisasi Ekspektasi

20

Dalam pendekatan algoritma EM kami menggunakan ketidaksetaraan Jensen untuk sampai pada

logp(x|θ)logp(z,x|θ)p(z|x,θ(k))dzlogp(z|x,θ)p(z|x,θ(k))dz

dan definisikan olehθ(k+1)

θ(k+1)=argmaxθlogp(z,x|θ)p(z|x,θ(k))dz

Semua yang saya baca EM hanya menjatuhkannya tetapi saya selalu merasa tidak nyaman dengan tidak memiliki penjelasan mengapa algoritma EM muncul secara alami. Saya mengerti bahwa log likelihood biasanya digunakan untuk menangani penambahan, bukan perkalian, tetapi tampilan log dalam definisi θ(k+1) terasa tidak termotivasi untuk saya. Mengapa seseorang harus mempertimbangkan log dan bukan fungsi monoton lainnya? Untuk berbagai alasan saya menduga bahwa "makna" atau "motivasi" di balik maksimalisasi harapan memiliki semacam penjelasan dalam hal teori informasi dan statistik yang memadai. Jika ada penjelasan seperti itu yang akan jauh lebih memuaskan daripada hanya algoritma abstrak.

pengguna782220
sumber
3
Apa algoritma maksimalisasi harapan? , Nature Biotechnology 26 : 897–899 (2008) memiliki gambaran yang bagus yang menggambarkan bagaimana algoritma bekerja.
chl
@ chl: Saya telah melihat artikel itu. Poin yang saya tanyakan adalah pemberitahuan bahwa tidak ada tempat yang menjelaskan mengapa pendekatan non-log tidak berfungsi
user782220

Jawaban:

10

Algoritma EM memiliki interpretasi yang berbeda dan dapat muncul dalam berbagai bentuk dalam aplikasi yang berbeda.

Semuanya dimulai dengan fungsi kemungkinan , atau ekuivalen, fungsi log-likelihood ingin kami maksimalkan. (Kami umumnya menggunakan logaritma karena menyederhanakan perhitungan: Ini sepenuhnya monoton, cekung, dan .) Dalam dunia ideal, nilai hanya bergantung pada parameter model , jadi kita dapat mencari melalui ruang dan menemukan yang memaksimalkan .log p ( x | q ) log ( a b ) = log a + log b p q q pp(x|θ)logp(x|θ)log(ab)=loga+logbp θθp

Namun, dalam banyak aplikasi dunia nyata yang menarik hal-hal lebih rumit, karena tidak semua variabel diamati. Ya, kita mungkin secara langsung mengamati , tetapi beberapa variabel lain tidak teramati. Karena variabel yang hilang , kita berada dalam situasi ayam-dan-telur: Tanpa kita tidak dapat memperkirakan parameter dan tanpa kita tidak dapat menyimpulkan berapa nilai mungkin.z z z θ θ zxz zzθθz

Di sinilah algoritma EM berperan. Kita mulai dengan tebakan awal parameter model dan mendapatkan nilai yang diharapkan dari variabel yang hilang (yaitu, langkah E). Ketika kita memiliki nilai-nilai , kita dapat memaksimalkan kemungkinan wrt parameter (yaitu, langkah M, sesuai dengan persamaan dalam pernyataan masalah). Dengan kita dapat memperoleh nilai-nilai baru yang diharapkan dari (langkah E lainnya), seterusnya dan seterusnya. Dengan kata lain, dalam setiap langkah kita mengasumsikan salah satu dari keduanya, danz z θ arg maks θ z z θθzzθargmaxθzzθ, dikenal. Kami mengulangi proses berulang ini sampai kemungkinan tidak dapat ditingkatkan lagi.

Singkatnya, ini adalah algoritma EM. Sudah diketahui bahwa kemungkinannya tidak akan pernah berkurang selama proses EM berulang ini. Tetapi perlu diingat bahwa algoritma EM tidak menjamin global optimal. Artinya, mungkin berakhir dengan optimal lokal dari fungsi kemungkinan.

Penampilan dalam persamaan tidak bisa dihindari, karena di sini fungsi yang ingin Anda maksimalkan ditulis sebagai kemungkinan log.θ ( k + 1 )logθ(k+1)

Weiwei
sumber
Saya tidak melihat bagaimana ini menjawab pertanyaan.
broncoAbierto
9

Kemungkinan vs kemungkinan log

Seperti yang telah dikatakan, diperkenalkan dalam kemungkinan maksimum hanya karena umumnya lebih mudah untuk mengoptimalkan jumlah daripada produk. Alasan kami tidak mempertimbangkan fungsi monoton lainnya adalah bahwa logaritma adalah fungsi unik dengan sifat mengubah produk menjadi jumlah.log

Cara lain untuk memotivasi logaritma adalah sebagai berikut: Alih-alih memaksimalkan probabilitas data dalam model kami, kami dapat mencoba untuk meminimalkan Kullback-Leibler divergensi antara distribusi data, , dan distribusi model, p ( x θ ) ,pdata(x)p(xθ)

DKL[pdata(x)∣∣p(xθ)]=pdata(x)logpdata(x)p(xθ)dx=constpdata(x)logp(xθ)dx.

Istilah pertama di sisi kanan konstan dalam parameter. Jika kami memiliki sampel dari distribusi data (titik data kami), kami dapat memperkirakan istilah kedua dengan kemungkinan log rata-rata data,N

pdata(x)logp(xθ)dx1Nnlogp(xnθ).

Pandangan alternatif EM

Saya tidak yakin ini akan menjadi jenis penjelasan yang Anda cari, tetapi saya menemukan pandangan berikut tentang maksimalisasi harapan jauh lebih mencerahkan daripada motivasinya melalui ketidaksetaraan Jensen (Anda dapat menemukan deskripsi terperinci dalam Neal & Hinton (1998) atau dalam buku PRML Chris Bishop, Bab 9.3).

Tidak sulit untuk menunjukkannya

logp(xθ)=q(zx)logp(x,zθ)q(zx)dz+DKL[q(zx)∣∣p(zx,θ)]

untuk . Jika kita menyebut istilah pertama di sisi kanan , ini menyiratkan hal ituF ( q , θ )q(zx)F(q,θ)

F(q,θ)=q(zx)logp(x,zθ)q(zx)dz=logp(xθ)DKL[q(zx)∣∣p(zx,θ)].

Karena divergensi KL selalu positif , adalah batas bawah pada log-kemungkinan untuk setiap tetap . Sekarang, EM dapat dilihat sebagai secara maksimal memaksimalkan sehubungan dengan dan . Secara khusus, dengan menetapkan di E-langkah, kita meminimalkan perbedaan KL di sisi kanan dan dengan demikian memaksimalkan .F(q,θ)qFqθq(zx)=p(zx,θ)F

Lucas
sumber
Terima kasih untuk kirimannya! Meskipun dokumen yang diberikan tidak mengatakan logaritma adalah fungsi unik yang mengubah produk menjadi jumlah. Dikatakan logaritma adalah satu-satunya fungsi yang memenuhi ketiga properti yang terdaftar secara bersamaan .
Weiwei
@ Weiwei: Benar, tetapi kondisi pertama terutama mengharuskan fungsi tersebut tidak dapat dibalik. Tentu saja, f (x) = 0 juga menyiratkan f (x + y) = f (x) f (y), tetapi ini merupakan kasus yang tidak menarik. Kondisi ketiga meminta turunan pada 1 adalah 1, yang hanya berlaku untuk logaritma ke basis . Jatuhkan batasan ini dan Anda mendapatkan logaritma ke basis yang berbeda, tetapi masih logaritma. e
Lucas
4

Makalah yang saya temukan mengklarifikasi sehubungan dengan maksimalisasi-harapan adalah Bayesian K-Means sebagai Algoritma "Maximisasi-Ekspektasi" (pdf) oleh Welling dan Kurihara.

Misalkan kita memiliki model probabilistik dengan pengamatan x , z variabel acak tersembunyi, dan total parameter θ . Kami diberi dataset D dan dipaksa (dengan kekuatan yang lebih tinggi) untuk membuat p ( z , θ | D ) .p(x,z,θ)xzθDp(z,θ|D)

1. Pengambilan sampel Gibbs

Kami dapat memperkirakan dengan sampling. Gibbs sampling memberi p ( z , θ | D ) dengan bergantian:p(z,θ|D)p(z,θ|D)

θp(θ|z,D)zp(z|θ,D)

2. Teluk Variasional

Sebagai gantinya, kita dapat mencoba membuat distribusi dan q ( z ) dan meminimalkan perbedaan dengan distribusi kita setelah p ( θ , z | D ) . Perbedaan antara distribusi memiliki nama mewah yang nyaman, KL-divergence. Untuk meminimalkan K L [ q ( θ ) q ( z ) | | p ( θ , z | D ) ] kami memperbarui:q(θ)q(z)p(θ,z|D)KL[q(θ)q(z)||p(θ,z|D)]

q(θ)exp(E[logp(θ,z,D)]q(z))q(z)exp(E[logp(θ,z,D)]q(θ))

3. Ekspektasi-Maksimalisasi

Untuk datang dengan distribusi probabilitas penuh untuk dan θ mungkin dianggap ekstrim. Mengapa kita tidak mempertimbangkan estimasi titik untuk salah satu dari ini dan menjaga yang lain tetap bagus dan bernuansa. Dalam EM, parameter θ ditetapkan sebagai yang tidak layak untuk distribusi penuh, dan ditetapkan ke nilai MAP (Maksimum A Posteriori), θ .zθθθ

θ=argmaxθE[logp(θ,z,D)]q(z)q(z)=p(z|θ,D)

Di sini sebenarnya akan menjadi notasi yang lebih baik: operator argmax dapat mengembalikan beberapa nilai. Tapi jangan sampai nitpick. Dibandingkan dengan variational Bayes Anda melihat bahwa mengoreksi log oleh exp tidak mengubah hasilnya, sehingga tidak perlu lagi.θargmaxlogexp

4. Maksimalisasi-Harapan

Tidak ada alasan untuk memperlakukan sebagai anak manja. Kita juga bisa menggunakan estimasi titik z untuk variabel tersembunyi kami dan memberikan parameter θ kemewahan distribusi penuh.zzθ

z=argmaxzE[logp(θ,z,D)]q(θ)q(θ)=p(θ|z,D)

Jika variabel tersembunyi kami adalah variabel indikator, kami tiba-tiba memiliki metode yang murah secara komputasi untuk melakukan inferensi pada jumlah cluster. Dengan kata lain: pemilihan model (atau deteksi relevansi otomatis atau bayangkan nama mewah lain).z

5. Mode bersyarat iterasi

Tentu saja, anak poster inferensi perkiraan adalah dengan menggunakan estimasi titik untuk parameter serta pengamatan z .θz

θ=argmaxθp(θ,z,D)z=argmaxzp(θ,z,D)

Untuk melihat bagaimana Maximization-Expectation dimainkan, saya sangat merekomendasikan artikel ini. Namun menurut saya, kekuatan dari artikel ini bukanlah aplikasi untuk alternatif berarti, tetapi penjelasan yang jelas dan ringkas tentang perkiraan ini.k

Anne van Rossum
sumber
(+1) ini adalah ringkasan yang indah dari semua metode.
kedarps
4

Ada teknik optimasi yang berguna yang mendasari algoritma EM. Namun, biasanya dinyatakan dalam bahasa teori probabilitas sehingga sulit untuk melihat bahwa pada intinya adalah metode yang tidak ada hubungannya dengan probabilitas dan harapan.

Mempertimbangkan masalah memaksimalkan (atau ekuivalen log g ( x ) ) terhadap x . Jika Anda menuliskan ekspresi untuk g ( x ) dan menetapkannya sama dengan nol, Anda akan sering berakhir dengan persamaan transendental untuk dipecahkan. Ini bisa jahat.

g(x)=iexp(fi(x))
logg(x)xg(x)

Sekarang anggaplah bahwa bermain dengan baik bersama dalam arti bahwa kombinasi linear dari mereka memberi Anda sesuatu yang mudah untuk dioptimalkan. Misalnya, jika semua f i ( x ) adalah kuadrat dalam x maka kombinasi linear dari f i ( x ) juga akan kuadratik, dan karenanya mudah dioptimalkan.fifi(x)xfi(x)

Mengingat anggapan ini, itu akan menjadi dingin jika, untuk mengoptimalkan entah bagaimana kita bisa mengocok log masa lalu Σ sehingga bisa memenuhi exp dan menghilangkan mereka. Kemudian f i bisa bermain bersama. Tetapi kita tidak bisa melakukan itu.logg(x)=logiexp(fi(x))logexpfi

Mari kita lakukan hal terbaik berikutnya. Kami akan membuat fungsi lain yang mirip dengan g . Dan kami akan membuatnya dari kombinasi linear dari f i .hgfi

Katakanlah adalah tebakan untuk nilai optimal. Kami ingin meningkatkan ini. Mari kita cari fungsi lain h yang cocok dengan g dan turunannya di x 0 , yaitu g ( x 0 ) = h ( x 0 ) dan g ( x 0 ) = h ( x 0 ) . Jika Anda memplot grafik h di lingkungan kecil x 0 itu akan terlihat mirip dengan g .x0hgx0g(x0)=h(x0)g(x0)=h(x0)hx0g

Anda dapat menunjukkan bahwa Kami menginginkan sesuatu yang cocok dengan ini di x 0 . Ada pilihan alami: h ( x ) = konstan + Σ i f i ( x ) exp ( f i ( x 0 ) ) .

g(x)=ifi(x)exp(fi(x)).
x0
h(x)=constant+ifi(x)exp(fi(x0)).
Anda dapat melihat mereka cocok di . Kita mendapatkan h ( x ) = i f i ( x ) exp ( f i ( x 0 ) ) . Karena x 0 adalah konstanta, kami memiliki kombinasi linear sederhana dari f i yang turunannya cocok dengan g . Kita hanya harus memilih konstanta dalam h untuk membuat g ( x 0 ) = h (x=x0
h(x)=ifi(x)exp(fi(x0)).
x0figh .g(x0)=h(x0)

Jadi dimulai dengan , kita membentuk h ( x ) dan mengoptimalkannya. Karena mirip dengan g ( x ) di lingkungan x 0, kami berharap optimum h mirip dengan optimum g. Setelah Anda memiliki perkiraan baru, buat h berikutnya dan ulangi lagi.x0h(x)g(x)x0hh

Saya harap ini memotivasi pilihan . Ini persis prosedur yang terjadi di EM.h

h(x)g(x)h(x)xgg(x0)hgh

exp

Dan Piponi
sumber
3

Seperti yang Anda katakan, saya tidak akan membahas detail teknis. Ada beberapa tutorial yang sangat bagus. Salah satu favorit saya adalah catatan kuliah Andrew Ng . Lihatlah juga referensi di sini .

  1. K

    p(x)=i=1KπiN(x|μi,Σi)
    πixμiΣiπimewakili kemungkinan komponen ith dapat menjelaskan sampel itu), dan mengambil jumlah tertimbang. Sebagai contoh nyata, bayangkan Anda ingin mengelompokkan dokumen teks. Idenya adalah untuk mengasumsikan bahwa setiap dokumen milik topik (sains, olahraga, ...) yang tidak Anda ketahui sebelumnya !. Topik yang mungkin adalah variabel tersembunyi. Kemudian Anda diberi banyak dokumen, dan dengan menghitung n-gram atau fitur apa pun yang Anda ekstrak, Anda ingin kemudian menemukan cluster tersebut dan melihat ke cluster mana masing-masing dokumen itu milik. EM adalah prosedur yang menyerang masalah ini secara bertahap: langkah ekspektasi berupaya meningkatkan penugasan sampel yang telah dicapai sejauh ini. Langkah maksimalisasi Anda meningkatkan parameter campuran, dengan kata lain, bentuk cluster.
  2. Intinya tidak menggunakan fungsi monotonik tetapi fungsi cembung. Dan alasannya adalah ketidaksamaan Jensen yang memastikan bahwa estimasi algoritma EM akan meningkat pada setiap langkah.

jpmuc
sumber