1、自然语言处理中的自然语言处理中的最大熵方法最大熵方法马金山信息检索研究室 http:/什么是熵什么是熵什么是熵?什么是熵? 没有什么问题在科学史的没有什么问题在科学史的进程中曾被更为频繁地讨论过进程中曾被更为频繁地讨论过 普里高津普里高津熵定律是自然界一切定律中的最高定律熵定律是自然界一切定律中的最高定律 里夫金里夫金&霍华德霍华德德国物理学家克劳修斯(德国物理学家克劳修斯(Rudolph J.E clausius)于于1865提出熵的概念提出熵的概念 其经典意义定义为:其经典意义定义为: R表示可逆过程,即体系的熵变等于可逆过程吸收或表示可逆过程,即体系的熵变等于可逆过程吸收或耗散的热量除以
2、它的绝对温度。耗散的热量除以它的绝对温度。 RTdQds)(熵原理的形象比喻一滴墨水滴入一杯清水中一滴墨水滴入一杯清水中,墨水扩散后墨水扩散后均匀地分布在清水中均匀地分布在清水中比喻热力体系的自发过程总是趋于温度比喻热力体系的自发过程总是趋于温度均匀分布,均匀分布, 反之不行反之不行。熵增原理熵增原理一个孤立系统的熵,自发性地趋于极大,随一个孤立系统的熵,自发性地趋于极大,随着熵的增加,有序状着熵的增加,有序状态逐步变为混沌状态,逐步变为混沌状态,不可能自发地产生新的有序结构。不可能自发地产生新的有序结构。熵的普遍性熵概念的泛化熵概念的泛化 熵理论是存在问题的,熵理论是存在问题的, 需要发展和
3、完善需要发展和完善熵与信息熵与信息1948年电气工程师香农年电气工程师香农( Shannon)创立了信创立了信息论,将信息量与熵联系起来息论,将信息量与熵联系起来。他用非常简洁的数学公式定义了信息时代的他用非常简洁的数学公式定义了信息时代的基本概念:熵基本概念:熵 H(p) = -p(x)logp(x)单位:单位:bits通信中的熵通信中的熵表示表示“是是” 和和 “否否”1 = 是是 0 =否否表示表示“是是” 、“否否”和和“可能是可能是”11 =是是 00 = 否否 10(01) = 可能是可能是一条消息的熵就是编码这条消息所需二一条消息的熵就是编码这条消息所需二进制位即比特的个数。进制
4、位即比特的个数。随机事件的熵随机事件的熵熵定量的描述熵定量的描述事件事件的不确定性的不确定性设随机变量设随机变量 ,它有,它有A1,A2,An共共n n个个可能的结局,每个结局出现的机率分别为可能的结局,每个结局出现的机率分别为p1, ,p2 ,.,pn,则则 的不确定程度,即信的不确定程度,即信息熵为息熵为: : 熵越大,越不确定熵越大,越不确定熵等于熵等于0,事件事件是确定的是确定的niippH1log)(例子例子抛硬币抛硬币掷色子(掷色子(32个面)个面)不公平的硬币不公平的硬币熵的图形信息熵的意义信息熵的意义信息熵概念为测试信息的多少找到了一信息熵概念为测试信息的多少找到了一个统一的科
5、学定量计量方法,是信息论个统一的科学定量计量方法,是信息论的基础。的基础。信息熵将数学方法和语言学相结合信息熵将数学方法和语言学相结合最大熵理论最大熵理论熵增原理熵增原理在无外力作用下,事物总是朝着最混乱在无外力作用下,事物总是朝着最混乱的方向发展的方向发展事物是约束和自由的统一体事物是约束和自由的统一体事物总是在约束下争取最大的自由权,事物总是在约束下争取最大的自由权,这其实也是自然界的根本原则这其实也是自然界的根本原则。在已知条件下,熵最大的事物,最可能在已知条件下,熵最大的事物,最可能接近它的真实状态接近它的真实状态最大熵原则下点的分布对一随机过程,如果没有任何观测量,对一随机过程,如果
6、没有任何观测量,既没有任何约束,则解为均匀分布既没有任何约束,则解为均匀分布最大熵原则下点的分布最大熵原则下点的分布最大熵原则下点的分布选择最好的模型选择最好的模型研究某个随机事件,根据已知信息,预研究某个随机事件,根据已知信息,预测其未来行为。测其未来行为。当无法获得随机事件的真实分布时,构当无法获得随机事件的真实分布时,构造统计模型对随机事件进行模拟。造统计模型对随机事件进行模拟。满足已知信息要求的模型可能有多个。满足已知信息要求的模型可能有多个。基于最大熵原理选择模型基于最大熵原理选择模型选择熵最大的模型选择熵最大的模型Jaynes证明:对随机事件的所有相容证明:对随机事件的所有相容的预
7、测中,熵最大的预测出现的概率占的预测中,熵最大的预测出现的概率占绝对优势绝对优势Tribus证明,正态分布、伽玛分布、指证明,正态分布、伽玛分布、指数分布等,都是最大熵原理的特殊情况数分布等,都是最大熵原理的特殊情况基于最大熵的统计建模基于最大熵的统计建模特征空间的确定特征空间的确定特征选择特征选择 建立统计模型建立统计模型 基于最大熵的统计建模即发现满足已知条基于最大熵的统计建模即发现满足已知条件的熵最大的模型件的熵最大的模型基于最大熵的统计建模基于最大熵的统计建模已有特征已有特征 f1(x,y), f2(x,y), fn(x,y)特征的经验概率:特征的经验概率:特征的期望概率特征的期望概率
8、:如果样本足够多,可信度高的特征的经验概率与真如果样本足够多,可信度高的特征的经验概率与真实概率一致的实概率一致的由训练样本习得的模型由训练样本习得的模型, ,对可信度高的特征的估计应对可信度高的特征的估计应满足约束等式满足约束等式: :yxyxfyxpfp,),(),()(yxyxfxypxpfp,),()|()()()()(fpfp基于最大熵的统计建模基于最大熵的统计建模事件的熵计算模型的最大熵得其中yxxypxypxppH,)|(log)|()()(iiiifpfppHp)()()(),() ),(exp()|()(1iiixZyxfxypyiiiyxfxZ) ),(exp()(最大熵模
9、型求解 参数估计GIS算法(Generalized Iterative scaling) Darroch and Ratcliff,1972 IIS算法(Improved Iterative Scaling) Della Pietra 1995Input: 特征函数 特征分布Output: 最优参数值 最优模型 IIS算法1 Start with for all 2 Do for each a Let be the solution to b Update the value of 3 Go to step 2 if not all have converged 0ii, 2 , 1ni)()
10、,(exp(),()|()(,#iyxiifpyxfyxfxypxp, 2 , 1niiiii)()(log1iiifpfpM词义消歧的例子词义消歧 确定多义词在一个句子中所表达的词义“打”的语义:S1,S2,S3,S4S1打人S2打酱油S3打球S4打电话他打完篮球后给我打了个电话 ? ?确定“打”的语义没有任何先验知识概率分布: P(S1)= 0.25 P(S2)= 0.25 P(S3)= 0.25 P(S4)= 0.25 H(p)= -4 X (0.25 log20.25)=2熵值最大,最合理确定“打”的语义先验知识先验知识: 取S1或S3的概率:0.6 取S2或S4的概率:0.4概率分布
11、:概率分布: P(S1)= 0.3 P(S2)= 0.2 P(S3)= 0.3 P(S4)= 0.2 H(p)= -2 X (0.2 log20.2) -2 X (0.3 log20.3)符合约束的分布中,该分布熵值最大,最合理不存在没有约束的自由他了那个坏人 打=S1他打了二两酒 打=S2他喜欢打篮球 打=S3他喜欢打电话 打=S4他用手机打我 打=S1他酒后打人 打=S1一些人在打球 打=S3知识的获取统计这些先验知识(约束)(人,S1) (狗,S1)(酱油,S2) (酒,S2) (篮球,S3) (冰球,S3)(电话,S4) (手机,S4) (手机,S1) (酒,S1) (人,S3)知识的
12、形式化表示在这些约束下,计算P(打= Si),并满足模型的熵最大引入特征函数 1 if y=S3 and x=篮球 0 otherwise),(yxf模型的建立特征选择特征选择 在所有的特征中,选择最有代表性的特征,在所有的特征中,选择最有代表性的特征,构造约束集合构造约束集合参数估计参数估计 应用应用IIS算法,计算出每个特征对应的参数算法,计算出每个特征对应的参数值值i特征选择(1)最简单的方法:选择出现次数大于n的特征For example: (Adwait Ratnaparkhi 1999) Discard features that occur less than 5 times 代
13、价最小特征选择特征选择(2)(2)原子特征算法原子特征算法(Basic Feature Selection )1 特征集合特征集合S=02 任取一特征任取一特征 加入集合中加入集合中3 调用调用IIS,确定确定4 在该约束集合下,计算熵的增量在该约束集合下,计算熵的增量5 选择使熵值增加最大的特征加到选择使熵值增加最大的特征加到S中中6 调用调用IIS,计算在此特征集下的计算在此特征集下的7 执行执行2fspfsp特征选择(特征选择(3 3)近似增益算法近似增益算法(Approximate Gains) 已有特征已有特征 对应参数对应参数 增加特征增加特征 对应的参数对应的参数 则增加的特征只
14、影响当前参数则增加的特征只影响当前参数 , 不变不变模型的形式模型的形式:yyxfsyxfsxZfsexypxZexypp),(),()(1,)|()()|(121,ifff121,iif0ReferenceA.Berger S.D.Pietra V.D.Pietra A maximum entropy approach to natural language processing Computational linguistics 1996,V22(1):39-71S.D.Pietra, V.D.Pietra and J.Lafferty Inducing features of random fields IEEE Transactions on Pattern Analysis and Machine Intelligence 1997,V19(4): 380-393 R. Rosenfeld Adaptive statistical language modeling: A Maximum Entropy Approach Phd thesis CMU-CS-94,1994ThanksThanks