Lensa ML

Cara Kerja MLE dan MAP

Langkah 1 dari 6: Likelihood Data

Seberapa mungkin data muncul jika parameternya diketahui?

pL(p)00.250.50.7510e+04e-48e-40.001L=9.77e-4k/N=0.50
RUMUS LIKELIHOOD
L(p) = pk · (1 − p)N−k
= 0.505 · 0.505 = 9.77e-4
p (prob. sisi gambar)0.50
N (jumlah lemparan)10
k (sisi gambar teramati)5
N lemparan
10
k gambar
5
p
0.50
L(p)
9.77e-4

p = 0.50 sangat dekat dengan rasio teramati k/N = 0.50. Likelihood berada di dekat maksimumnya, jadi nilai p ini membuat data teramati hampir semungkin yang bisa dicapai.

Geser p, N, dan k. Rumus L(p) = p^k (1 − p)^(N−k) mengalikan satu faktor untuk tiap lemparan, dengan asumsi lemparan-lemparan itu independen dan berdistribusi identik. Rumus ini hanya bergantung pada jumlah k, bukan urutan sisi gambar dan sisi angka, sehingga k adalah statistik cukup: tidak ada hal lain dalam data yang membantu mengestimasi p. Koefisien binomial C(N, k) dihilangkan karena tidak bergantung pada p. Pada nilai bawaan (p = 0.5, N = 10, k = 5), L adalah 0.5^10 ≈ 9.8 × 10⁻⁴.

Langkah 2 dari 6: Log-Likelihood

Memakai log demi kestabilan numerik

plog L(p)00.250.50.751-23.1-17.4-11.6-5.9-6.93puncak di k/N
RUMUS LOG-LIKELIHOOD
log L(p) = k·log(p) + (N−k)·log(1−p)
= 5·log(0.50) + 5·log(0.50) = -6.93
p (prob. sisi gambar)0.50
N (jumlah lemparan)10
k (sisi gambar teramati)5
log L(p)
-6.93
L(p)
9.77e-4
k / N
0.50

Log-likelihood berada di puncaknya di sini. Puncak ini ada di p yang sama dengan puncak likelihood biasa, karena log tidak pernah mengubah nilai mana yang terbesar.

Geser lagi p, N, dan k, lalu bandingkan kurva ini dengan langkah sebelumnya. Untuk model Bernoulli, log L(p) berbentuk cekung, jadi puncaknya tepat satu dan gradient ascent tidak bisa tersangkut. Kelengkungannya di puncak adalah −N/(p̂(1 − p̂)), yaitu −40 pada nilai bawaan. Puncak yang lebih tajam berarti data menentukan p dengan lebih pasti. Kelengkungan ini disebut informasi Fisher, dan inversnya memberi standard error estimasi yang biasa dipakai. Log-likelihood pada neural network tidak cekung, jadi training bisa berakhir di banyak optimum yang berbeda.

Langkah 3 dari 6: Maximum Likelihood Estimation

Cari parameter yang membuat data paling mungkin

plog L(p)00.250.50.751-27.7-20.9-14.1-7.3MLE=0.50tebakanmu=0.50
MENCARI MLE: SAMAKAN TURUNAN DENGAN NOL
log L(p) = k·log(p) + (N−k)·log(1−p)
d/dp log L = k/p − (N−k)/(1−p) = 0
k·(1−p) = (N−k)·p → k = N·p
p̂ = k / N = 6 / 12 = 0.5000
N (jumlah lemparan)12
k (sisi gambar teramati)6
Tebakanmu p0.50
MLE (k/N)
0.50
p kamu
0.50
log L(MLE)
-8.32
log L(p kamu)
-8.32

Tebakanmu sama dengan MLE. Penurunan di atas menunjukkan alasannya: menyamakan turunan log L dengan nol menghasilkan p̂ = k/N = 6/12 = 0.50. Tidak ada nilai lain yang bisa menghasilkan likelihood lebih tinggi.

