资讯

最小描述长度是什么?最好的模型能把数据压缩得最短

2026-11-053 分钟阅读百科
TL;DR最小描述长度原则(Minimum Description Length,MDL)由 Jorma Rissanen 在 1978 年提出,主张最好的模型是使“描述模型本身所需长度”加上“借助模型描述数据所需长度”之和最小的那个,把奥卡姆剃刀形式化为压缩问题,用于模型选择、防止过拟合,与贝叶斯信息准则和柯尔莫哥洛夫复杂度密切相关。

最小描述长度原则(Minimum Description Length,MDL)是一种选择模型的原则,它认为:最好的模型,是能够用最短的总长度把数据描述清楚的那个模型。它由芬兰裔计算机科学家 Jorma Rissanen 在 1978 年提出,把“学习”看作“压缩”:能把数据压缩得越短,说明越好地抓住了数据中的规律。

学习就是压缩

最小描述长度原则的核心思想是:数据中的规律可以用来压缩数据。比如一串数字“1、2、3、4……一直到一万”,如果逐个写出来需要很长的篇幅;但如果发现了其中的规律,只需要写“从 1 数到 10000”就够了,非常简短。反过来,一串完全随机的数字,没有任何规律,无法压缩,只能原样记录。因此,一个模型越能把数据压缩得短,就说明它越好地捕捉了数据中真实存在的规律。

两部分的描述长度

用一个模型来描述数据,总的描述长度由两部分组成:第一部分是描述模型本身所需要的长度,模型越复杂、参数越多,这部分越长;第二部分是借助这个模型来描述数据所需要的长度,也就是在知道模型的前提下,还需要额外记录多少信息才能完整地还原数据,主要是模型预测不准的那些“误差”。模型越能准确地拟合数据,这部分越短。最小描述长度原则就是选择让这两部分之和最小的模型。

在过拟合与欠拟合之间平衡

这两部分之间存在天然的权衡:一个过于简单的模型,自身的描述很短,但它拟合不好数据,需要记录大量的误差,第二部分很长,这对应欠拟合;一个过于复杂的模型,可以把数据拟合得近乎完美,第二部分很短,但描述模型本身需要很长的篇幅,比如一个能精确穿过每个数据点的高次多项式,需要记录大量的系数,这对应过拟合。最好的模型位于两者之间。比如用多项式拟合一组数据点:一次的直线太简单,误差很大;二十次的多项式能穿过每一个点,但系数太多;三次多项式可能用不多的系数就把误差控制得很小,总长度最短,于是被选中。因此,最小描述长度原则可以看作是“奥卡姆剃刀”原则的一种精确的、可以计算的形式。

理论背景

最小描述长度原则与信息论有着深刻的联系:根据香农的信息论,一个概率为 p 的事件,最优的编码长度约为 p 的对数取负,因此“借助模型描述数据的长度”就等于数据在模型下的负对数似然。在一定的近似下,最小描述长度原则与贝叶斯信息准则(BIC)的形式非常接近,也与贝叶斯方法中的最大后验估计相通:描述模型的长度对应着模型的先验概率。它的思想还与柯尔莫哥洛夫复杂度有关:一段数据的柯尔莫哥洛夫复杂度,是能够生成它的最短程序的长度,但这个量在理论上是无法计算的,最小描述长度原则可以看作它的一种实用的近似。Peter Grünwald 在 2007 年出版的《最小描述长度原则》一书对这一理论进行了系统的阐述。

应用

最小描述长度原则被用于各种模型选择问题:决定多项式的次数、聚类的簇数、决策树的大小(一些决策树剪枝方法就基于它)、时间序列模型的阶数,以及在数据挖掘中发现有意义的模式。也有研究者从“压缩”的角度来理解大语言模型:训练语言模型最小化的交叉熵损失,本质上就是对文本的编码长度,一个预测下一个词越准的语言模型,就是一个越好的文本压缩器。