我正在使用Doc2vec进行文本分类。它会为给定长度的句子(例如:向量的长度为100)创建一个向量。我无法理解它是如何创建这种长度的向量的。
我参考了这个链接。在这里,他们为句子创建了一个向量,并将其保存到doc2v模型中,我无法使用这个模型来测试新数据(生产数据),因为对于新句子没有向量。新数据显示错误
KeyError: “tag ‘Test_2028’ not seen in training corpus/invalid”
回答:
如果你已经用你的训练数据创建了一个gensim
的Doc2Vec
模型,它只会知道训练数据中存在的文档标签的训练向量。
然而,还有一个方法infer_vector()
,它可以为新的文本推断出一个兼容的文档向量。新文本应与训练数据以相同的方式进行分词,并作为字符串标记列表传递给infer_vector()
。