Geser N, k, dan Tebakanmu p, lalu bandingkan log-likelihood kamu dengan penanda hijau MLE. Menyamakan turunan dengan nol berhasil untuk model ini karena log-likelihood-nya mulus dan cekung. Resep yang sama menghasilkan estimator lain yang sudah dikenal: MLE untuk rata-rata Gaussian adalah rata-rata sampel, dan MLE untuk variansnya membagi dengan N. MLE tidak berubah oleh reparameterisasi. Jika p̂ = 0.6, MLE untuk odds p/(1 − p) adalah 1,5. Neural network tidak punya bentuk tertutup, jadi likelihood dimaksimalkan secara numerik dengan gradient descent.

Langkah 4 dari 6: Masalah pada MLE

Sampel kecil menghasilkan estimasi yang ekstrem

p̂jumlah00.250.50.75102356sebenarnya=0.5
Ukuran sampel N5
N
5
p sebenarnya
0.50
MLE (sampel 1)
0.20
Sebaran MLE
0.80

Dengan N = 5, estimasi MLE masih cukup beragam (sebaran = 0.80). Sebagian estimasi jauh dari p sebenarnya = 0.5. Data tambahan membantu, begitu juga pengetahuan prior.

Geser Ukuran sampel N dari 1 sampai 50. Setiap titik adalah MLE dari salah satu 20 eksperimen simulasi dengan koin seimbang. Dengan N = 3, eksperimen tanpa sisi gambar menghasilkan p̂ = 0, yang berarti sisi gambar mustahil muncul. Masalah yang sama muncul pada model bahasa dan Naive Bayes, ketika kata yang tidak ada di data training mendapat probabilitas nol. Perbaikan yang umum adalah Laplace smoothing, (k + 1)/(N + 2), yang diturunkan Laplace sebagai rata-rata posterior dengan prior seragam. Menambahkan prior memberi koreksi yang sejenis.

Langkah 5 dari 6: Menambahkan Prior (MAP)

Keyakinan awal ditambah bukti memberi estimasi yang lebih baik

p(dinormalisasi)00.250.50.751MAPMLE
likelihoodpriorposterior
N (jumlah lemparan)10
k (sisi gambar teramati)5
Kekuatan prior α (Beta(α,α))5
Modus prior
0.50
MLE (k/N)
0.50
Estimasi MAP
0.50
α
5

Dengan α = 5, prior menarik estimasi MAP (0,50) ke arah 0,5, menjauh dari MLE (0,50). Posterior adalah kompromi antara data dan keyakinan awal.

Geser N, k, dan Kekuatan prior α. Prior Beta(α, α) bekerja seperti 2α − 2 lemparan imajiner, setengah sisi gambar dan setengah sisi angka. Karena itulah MAP = (k + α − 1)/(N + 2α − 2). Coba N = 10, k = 9, dan α = 5: MLE adalah 0,90 dan MAP adalah 13/18 ≈ 0.72. MAP adalah modus posterior. Rata-rata posterior, (k + α)/(N + 2α), di sini bernilai 0,70. Pada posterior yang miring, keduanya berbeda, dan tidak seperti MLE, estimasi MAP berubah jika kamu melakukan reparameterisasi.

Langkah 6 dari 6: MLE vs MAP

Estimasi MAP adalah MLE dengan penalti regularization

pobjektif00.250.50.751-35.4-25.2-15.1-4.9MLEMAPObjektif MAP = log-likelihood + log-prior (penalti regularization)
log L (objektif MLE)log prior (penalti)log L + log prior (objektif MAP)
Kekuatan prior α5
N (jumlah lemparan)10
k (sisi gambar teramati)5
MLE (k/N)
0.500
MAP
0.500
Selisih
0.000
Penalti log-prior
-5.5

Prior (α = 5) dan data (N = 10) seimbang. MAP = 0.500 berada di antara MLE = 0.500 dan modus prior 0,5. Penalti ini mencegah estimasi ekstrem tanpa mengabaikan data.

