NLP学习笔记06---语言模型(Chain rule、markov assumption、unigram、bigram、N-gram)

1.Noise channel model

上图公式,可以利用贝叶斯公式进行推导。

2.数学基础

(1)Chain rule(非常经典)

示例:

上图,说明chain rule所得的条件概率项是通过统计所给文档中出现今天、是、春节、我们、都的次数(图中出现2次)和出现今天、是、春节、我们、都之后再出现休息的次数(图中出现一次)

chain rule会出现稀疏性的问题

(2)马尔科夫假设(markov assumption)---非常重要

利用1st order markov assumption的例题:

3.语言模型

语言模型用来判断:一句话在语法上是否通顺

(1)unigram(不考虑单词之间的顺序)

假设w1,w2,...wn是相互独立的

而P(w1)、P(w2).....P(wn)的计算方法如下:

统计语料库中某个单词出现的次数,再除以语料库的总词数

案例:

(2)bigram(基于1st order markov assumption)---考虑单词之间的顺序

而P(w1)、P(w2/w1).....P(wn/wn-1)的计算方法如下:

案例:

(3)N-gram

4.语言模型的优化

若语料库中不包含某个单词,则会使得整个句子的联合分布概率变为0,这是有很大缺陷的。

优化方法:smoothing 平滑

(1)Add one-smoothing(Lapalace smoothing)---非常好

案例:

注意:上图中,V为语料库中不重复的单词个数

(2)Add-K smoothing(Lapalace smoothing)

5.语言模型的评估

原文地址:https://www.cnblogs.com/luckyplj/p/12766090.html