关于嵌入字的问题(word2vec)

时间:2017-02-28 05:42:34

标签: neural-network word2vec word-embedding

我正在尝试理解word2vec(字嵌入)架构,我对此几乎没有问题:

  • 首先,为什么word2vec模型被认为是对数线性模型?是因为它在输出层使用了soft max?
  • 第二,为什么word2vec删除了隐藏层?是仅仅因为计算复杂性?
  • 第三,为什么word2vec不使用激活功能? (与NNLM(神经网络语言模型)相比。

1 个答案:

答案 0 :(得分:5)

  

首先,为什么word2vec模型是对数线性模型?因为它在输出层使用了soft max?

确切地说,softmax是对数线性分类模型。目的是在输出处获得可被视为后验概率分布的值

  

第二,为什么word2vec会删除隐藏层?它只是因为   计算复杂度?   第三,为什么word2ved不使用激活功能?比较   NNLM(神经网络语言模型)。

我认为你的第二个和第三个问题是关联的,因为额外的隐藏层和激活函数会使模型比必要的更复杂。请注意,虽然未明确制定激活,但我们可以将其视为线性分类函数。似乎word2vec模型尝试建模的依赖关系可以通过输入词之间的线性关系来实现。

添加非线性激活函数允许神经网络映射更复杂的函数,这反过来又可以使输入适合更复杂的东西,而不会保留word2vec所寻求的依赖。

另请注意,线性输出不会饱和,这有助于基于梯度的学习。