Sorun
"Standart" bir sinir ağı kullanarak sözcük vektörlerini öğrenmekle ilgili bazı sorunlar vardır. Bu şekilde, ağ vektörleri, bir kelime penceresi (ağın girişi) verilen bir sonraki kelimeyi tahmin etmeyi öğrenirken öğrenilir .
Bir sonraki kelimeyi tahmin etmek sınıfı tahmin etmek gibidir. Yani, böyle bir ağ sadece "standart" çok terimli (çok sınıflı) bir sınıflandırıcıdır. Ve bu ağ, sınıflar kadar çıkış nöronuna sahip olmalıdır. Sınıflar gerçek kelimeler olduğunda, nöron sayısı, iyi, büyük .
"Standart" bir sinir ağı genellikle çıkış nöronlarının değerlerinin olasılıkları temsil etmesini gerektiren çapraz entropi maliyet fonksiyonu ile eğitilir - yani her sınıf için ağ tarafından hesaplanan çıktı "skorlarının" normalleştirilmesi, her sınıf için gerçek olasılıklar. Bu normalleştirme adımı, softmax fonksiyonu ile gerçekleştirilir. Softmax, büyük bir çıktı katmanına uygulandığında çok masraflıdır.
(A) çözümü
Bu sorunla başa çıkmak için, yani softmax'ın pahalı hesaplaması için, Word2Vec gürültü-kontrast tahmini olarak adlandırılan bir teknik kullanır . Bu teknik, etiketlenmemiş doğal dil metninden kelime düğünlerini öğrenmek için [C], [D], [E] 'de kullanılan [A] ([B] tarafından yeniden formüle edilmiştir) tarafından tanıtıldı.
Temel fikir, çok terimli bir sınıflandırma problemini (bir sonraki kelimeyi tahmin etme problemi olduğu için ) bir ikili sınıflandırma problemine dönüştürmektir. Yani çıktı kelimesinin gerçek olasılık dağılımını tahmin etmek için softmax kullanmak yerine, bunun yerine ikili bir lojistik regresyon (ikili sınıflandırma) kullanılır.
Her eğitim örneği için, geliştirilmiş (optimize edilmiş) sınıflandırıcıya gerçek bir çift (bir orta kelime ve bağlamında görünen başka bir kelime) ve bir dizi rasgele bozuk çift (orta kelime ve rastgele seçilen bir kelime kelime). Sınıflandırıcı, gerçek çiftleri bozuk olanlardan ayırt etmeyi öğrenerek nihayetinde vektör sözcüklerini öğrenecektir.k
Bu önemlidir: optimize edilmiş sınıflandırıcı bir sonraki kelimeyi ("standart" eğitim tekniği) tahmin etmek yerine basitçe bir çift kelimenin iyi mi kötü mü olduğunu tahmin eder .
Word2Vec işlemi biraz özelleştirir ve negatif örnekleme olarak adlandırır . Word2Vec'de, negatif örneklerin sözcükleri (bozuk çiftler için kullanılır), daha sık çizilecek daha az sık kullanılan sözcükleri destekleyen özel olarak tasarlanmış bir dağıtımdan çizilir.
Referanslar
[A] (2005) - Kontrastlı tahmin: Etiketlenmemiş veriler üzerinde log-lineer modellerin eğitimi
[B] (2010) - Gürültü kontrastlı tahmin: Normalleştirilmemiş istatistiksel modeller için yeni bir tahmin ilkesi
[C] (2008) - Doğal dil işleme için birleşik bir mimari: Çok görevli öğrenmeye sahip derin sinir ağları
[D] (2012) - Sinir olasılıklı dil modellerinin eğitimi için hızlı ve basit bir algoritma .
[E] (2013) - Gürültü-kontrastlı tahmin ile kelime düğünlerini verimli bir şekilde öğrenmek .
Cevabım bazı eski notlarıma dayanıyor - umarım doğrulardı :)