Why can Machine Learn?
-
Why can Machine Learn?
- Summary
- Reference
这一节我的思路是把老师的第五,六、七节的内容结合起来了,并且思路不完全按照老师的授课来走。
1. Preview of Last Chapter
因为这一章的讨论是基于上一章最后一节得到的公式的,所以我们先Recap一下。
上一节中,我们最后得出公式(1)(2)
这里的M是一个有限的数,所以当训练样本
N 越大,那么Bad Data出现的概率越低,Ein≈Eout ;如果训练样本N 一定的情况下,M越大,也就是说Hypothesis越多,那样可以供我们用算法A 进行选择的越多,那么越有可能选到一个好的样本,使得Ein≈0
总结如下表:
| - | M很小的时候 | M很大的时候 | N很小的时候 | N很大的时候 |
|---|---|---|---|---|
|
|
Yes,Bad Data的数量也少了 | No,Bad Data的数量也多了 | Yes,Bad Data出现的概率变小了 | No,Bad Data出现的概率变大了 |
|
|
No,选到低错误率的可能性变小了 | Yes,选到低错误率的可能性变大了 | 没必然联系,样本总数多于少,与错误率无关 | 没必然联系,样本总数多于少,与错误率无关 |
从表格中可以看出,
M 太大太小都会对机器学习的有效性造成影响,所以我们要进一步缩小M 的取值范围。问题:怎么缩小
M 的取值范围解决方案:在上一节中,我们再推导的过程中使用了联合上限(Union Bound),造成实际的上限被放大了很多。因为在做集合的或运算的时候,我们单纯的把各个集合加起来,但是却没有减去他们的交集部分,所以造成了上限被放大的问题。
关于Union Bound 的推导可以看这个链接Boole’s inequality
总的来说就是因为我们推导公式(1)的时候使用了Union Bound,所以导致了不等式右边的值(上限)被放大了,所以现在我们可以把它进行缩减,求出有效的
2. VC Bound (Vapnik-Chervonenkis Bound) - A Upper Bound Limitation of Hoeffding Inequity
1) Introduction
场景:对于不同数量
当
当
当
当
当
总结如下表:
| N |
|
|---|---|
| 1 |
|
| 2 |
|
| 3 |
|
| 4 |
|
| 5 |
|
| … | … |
| N |
|
总结如图六,可以看出当
2) Growth function
上面Binary Clasification的分类方法叫做二分类法(dichotomy),为了更好地表示
3) Different Types of Growth function
① Growth Function for Positive Rays
Positive Rays 是用一个一维向量作用于一维坐标上,与该向量同方向的值为+1,反方向为-1
如图七所示,Postives Rays 的成长函数为MH(N)=(N−1) ,当N≥2 的时候,MH(N)<2N=O(N)
② Growth Function for Positive Interval
Positive Interval 是用一个一维“线段”作用于一维坐标上,与在线段里面的值为+1,外面的为-1
如图八所示,Positive Interval 的成长函数为MH(N)=C2N+1+1=12N2+12N+1 ,当N≥3 的时候,MH(N)<2N=O(N2)
③ Growth Function for Convex Sets
Convex Sets 不太好理解。可以理解成在二维坐标上,用凸多边形去把所需要的点串起来。在多边形顶点上的点的值为+1,不在的为-1。因为我们讨论的是最大的可能性,所以当我们把所有的点都放在一个圆上的时候,必定存在一个凸多边形可以连接任意多个点(即可以画出任意多边形),然后再把所有点的组合情况加起来
如图九所示,Convex Setsl 的成长函数为MH(N)=∑i=0NCNi=2N
4) Break Point of Growth function
我们称能满足完全二分类(出现不同种类的数量为
然后根据上面对N从1-5的尝试,得到的最大可能性如下表
| N |
|
|---|---|
| 1 |
|
| 2 |
|
| 3 |
|
| 4 |
|
| 5 |
|
| … | … |
| N |
|
可以推断出公式(3)
上面关于Growth Function讨论的几种情况的Break Point 如图十所示,我们可以看出成长函数的复杂度与Break Point的大小存在一定的关系。
5) Bounding Function
① Introduction of Bounding Function
根据上一节的Break Point
但是显然在上面的例子中,我们可以看到
② Proof of Bounding Function
我们下面用表格的方式来表示
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | … | ||||||
| N=2 | … | ||||||
| N=3 | … | ||||||
| N=4 | … | ||||||
| N=5 | … | ||||||
| N=6 | … | ||||||
| … | … |
1.根据上面的规律,我们知道在
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | 2 | 2 | 2 | 2 | 2 | … | |
| N=2 | 4 | 4 | 4 | 4 | … | ||
| N=3 | 8 | 8 | 8 | … | |||
| N=4 | 16 | 16 | … | ||||
| N=5 | 32 | … | |||||
| N=6 | … | ||||||
| … | … |
2. 然后当
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | 1 | 2 | 2 | 2 | 2 | 2 | … |
| N=2 | 1 | 4 | 4 | 4 | 4 | … | |
| N=3 | 1 | 8 | 8 | 8 | … | ||
| N=4 | 1 | 16 | 16 | … | |||
| N=5 | 1 | 32 | … | ||||
| N=6 | 1 | … | |||||
| … | 1 | … |
3. 接着,当
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | 1 | 2 | 2 | 2 | 2 | 2 | … |
| N=2 | 1 | 3 | 4 | 4 | 4 | 4 | … |
| N=3 | 1 | 7 | 8 | 8 | 8 | … | |
| N=4 | 1 | 15 | 16 | 16 | … | ||
| N=5 | 1 | 31 | 32 | … | |||
| N=6 | 1 | 63 | … | ||||
| … | 1 | … |
4. 在之前的章节,我们也数过
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | 1 | 2 | 2 | 2 | 2 | 2 | … |
| N=2 | 1 | 3 | 4 | 4 | 4 | 4 | … |
| N=3 | 1 | 4 | 7 | 8 | 8 | 8 | … |
| N=4 | 1 | 15 | 16 | 16 | … | ||
| N=5 | 1 | 31 | 32 | … | |||
| N=6 | 1 | 63 | … | ||||
| … | 1 | … |
5.我们证明上面的猜想
1)首先我们遍历B(4,3),可以得到图十一的结果,然后我们整理了一下结果的顺序,可以发现橙色区域 {
2)所以我们单独把{
3)接着我们单独看
4) 根据上面的分析,我们目前得到三个公式,如下面的公式(4)(5)(6)。
所以把公式(5)(6)加起来,我们可以更新公式(4)为公式(7)
5)最后我们用同样的方法来研究
所以我们的表格更新如下:
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | 1 | 2 | 2 | 2 | 2 | 2 | … |
| N=2 | 1 | 3 | 4 | 4 | 4 | 4 | … |
| N=3 | 1 | 4 | 7 | 8 | 8 | 8 | … |
| N=4 | 1 | 11 | 15 | 16 | 16 | … | |
| N=5 | 1 | 31 | 32 | … | |||
| N=6 | 1 | 63 | … | ||||
| … | 1 | … | … | … | … | … | … |
我们再把
|
|
K=1 | K=2 | K=3 | K=4 | K=5 | K=6 | … |
|---|---|---|---|---|---|---|---|
| N=1 | 1 | 1 | 1 | 1 | 1 | 1 | … |
| N=2 | 1 | 2 | 4 | 8 | 8 | 16 | … |
| N=3 | 1 | 3 | 9 | 27 | 27 | 81 | … |
| N=4 | 1 | 4 | 16 | 64 | 64 | 256 | … |
| N=5 | 1 | 5 | 25 | 125 | 125 | 625 | … |
| N=6 | 1 | 6 | 36 | 216 | 216 | 1296 | … |
| … | … | … | … | … | … | … | … |
对比图参考老师上课的PPT,如图十二所示。
总结起来就是:在
6) Vapnik-Chervonenkis (VC) bound
@TODO: 这一节主要是证明从数学的角度上证明VC Bound 并以此更新Hoeffding Inequity。目前听得失一知半解,所以只贴出结论,后面再补充。
结论如图十三所示。
这个VC Bound的作用是把之前Hoeffding的参数
也就是说要说机器可以学习必须满足下面的条件:
1. 假设空间的成长函数
2. 输入数据的样本
3. 存在一个算法,能够找出能在假设空间
其中:条件1和2通过VC Bound保证了
3. The VC Dimension
1) Definition of VC Dimension
VC Dimension(
上面的Hoeffding Inequity可以变成公式(13)
因此,根据这个特点,我们只要确保一个成长函数存在 VC Dimension,我们就可以确定他存在Break Point,是一个好的假设空间。
2) Generalization Error
我们引入泛化误差
也就是说
3) Model Complexity
上一节,我们求出了
可以看出,随着VC Dimension的增大,
结果如图十四所示。
4) How much Data We need Theoretically and Practically
问题:假如现在老板给员工下达了一个任务,要求这个模型的
回答:根据上面的公式(14),分别代入参数到等式中,可以求得样本数量
因为我们在计算的时候同样的把上限给放大了,放大的原因如下所示:
1. Hoeffding Inequity 不需要知道未知的情况,但是VC Bound可以用于各种分布,各种目标函数(因为 VC Bound的推导是基于不同的N和K);
2. 在给Binary Classification 强行装上成长函数本身就是一个宽松的上界,但是VC Bound可以用于各种数据样本;
3. 使用二项式
4. 联合限制(union bound)并不是一定会选择出现不好事情的假设函数,但是VC Bound可以用于任意算法。
Summary
- 我们首先通过回顾上一节的内容,得到结论是根据Hoeffding Inquity: 要使得机器可以学习的条件是 ①
Ein≈Eout ②Ein≈0 - 接着我们讨论了什么情况下才能保证这2个条件满足,进行了讨论,最终我们通过引入① Growth Function ② Break Point ③ VC Bound, VC Dimension 更改Hoeffding Inequity的上限,最终得到我们需要的答案:
- 假设空间的成长函数
MH(N) 存在Break PointK (即有一个好的假设空间H ) - 输入数据的样本
N 足够大(有一个好的数据集D ) - 存在一个算法,能够找出能在假设空间
H 中找到一个值使得错误率Ein 足够小 (有一个好的算法A –>也就是我们后面会研究的重点) - 其中:条件1和2通过VC Bound保证了
Ein≈Eout ,条件3保证了Ein≈0 ⟹ Machine Can Learn.
- 假设空间的成长函数
- 之后我们讨论了理论上
N≈10000dvc 而实际上只需要N≈10dvc 的能使得Eout 最小,并且分析了为什么理论上和实际上差别这么大
Reference
[1]机器学习基石(台湾大学-林轩田)\5\5 - 2 - Effective Number of Lines (15-26)
[2]机器学习基石(台湾大学-林轩田)\5\5 - 3 - Effective Number of Hypotheses (16-17)
[3]机器学习基石(台湾大学-林轩田)\5\5 - 4 - Break Point (07-44)
[4]机器学习基石(台湾大学-林轩田)\6\6 - 3 - Bounding Function- Inductive Cases (14-47)
[5]机器学习基石(台湾大学-林轩田)\6\6 - 4 - A Pictorial Proof (16-01)
[6]机器学习基石(台湾大学-林轩田)\7\7 - 4 - Interpreting VC Dimension (17-13)