python - doc2vec 模型是否对非字典单词提供准确性?
问题描述
我的语料库中有混合词(字典和非字典词)的句子。非字典词与特定领域一样重要。我没有对非字典单词执行任何 nlp。doc2vec 模型是否将非字典单词与匹配标准中的相同单词进行比较?
前任。我正在输入 ['AMDML','release']。这里 AMDML 是领域特定的词。如果我在训练模型中有类似 ['AMDML','release','process'] 或 ['DML','release'] 的句子,它会匹配相同的单词吗?或者只有像“发布”和“过程”这样的词在最相似的方法中匹配?
解决方案
我猜不是;
根据提到Le 和 Mikolov 论文(Doc2Vec 算法的介绍者)的radimrehurek-gensim页面,他们将段落向量模型称为 Doc2Vec;
在 Gensim 中,我们将段落向量模型称为 Doc2Vec。这通常优于 Word2Vec 向量的简单平均。基本思想是:就好像一个文档有另一个浮动的词向量,它有助于所有的训练预测,并且像其他词向量一样被更新,但我们将其称为文档向量。Gensim 的 Doc2Vec 类实现了这个算法。
所以我猜 Doc2Vec 只是遵循 Word2Vec 模型/算法;据我所知,例如 Word2Vec 模型是否AMDML
在其训练语料库中有单词,它可以为它生成一个向量;否则,它会知道这一点error: missing word
并向您展示类似的东西,或者至少返回填充/空向量。
我认为您需要类似fasttext 的东西;fasttext 模型始终具有任何单词的向量,即使它们在其训练语料库中不存在;与 word2vec 不同,fasttext 可以从单词的 n-gram 字符中学习,因此您可以通过测量它们的相似度值来找到相似的单词。之后,对每个句子/文档平均这些相似性并找到相似的句子/文档。
推荐阅读
- bash - 如何限制循环,使其仅对每个值循环一次
- javascript - 如何选择并获取两个输入值?
- python - 如何使用 Python 脚本将 PDF 文档转换为 JSON
- pine-script - 交易视图。如何计算一个指标匹配某个标准的次数?
- paypal - Paypal 智能按钮 - 过期字段(yy vs yyyy)
- java - 测试 MongoDB 存储库方法
- javascript - 正在加载的数据会一直加载到渲染之后
- regex - 如何使用 Excel VBA 获取包含在 2 个字符之间的字符串的特定部分?
- python - 与程序保持一致的 Python 数据库
- latex - 如何使用 dot2tex 在边缘标签中获取乳胶?