当前位置:   article > 正文

language model

language model

1、language model(LM):估计token序列的可能性

2、对于HMM,固定需要P(Y)才符合公式;对于LAS,加上P(Y)能够使效果更好

        P(Y|X)需要成对的数据,而P(Y)不需要成对,所以可以得到很多数据

3、N-gram

(1)估计P(Y),收集大量的样本,将整个评估token序列概率分成许多小块的序列概率相乘

(2)例子:wreck a nice beach

(3)3-gram等就是,给两个词预测下一个的概率,以次类推N

(4)有一个问题就是,给的样本虽然说很大,但是不可能涵盖所有的语言,所以有些P即使在样本中没有找到P也不应该写为0,给一个小概率。

4、continuous LM使用到一个推荐机制(个人理解就像是找相同特征认为有可能具有同样的行为)

(1)图中数字是指在样本中出现的次数

(2)h_i和v_j是属于token的特征,并且是我们想训练的向量参数

(3)训练条件是

也就是希望向量v_i与向量h_j相乘可以得到非常近似nij,使用梯度下降进行训练。

(4)训练结果就是:

(5)将DL引入:

a、输入为所有的token的h作为的输入向量(如果要训练dog,就只将dog的部分设为1,其他为0)

b、中间的层就只是一个线性层

c、输出预计的词汇个数,与训练集中的数据做对比

d、也就是单纯把这个网络看作为神经网络

5、NN-based LM是想用于取代N-gram,因为在NN中可以将分成小块的概率计算出来

6、RNN-based LM:可以用于处理非常长的N-gram

7、LM跟今天的DL based 的end to end 的model结合起来(以LAS为例)

(1)结合方式

(2)浅融合:将LM和LAS的输出的distribution通过权重(可训练的)进行加和。

(3)深融合:在Hiddenlayer的地方就进行融合,这个融合的Network是需要训练的

a、但如果更换LM,需要重新训练network;对于不同的输入情况,可能需要不同的LM,所以下面改进。

b、将LM训练到softmax之前的,dimension跟tokensize相同的输出放到Network中,这样就可以更换LM了。

c、有一个好处是,即使LM是输出关于token的概率的model,也能适应这种训练方式。

d、但是上述会有一个问题,加入vocabularysize很大,使用word作为token,dimension太大了,就有些问题

(4)cold fusion:需要关注什么时候将LM加入

a、LM已经训练好了,LAS还没训练好,再将Network训练好,这样可以加快LAS的训练速度

b、是因为LM已经处理好文字和文字之间的关系了,就让LAS更加专注于文字和语音之间的关系

c、有问题就是,LM就真的不能更换了,因为LAS一出生就跟LM绑定在一起

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/1003706
推荐阅读
相关标签
  

闽ICP备14008679号