PAC可学习性

原创 2016年06月02日 12:21:47

PAC

PAC可学习性
训练学习器的目标是,能够从合理数量的训练数据中通过合理的计算量可靠的学习到知识。
机器学习的现实情况:
1、除非对每个可能的数据进行训练,否则总会存在多个假设使得真实错误率不为0,即学习器无法保证和目标函数完全一致
2、训练样本是随机选取的,训练样本总有一定的误导性

什么是PAC可学习的
弱化对学习器的要求:
1、我们不要求学习器输出零错误率的假设,只要求错误率被限制在某常数ε范围内,ε可为任意小。
2、不要求学习器对所有任意抽取的数据都能成功预测,只要求其失败的概率被限定在某个常数μ的范围内,μ可取任意小。
简而言之,我们只要求学习器可能学习到一个近似正确的假设,故得到了“可能近似正确学习”或PAC学习。

一个可PAC学习的学习器要满足两个条件:
• 学习器必须以任意高的概率输出一个错误率任意低的假设
• 学习过程的时间最多以多项式方式增长
对于PAC学习来说,训练样本的数量和学习所需的计算资源是密切相关的。如果学习器对每个训练样本需要某最小处理时间,那么为了使目标函数f是可PAC学习的,学习器必须在多项式数量的训练样本中进行学习。实际上,为了显示某输出空间的类别C是可PAC学习的,一个典型的途径是证明中每个C可以从多项式数量的训练样本中学习到,而后证明每个样本处理时间也限制于多项式级。
How many training examples are sufficient to assure that any consistent hypothesis will be probably (with probability 1-δ) approximately correct (within error ε) .
如果想要概率低于δ(0<=σ<=1),所以|H|e^(-εm)<δ
所以:m>=1/ε*(lnH + ln(1/δ)) (2)

PAC 模型是与分布无关的, 因对学习器来说, 实例上的分布是未知的。该定义不要求学习器输出零错误率的假设,而只要求其错误率被限定在某常数ε的范围内(ε可以任意小);同时也不要求学习器对所有的随机抽取样本序列都能成功, 只要其失败的概率被限定在某个常数δ的范围内(δ也可取任意小)即可。
举例说明
设学习器L 其假设空间与概念空间相同, 即H =C ,因假设空间为n 个布尔文字的合取, 而每个文字有3种可能:该变量作为文字包含在假设中;该变量的否定作
为文字包含在假设中或假设中不包含该变量, 所以假设空间的大小为|H |=3n 。可设计一算法如下:
(1)初始化假设h 为2 n 个文字的合取, 即h = x1
!x1 x2 !x2K xn !xn ;
(2)由样本发生器产生m = 1/2(n ln3 +ln1/δ)个样本,并对每个正例,若xi =0 ,则从h 中删去xi ;若x =1 ,则从h 中删去!xi ;
根据ε-bad 假设的定义有:
Pr[ ε-bad 假设与一个样本一致] ≤1 -ε, 因每个样
本独立抽取, 则
Pr[ ε-bad 假设与m 个样本一致] ≤(1 -ε)m 。又因
最大的假设数为|H |,则
Pr[ 存在一ε-bad 假设与m 个样本一致] ≤|H |(1
-ε)m 。又因要求
Pr[ h 是ε-bad 假设] ≤ δ,所以有:
|H |(1 -ε)^m ≤ δ,解之得:m ≥ln |H |+ln1/δ-ln(l -ε) (1)
又据泰勒展开式:ex =1 +x +x2/2 ! +K >1 +x , 用x=-ε代入泰勒展开式中,得ε<-ln(1 -ε)。将其代入(1)中得:  m >(ln |H |+ln1/δ) (2)
针对本例有|H|=3n , 将它代入(1)中得到当样本数
m > 1/ε(n ln3 +ln1/δ)时, 有Pr[ errorD(h)>ε] ≤δ成立。

出错概率模型Mistake Bound Framework

Weight Majority Algorithm
k: minimal number of mistakes
对于 0<=b<=1,,M<= (k*log2(1/b)+log(n))/(log2(1/(1+b)))

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Boosting学习(一)——PAC学习模型到Boosting

PAC ( Probably Approximately Correct)可能近似正确学习模型 因为我们不能指望学习能够零错误,并且也不能要求对任意数据的预测能够成功,但是我们需要将错误率和预测失败率...

PAC学习理论:机器学习那些事

机器学习是有别于专家系统(基于知识/规则)的一种模式识别方法,与专家系统的构建方法不同,但目的相同。本文分析了一众机器学习方法,并给出了一些机器学习概念的通俗解释。

使用OpenCV与Face++实现人脸解锁

近几天微软的发布会上讲到了不少认脸解锁的内容,经过探索,其实利用手头的资源我们完全自己也可以完成这样一个过程。

有了danmu,二十行代码轻松愉快对弹幕进行二次开发

使用不到三十行代码,你就可以使用Python基于弹幕进一步开发。 支持斗鱼、熊猫、战旗、全民多平台弹幕。 支持各版本Python,无平台依赖,方便各类开发者、爱好者使用。

LocalNote,让你像使用本地文件一样使用印象笔记(支持 markdown 格式)

LocalNote让你能够像使用本地文件一样使用印象笔记。支持流行的markdown格式的笔记,印象笔记中完美显示,上传重新下载笔记仍为.md格式。支持印象笔记原笔记格式转化为markdown格式,轻...

awk的使用 第六部分 awk编程的几个实例

在这里举个例子,统计上班到达时间及迟到次数的程序。这程序每日被执行时将读入二个文件:员工当日上班时间的数据文件 ( arrive.dat ) 存放员工当月迟到累计次数的文件当程序执行执完毕后将更新第二...
  • ponky
  • ponky
  • 2011-02-27 15:52
  • 911

手把手教你扩展个人微信号(1)

看完这一系列教程,你就能从头开始实现自己关于微信以及类似工具的想法,例如一个完善的微信机器人。

PAC Learning Framework可能近似正确学习

Coffe TimeESP GAME用户做游戏的时候,对图片做语义标注SAmple Complexity: How many training examples are sufficient to...
  • TH_NUM
  • TH_NUM
  • 2016-05-07 19:17
  • 1468

机器学习物语(4):PAC Learnability

这次我们要介绍的话题是 PAC Learnability ,直译过来就是 PAC 可学习性。可学习性听起来和计算理论里的可计算性是很类似的,当然其实也确实是类似的,而且这里也包含一些计算理论里的内容。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)