本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:【组图】LightRNN:深度学习之以小见大(2)

时间:2016-12-28 07:14来源:报码现场 作者:开奖直播现场 点击:
因为在 LightRNN 中每个词由两部分表达,所以在语言模型中为了预测下一个词, LightRNN 需要首先基于前面所有的词预测其行向量,然后基于前面所有的词和

因为在LightRNN中每个词由两部分表达,所以在语言模型中为了预测下一个词,LightRNN需要首先基于前面所有的词预测其行向量,然后基于前面所有的词和已经预测出来的行向量预测其列向量。LightRNN的网络结构具体如下图左边所示,它区别于标准RNN结构(见右边)的地方在于,在标准的RNN中一次预测即可以找出下一个词。在某种程度上来说,LightRNN相当于把句子的长度增加了一倍,把对每个词的预测变成了两次预测。有人可能会问,LightRNN会不会效率变低,训练和测试时间变长。实际情况恰好相反,LightRNN会减少训练和测试时间,原因在于每次预测的复杂度降低:如果语料库词表有一百万个词,直播,标准的RNN为了预测下一个词,需要对这一百万个词每个都打分计算概率,然后选择概率最大的词,因此复杂度是一百万;而LightRNN的二维词表只有一千行一千列,对行做预测时只需要对一千行打分计算概率选择概率最大的行,然后再对一千列打分计算概率选择概率最大的列,因此LightRNN预测一个词的复杂度是两千,远小于标准的RNN

  

码报:【j2开奖】LightRNN:深度学习之以小见大

在公共数据集上测试的结果表明,LightRNN能够大大降低模型的大小,同时还达到了无损甚至更好的精度。如下表所示,在BillionW这个数据集(词表大小接近一百万)上,传统算法及标准的RNN的模型参数个数为16-41亿,而LightRNN的模型参数个数仅为4千万,达到了40-100倍的压缩比。并且随着词表的变大,LightRNN的压缩比会进一步的提高。下表中的PPL反映了语言模型的精度,PPL越小,精度越高。

码报:【j2开奖】LightRNN:深度学习之以小见大

有读者可能会好奇,为什么在减小模型的同时,LightRNN还能达到更好的精度。原因在于共享嵌入。标准RNN假设每个词都有一个独立的向量表达;LightRNN中很多词会共享行或者列向量,二维词表的行列向量都是从数据里学习得到的,并且哪些词在同一行或同一列也是学习得到的,因此LightRNN能够发现词表中的一些语义。如下表所示,通过训练,LightRNN把很多有语义关联的词放在同一行,如832行都是地名,852行都是数字,861行都是数字+单位,872行都是被动分词,877行都是动词第三人称单数形式,等等。也就是说,直播LightRNN的二维词表的共享行列向量比标准RNN的独立向量更能发现词之间的语义关联。其次,通过让有语义关联的词共享行或列向量,可以使低频的词的向量表达得到更充分的训练。例如44kg这个词在语料库里出现的次数较少,在标准RNN里它的嵌入向量学习不充分,而在LightRNN里,这个词的行向量由同一行的所有词共同训练,它的列向量也由同一列的所有词共同训练,相当于增加了这个词的训练数据,因此能够提高语言模型的精度。

  

码报:【j2开奖】LightRNN:深度学习之以小见大

总结而言,LightRNN有以下优势。

第一,它使单GPU训练大词表的语料库成为现实。有人可能会问,实际中有没有必要用非常大的词表,比如说1百万个词的词表,因为实际常用汉字或者英文单词也就35千。答案是非常肯定的,现在很多输入法里都把人名地名以及每天不断涌现的新的网络词汇放到词表里以提高输入法的准确度,这会极大地增大词表的大小。另外,在语音识别里,如果某个人名或地名不在词表里,任何语音识别算法基本上都不可能正确识别该人名或地名。这些应用里在计算资源能够容纳的条件下,词表是越大越好。

(责任编辑:本港台直播)

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容