Back to IF3170 Inteligensi Artifisial

Pelatihan Regresi Logistik: MLE & Stochastic Gradient Ascent (SGA)

Questions/Cues

  • Apa tujuan dari “pelatihan” model?

  • Apa yang dicari saat pelatihan? (Bobot )

  • Apa perbedaan LSE vs MLE?

  • Apa itu Maximum Likelihood Estimator (MLE)?

  • Apa tujuan MLE?

  • Apa itu LCL (Log Conditional Likelihood)?

  • Kenapa menggunakan log likelihood?

  • Bagaimana cara memaksimalkan LCL?

  • Apa itu Gradient Ascent?

  • Kenapa “Ascent” bukan “Descent”?

  • Apa itu Stochastic Gradient Ascent (SGA)?

  • Apa itu (learning rate)?

  • Apa formula update bobot SGA?

  • Apa algoritma SGA?

  • Apa itu “epoch”?

Reference Points

  • IF3170 - 12 - Log-Regression (Slide 13-19)

  • Elkan, C. (2014). Maximum Likelihood, Logistic Regression, and Stochastic Gradient Training.

1. Model Regresi Logistik (Review)

Model Regresi Logistik adalah sebuah diagram yang mengubah input fitur menjadi prediksi kelas.

  1. Input: Vektor fitur . (Input selalu ditambahkan untuk bobot atau bias).

  2. Parameter (Model): Vektor bobot . Ini adalah nilai-nilai yang ingin kita “pelajari”.

  3. Kombinasi Linear: Input dan bobot dikalikan dan dijumlahkan: .

  4. Fungsi Logistik: Hasil dimasukkan ke fungsi sigmoid untuk mendapatkan probabilitas .

    • .
  5. Output (Kelas): dibandingkan dengan threshold (misal 0.5) untuk menghasilkan kelas (0 atau 1).

2. Estimasi Parameter: Maximum Likelihood (MLE)

Pertanyaan: Bagaimana kita menemukan nilai terbaik?

  • Pada Regresi Linear, kita menggunakan LSE (meminimalkan error kuadrat).

  • Pada Regresi Logistik, kita menggunakan Maximum Likelihood Estimator (MLE).

Prinsip MLE:

Tujuannya adalah menemukan parameter yang memaksimalkan probabilitas gabungan (likelihood) dari data training yang kita observasi. Dengan kata lain: “Dari semua kemungkinan , mana yang membuat data training yang kita miliki paling mungkin terjadi?”

  • Kita ingin memaksimalkan Log Conditional Likelihood (LCL), yang merupakan jumlah dari log-likelihood setiap contoh training.

  • Formula LCL:

    (Di mana adalah probabilitas prediksi untuk contoh )

  • Kita menggunakan log karena mengubah perkalian probabilitas (yang sangat kecil) menjadi penjumlahan, yang lebih mudah dioptimasi secara numerik dan tidak underflow.

3. Optimasi: Stochastic Gradient Ascent (SGA)

Tidak ada solusi analitis (rumus langsung) untuk memaksimalkan LCL. Kita harus menggunakan metode optimasi iteratif.

  • Gradient Ascent: Metode untuk mencari puncak (maksimum) dari sebuah fungsi. (Berbeda dengan Gradient Descent yang mencari lembah/minimum). Karena tujuan kita adalah memaksimalkan LCL, kita “mendaki” (ascend) gradiennya.

  • Stochastic (Acak): Alih-alih menghitung gradien (turunan) dari LCL berdasarkan seluruh dataset (yang mahal), kita menghitungnya berdasarkan satu contoh acak pada satu waktu. Ini jauh lebih cepat dan seringkali bisa lolos dari local maxima yang buruk.

Algoritma SGA:

  1. Inisialisasi bobot (misal: semua 0).

  2. Loop untuk iterasi (disebut epochs). Satu epoch adalah satu kali melewati seluruh dataset.

  3. Di dalam setiap epoch, acak urutan data.

  4. Untuk setiap contoh dalam data:

    a. Hitung prediksi probabilitas menggunakan saat ini.

    b. Hitung “error”: (nilai target asli - nilai prediksi).

    c. Perbarui setiap bobot sesuai aturan update.

  5. Kembalikan .

Aturan Update SGA:

Turunan LCL terhadap satu bobot adalah .

Aturan update stochastic (untuk satu contoh ) adalah:

  • : Bobot untuk fitur ke-j (yang sedang di-update).

  • (learning rate): Seberapa besar langkah yang kita ambil (misal: 0.1).

  • : Error. Jika prediksi benar (), error kecil, update kecil.

  • : Nilai fitur ke-j dari contoh .

Summary

Pelatihan model Regresi Logistik bertujuan menemukan vektor bobot terbaik dengan menggunakan Maximum Likelihood Estimator (MLE), bukan LSE. Tujuannya adalah untuk memaksimalkan Log Conditional Likelihood (LCL), yaitu probabilitas (log) gabungan dari data training yang diamati. Karena tidak ada solusi analitis, ini diselesaikan secara iteratif menggunakan Stochastic Gradient Ascent (SGA), sebuah metode optimasi yang memperbarui bobot selangkah demi selangkah untuk setiap contoh data , “naik” menuju nilai LCL yang maksimum menggunakan aturan update .