Regresi logistik: Kerugian dan regularisasi

Model regresi logistik dilatih menggunakan proses yang sama seperti model regresi linear, dengan dua perbedaan utama:

Bagian berikut membahas kedua pertimbangan ini secara lebih mendalam.

Kerugian Log

Di Linear regression module, Anda menggunakan squared loss (juga disebut kerugian L2) sebagai fungsi kerugian. Kerugian kuadrat berfungsi dengan baik untuk model linear yang laju perubahan nilai outputnya konstan. Misalnya, dengan model linear $y' = b + 3x_1$, setiap kali Anda menaikkan nilai input $x_1$ sebesar 1, nilai output $y'$ akan bertambah sebesar 3.

Namun, laju perubahan model regresi logistik tidak konstan. Seperti yang Anda lihat di Menghitung probabilitas, kurva sigmoid berbentuk s bukan linear. Jika nilai log-peluang ($z$) lebih dekat ke 0, peningkatan kecil pada $z$ akan menghasilkan perubahan yang jauh lebih besar pada $y$ daripada jika $z$ adalah bilangan positif atau negatif yang besar. Tabel berikut menunjukkan output fungsi sigmoid untuk nilai input dari 5 hingga 10, serta presisi yang sesuai yang diperlukan untuk mencatat perbedaan dalam hasilnya.

input output logistik digit presisi yang diperlukan
5 0,993 3
6 0,997 3
7 0,999 3
8 0,9997 4
9 0,9999 4
10 0.99998 5

Jika Anda menggunakan kerugian kuadrat untuk menghitung error fungsi sigmoid, saat output semakin mendekati 0 dan 1, Anda akan memerlukan lebih banyak memori untuk mempertahankan presisi yang diperlukan untuk melacak nilai ini.

Sebagai gantinya, fungsi kerugian untuk regresi logistik adalah Kerugian Log. Persamaan Log Loss menampilkan logaritma besarnya perubahan, bukan hanya jarak dari data ke prediksi. Kerugian Log dihitung sebagai berikut:

$\text{Kerugian Log} = -\frac{1}{N}\sum_{i=1}^{N} y_i\log(y_i') + (1 - y_i)\log(1 - y_i')$

dalam hal ini:

  • \(N\) adalah jumlah contoh berlabel dalam set data
  • \(i\) adalah indeks contoh dalam set data (misalnya, \((x_3, y_3)\) adalah contoh ketiga dalam set data)
  • \(y_i\) adalah label untuk contoh ke- \(i\). Karena ini adalah regresi logistik, \(y_i\) harus 0 atau 1.
  • \(y_i'\) adalah prediksi model Anda untuk contoh ke- \(i\) (antara 0 dan 1), mengingat kumpulan fitur di \(x_i\).

Regularisasi dalam regresi logistik

Regularisasi, mekanisme untuk memberikan penalti pada kompleksitas model selama pelatihan, sangat penting dalam pemodelan regresi logistik. Tanpa regularisasi, sifat asimtotik regresi logistik akan terus mendorong kerugian menuju 0 dalam kasus ketika model memiliki sejumlah besar fitur. Oleh karena itu, sebagian besar model regresi logistik menggunakan salah satu dari dua strategi berikut untuk mengurangi kompleksitas model:

  • Regularisasi L2
  • Penghentian awal: Membatasi jumlah langkah pelatihan untuk menghentikan pelatihan saat kerugian masih menurun.