【问题标题】:load pre-trained word2vec model for doc2vec为 doc2vec 加载预训练的 word2vec 模型
【发布时间】:2017-06-26 10:21:57
【问题描述】:
我正在使用 gensim 从文档中提取特征向量。
我从 Google 下载了名为 GoogleNews-vectors-negative300.bin 的预训练模型,并使用以下命令加载了该模型:
model = models.Doc2Vec.load_word2vec_format('GoogleNews-vectors-negative300.bin', binary=True)
我的目的是从文档中获取特征向量。一句话,很容易得到对应的向量:
vector = model[word]
但是,我不知道如何为文档执行此操作。你能帮忙吗?
【问题讨论】:
标签:
machine-learning
nlp
gensim
word2vec
doc2vec
【解决方案1】:
对于由 Doc2Vec 类创建的那种文本向量(Le/Mikolov 'Paragraph Vectors'),一组词向量(例如 GoogleNews-vectors-negative300.bin)既非必要也不充分。相反,它希望使用示例文本进行训练以学习每个文档的向量。然后,训练后的模型也可以用于“推断”其他新文档的向量。
(Doc2Vec 类仅支持 load_word2vec_format() 方法,因为它继承自 Word2Vec 类,而不是因为它需要该功能。)
还有另一种简单的文本向量,可以通过简单地对文档中的所有单词进行平均来创建,也许还可以根据每个单词的重要性加权。但这不是 Doc2Vec 提供的。