前面一节我们通过引入增长函数的上限的上限,一个多项式,来把Ein 和 Eout 的差Bound住,这一节引入VC Bound进一步说明这个问题. 前边我们得到,如果一个hypethesis集是有break point的,那么最终mh会被一个多项式bound住,如果break point 为k的话,那么这个多项式为N^(k - 1). Bound的不等式这里系统的列一下就是: 也就是说,机器可以学习的即可条件: 要有好的假设集,也就是需要存在break point 训练数据集要足够的大 要有一点儿…
 这节的主题感觉和training,testing关系不是很大,其根本线索在于铺垫并求解一个问题:    为什么算法PLA可以正确的work?因为前面的知识告诉我们,只有当假设的个数有限的时候,我们才能比较确认我们得到坏的数据集的概率比较低,也就是说算法得出的假设和最佳假设在全局表现相同(错误率相等),可是PLA的假设是平面上的直线,不是无数个么?为什么可以正常泛化?   为解释这个问题,有了这节以及下面几节的课程  可以看到这个问题其实很重要,因为这是我们理解机器为啥能学习的关键一步,因为很多…
机器学习基石 5 Training versus Testing Recap and Preview 回顾一下机器学习的流程图: 机器学习可以理解为寻找到 \(g\),使得 \(g \approx f\),也就是 \(E_{out}(g) \approx 0\) 的过程.为了完成这件事情,有两个关键的步骤,一个是保证 \(E_{out}(g) \approx E_{in}(g)\),另一个是保证 \(E_{in}(g) \approx 0\) (这两件事情通常由 "训练" 以及 &qu…
前边由Hoeffding出发讨论了为什么机器可以学习,主要就是在N很大的时候Ein PAC Eout,选择较小的Ein,这样的Eout也较小,但是当时还有一个问题没有解决,就是当时的假设的h的集合是个数是有限的,那么本文继续讨论h个数为无限的情况.http://www.cnblogs.com/futurehau/p/6235348.html 其实之前的问题可以分类两个方面: 一方面:Ein 是否约等于 Eout 另一方面:Ein时候足够小. 所以,选择合适的M是很重要的,现在加入M为无限大的情况…
前边讨论了我们介绍了成长函数和break point,现在继续讨论m是否成长很慢,是否能够取代M. 成长函数就是二分类的排列组合的数量.break point是第一个不能shatter(覆盖所有情形)的点. 1.break point对成长函数的限制 我们希望 这里引入上限函数 bound function:给了break point,看看可以组成多少排列组合,下面证明boundfunction是多项式成长的. 右上角相当于没有加条件限制,对角线就是全部的减1嘛,因为全部不可能,小一点,找个上限…
上节课,我们主要介绍了机器学习的可行性.首先,由NFL定理可知,机器学习貌似是不可行的.但是,随后引入了统计学知识,如果样本数据足够大,且hypothesis个数有限,那么机器学习一般就是可行的.本节课将讨论机器学习的核心问题,严格证明为什么机器可以学习.从上节课最后的问题出发,即当hypothesis的个数是无限多的时候,机器学习的可行性是否仍然成立? 一.Recap and Preview 我们先来看一下基于统计学的机器学习流程图: 该流程图中,训练样本D和最终测试h的样本都是来自同一个数据…
主要讲解内容来自机器学习基石课程.主要就是基于Hoeffding不等式来从理论上描述使用训练误差Ein代替期望误差Eout的合理性. PAC : probably approximately correct 一方面:根据PAC,针对一个h,Ein与Eout的差距很大的概率是很小的 另一方面:不能说直接选定一个h,需要从许多h中选择一个Ein较小的,可能出现某一些坏数据在某些h上的表现很差,但是坏数据在所有h上表现都差的概率很小. 1. Hoeffding 不等式 用频率代替概率,如果抽样的数目很…
之前我们讨论了VC Dimension,最终得到结论,如果我们的hypetheset的VC Dimension是有限的,并且有足够的资料,演算法能够找到一个hypethesis,它的Ein很低的话,那么我们就大概学到了东西. 看看之前的learning flow: 我们有一个target function,能够产生一堆的sample,x 由某一个分布产生,未来的测试也有同一个分布产生. 演算法想办法从资料和假设集里找到一个好的假设.好的假设集是VC Dimension是有限的,好的假设是Ein是…
接着上一讲留下的关子,机器学习是否可行与假设集合H的数量M的关系. 机器学习是否可行的两个关键点: 1. Ein(g)是否足够小(在训练集上的表现是否出色) 2. Eout(g)是否与Ein(g)足够接近(在训练集上的表现能否迁移到测试集上) (1)如果假设集合数量小(M小),可知union bound后,Ein与Eout是接近的:但由于可选择的假设集合少,Ein(g)效果可能不佳: (2)如果假设集合数量大(M大),有可能Ein(g)会获得更多的选择,测试集上效果更好:但由于M数量过大,训练集…
train:A根据给定训练集D在H中选出g,使得Ein(g)约等于0: test:g在整个输入空间X上的表现要约等于在训练集D上的表现,使得Eout(g)约等于Ein(g). 如果|H|小,更易保证test(不等式右式小),难保证train(选择少): 如果|H|大,更易保证train(选择多),难保证test(不等式右式大). 如果|H|无限呢?2Mexp(...)可能大于1了,对于概率值上限来说失去意义.那能否用个有限值代替|H|呢? 看一下2Mexp(...)这个上限的来源. 本质是求并集…