1948年,香农(Claude Shannon)在他著名的论文“通信的数学原理”( A Mathematic Theory of Communication )提出了 “信息熵” 的概念,解决了信息的度量问题,并且量化出信息的作用。

不确定性越高,这条信息的信息量越大;不确定性越低,信息量越小。

如何量化?

猜数字游戏:主持人在纸上写下一个[1,64]之间的整数,你来猜这个数字是什么。你每猜一次,我会告诉你对或者不对。问最少需要几次可以得出正确答案?——6次:二分问法,第一次问“答案≤32吗”;若是,第二次问“答案≤16吗”…—— H ( X ) = x X P ( x ) lo g P ( x ) ( 1 )
变量不确定越大(均匀分布是最大),熵就越大,要把它搞清楚所需要的信息量也就越大。

  • 熵的单位取决于定义用到的对数的底:底为2时,单位为bit;底为e时,单位为 nat;底为10时,单位为Hart。
  • 熵的取值范围为 2 1 3 = 8 1 9 2 )表示一个汉字。用两字节的国标编码存储这本书大约需要 1MB。
  • 但汉字使用频率是不均等的,前10%的汉字占常用文本的95%以上,若只考虑每个汉字的独立概率,每个汉字的信息熵大约只有8~9比特;再考虑上下文的相关性,则只有5比特左右。所以压缩之后存储这本书大约只要 320KB。
  • 这两个数量的差距称为**“冗余度”(Redundancy)**。不同语言冗余度差别很大,汉语在所有语言中冗余度相对较小,是最简洁的语言。

信息的作用

一个事物内部会有随机性,也就是不确定性,假定为

几乎所有的自然语言处理、信息与信号处理的应用都是一个 消除不确定 的过程。

自然语言的统计模型中,一元模型是通过词本身的概率分布来消除不确定因素,而二元及更高阶的语言模型还使用了上下文的信息。

在数学上可以严格证明为什么这些“相关的”信息也能消除不确定性——条件熵(Conditional Entropy)。

条件熵(Conditional Entropy)

H ( X Y ) H ( X Y , Z ) ,也就是说三元模型比二元模型好。

🍉一个有意思的问题:上述式子中等号什么时候成立?

  • 等号成立说明增加了信息,不确定性却没有降低。
  • 如果获取的信息与要研究的事物毫无关系,则等号就成立。

那么如何量化这种相关性呢?👇

互信息(Mutual Information)

——两个随机事件“相关性”的量化度量。

假定有两个随机事件 P ( Y ) 三个概率,从而很容易计算出互信息。因此互信息被广泛用于度量一些语言现象的相关性。

机器翻译中最难的两个问题之一就是词义的二义性(又称歧义性,Ambiguation)问题。使用互信息是解决这个问题最简单而实用的方法。例如:

  • Bush 一词可以是美国总统的名字,也可以是灌木丛。
  • 解决思路:首先从大量文本中找出和总统Bush一起出现的互信息最大的一些词,比如总统、美国、国会、华盛顿等等;然后用同样的方法找出和灌木丛一起出现的互信息最大的词,如土壤、植物、野生等等。有了这两组词,在翻译Bush时,看看上下文中哪类相关的词多就可以了。

相对熵/交叉熵(Relative Entropy,或Kullback-LeiblerDivergence)

——信息论中另一个重要的概念

用来衡量两个取值为正数的函数的相似性,定义如下:
K L ( f ( x ) g ( x ) ) = x X f ( x ) lo g g ( x ) f ( x ) ( 5 )
三个结论:

  1. 对于两个完全相等的函数,它们的相对熵=0;
  2. 相对熵越大,两个函数差异越大;反之,相对熵越小,两个函数差异越小;
  3. 对于概率分布或者概率密度函数,如果取值大于等于0,相对熵可以度量两个随机分布的差异性。

相对熵是 不对称 的:
J S ( f ( x ) g ( x ) ) = 2 1 [ K L ( f ( x ) g ( x ) ) + K L ( g ( x ) f ( x ) ) ] ( 6 )

  • 信号处理:如果两个随机信号,相对熵越小,说明两个信号越接近;反之两个信号差异越大。
  • 信息处理:衡量两段信息的相似程度,比如论文查重,如果一篇文章照抄或者改写另一篇,那么这两篇文章中次品分布的相对熵就非常小,接近于0。
  • Google的自动问答系统:衡量两个答案的相似性。
  • 自然语言处理:衡量两个常用词(在语法和语义上)在不同文本中的概率分布,看它们是否同义。
  • 信息检索:一个重要概念:词频率-逆向文档频率(TF-IDF)

熵、条件熵、相对熵——这三个概念与语言模型的关系非常密切。

