汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型


1--信息熵

1.信息熵
信息熵被定义为对平均不确定性的度量。一个离散随机变量X的信息熵H(X)定义为:
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

  • 信息熵的本质是信息量的期望。
  • 信息熵是对随机变量不确定性的度量。随机变量X的熵越大,说明它的不确定性也越大。若随机变量退化为定值,则熵为0。
  • 平均分布是“最不确定”的分布。
2.互信息、联合熵、条件熵

1)互信息:
定义x的后验概率与先验概率比值的对数为y对x的互信息量。公式如下:

汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

互信息的性质:
1)互信息可以理解为,收信者收到信息X后,对信源Y的不确定性的消除
2)互信息=I(先验事件)-I(后验事件)=log ( 后验概率 / 先验概率 )
3)互信息是对称的
平均互信息:
又称为信息增益

2)联合熵
联合熵:借助联合概率分布对熵的自然推广

汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

3)条件熵
条件熵:利用条件概率分布对熵的一个延伸
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型
熵H(X)度量的是随机变量X的不确定性,条件熵度量的则是已知Y=y后,X的不确定性
熵的链式规则:
H(X,Y) = H(X) + H(Y|X) = H(Y) + H(X|Y)
I(X;Y) + H(X,Y) = H(X) + H(Y)
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

3.交叉熵和KL散度
1)交叉熵
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型
  • 交叉熵常用来衡量两个概率分布的差异性
  • 在逻辑回归中交叉熵为其损失函数
2)相对熵与变量独立
对定义于随机变量X的状态空间Ωx上的两个概率分布P(X)和Q(X),可以用相对熵来度量他们之间的差异:
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

KL又称为P(X)和Q(X)的散度。严格来讲它不是一个真正意义上的距离,因为KL(P;Q)不等于KL(Q;P)
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型
4.信息熵的NLP意义

对于任何语言系统的抽象模型都是一个信息系统,引入信息熵的本质意义在于从信息论的角度来考察一个语言系统,并且对其行为(编码和解码)提供了统一的测度。
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型
2-- NLP与概率图模型
概率图结合了概率论与图论的只是,用图模式(节点和边)表达基于概率相关关系的模型的总称。动机来源于建立一套领域无关的通用自动(智能)推理理论,从中揭示智能推理的内在机制。
我们解决非确定性问题的传统思路就是利用概率论的思想,但是随着问题的复杂不断增加,传统的概率方法显得越来越力不从心。图模型的引入使人们可以将复杂问题得到适当的分解:其中,变量表示为节点,变量与变量之间的关系表示为边,这样就使问题的以结构化。然后,根据图的结构进行训练和计算推理得出最终的结果。因此,概率图理论就自然地分为三个部分,分别为:概率图模型表示理论、概率图模型推理理论和概率图模型学习理论。

1.概率图模型的几个基本问题
常用的概率图模型,无论是最简单的朴素贝叶斯模型还是比较复杂的最大熵、条件随机场模型,都包含如下三个基本的问题。
  • 模型的表示
分两类:贝叶斯网络(有向无环图)和马尔科夫随机场(无向图)。在NLP中最常用的就是各种基于马尔科夫的各种概率图模型。
  • 模型的学习
模型的学习是指将给定的模型,首先形式化为数学公式。
模型的学习精度受以下三方面的影响:第一,语料库样本集对总体的代表性。二,模型算法的理论基础及所针对的问题。不同模型因为原理不同,能够处理的语言问题也不同,比如朴素贝叶斯模型在处理文本分类方面精度很高;最大熵模型在处理中文词性标注问题上表现很好,条件随机场模型处理中文分词、语义组块等方面的精度很高;Semi-CRF在处理命名实体识别精度很高。三,模型算法的复杂度。
  • 模型的预测
选取最大的后验概率为预测的结果。

2.生成模型和判别模型

如果隐马尔科夫模型是朴素贝叶斯模型的序列化模型扩展,则条件随机场可以理解为最大熵模型的序列扩展。
n-gram模型:如果一种语言现象出现的概率与它n-1个词相关,而与其前面n个词和后面的词都无关,那么这就是一个n-gram模型。
n-gram模型的主要工作是在模型的训练阶段,统计预料中各种语言模式出现的次数,并通过一定的统计算法,将他们计算好后储存起来。在预测阶段,党需要计算一个新的句子的概率时,只需查找句子中可能出现的语言模型的概率参数,并将他们连乘起来即可得到最终的结果。
这是NLP算法的通用策略, 这里涉及两个问题:(1)如何设计语言模型 (2)如何求解算法策略。几乎所有的NLP实践都是围绕着这两个问题展开的。
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型
3--隐马尔可夫模型简介

1.马尔科夫链
马尔科夫过程的原始模型为马尔科夫链。马尔科夫链是指时间和状态都是离散的马尔科夫过程。特性:在已知系统当前状态的条件下,它未来的演变不依赖于过去的演变。也就是说,T+1次结果只受第T次结果的影响,即只与当前状态有关,而与过去状态,即与系统的初始状态和此次转移前的所有状态无关。
汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

2.隐马尔科夫模型

汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型

汉语中文NLP自然语言处理学习笔记——基础原理NLP中的概率图模型