2016-07-10 12 views
7

, söyledikleri belki:CBOW v.s. atlama-gram: bağlamı ve hedef kelimeleri neden tersine çevirin? <a href="https://www.tensorflow.org/versions/r0.9/tutorials/word2vec/index.html#vector-representations-of-words" rel="noreferrer">this</a> sayfasında

[...] atlamak gram bağlamları ve hedefleri tersine çevirir ve hedef kelimesinden her bağlam kelimeyi tahmin etmeye çalışır [...]

(quick, brown), (brown, quick)

:

Ancak üreten bir eğitim veri kümesi bakarak, X ve Y çiftinin içeriği (X, Y), bu iki çifti gibi, interexchangeable görünmektedir 10

Peki, neden sonunda aynı şey varsa, bağlam ve hedefler arasında bu kadar çok neden ayırdediniz? Eğer bu iki yaklaşım arasındaki farkı yapmak gibi neden acaba Udacity's Deep Learning course exercise on word2vec yapıyor Ayrıca

, bu problemde bu kadar:

alternatif atlamak gram ila CBOW (Sürekli Çanta adlı başka Word2Vec modelidir Kelimeler). CBOW modelinde, bir sözcük vektöründen bir bağlam kelimesini tahmin etmek yerine, tüm kelime vektörlerinin bağlamındaki bir kelimeden bir kelime tahmin edersiniz. Metin8 veri kümesinde eğitilmiş bir CBOW modelini uygulayın ve değerlendirin.

Bu, aynı sonuçları vermiyor mu?

cevap

12

İşte fark benim basitleştirilmiş ve oldukça naif anlayış. Ya da içeriğe bakarak hedef kelimenin olasılığını en üst düzeye çıkarın. Ve bu nadir kelimeler için bir sorun olur. Örneğin, bağlamda verilen yesterday was really [...] day CBOW modeli, büyük ihtimalle bu kelimenin beautiful veya nice olduğunu söyleyecektir. delightful gibi kelimeler, en olası kelimeyi tahmin etmek için tasarlandığından, modele daha az ilgi gösterecektir. Bu kelime daha sık kelimelerle birçok örnek üzerinde düzeltilecek.

Diğer yandan, atlama-gramı, içeriği öngörmek için tasarlanmıştır. delightful kelimesi verildiğinde, bunu anlamalı ve bize büyük olasılıklar olduğunu, bağlamın yesterday was really [...] day veya başka ilgili bağlam olduğunu söyleyin.skip-gram ile delightful sözcüğü beautiful sözcüğü ile rekabet etmeye çalışmaz, bunun yerine delightful+context çiftleri yeni gözlemler olarak ele alınacaktır. Mikolov

göre

this article paylaşımı için @ 0xf

UPD

Teşekkür atla-gram

: eğitim verilerinin küçük bir miktarı ile iyi çalışır, hatta iyi temsil nadir kelimeler veya ifadeler.

CBOW: Daha hızlı birkaç kez sık kelimelerin

konuya Bir daha eklenmesi için, atlama-gram biraz daha iyi doğruluk yetiştirmek here bulunur: In

"CBOW" için alternatif "atlama-gram" modu, yerine bağlam sözcükleri, her biri bir çift eğitim örneği olarak kullanılır. Bu , ortalamasından ('' ',' kedi ',' ',' fare ')] [tahmin' yedik ') gibi bir CBOW örneğinin yerine, ağ dört atlamalı gram örneği ile sunulur ['yedik') 'yedik', ['yedik' yedik ' ' 'kedi'], ['yedik' yedik '], [' fare 'dan' yedik 'yedik']. (aynı rasgele pencere azaltma meydana gelir, bu nedenle yarım saat sadece yakın kelimelerin iki örnek olacağını söyledi.)

+0

Bu quora [https://www.quora.com/ Ne-are-sürekli-çanta-of-kelime-ve-atla-gram-mimarileri] diyor skip-gram eğitmek için daha az veri gerekir, sadece yorumunuzu karşıt görüş. Eğer yardım ile cevabınızı haklıyorum yayınlanan herhangi bir kağıdın veya benzeri. – 0xF

+1

Bunu işaretlediğiniz için teşekkürler! Bu makalede verilen açıklama mantıklı, dolayısıyla cevabımı güncelledim. – Serhiy

1

Belirli bir noktada tam olarak ne hesapladığınız ile ilgili. Her olasılık hesaplaması için daha geniş bir bağlam içeren modellere bakmaya başladığınızda fark daha da belirginleşecektir.

Atla-gram olarak, geçerli kelime (ler) in kelimesini cümleden şu anki konumundan hesaplamanız demektir; ; Hesaplamanızdaki geçerli kelimeyi (ve potansiyel olarak birazcık) atlıyorsunuz. Sonuç birden fazla kelime olabilir (ancak içerik pencerenizin sadece bir kelime uzunluğunda değilse).

CBOW'da, geçerli sözcüklerden geçerli kelimesini hesaplayarak adresinde bulunuyorsunuz, böylece sonuç olarak yalnızca bir kelimeniz olacak.

Bildiğimiz gibi

, CBOW bağlamla kelimeyi tahmin etmek öğreniyor:

+0

fark hala bana belli değil, değiştirmek gibi görünüyor tek şey kelimelerin cümlelerin başlangıcı ve bitimine yakın doldurulması: Bir modelde, aynı kelimelerin ne sıklıkla gösterildiğine göre girdi büyüklüğü veya çıktı büyüklüğünde daha fazla toplam kelime olacaktır. Sonsuz uzun bir cümle ile iki model, benim sunduğum bu eşitsiz dolgu konseptine sahip olmayacaktı. –

+0

Örnek olarak, modelin yapılandırmasını gönderdiğim Udacity bağlantısında nasıl değiştirebilirim? Görünüşe göre sadece giriş örnekleriyle etiketler değiş tokuş olur, ama bu doğru olamaz, fark çok önemsiz olurdu ... –

İlgili konular