如何定量地衡量一个语言模型的好坏?

  • 一个很自然的想法: 错误率 。例如语义识别或机器翻译的错误率。——但是这种测试方法对于语言模型的研究人员来讲,既不直接也不方便,而且很难从错误率反过来定量度量语言模型。
  • 语言模型是为了用上下文预测当前的文字,模型越好,预测得越准,那么当前文字的不确定性就越小。——而 信息熵 正是对不确定性的衡量。
    • 贾里尼克提出**语言模型复杂度(Perplexity)**的概念
    • 物理意义:在给定上下文的条件下,句子中每个位置平均可以选择的单词数量。
    • 一个模型复杂度越小,每个位置的词就越确定,模型越好。

困惑度(perplexity):它主要是根据每个词来估计一句话出现的概率,并用句子长度作normalize,公式为:
PP(S) = P(w_1w_2...w_N)^{\frac{1}{N}} \\ = \sqrt[N]{\frac{1}{p(w_1w_2...w_N)}} \\ = \sqrt[N]{\prod_{i=1}^{N}\frac{1}{p(w_i | w_1w_2...w_{i-1})}} P P ( S ) = P ( w 1 w 2 . . . w N ) N 1 = N p ( w 1 w 2 . . . w N ) 1 = N i = 1 N p ( w i w 1 w 2 . . . w i 1 ) 1
或者等价地,

I(X;Y;Z) 当有三个随机变量时他们之间各种 互信息 之间关系如下图所示,可以看到中间那部分就是I(X;Y;Z)I(X;Y;Z)I(X;Y;Z) I(X;Y;Z)=I(X;Y)−I(X;Y∣Z)I(X;Y;Z)=I(X;Z)−I(X;Z∣Y)I(X;Y;Z)=I(Y;Z)−I(Y;Z∣X)I(X;Y;Z)=H(X,Y,Z)−H(X)−H(Y)−H(Z)+I(X,Y)+I(Y,Z)+I(X,Z) I(X;Y;Z) = I(X;Y)-I(X;Y|Z)\\ I(X;Y;Z) = I(X;Z)-I(X;Z|Y
如果是连续型随机变量的情况,设ppp为随机变量XXX的概率分布,即p(x)p(x)p(x)为随机变量XXX在X=xX=xX=x处的概率密度函数值,则随机变量XXX在X=xX=xX=x处的香农信息量定义为:−log2p(x)=log21p(x)-log_2p(x)=log_2\frac{1}{p(x)}−log2​p(x)=log2​p(x)1​ 这时香农信息量的单位为比特。(如果非连续型随机变量,...
学习 决策树的过程中,在ID3算法和C4.5算法中用到了 ,信息增益。那么 条件熵 和信息增益有什么关系呢? 目录一.信息 二. 条件熵 三.信息增益四. 条件熵 和信息增益的关系五.怎么理解 条件熵 1. 条件熵 2.推导公式六.举例1.信息 2. 条件熵 3.信息增益 一.信息 表示一个随机变量的复杂性或者不确定性。 当前样本集D中第 i 类样本所占的比例 pi ,则D的信息 为 信息 越小,代表事件越确定。 关于信息 请看之前一篇博客:傻子都能看懂的——信息 (香农 条件熵 H(Y|X) 表示在已知随机变量X的条件下随机变量Y的不确定性。 条件熵 H(Y|X) 定义为X给定条件下Y的条件概率分布的 对X的数学期望。 如何理解这个数学期望,请看下图公式第二步,是不是一个经典的数学期望式子? 第二步到第三步,也就是条件概率到 联合 概率:P(x,y)=P(x∩y)=P(x|y)*P(y) 假如我们有上面数据: 设随机变量Y={嫁,不嫁} 我们可以统计出,嫁的个...
上由兰州大学自拥有的课程。 测验和课程内容属于兰州大学及其创建的老师们。 某些诸如小论文之类的答案,请不要抄袭,抄袭在兰州大学是一种很严重的行为,可能导致课程零分!本人也对此类答案保留一切权利! 是我整理的马克思主义基本原理概论问答题要点。 将本仓库中的内容用于任何其他商业目的,否则后果自负! Answers Computer Science Elective Undergraduate Courses content provided repository intended learners encounter difficulties their learning process. Homework answers myself. 由于没有同一清晰的界定标准,单字词与词素、词与短语之间的划界非常困难。 词由于语境的不同而含义不同,导致划分方式也不同;即歧义切分问题。 切分歧义类型可以分成交集型切分歧义、组合型切分歧义以及混合型。 前者又可以称之为偶发歧义。形式为AJB,其中AJ可以组成词语、JB也...