繁体   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