语言模型(二) 评估和类别

一、Evaluation

1、  熵entropy

l   熵(entropy)又称自信息,self-information

描述一个随机变量的不确定性的数量,熵越大,不确定性越大,正确估计其值的可能性越小。越不确定的随机变量越需要大的信息量以确定其值。


p(x) 表示x 的分布概率

l   相对熵(relativeentropy )又称KL 距离,Kullback-Leibler divergence

衡量相同事件空间里两个概率分布相对差距的测度,当p=q 的时候,相对熵为0 ,当p 和q 差距变大时,交叉熵也变大。

p(x) 和q(x) 代表x 的两种概率分布

l   交叉熵(crossentropy )

衡量估计模型和真实概率分布之间的差异

定义语言L=(Xi)~p(x) 与其模型q 的交叉熵为:


表示L 的语句( 应该表示一句话) ,q(x) 表示估计模型,由于无法获取真实模型的概率,需要作出一个假设:假定L 是稳态遍历的随机过程,即当n 无穷大的时候,所有句子的概率和为1 。


2、  困惑度perplexity


相比如交叉熵的优势在于:

交叉熵的值在6.6 位和7.64 位之间,对应的ppl 在100 到200 之间,ppl 值更容易记。

交叉熵下降2% ,对应于Ppl 值10% 的提升,描述同样的提升,ppl 的数值更漂亮。

最重要的一点是,ppl 更容易计算,最小的ppl 值意味着训练的模型最接近真实模型。

劣势在于:

Ppl 适合直接比较两个模型,交叉熵适合描述一个模型的提升。在描述模型的提升的时候,通常使用相比于基线降低的相对百分比,如下图:

 

3、  字错误率worderror rate

S 表示替换个数,D 表示删除个数,I 表示插入个数,N 表示reference 中字的个数。

WER 通常用在语音识别结果的评估上面,有标准答案,适合比较,缺点就是过于死板,没有同义词的容错机制。

适合用于同一个任务的不同技术比较,不适合在不同系统不同技术之间的对比。

二、N-gram model

影响n-gram 模型性能最重要的两点是阶数和平滑。其中KN 平滑算法性能最佳。

n-gram 最大的优势在于速度和可靠性,计算简单。

局限性有以下几点:

跨领域的脆弱性——不同领域的语言使用规律不同

独立性假设的无效性—— n-gram 假设当前词只和前n-1 个词有关

语言模型规模——随着阶数的增加,n-gram 会呈指数型增长,所以无法使用高阶数的语言模型。基于神经网络的LM 可以解决该问题。

语言模型面临两个问题如下:

1、 高阶问题

THE SKY ABOVE OUR HEADS IS BLUE

如果要刻画BLUE 和SKY 之间的联系,需要6gram 的语言模型,将导致语言模型过大。

2、  相似词问题

PARTY WILL BE ON <DAY OF WEEK>

由于训练语料的问题,可能导致Friday 的概率明显高于Monday 。

三、其他语言模型

1、 Cache LM

在文本中刚刚出现的一些词在后面的句子中再次出现的可能性较大。通过原始n-gram 的概率和cache 的n-gram 概率的线性插值,获得最终的概率。

优势在于可以降低PPL 值,劣势在于PPL 值降低的同时WER 会升高,原因在于识别结果错误的时候会形成错误的反馈。

2、 Class based LM

当训练数据量小时候,为了解决数据稀疏,可以引入classes ,然后根据classes 训练gram 。

该类语言模型的难点在于高的计算复杂度和如何构造class 。

3、  Structured LM

在一个句子中的相关词,可能没有出现在临近的位置。Structured LM 将句子看做一种树结构,叶子代表词,节点代表连接符号。

4、 Decision Trees andRandomForest LM

使用决策树通过问问题的方式构建LM ,但是很难找到好的决策树。计算复杂度较高,在某种程度上面类似于class based LM 。

5、 Maximum Entropy LM

将来自不同信息源的语言模型进行结合(类似于插值),获得更好的语言模型。

6、  Neural Network LM

Frederick Jelinek: "Every time I _re alinguist out of my group, the accuracy goes up."

7、  NNLM

训练trick :

每次训练句子随机化,可以减少训练的epoch 。

学习率,当提升明显的时候,学习率保持不变,当没有明显提升的时候,学习率减半。

权重矩阵初始化为均值为0 、方差为0.1 的随机数分布。

 

参考文献:

《statistic language models based on neural networks 》

http://www.fit.vutbr.cz/~imikolov/rnnlm/thesis.pdf

《统计自然语言处理》宗成庆

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值