PAC(probably approximately correct) 学习架构介绍
PAC学习框架(模型)
学习框架背景:
PAC 模型的作者是Leslie Valiant ,因此获得2010 年图灵奖。
最初PAC(probably approximately correct)学习框架针对的是二元分类问题(原装版),用严格的数学语言描述了可“学习”性。
- 对于一个输入空间
X (instance space),X 上的一个概念(conception)C 是X 上的一个子集。或者说C 是X 到集合{0,1} 的映射(或函数),这样用C−1(1) 来表示X 中函数值为1的全体(注意:这里只是一个记号,不等同于数学中的逆函数,因为逆函数有更严格的条件,扯远了))。显然这些元素的全体是X 的子集。这样就把子集和X到{0,1}的映射一一对应了。 - 如果有另外一个函数
C′:X−>{0,1} ,那么我们如何度量两个函数之间的“差异”,或者用数学的语言描述就是“距离”。(用“距离”过于严格,想想应该用“度量”,引入距离概念疑似给函数集合引入拓扑结构,扯远了)。在函数集合上引入度量的概念,更一般,应该用《测度论》中的“测度”这个词。由于集合和函数对等,其实就是集合上我们引入了测度的概念。 -
这样我们在
X 的子集空间上引入了测度μ 。那么两个函数的差异就可以写成:μ(C,C′)=μ(C(X)≠C′(X)) 写成集合的形式:
μ(C,C′)=μ(CΔC′) 这样“学习”的问题就转换成:对于了二元分类目标函数:
C:X−>{0,1} ,给定一个误差范围ϵ0 ,找一个近似于目标函数的近似函数C′ 。使得:μ(CΔC′)<ϵ0
PAC学习框架的严格定义:
- (1)PAC可学习性的定义。这里没有考虑算法的复杂度。
对于任意的
f∈C (假设空间),任意的测度(概率分布)D ,任意的ϵ∈[0,1/2) ,任意δ∈[0,1) ,存在算法L 使得有1−δ 的几率(概率)得到一个近似h ,满足D(f,h)<ϵ 。-
(2)有效PAC可学习性的定义。这里限制了算法复杂度。
算法
L 的运行时间复杂度关于n (输入空间的维度)、1/ϵ 、1/δ 以及C 的大小是多项式的。
PAC学习框架和统计学习理论的差异和联系
1、PAC对算法引入了成功率的属性,即允许算法在一定几率下可以失败,这和统计学习中经验误差的要求很类似。但是统计学习中对经验误差有最小化要求(目标化)。而PAC是给定这个阀值要求,然后去学习寻找近似函数(前提、条件化)。
2、方法论上的差异:PAC学习没有统计学习中的训练集和测试集的概念。统计学习在训练集上刻画和度量目标函数和学习函数的差异。
强可学习与弱可学习
在PAC学习架构下有两个概念。
- 1、强可学习。在PAC定义中,如果
C 是有效PAC可学习的(efficient PAC learnability),这里δ∈[0,1/2) 。所以说学习成功率很高,至少大于0.5。 - 2、弱可学习。强可学习的条件下,对错误率有了限定。错误率必须低于0.5(就是至少要比随机猜测要强吧)。
- 3、后来证明在PAC学习架构下强可学习和弱可学习是充分必要条件(即等价)。
后话
现在很多材料就说统计学习中的Boosting方法是受这一等价条件的启发。其实两个是不同的学习架构。而且Boosting这种朴素的思想是容易被考虑(比如我们中国就有俗语:三个臭皮匠抵上一个诸葛亮),只是形成具体算法需要巧妙构思。当然是不是真的受这个等价条件启发,还是要问Adaboosting算法设计作者(Yoav Freund 和 Robert Schapire)。
写这篇文章起因也是想看看Adaboosting算法的思想起源。