拥有大量参数的ML模型倾向于过拟合(因为它们具有较大的方差)。在我看来,word2vec
就是这样的模型之一。降低模型方差的方法之一是应用正则化技术,对于其他嵌入模型(如矩阵分解)来说,这是非常常见的事情。然而,word2vec
的基本版本没有任何正则化部分。此举是否有原因?
拥有大量参数的ML模型倾向于过拟合(因为它们具有较大的方差)。在我看来,word2vec
就是这样的模型之一。降低模型方差的方法之一是应用正则化技术,对于其他嵌入模型(如矩阵分解)来说,这是非常常见的事情。然而,word2vec
的基本版本没有任何正则化部分。此举是否有原因?
这是一个有趣的问题。
我认为,在 Word2Vec 中,过拟合这个概念并没有太多意义,因为词嵌入的目标是尽可能精确地匹配单词出现的分布。Word2Vec 并不设计用来学习训练语料库之外的内容,即 泛化,而是为了近似文本语料库所定义的一个分布。从这个意义上讲,Word2Vec 实际上是在尝试精确地拟合,所以它不能过度-适应。
如果你的词汇量很小,那么可以计算共现矩阵,并找到嵌入的确切全局最小值(给定大小),即获得完美拟合,从而为这个固定的语言定义最佳上下文单词模型。