NLP基础之语言模型及其评估方法

 1. Noisy Channel Model

NLP基础之语言模型及其评估方法

 

2. 语言模型 

即判断一句话是不是人话。是计算上文noisy channel model 模型中的P(text)。方法是用markov假设。即一个词出现概率只与它前边的一个词有关,与再往前的词无关(bigram)

NLP基础之语言模型及其评估方法

2.1 Markov Assumption(马尔科夫假设) 与 Unigram(词相互独立)、Bigram(每个词只与前1个词相关联)、trigram(每个词只与前2个词相关联)、N-gram(每个词与前n-1个词相关联)

 

3. 语言模型评估(Perplexity)

perplexity越小越好。

perplexity公式见下图

NLP基础之语言模型及其评估方法

 拉普拉斯平滑分母加V的原因如下图:保证在已知条件下(今天),所有情况的家和概率为1.

NLP基础之语言模型及其评估方法

 

add_k smoothing: 在拉普拉斯平滑基础上加上k进行调节。

NLP基础之语言模型及其评估方法

如何选择合适的K, 用优化的思想如下图。选一个K使f(k) 的值最小即为目标值。

训练集LM提供的是各词出现的次数及 两次同时出现的次数。可根据上图公式求P。

NLP基础之语言模型及其评估方法

 

interpolation方法:

核心:在计算trigram的同时会考虑unigram和bigram

 NLP基础之语言模型及其评估方法

NLP基础之语言模型及其评估方法

本文内容参考以下文章编写,如有侵权请联系删除。

https://www.jianshu.com/p/39bea9332025