如何从gensim Doc2Vec获取单词向量?

V Y*_*V Y 2 gensim word2vec doc2vec

我训练了一个gensim.models.doc2vec.Doc2Vec模型
d2v_model = Doc2Vec(句子,大小= 100,window = 8,min_count = 5,workers = 4)我可以通过docvec = d2v_model.docvecs [0]获得文档向量

如何从训练有素的模型中获取单词向量?

goj*_*omo 10

Doc2Vec继承自Word2Vec,因此您可以直接通过索引模型来访问与Word2Vec中相同的单词向量:

wv = d2v_model['apple']
Run Code Online (Sandbox Code Playgroud)

但请注意,像纯DBOW(dm=0)这样的Doc2Vec训练模式不需要或创建单词向量.(纯DBOW仍可以很好地用于多种用途!)如果您从这样的模型中访问单词向量,它们将只是自动随机初始化的向量,没有任何意义.

只有当Doc2Vec模式本身共同训练单词向量时,如DM模式(默认dm=1)或向DBOW(dm=0, dbow_words=1)添加可选单词训练时,单词向量和doc向量都是同时学习的.