Machine learning word2vec,使用文档体或关键字作为训练语料库

Machine learning word2vec,使用文档体或关键字作为训练语料库,machine-learning,nlp,gensim,word2vec,doc2vec,Machine Learning,Nlp,Gensim,Word2vec,Doc2vec,我想使用每个文档的关键字和类别的无序列表来训练word2vec模型。因此,我的词汇量非常小,大约2.5k代币 如果在培训阶段,我使用文档中的实际句子,绩效会得到提高吗 例如: doc_keywords = ['beach', 'holiday', 'warm'] doc_body = 'Going on a beach holiday it can be very warm' 如果使用完整的文档有好处,有人能解释一下为什么会这样吗 由于模型预测文档中的下一个单词,如果very不在我的词汇表中,

我想使用每个文档的关键字和类别的无序列表来训练
word2vec
模型。因此,我的词汇量非常小,大约2.5k代币

如果在培训阶段,我使用文档中的实际句子,绩效会得到提高吗

例如:

doc_keywords = ['beach', 'holiday', 'warm']
doc_body = 'Going on a beach holiday it can be very warm'
如果使用完整的文档有好处,有人能解释一下为什么会这样吗


由于模型预测文档中的下一个单词,如果
very
不在我的词汇表中,那么将
very->warm
作为两个经常组合在一起的单词进行学习会有什么好处呢

  • 首先,我认为传递关键字列表对
    gensim.models.Word2Vec
    模型没有任何帮助。正如你所说,使用word2vec背后的原因是为了对周围的单词有一种感觉;它如何用一个随机的关键字列表来完成这项工作

  • 其次,词汇表应与文档中的单词相同。因此,你的词汇表中应该有
    非常

  • 使用的数据越多,模型就越有用。所以,2500个代币不够大。例如,word2vec的第一个版本是谷歌在2014/2015年发布的。谷歌使用的词汇约为692000个单词

  • word2vec有两个版本可供使用:“Skipgram”和“连续文字包(CBOW)”。两者都依赖于周围的词语。你可以查看我的答案,以了解更多关于它们如何工作的信息


    • 我的笔记可以总结为以下几点:

      • 首先,我认为传递关键字列表对
        gensim.models.Word2Vec
        模型没有任何帮助。正如你所说,使用word2vec背后的原因是为了对周围的单词有一种感觉;它如何用一个随机的关键字列表来完成这项工作

      • 其次,词汇表应与文档中的单词相同。因此,你的词汇表中应该有
        非常

      • 使用的数据越多,模型就越有用。所以,2500个代币不够大。例如,word2vec的第一个版本是谷歌在2014/2015年发布的。谷歌使用的词汇约为692000个单词

      • word2vec有两个版本可供使用:“Skipgram”和“连续文字包(CBOW)”。两者都依赖于周围的词语。你可以查看我的答案,以了解更多关于它们如何工作的信息


      您的数据集似乎很小–可能太小了,无法期待良好的word2vec向量。但是,一个小的数据集至少意味着它不应该花费太多的时间来尝试不同的方法

      因此,最好的答案(也是唯一一个真正考虑到数据和项目目标中可能存在的唯一性的答案):当只针对关键词或更长的文档进行培训时,您是否获得了更好的最终单词向量,以满足您的项目特定需求

      使用全文的两个潜在优势来源:

      • 这些不太有趣的单词可能仍然有助于梳理出整个向量空间中的微妙含义。例如,
        'warm'
        'hot'
        之间的对比可能会变得更清晰,因为这些词被迫预测其他相关的词,它们以不同的比例同时出现。(但是,word2vec向量的这些特性需要大量微妙变化的实际使用示例——因此,在一个小数据集中可能不可能有这样的好处。)

      • 使用真实文本保留了原始的邻近性影响——彼此距离越近的单词影响越大。唯一的关键字方法可能是对那些原始的近邻进行置乱,这取决于您如何将原始全文转换为精简的关键字。(特别是,您肯定不希望总是以某种数据库排序顺序报告关键字,因为这会在碰巧排序的关键字之间产生虚假影响,而不是在自然语言中相邻出现。)

      另一方面,包含更多单词会使模型变大&训练速度变慢,这可能会限制您可以运行的训练或实验的数量。而且,保留非常罕见的单词——这些单词本身没有足够多的不同用法示例来获得好的单词向量——往往会像“噪音”一样稀释其他单词向量的质量。(这就是为什么删除稀有单词,其
      minu count
      类似于其默认值
      5
      ——或者在较大的语料库中更大——几乎总是一个好主意。)


      因此,没有确定哪一个会更好的答案:不同的因素和其他数据/参数/目标选择将以不同的方式产生影响。你会想用多种方式来尝试

      您的数据集似乎很小–可能太小了,无法指望有好的word2vec向量。但是,一个小的数据集至少意味着它不应该花费太多的时间来尝试不同的方法

      因此,最好的答案(也是唯一一个真正考虑到数据和项目目标中可能存在的唯一性的答案):当只针对关键词或更长的文档进行培训时,您是否获得了更好的最终单词向量,以满足您的项目特定需求

      使用全文的两个潜在优势来源:

      • 这些不太有趣的单词可能仍然有助于梳理出整个向量空间中的微妙含义。例如,
        'warm'
        'hot'
        之间的对比可能会变得更清晰,因为这些词被迫预测其他相关的词,它们以不同的比例同时出现。(但是,word2vec向量的这些特性需要大量微妙变化的实际使用示例——因此,在小数据量的情况下可能无法实现这样的好处。)