最小描述长度MDL(Minimum Description Length)及信息论介绍

信息论介绍

信息论是应用数学的一个分支,主要研究的是对一个信号包含信息的多少进行量化。它最初被发明是用来研究在一个含有噪声的信道上用离散的字母表来发送消息,例如通过无线电传输来通信。在这种情况下,信息论告诉我们如何对消息设计最有编码以及计算消息的期望长度,这些消息是使用多种不同编码机制、从特斯能够的概率分布上采样得到的。

百度百科的解释是: 信息论是运用概率论与数理统计的方法研究信息、信息熵、通信系统、数据传输、密码学、数据压缩等问题的应用数学学科。信息系统就是广义的通信系统,泛指某种信息从一处传送到另一处所需的全部设备所构成的系统。

(个人理解是信息论研究的类似于战时的电报、密码通信等,将语言信息转换成数学概率研究的问题。)

信息论的基本思想是一个发生概率低事件要比一个发生概率高的事件,能提供更多的信息。 比如:“今天早上太阳升起” 和“今天早上有日食”,后者的信息量就更丰富。因此,量化信息需要满足以下三个性质:

  1. 非常可能发生的事件信息量比较少,并且在极端情况下,确保能够发生的事件应该没有信息量。(比如每天早上太阳就一定会升起,这种说了等于白说的事件,即没有信息量。)
  2. 较不可能发生的事件具有更高的信息量。(相比明天太阳照常升起,明天会不会下雨提供了更多的信息)
  3. 独立事件应具有增量的信息。 例如,投掷的硬币两次正面朝上传递的信息量,应该是透支一次硬币正面朝上的信息量的两倍。

定义一个事件x= x x x自信息(self-information
I ( x ) = l o g P ( x ) I(x)=logP(x) I(x)=logP(x)
在这个例子中,我们用log 来表示自然对数,其底数为 e e e。因此这里顶一个I(x)单位是奈特(nats)。 一奈特是以 1 e 1\over e e1的概率观测到一个事件时获得的信息量。其他材料也有使用底数为2的对数,单位是比特(bit)或者香农(shannons); 通过比特度量的信息只是通过奈特度量信息的常数倍,即1nat=1.44bit。

换言之, 如果是1nat的信息量,则该事件发生的概率为1/e, 此概率用以2为底计算为log(2)(1/e)=1.443bit

自信息只能处理单个的输出,我们可以用 香农熵(Shannons entropy) 来对整个概率分布中的不确定新总量进行量化 ==:
H ( x ) = E x ∽ p [ I ( x ) ] = − E x ∽ p [ l o g P ( x ) ] H(x)= \mathbb{E_{x\backsim p}} [I(x)] = -\mathbb{E_{x\backsim p}} [logP(x)] H(x)=Exp[I(x)]=Exp[logP(x)]
或者

H ( x ) = − ∑ x P ( x ) l o g 2 [ P ( x ) ] H(x) =- \sum_{x} P(x)log_2[P(x)] H(x)=xP(x)log2[P(x)]

也记作H§ 。一个分布的香农熵是指遵循这个分布的事件所产生的期望信息总量。它给出了对以及概率分布P生成的符号进行编码所需的比特数在平均意义上的下界。 那些接近确定性的分布具有较低的熵,那些接近均匀分布的概率分布具有较高的熵。

最小描述长度 MDL Minimum Description Length

最小描述长度( MDL) 原理是Rissane 在研究通用编码时提出的。其原理是对于一组给定的实例数据 D , 如果要对其进行保存 ,为了节省存储空间, 一般采用某种模型对其进行编码压缩,然后再保存压缩后的数据。同时, 为了以后正确恢复这些实例数据,将所用的模型也保存起来。所以需要保存的数据长度( 比特数) 等于这些实例数据进行编码压缩后的长度加上保存模型所需的数据长度,将该数据长度称为总描述长度。

最小描述长度( MDL) 原理就是要求选择总描述长度最小的模型。

从信息论的角度来看,我们希望传输预测数据(更准确地说,它们的概率分布) 以及生成这些预测数据的模型。预测的目标变量和模型可以被看作是一种在嘈杂信道上传输它们所需的数据长度

M D L = L ( h ) + L ( D ∣ h ) MDL = L(h) + L(D | h) MDL=L(h)+L(Dh)
其中:

  • h 是模型,
  • D是该模型的预测结果,
  • L(h) 是模型所需要的数据长度,
  • L(D | h)是该模型在训练集上得出的预测结果所需的长度。

其中预测结果所需要的长度(比特数)和模型所需长度(比特数)可以计算为负对数似然,如下公式所示:
M D L = − l o g ( P ( θ ) ) – l o g ( P ( y ∣ X , θ ) ) MDL = -log(P(\theta)) – log(P(y | X, \theta)) MDL=log(P(θ))log(P(yX,θ))

最小描述长度( MDL) 原理是将奥卡姆剃刀形式化后的一种结果。其原理就是:在给予假说的集合的情况下,能产生最多资料压缩效果的那个假说是最好的。即,该概念寻求最简单、最不复杂的模型

MDL计算与BIC非常相似,在某些情况下可以证明是等效的。


参考资料:

  1. Probabilistic Model Selection with AIC, BIC, and MDL:https://machinelearningmastery.com/probabilistic-model-selection-measures/#:~:text=Model%20selection%20is%20the%20problem,k%2Dfold%20cross%2Dvalidation.
  2. 数字时代背景下的香农信息论:https://www.cdstm.cn/gallery/media/mkjx/qcyjswx_6431/202103/t20210324_1044872.html
  3. 百度百科-信息论:https://baike.baidu.com/item/%E4%BF%A1%E6%81%AF%E8%AE%BA/302185
  4. 《Deep Learning》(深度学习)第三章 3.31 信息论:https://www.manongbook.com/ai/30.html

你可能感兴趣的:(机器学习算法,概率论)