我训练了一个 gensim.models.doc2vec.Doc2Vec 模型
d2v_model = Doc2Vec(sentences, size=100, window=8, min_count=5, workers=4)
我可以通过以下方式获取文档向量
docvec = d2v_model.docvecs[0]
如何从训练有素的模型中获取词向量?
最佳答案
Doc2Vec 继承自 Word2Vec,因此您可以直接通过索引模型来访问与 Word2Vec 中相同的词向量:
wv = d2v_model['apple']
但是请注意,像纯 DBOW (
dm=0
) 这样的 Doc2Vec 训练模式不需要或创建词向量。 (对于许多目的,纯 DBOW 仍然可以很好和快速地工作!)如果您确实从这样的模型访问词向量,它们将只是自动随机初始化的向量,没有任何意义。仅当 Doc2Vec 模式本身共同训练词向量时,如在 DM 模式(默认
dm=1
)或将可选词训练添加到 DBOW( dm=0, dbow_words=1
)时,词向量和文档向量同时学习.
关于gensim - 如何从 gensim Doc2Vec 获取词向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37335842/