Geser Kekuatan prior α, N, dan k, lalu bandingkan kurva biru, hijau, dan oranye. Pengambilan log mengubah MAP menjadi log-likelihood ditambah log-prior, sehingga prior menjadi penalti yang dijumlahkan. Di sini penaltinya (α − 1)[log p + log(1 − p)], yang terbesar pada p = 0.5. Untuk weight neural network, prior Gaussian N(0, σ²) memberi penalti −‖w‖²/(2σ²), yaitu L2 regularization dengan λ = 1/(2σ²). Prior Laplace memberi penalti L1, seperti pada lasso. Bobot penalti ini tetap, sementara log-likelihood tumbuh seiring N.

Apa itu estimasi MLE dan MAP?

Maximum likelihood estimation (MLE) memilih nilai parameter yang membuat data teramati paling mungkin. Estimasi maximum a posteriori (MAP) lebih dulu mengalikan likelihood dengan prior atas parameter, sehingga yang dipilih adalah parameter paling mungkin setelah data diketahui. Dengan prior yang datar, keduanya memberi jawaban yang sama. Ketika datanya sedikit, prior menarik estimasi MAP ke nilai yang sejak awal dianggap masuk akal.

Sebagian besar training model termasuk salah satu dari keduanya. Meminimalkan mean squared error adalah MLE dengan asumsi noise Gaussian, dan meminimalkan cross-entropy adalah MLE untuk probabilitas prediksi classifier. Menambahkan penalti L2 atau weight decay mengubahnya menjadi MAP dengan prior Gaussian pada weight, sedangkan penalti L1 bersesuaian dengan prior Laplace.

Ide utama

  • Likelihood adalah probabilitas data teramati yang dilihat sebagai fungsi dari parameter.
  • MLE memilih parameter yang memaksimalkan likelihood; untuk lemparan koin, hasilnya p̂ = k/N.
  • Memaksimalkan log-likelihood memberi jawaban yang sama dengan memaksimalkan likelihood.
  • Dengan sampel kecil, MLE bisa memberi estimasi ekstrem seperti p̂ = 0.
  • MAP memaksimalkan likelihood × prior, sehingga prior berperan sebagai regularizer.
  • Prior Gaussian pada weight memberi L2 regularization, dan prior Laplace memberi L1.

Pertanyaan umum

Apa bedanya MAP dan inferensi Bayesian penuh?

MAP hanya menyimpan satu titik, yaitu puncak posterior. Inferensi Bayesian penuh menyimpan seluruh posterior dan merata-ratakan prediksi atasnya, sehingga juga memberi ukuran ketidakpastian. MAP jauh lebih murah, tetapi mengabaikan lebar posterior.

Apakah meminimalkan mean squared error sama dengan maximum likelihood?

Ya, ketika targetnya adalah output model ditambah noise Gaussian dengan varians tetap. Negative log-likelihood-nya menjadi Σ(y − f(x))² / (2σ²) ditambah konstanta, jadi meminimalkannya sama dengan meminimalkan squared error. Dengan noise heavy-tailed, MLE menghasilkan loss yang berbeda, misalnya absolute error untuk noise Laplace.

Apakah estimasi maximum likelihood selalu tidak bias?

Tidak. MLE untuk varians Gaussian membagi dengan N dan cenderung terlalu rendah, karena itu varians sampel membagi dengan N − 1. Namun MLE konsisten: dalam kondisi standar, nilainya konvergen ke parameter sebenarnya seiring N membesar.

Apa itu algoritma EM?

Expectation-maximization mencari estimasi MLE atau MAP ketika model punya variabel tersembunyi, misalnya cluster mana yang menghasilkan tiap titik pada Gaussian mixture. Algoritma ini bergantian mengestimasi variabel tersembunyi dari parameter saat ini, lalu mencocokkan ulang parameter dengan estimasi itu. Setiap putaran tidak pernah menurunkan likelihood, walaupun bisa berhenti di maksimum lokal.

Penjelasan terkait

Referensi

  1. Goodfellow, Bengio & Courville (2016), "Deep Learning", chapter 5: Machine Learning Basics
  2. Bishop (2006), "Pattern Recognition and Machine Learning", chapters 2–3
  3. Murphy (2022), "Probabilistic Machine Learning: An Introduction" (free online edition)
  4. Dempster, Laird & Rubin (1977), "Maximum Likelihood from Incomplete Data via the EM Algorithm", JRSS Series B

Terakhir diperbarui