【台大林轩田《机器学习基石》笔记】Lecture 6——Theory of Generalization

Lecture 6:Theory of Generalization

Restriction of Break Point

先回顾一下上节课内容,主要讲的是Hoeffding不等式当中的 M M M如果很大,那么不能保证 E i n ≈ E o u t E_{in}\approx E_{out} EinEout,也就是说机器学习泛化能力不好。所以我们需要验证 M M M是有限的,最好是按照多项式成长。从而引入了Break Point与Growth Function两个概念

上节课最后提出了一个猜想:2D Perceptrons的成长函数是多项式级别的。
在这里插入图片描述

这个例子是说,Break Point k=2,当 N = 3 N=3 N=3时,成长函数的最大值是多少。

具体过程见课程的PPT,做法大致是每添加一种dichotomy,都要确保3个点中的任意两个不会被shatter,否则就违反了 k = 2 k=2 k=2的前提。最终答案是4.

(在B站看视频弹幕里还有不少不理解shatter的,shatter就是如果假设的集合能将N个点分成 2 N 2^N 2N种二分类,那么这个假设集合就能shatter这N个点)

我们发现,当 N > k N>k N>k时,break point限制了成长函数值的大小,那么如果给出 N N N k k k,如果能够证明成长函数值的上界是多项式的,就能够在Hoeffding不等式中代替 M M M,从而说明机器学习是可行的。
在这里插入图片描述

Bounding Function: Basic Cases

引入一个函数Bounding Function B ( N , k ) B(N,k) B(N,k):当break point为k的时候,成长函数 m H ( N ) m_H(N) mH(N)可能的最大值,也就是 m H ( N ) m_H(N) mH(N)的上界。

上界函数不考虑假设集的组成,只关心成长函数的上界,从而对问题进行了简化,比如说,positive intervals和2D Perceptrons的成长函数上界都可以用 B ( N , 3 ) B(N,3) B(N,3)表示。

引入这个函数后,我们的目标也就成了证明这个函数的上界是多项式的:

在这里插入图片描述

求解这个函数:

  • k = 1 , B ( N , 1 ) = 1 k=1,B(N,1)=1 k=1,B(N,1)=1
  • N < k , B ( N , K ) = 2 N N<k,B(N,K)=2^N N<k,B(N,K)=2N
  • N = k , B ( N , k ) = 2 N − 1 N=k,B(N,k)=2^{N}-1 N=k,B(N,k)=2N1

这几个都是根据定义得到的,如果k=1,成长函数值一定为1,因为随便增加一个假设都能够shatter这一个点,不符合break point的定义

N = k N=k N=k时,此时第一次出现不能被shatter的情况,所以最大为 2 N − 1 2^N-1 2N1(shatter的定义)

Bounding Function: Inductive Cases

剩下 N > k N>k N>k的情况:

B ( 4 , 3 ) B(4,3) B(4,3)为例,首先想着能否构建 B ( 4 , 3 ) B(4,3) B(4,3) B ( 3 , ? ) B(3,?) B(3,?)之间的关系

B ( 4 , 3 ) B(4,3) B(4,3)所有情况写出来一共有11种:

在这里插入图片描述

把这11种分为两种,第一种用下图橙色表示( x 1   x 3 x_1~x_3 x1 x3完全相同, x 4 x_4 x4相反的两个为一组);第二种用下图紫色表示(其他单个的):
在这里插入图片描述

如果先不考虑 x 4 x_4 x4,那么橙色部分得到 α \alpha α个,紫色部分得到 β \beta β个二分类,这些肯定是任意3个都不能被shatter的,也就是说
α + β ≤ B ( 3 , 3 ) \alpha + \beta \leq B(3,3) α+βB(3,3)
在这里插入图片描述

由于 α \alpha α x 4 x_4 x4成对存在(已经被shatter),而 x 1   x 4 x_1~x_4 x1 x4中任意三点不能被shatter,所以 x 1   x 3 x_1~x_3 x1 x3中任意两点不能被shatter,即:
α ≤ B ( 3 , 2 ) \alpha \leq B(3,2) αB(3,2)
在这里插入图片描述

所以,最后得到:
B ( 4 , 3 ) = 2 α + β α + β ≤ B ( 3 , 3 ) α ≤ B ( 3 , 2 ) ⇒ B ( 4 , 3 ) = ( α + β ) + α ≤ B ( 3 , 3 ) + B ( 3 , 2 ) \begin{aligned} &B(4,3)=2\alpha + \beta\\\\ &\alpha + \beta \leq B(3,3)\\\\ &\alpha \leq B(3,2)\\\\ &\Rightarrow B(4,3)=(\alpha+\beta)+\alpha\leq B(3,3)+B(3,2) \end{aligned} B(4,3)=2α+βα+βB(3,3)αB(3,2)B(4,3)=(α+β)+αB(3,3)+B(3,2)
更一般的:

在这里插入图片描述

上述公式通过递推得到:
在这里插入图片描述

上述不等式右边是一个最高阶为 k − 1 k-1 k1的多项式,也就是说成长函数上界的上界满足多项式分布,这就得到了我们想要的结果。

再看之前的例子:

在这里插入图片描述

A Pictorial Proof

实际上,我们并不能直接用 m H ( N ) m_H(N) mH(N)代替 M M M,我们能够得到的正确表达式是下图蓝色框中的式子:

在这里插入图片描述

证明部分大概听了一下,具体过程可以看PPT

最终得到的这个不等式叫做Vapnik-Chervonenkis bound(VC bound):
在这里插入图片描述

Summary

这节课主要内容是证明了只要存在break point,机器学习就是可行的。

猜你喜欢

转载自blog.csdn.net/i0o0iW/article/details/112908824
今日推荐