其中e是训练周期的个数,t是训练集中的单词个数,q是为每个模型
体系结构进一步定义的。常见的选择是E=3-50,T高达10亿。所有
模型都使用随机梯度下降和反向传播进行训练[26]。
2.1 前馈神经网络语言模型(NNLM)
在[1]中提出了概率前馈神经网络语言模型。它由输入层、投影层、
隐藏层和输出层组成。在输入层,前n个单词使用1/v编码( 即 one
hot :译者按),其中v是词汇表的大小。然后使用共享投影矩阵将
输入层投影到尺寸为N×D的投影层P上。由于只有n个输入是每个给
定时间的活动,因此项目部分的组合是相对的堆操作。由于投影层中
的值很密集,NNLM结构在投影层和隐藏层之间的计算变得复杂。
对于n=10的常见选择,投影层(p)的大小可能为500到2000,而
隐藏层大小h通常为500到1000个单位。此外,隐藏层用于计算词汇
表中所有单词的概率分布,从而生成具有维数V的输出层。因此,每
个训练示例的计算复杂性是
Q = N × D + N × D × H + H × V (2)
其中主项为h×v。但是,为了避免出现这种情况,我们提出了几种实
用的解决方案:要么使用SoftMax的分层版本[25、23、18],要么使
用培训期间未标准化的模型完全避免标准化模型[4、9]。使用词汇表
的二叉树表示,需要评估的输出单元的数量可以下降到大约
log2(v)。因此,大多数复杂性是由术语n×d×h引起的。在我们的
模型中,我们使用层次结构的SoftMax,其中词汇表表示为一个哈夫
曼二叉树。这是根据之前的观察得出的,单词的频率对于在神经网络
语言模型中获取类很有效[16]。哈夫曼树将短二进制代码分配给频繁
使用的字,这进一步减少了需要评估的输出单元的数量:虽然平衡二
进制树需要评估log2(v)输出,但是基于哈夫曼树的分层Softmax
只需要大约log2(unigram困惑y(v))。例如,当词汇大小为一百
万个单词时,这会导致评估速度加快两倍。虽然这对于神经网络
LMS来说不是关键的加速,因为计算瓶颈在n×d×h项中,我们稍后
NLP系列:Word2Vec原始论文:Efficient Estimation of Word Re... about:reader?url=https://www.jianshu.com/p/4517181ca9c3
第5页 共22页 2019/10/24/周四 23:26
评论0
最新资源