OP secara keliru percaya bahwa hubungan antara kedua fungsi ini disebabkan oleh jumlah sampel (yaitu tunggal vs semua). Namun, perbedaan sebenarnya adalah bagaimana kami memilih label pelatihan kami.
Dalam kasus klasifikasi biner, kita dapat menetapkan label y= ± 1 atau y= 0 , 1 .
Seperti yang telah dinyatakan, fungsi logistik σ( z) adalah pilihan yang baik karena memiliki bentuk probabilitas, yaitu σ( - z)=1−σ(z) dan σ(z)∈(0,1) sebagai z→±∞ . Jika kami memilih label y=0,1 kami dapat menetapkan
P ( y= 1 | z)P ( y= 0 | z)= σ( z) = 11 + e- z= 1 - σ( z) = 11 + ez
yang dapat ditulis lebih kompak sebagai P ( y| z) = σ( z)y( 1 - σ( z) )1 - y .
Lebih mudah untuk memaksimalkan kemungkinan log. Memaksimalkan kemungkinan log sama dengan meminimalkan kemungkinan log negatif. Untuk sampel m{ xsaya, ysaya} , setelah mengambil logaritma natural dan beberapa penyederhanaan, kita akan menemukan:
l ( z) = - log( ∏sayamP ( ysaya| zsaya) ) = - Âsayamlog( P(ysaya| zsaya)) = Âsayam- ysayazsaya+ log( 1 + ezsaya)
Derivasi penuh dan informasi tambahan dapat ditemukan di notebook jupyter ini . Di sisi lain, kita mungkin menggunakan label y= ± 1 . Cukup jelas bahwa kita dapat menetapkan
P ( y| z) = σ( yz) .
Juga jelas bahwa P ( y= 0 | z) = P ( y= - 1 | z) = σ( - z) . Mengikuti langkah yang sama seperti sebelumnya kami meminimalkan dalam hal ini fungsi kerugian
L ( z) = - log( ∏jmP ( yj| zj) ) = - Âjmlog( P(yj| zj) ) = Âjmlog( 1 + e- yzj)
Dimana langkah terakhir mengikuti setelah kita mengambil timbal balik yang diinduksi oleh tanda negatif. Meskipun kita tidak harus menyamakan dua bentuk ini, mengingat bahwa dalam setiap bentuk y mengambil nilai yang berbeda, namun keduanya setara:
- ysayazsaya+ log( 1 + ezsaya) ≡ log( 1 + e- yzj)
Kasus ysaya= 1 sepele untuk ditampilkan. Jika ysaya≠ 1 , maka ysaya= 0 di sisi kiri dan ysaya= - 1 di sisi kanan.
Walaupun mungkin ada alasan mendasar mengapa kita memiliki dua bentuk yang berbeda (lihat Mengapa ada dua formulasi / notasi kerugian logistik yang berbeda? ), Satu alasan untuk memilih yang pertama adalah karena pertimbangan praktis. Dalam yang pertama kita dapat menggunakan properti ∂σ( z) / ∂z= σ( z) ( 1 - σ( z) ) untuk menghitung secara sepele ∇ l ( z) dan ∇2l ( z), keduanya diperlukan untuk analisis konvergensi (yaitu untuk menentukan kecembungan fungsi kerugian dengan menghitung Hessian ).
Saya belajar fungsi kerugian untuk regresi logistik sebagai berikut.
Regresi logistik melakukan klasifikasi biner, sehingga keluaran labelnya adalah biner, 0 atau 1. Misalkan menjadi probabilitas bahwa keluaran biner y adalah 1 diberi fitur vektor input x . Koefisien w adalah bobot yang algoritma sedang mencoba untuk belajar.P( y= 1 | x ) y x w
Karena regresi logistik adalah biner, probabilitas hanyalah 1 minus istilah di atas.P( y= 0 | x )
Fungsi kerugian adalah jumlah dari (A) output y = 1 dikalikan dengan P ( y = 1 ) dan (B) output y = 0 dikalikan dengan P ( y = 0 ) untuk satu contoh pelatihan, dijumlahkan lebih m contoh pelatihan.J( w ) y= 1 P( y= 1 ) y= 0 P( y= 0 ) m
di mana menunjukkan label i t h dalam data pelatihan Anda. Jika sebuah instance pelatihan memiliki label 1 , maka y ( i ) = 1 , meninggalkan summen kiri di tempatnya tetapi membuat summen kanan dengan 1 - y ( i ) menjadi 0 . Di sisi lain, jika instance pelatihan memiliki y = 0 , maka summand kanan dengan term 1 - y ( i ) tetap ada, tetapi sumand kiri menjadi 0y( i ) sayat h 1 y( i )= 1 1 - y( i ) 0 y= 0 1 - y( i ) 0 . Probabilitas log digunakan untuk kemudahan perhitungan.
Jika kita mengganti dan P ( y = 0 ) dengan ekspresi sebelumnya, maka kita mendapatkan:P( y= 1 ) P( y= 0 )
Anda dapat membaca lebih lanjut tentang formulir ini di catatan kuliah Stanford ini .
sumber
Alih-alih Mean Squared Error, kami menggunakan fungsi biaya yang disebut Cross-Entropy, juga dikenal sebagai Log Loss. Kerugian lintas-entropi dapat dibagi menjadi dua fungsi biaya yang terpisah: satu untuk y = 1 dan satu untuk y = 0.
Ketika kita menempatkan mereka bersama kita memiliki:
Jika Anda tidak ingin menggunakan
for
loop, Anda dapat mencoba bentuk vektor dari persamaan di atasSeluruh penjelasan dapat dilihat di Lembar Pembelajaran Mesin .
sumber