Word2vec'deki özellik matrisi nedir?


10

Sinir ağlarında yeni başlayan biriyim ve şu anda word2vec modelini araştırıyorum. Ancak özellik matrisinin tam olarak ne olduğunu anlamak için zor zamanlar geçiriyorum.

resim açıklamasını buraya girin

İlk matrisin belirli bir kelime için bir sıcak kodlama vektörü olduğunu anlayabilirim, ancak ikinci matris ne anlama geliyor? Daha spesifik olarak, bu değerlerin her biri (yani 17, 24, 1 vb.) Ne anlama gelir?


Google tarafından üretilen W hakkında bir sorum var, bana google tarafından verilen değerler hakkında daha fazla bilgi verebilir misiniz? bu özellikler ne kullanıldı? yardımınız için teşekkürler.
hambi

Yanıtlar:


8

Word2vec'in arkasındaki fikir, d boyutunun gerçek sayılarının bir vektörünün kelimeleri temsil etmektir . Dolayısıyla ikinci matris bu kelimelerin temsilidir.

İ Bu matrisin inci hattı vektörüdür i -inci kelime.

Diyelim ki örneğinizde 5 kelime var: ["Aslan", "Kedi", "Köpek", "At", "Fare"], o zaman ilk vektör [0,0,0,1,0] "At" kelimesini düşünüyoruz ve bu nedenle "At" ın temsili [10, 12, 19] 'dur. Benzer şekilde, [17, 24, 1] "Aslan" kelimesinin temsilidir.

Bildiğim kadarıyla, bu temsillerdeki sayıların her biri için özel olarak "insan anlamı" yoktur. Bir sayı, kelimenin bir fiil olup olmadığını, bir sıfat olup olmadığını temsil etmez ... Kelimelerinizin temsilini öğrenmek için optimizasyon probleminizi çözmek için değiştirdiğiniz ağırlıklar sadece.

Bu eğitici yardımcı olabilir: http://mccormickml.com/2016/04/19/word2vec-tutorial-the-skip-gram-model/ Ben koymak görüntü bu bağlantıdan olduğunu düşünüyorum rağmen.

Ayrıca, TensorFlow ile sözcük vektörlerini kullanmaya başlamanıza yardımcı olabilecek bunu da kontrol edebilirsiniz: https://www.tensorflow.org/tutorials/word2vec


5

TL; DR :

İlk matris giriş vektörünü bir sıcak formatta temsil eder

İkinci matris, giriş tabakası nöronlarından gizli tabaka nöronlarına kadar sinaptik ağırlıkları temsil eder

Daha Uzun Versiyon :

"özellik matrisi tam olarak nedir"

Temsili doğru anlamadığınız anlaşılıyor. Bu matris bir özellik matrisi değil, sinir ağı için bir ağırlık matrisidir. Aşağıda verilen görüntüyü düşünün. Özellikle Giriş Katmanı matrisinin Ağırlık matrisi ile çarpıldığı sol üst köşeye dikkat edin. resim açıklamasını buraya girin

Şimdi sağ üst kısma bakın. Weights Transpose ile üretilen bu matris çarpımı InputLayer, sağ üstteki sinir ağını temsil etmenin kullanışlı bir yoludur.

Bu nedenle, sorunuzu cevaplamak için, gönderdiğiniz denklem sadece Word2Vec algoritmasında kullanılan sinir ağı için matematiksel temsildir.

İlk kısım, [0 0 0 1 0 ... 0], giriş kelimesini bir sıcak vektör olarak ve diğer matris, giriş katmanı nöronlarının her birinin gizli katman nöronlarına bağlanması için ağırlığı temsil eder.

Word2Vec eğittikçe, bu ağırlıklara geri ilerler ve kelimelerin vektör olarak daha iyi temsillerini vermek için bunları değiştirir.

Eğitim tamamlandığında, sadece bu ağırlık matrisini kullanırsınız, 'köpek' demek için [0 0 1 0 0 ... 0] alırsınız ve bir boyutta 'dog' vektör temsilini almak için onu geliştirilmiş ağırlık matrisi ile çarparsınız = gizli katman nöronlarının sayısı.

Sunduğunuz şemada, gizli katman nöronlarının sayısı 3'tür.

Yani sağ taraf temelde kelime vektörüdür.

Resim Kredileri: http://www.datasciencecentral.com/profiles/blogs/matrix-multiplication-in-neural-networks

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.