首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gensim doc2vec模型无法学习某些单词

gensim doc2vec模型无法学习某些单词
EN

Stack Overflow用户
提问于 2019-05-13 14:29:31
回答 1查看 308关注 0票数 0

我目前正在学习Python3.6中的gensim doc2model,以查看句子之间的相似性。我创建了一个模型,但当我输入一个明显存在于训练数据集中的单词来查找相似的单词/句子时,它会返回KeyError: "word 'WORD' not in vocabulary"。它会自动跳过一些对定义句子不是很重要的单词吗?或者这只是一个bug或者别的什么?非常感谢,如果我可以有任何方法来涵盖所有出现在数据集中的单词。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-05-14 01:16:54

如果你希望在模型中学习的单词不在模型中,最可能的原因是:

  • ,在模型看到的版本中,它并不存在,可能是因为你的标记化/预处理被破坏了。启用INFO级别的日志记录,并检查呈现给模型的语料库,以确保语料库在第一次词汇表调查后不是幸存的词汇表的一部分,因为它是预期的
  • 。默认的min_count=5丢弃出现次数少于5次的单词,因为这样的单词都无法为自己获得良好的向量,并且有效地充当干扰其他向量改进的“噪声”。

您可以将min_count=1设置为保留所有单词,但它更有可能损害而不是帮助您的整体向量质量。Word2Vec & Doc2Vec需要大型的、多种多样的语料库-如果你想要一个好的单词向量,可以在扩大的语料库中找到更多不同的用法示例。

(还请注意:dm=0是简单快速的Doc2Vec模式之一,它通常也是性能最好的模式,尤其是在短文本上。此模式将分配/随机初始化单词向量,但随后忽略它们进行训练,仅对文档向量进行训练。如果您使用该模式,您仍然可以在最后从模型中请求词向量-但它们将只是随机的废话。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56106821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档