Mengapa kita menggunakan Kullback-Leibler divergence daripada cross entropy dalam fungsi objektif t-SNE?

39

Dalam pikiran saya, perbedaan KL dari distribusi sampel ke distribusi sebenarnya hanyalah perbedaan antara cross entropy dan entropy.

Mengapa kita menggunakan cross entropy untuk menjadi fungsi biaya dalam banyak model pembelajaran mesin, tetapi menggunakan Kullback-Leibler divergence dalam t-sne? Apakah ada perbedaan kecepatan belajar?

JimSpark
sumber
1
Lihat di sini untuk intuisi tentang KL: stats.stackexchange.com/questions/188903/…
kjetil b halvorsen

Jawaban:

81

Divergensi KL adalah cara alami untuk mengukur perbedaan antara dua distribusi probabilitas. Entropi dari distribusi memberikan jumlah bit minimum yang mungkin per pesan yang akan dibutuhkan (rata-rata) untuk menyandikan peristiwa yang diambil dari . Untuk mencapai batas ini dibutuhkan kode optimal yang dirancang untuk , yang memberikan kata-kata kode yang lebih pendek untuk peristiwa probabilitas yang lebih tinggi. dapat diartikan sebagai jumlah bit ekstra yang diharapkan per pesan yang diperlukan untuk menyandikan peristiwa yang diambil dari distribusi benar , jika menggunakan kode optimal untuk distribusi daripadap p p D K L ( p q )H(p)pppDKL(pq)q ppqp. Ini memiliki beberapa properti yang bagus untuk membandingkan distribusi. Misalnya, jika dan sama, maka divergensi KL adalah 0.qpq

Entropi silang dapat diartikan sebagai jumlah bit per pesan yang dibutuhkan (rata-rata) untuk menyandikan peristiwa yang diambil dari distribusi benar , jika menggunakan kode optimal untuk distribusi . Perhatikan perbedaannya: mengukur jumlah rata-rata bit ekstra per pesan, sedangkan mengukur jumlah rata-rata total bit per pesan. Memang benar bahwa, untuk tetap , akan tumbuh seiring menjadi semakin berbeda dari . Tapi, jika tidak dipegang tetap, sulit untuk menafsirkanp q D K L ( p q ) H ( p , q ) p H ( p , q ) q p p H ( p , q ) pH(p,q)pqDKL(pq)H(p,q)pH(p,q)qppH(p,q)sebagai ukuran absolut dari perbedaan, karena ia tumbuh dengan entropi .p

Divergensi KL dan cross entropy terkait sebagai:

DKL(pq)=H(p,q)H(p)

Kita dapat melihat dari ungkapan ini bahwa, ketika dan sama, maka entropi silang tidak nol; melainkan, sama dengan entropi .q ppqp

Cross entropy umumnya muncul dalam fungsi kerugian dalam pembelajaran mesin. Dalam banyak situasi ini, diperlakukan sebagai distribusi 'benar', dan sebagai model yang kami coba optimalkan. Misalnya, dalam masalah klasifikasi, cross entropy loss yang umum digunakan (alias log loss ), mengukur cross entropy antara distribusi empiris label (diberi input) dan distribusi yang diprediksi oleh classifier. Distribusi empiris untuk setiap titik data hanya menetapkan probabilitas 1 ke kelas titik data itu, dan 0 untuk semua kelas lainnya. Catatan sisi: Entropi silang dalam kasus ini ternyata sebanding dengan kemungkinan log negatif, jadi meminimalkannya setara dengan memaksimalkan kemungkinan.qpq

Perhatikan bahwa (distribusi empiris dalam contoh ini) adalah tetap. Jadi, itu akan sama dengan mengatakan bahwa kita meminimalkan divergensi KL antara distribusi empiris dan distribusi yang diprediksi. Seperti yang dapat kita lihat dalam ungkapan di atas, keduanya berhubungan dengan istilah aditif (entropi dari distribusi empiris). Karena diperbaiki, tidak berubah dengan parameter model, dan dapat diabaikan dalam fungsi kerugian. Kami mungkin masih ingin berbicara tentang perbedaan KL karena alasan teoretis / filosofis tetapi, dalam hal ini, mereka setara dari perspektif penyelesaian masalah optimisasi. Ini mungkin tidak benar untuk penggunaan lain dari cross entropy dan KL divergence, di manaH ( p ) p H ( p ) ppH(p)pH(p)p mungkin berbeda.

t-SNE cocok dengan distribusi di ruang input. Setiap titik data dipetakan ke dalam ruang embedding, di mana distribusi yang sesuai cocok. Algoritme berusaha menyesuaikan penyematan untuk meminimalkan . Seperti di atas, dipegang tetap. Jadi, dari perspektif masalah optimasi, meminimalkan divergensi KL dan meminimalkan entropi silang adalah setara. Memang, van der Maaten dan Hinton (2008) mengatakan dalam bagian 2: "Ukuran alami dari kesetiaan dengan mana model adalah perbedaan Kullback-Leibler (yang ada dalam case sama dengan cross-entropy hingga konstanta aditif). "q D K L ( p q ) p q j i p j ipqDKL(pq)pqjipji

van der Maaten dan Hinton (2008) . Visualisasi data menggunakan t-SNE.

pengguna20160
sumber
Bisakah saya menjawab 'favorit'? Saya ingin menyimpan yang ini karena ini adalah penjelasan yang sangat bagus
zwep
1
Terima kasih, senang membantu Anda. Anda dapat menandai pertanyaan sebagai favorit untuk menyimpan seluruh utas, dengan mengeklik ikon bintang di bawah tombol pilih. Anda dapat melihat daftar favorit Anda di halaman akun Anda.
user20160