Python:Gensim Word2vec模型类中的"size"参数是什么

Kri*_*lal 5 python gensim word2vec

我一直在努力理解size参数的使用gensim.models.Word2Vec

从Gensim文档中,size是向量的维数.现在,据我所知,word2vec为每个单词创建一个与句子中其他单词紧密相关概率的向量.那么,假设我的vocab尺寸是30,那么它如何创建尺寸大于30的矢量?任何人都可以向我介绍Word2Vec尺寸的最佳值吗?

谢谢.

goj*_*omo 13

size 正如你所注意到的那样,是矢量的维数.

Word2Vec需要大量不同的文本示例来创建每个单词的"密集"嵌入向量.(这是训练期间许多对比例之间的竞争,它允许单词向量移动到具有有趣距离和彼此空间关系的位置.)

如果你只有30个单词的词汇,word2vec不太可能是一个合适的技术.如果尝试应用它,你会想要使用比你的词汇量大得多的矢量大小 - 理想情况下低得多.例如,包含成千上万个单词中的每个单词的许多示例的文本可以证明100维单词向量.

使用比词汇大小更高的维度会或多或少地保证"过度拟合".训练可能趋向于每个单词的特殊向量 - 基本上类似于"一热"编码 - 其性能优于任何其他编码,因为通过在较小数字中表示较大数量的单词而不会强制进行跨字干扰尺寸.

这意味着一个模型尽可能地在Word2Vec内部附近单词预测任务上做得很好 - 但随后对其他下游任务很糟糕,因为没有捕获可推广的相对关系知识.(在许多训练周期中,交叉词干扰是算法所需要的,逐渐地成为一种排列,其中相似的单词在学习的权重中必须相似,并且对比单词不同.)

  • 如果您到这里结束并想知道如何从模型中获取嵌入矢量的大小,则为“ model.vector_size”。 (2认同)