最小描述长度准则—Minimum Description Length
来源:互联网 发布:九域神皇免费阅读 软件 编辑:程序博客网 时间:2024/06/07 15:51
一、MDL的提出目的
提出最小描述长度(MDL)的目的是为了根据信息论中的基本概念来解释极大后验假设(MAP)。
二、理论基础
A. 极大后验假设(MAP)
贝叶斯公式:
在许多学习场景中,学习器考虑候选假设集合H并在其中寻找给定数据D时,可能性最大的假设h(或者存在多个这样的假设时选择其中之一)。这样的具有最大可能性的假设h被称为极大后验(maximum a posteriori, MAP)假设。
h满足一下公式:
在最后一步,去掉了P(D),因为它不依赖于h。
B. 最优编码
假设想要为随机传送的消息设计一个编码,其中遇到消息 i 的概率是 Pi。Shannon 已经证明最优编码(使得期望消息长度最短的编码)对消息 i 的编码长度为
三、最小描述长度准则的信息论解释
极大后验假设所满足的等式,可以等价地表示为使以2为底的对数的负值最小化:
上述等式与我们熟悉的极大后验假设公式完全等价。由此也不难看出:
1. 公式中第一项对应的是——在给定假设 h 时,训练数据 D 的描述长度。也即是发送者和接收者都知道假设 h 时描述数据 D 的最优编码。
2. 公式中第二项对应的是——在假设空间 H 的最优编码下 h 的描述长度。
至此,可以看出:最小描述长度准则默认选用使这两个描述长度的和最小化的假设 h。
四、对最小描述长度的思考
从信息论的角度看最小描述长度公式,可以把整个学习过程(以分类为例)理解为以下过程:
发送者需要将训练数据 D (包含特征和分类结果)、拟合这些数据的假设 h 以编码的方式传送给接收者。在此处明确一下发送者究竟需要传送哪些必须的信息呢?
训练数据——为了尽量降低编码长度,我们假设发送者和接收者都知道每一个训练数据的特征信息,所以特征信息就不用编码传送。而每一个训练数据的分类结果必须传送吗?答案是N0,因为我们还要讲假设 h 编码传送。如果训练数据的分类结果label 和通过假设 h 预测出的结果一致,那么我们就不需要传送这个数据的标签信息。只有当训练数据预测出错时,才需要将正确的标签信息传送。
假设——假设 h 必须编码传送。并且 h 越复杂, 编码长度越大。如若不明白,可以假设学习器是决策树,对树的编码方法随着决策树节点和边的增长而增加。
其中对训练数据的编码和对假设的编码分别记为 C1 和 C2。
至此可以看出,当 C1 和 C2 分别选取MDL准则中对应的最佳编码方式时训练数据和假设的编码长度之和最小。所选的假设 h 也就是 极大后验假设。
注:从上面的分析可以看出,MDL准则,实际上是假设复杂性(模型复杂度)和假设产生错误的数量之间对的一个折中。MDL 倾向于选择一个产生少量错误而且较短的假设,而不是能完美分类你和训练数据的较长的假设。
五、博主有话说
MDL准则,可以用于处理数据过拟合的问题。Quinlan & Rivest 在1989年就做过实验验证,相关报告可以在 Information and Computation 中找到,报告全称是 Inferring decision trees using the minimum description length principle.
MDL能不能说明所有情况下短假设最好?MDL应用的难点在哪儿?
答案是 否!回顾MDL的证明过程,我们能明确的是,当选定编码方式 C1 和 C2时,如果能使得假设 h 的编码长度和给定 h 训练数据 D 的编码长度分别满足 MDL中的形式时,MDL准则将能得到 MAP 假设。
所以,我们仍没有证明,对于任意 C1 , C2,MDL假设都是最好的。故此,答案是否。
MDL的应用难点在于,我们需要知道所有假设 h 的概率 以及在假设 h 下,训练数据 D 的概率。目前研究者对于MDL的争论,集中于为选择 C1 和 C2 的论证。
MDL 准则是个很有意思的玩意儿,也远比我写的复杂得多。欢迎大牛指正,也欢迎各位交流学习。
- 最小描述长度准则—Minimum Description Length
- 分词研究中的最小描述长度(Minimum description length)方法
- [转载]分词研究中的最小描述长度(Minimum description length)方法
- 最短描述长度原则(MDL, Minimum Description Length)
- MDL:minimum description length principle
- 增加织梦description文章描述长度
- dede修改描述description限制字数长度
- 最小描述长度(MDL)
- HUST 1010 The Minimum Length(最小循环节)
- Using Minimum Description Length to Optimize the 'K' in K-Medoids
- 长度(length)
- leetcode209-Minimum Size Subarray Sum(最小长度子数组和)
- Minimum Size Subarray Sum-最小长度字数组和问题
- dede 描述、摘要description长度,dedecms摘要限制,dedecms摘要字数
- 算法讲解—【4】—Fisher准则&感知准则&最小错误分样本数准则
- MDL最小描述长度在分词研究中的应用
- The Minimum Length 【kmp】
- hust1010 The Minimum Length
- 第 10 章 触发程序
- png图片压缩https://tinypng.com/
- 分布式利器Zookeeper(一)
- HDFS块文件和存放目录的关系
- 如何将自己的项目上传到GitHub中的仓库之中
- 最小描述长度准则—Minimum Description Length
- HTTPS--使用wireshark观察SSL/TLS握手过程--双向认证/单向认证
- 分布式利器Zookeeper(二):分布式锁
- 【WLAN从入门到精通-基础篇】第11期——WLAN接入认证-Portal
- java递归使用过程中的一点学习心得
- zookeeper集群搭建
- GetFileSize 函数
- 数据结构和算法
- Linux下永久修改MAC地址和ifconfig命令总结(转)