Kedua Cross-entropy dan KL divergence adalah alat untuk mengukur jarak antara dua distribusi probabilitas. Apa bedanya?
Saya ingin mengenal mereka secara naluriah.
Terima kasih banyak sebelumnya.
Kedua Cross-entropy dan KL divergence adalah alat untuk mengukur jarak antara dua distribusi probabilitas. Apa bedanya?
Saya ingin mengenal mereka secara naluriah.
Terima kasih banyak sebelumnya.
Anda akan memerlukan beberapa kondisi untuk mengklaim kesetaraan antara meminimalkan entropi silang dan meminimalkan divergensi KL. Saya akan meletakkan pertanyaan Anda di bawah konteks masalah klasifikasi menggunakan cross entropy sebagai fungsi kerugian.
Mari kita ingat bahwa entropi digunakan untuk mengukur ketidakpastian sistem, yang didefinisikan sebagai
Misalnya, acara A I will die eventually
hampir pasti (mungkin kita dapat memecahkan masalah penuaan kata almost
), oleh karena itu memiliki entropi rendah yang hanya memerlukan informasi the aging problem cannot be solved
untuk membuatnya yakin. Namun, peristiwa B The president will die in 50 years
jauh lebih tidak pasti daripada A, sehingga perlu lebih banyak informasi untuk menghilangkan ketidakpastian.
Sekarang lihat definisi KL divergensi antara peristiwa A dan B
Untuk menghubungkan cross entropy dengan entropy dan KL divergence, kami meresmikan cross entropy dalam hal peristiwa A dan B sebagai
Pertanyaan selanjutnya mengikuti secara alami bagaimana entropi dapat berupa konstanta. Dalam tugas pembelajaran mesin, kita mulai dengan dataset (dilambangkan sebagai) yang merupakan masalah yang harus dipecahkan, dan tujuan pembelajaran adalah untuk membuat model estimasi distribusi (dilambangkan sebagai ) sedekat mungkin dengan distribusi masalah yang sebenarnya (dilambangkan sebagai ).
tidak diketahui dan diwakili oleh . Karena itu di dunia yang ideal, kami harapkan
Saya kira itu karena model biasanya bekerja dengan sampel yang dikemas dalam mini-batch. Untuk KL divergence dan Cross-Entropy, relasinya dapat ditulis sebagaiH(q,p)=DKL(p,q)+H(p)=−∑ipilog(qi)
Dari persamaan tersebut, kita dapat melihat bahwa divergensi KL dapat berangkat ke Entropi Silang p dan q (bagian pertama), dan entropi global kebenaran tanah p (bagian kedua).
Di banyak proyek pembelajaran mesin, minibatch terlibat untuk mempercepat pelatihan, di manap′ dari minibatch mungkin berbeda dari global p . Dalam kasus seperti itu, Cross-Entropy relatif lebih kuat dalam praktiknya sementara divergensi KL membutuhkan H (p) yang lebih stabil untuk menyelesaikan pekerjaannya.
sumber
Inilah yang saya pikirkan:
dimanap dan q adalah dua distribusi probabilitas. Dalam pembelajaran mesin, kita biasanya tahup , yang merupakan distribusi target. Misalnya, dalam masalah klasifikasi biner,Y={0,1} , jadi jika yi=1 , p(yi=1|x)=1 dan p(yi=0|x)=0 , dan sebaliknya. Diberikan masing-masingyi∀i=1,2,…,N dimana N adalah jumlah total poin dalam dataset, kami biasanya ingin meminimalkan perbedaan KL DKL(p,q) antara distribusi target p(yi|x) dan perkiraan distribusi kami q(yi|x,θ) , dirata-rata atas semua i . (Kami melakukannya dengan menyetel parameter model kamiθ . Jadi, untuk setiap contoh pelatihan, model ini memuntahkan distribusi di atas label kelas0 dan 1 .) Untuk setiap contoh, karena target ditetapkan, distribusinya tidak pernah berubah. Jadi,H(p(yi|xi)) konstan untuk masing-masing i , terlepas dari apa parameter model kami saat ini θ adalah. Jadi, minimizer dariDKL(p,q) sama dengan minimizer dari H(p,q) .
Jika Anda punya situasi di manap dan q keduanya variabel (katakanlah, di mana x1∼p dan x2∼q dua variabel laten) dan ingin mencocokkan kedua distribusi, maka Anda harus memilih antara meminimalkan DKL dan meminimalkan H(p,q) . Ini karena meminimalkanDKL menyiratkan memaksimalkan H(p) sambil meminimalkan H(p,q) menyiratkan meminimalkan H(p) . Untuk melihat yang terakhir, kita bisa menyelesaikan persamaan (1 ) untuk H(p,q) :
H(p,q)=DKL(p,q)+H(p)(2)
Yang pertama akan menghasilkan distribusi yang luas untuk p sedangkan yang terakhir akan menghasilkan yang terkonsentrasi dalam satu atau beberapa mode. Perhatikan bahwa itu adalah pilihan Anda sebagai praktisi ML apakah Anda ingin meminimalkanDKL(p,q) atau DKL(q,p) . Diskusi kecil ini diberikan dalam konteks inferensi variasional (VI) di bawah ini.
Di VI, Anda harus memilih antara meminimalkanDKL(p,q) dan DKL(q,p) , yang tidak sama karena divergensi KL tidak simetris. Jika kita sekali lagi mengobatip seperti diketahui, lalu meminimalkan DKL(p,q) akan menghasilkan distribusi q yang tajam dan fokus pada satu atau beberapa area sambil meminimalkan DKL(q,p) akan menghasilkan distribusi q yang luas dan mencakup berbagai domain q . Sekali lagi, yang terakhir adalah karena meminimalkanDKL(q,p) menyiratkan memaksimalkan entropi q .
sumber