簡體   English   中英

如何在短語中使用doc2vec?

[英]How to use doc2vec with phrases?

我想在doc2vec中使用短語,我使用gensim.phrases。 在doc2vec中,我們需要標記文檔來訓練模型,而我無法標記短語。 我該怎么做?

這是我的代碼

text = phrases.Phrases(text)
for i in range(len(text)):
    string1 = "SENT_" + str(i)

    sentence = doc2vec.LabeledSentence(tags=string1, words=text[i])
    text[i]=sentence

print "Training model..."
model = Doc2Vec(text, workers=num_workers, \
            size=num_features, min_count = min_word_count, \
            window = context, sample = downsampling)

Phrases()的調用可訓練短語創建模型。 稍后,您可以在文本上使用該模型來取回短語組合的文本。

不要像代碼第一行那樣用經過訓練的模型替換原始text 另外,不要像當前循環中那樣嘗試分配給短語模型,也不要通過整數訪問短語模型。

所述的詞類gensim文檔具有正確使用的示例Phrases類; 如果遵循這種模式,您會做得很好。

此外,注意LabeledSentence已取代TaggedDocument ,其tags參數應該是一個列表的標簽。 如果提供字符串,它將被視為一個字符列表的標簽(而不是您想要的一個標簽)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM