我正在尝试将包含单词列表的标记文档与标记列表中的各个标记进行比较。
我的代码如下:
from gensim.models.doc2vec import Doc2Vec
from gensim import similarities,corpora,models
import Load
documents = Load.get_doc('docs')
data = Doc2Vec.load('vectorised.model')
print('Data Loading finished')
tags = [['word1'],['word2'],['word3'],['word4'],['word5']]
tag_vectors = []
data.n_similarity(tags[0],documents[1])
我遇到的问题正在运行:
data.n_similarity(tags[0],documents[1])
反馈KeyError:“词汇'otherword'不在词汇表中
我想获得标签文档和标签本身之间的相似性, 所以我的问题是我需要在代码中进行哪些更改,以便正确检查并返回相似性值?
n.b。我已经用占位符代替了这里的实际单词
答案 0 :(得分:1)
我认为您应该检查“ word”(KeyError一个)是否在“ vectorised.model”中 如果模型没有这个词 您可以进行
model = Doc2Vec.load(your old model)
model.build_vocab(text, update=True) # update your vocab
model.train