Diambil dari pos ini: https://stats.stackexchange.com/a/245452/154812
Masalah
Ada beberapa masalah dengan mempelajari vektor kata menggunakan jaringan saraf "standar". Dengan cara ini, kata vektor dipelajari sementara jaringan belajar untuk memprediksi kata berikutnya yang diberi jendela kata-kata (input dari jaringan).
Memprediksi kata berikutnya seperti memprediksi kelas. Yaitu, jaringan semacam itu hanyalah sebuah "standar" multinomial (multi-class) classifier. Dan jaringan ini harus memiliki neuron keluaran sebanyak kelas yang ada. Ketika kelas adalah kata-kata aktual, jumlah neuron sangat besar.
Jaringan saraf "standar" biasanya dilatih dengan fungsi biaya lintas-entropi yang membutuhkan nilai-nilai neuron keluaran untuk mewakili probabilitas - yang berarti bahwa "skor" keluaran yang dihitung oleh jaringan untuk setiap kelas harus dinormalisasi, dikonversi menjadi probabilitas aktual untuk setiap kelas. Langkah normalisasi ini dicapai melalui fungsi softmax. Softmax sangat mahal bila diterapkan pada lapisan keluaran yang besar.
Solusi (a)
Untuk mengatasi masalah ini, yaitu, perhitungan mahal dari softmax, Word2Vec menggunakan teknik yang disebut estimasi noise-contrast. Teknik ini diperkenalkan oleh [A] (diformulasikan ulang oleh [B]) kemudian digunakan dalam [C], [D], [E] untuk mempelajari embeddings kata dari teks bahasa alami yang tidak diberi label.
Gagasan dasarnya adalah untuk mengubah masalah klasifikasi multinomial (karena masalah memprediksi kata berikutnya) menjadi masalah klasifikasi biner. Artinya, alih-alih menggunakan softmax untuk memperkirakan distribusi probabilitas sebenarnya dari kata output, regresi logistik biner (klasifikasi biner) digunakan sebagai gantinya.
Untuk setiap sampel pelatihan, classifier yang ditingkatkan (dioptimalkan) diumpankan pasangan yang benar (kata tengah dan kata lain yang muncul dalam konteksnya) dan sejumlah pasangan kk yang rusak secara acak (terdiri dari kata tengah dan kata yang dipilih secara acak dari kosa kata). Dengan belajar membedakan pasangan yang sebenarnya dari pasangan yang rusak, classifier pada akhirnya akan belajar kata vektor.
Ini penting: alih-alih memprediksi kata berikutnya (teknik pelatihan "standar"), penggolong yang dioptimalkan hanya memprediksi apakah sepasang kata itu baik atau buruk.
Word2Vec sedikit menyesuaikan proses dan menyebutnya pengambilan sampel negatif. Di Word2Vec, kata-kata untuk sampel negatif (digunakan untuk pasangan yang korup) diambil dari distribusi yang dirancang khusus, yang lebih jarang menggunakan kata-kata yang lebih sering untuk diambil.
Referensi
[A] (2005) - Estimasi kontras: Melatih model log-linear pada data yang tidak berlabel
[B] (2010) - Estimasi kontras-bising: Prinsip estimasi baru untuk model statistik yang tidak dinormalisasi
[C] (2008) - Arsitektur terpadu untuk pemrosesan bahasa alami: Jaringan saraf dalam dengan pembelajaran multitask
[D] (2012) - Algoritma cepat dan sederhana untuk pelatihan model bahasa probabilistik saraf .
[E] (2013) - Mempelajari penanaman kata secara efisien dengan estimasi noise-contrastive .