对上一节的内容进行回顾
当H有break point k时,则可以表示出
mH(N)
上限的上限
我们把最后一个的值与
Nk−1
进行比较
发现当
N>=2且k>=3
时,
Nk−1
大于B(N,k).
则有
那么我们就可以将上一节的式子进一步表示为
即
如果我们有好的H(即存在break point k值 ),有好的数据(即数据N足够大),那我们就有很大的把握说,“
Eout约等于Ein
”
如果我们再加上能够找到一个好的g,使得其拥有很小的
Ein
,那我们就有很大的把握说,我们学到东西了!!!
现在我们来定义一下VC维 dvc
如果
N<=dvc
,那么就一定可以 shatter掉某一些个输入
所以只要
dvc
为有限值,那么就有很大把握能够保证
Eout约等于Ein
,而这不用管算法模型到底是什么(当然好的算法可以同时保证
Ein
尽可能的小,但及时再坏的算法,也可以满足
Eout约等于Ein
);我们也不用管数据的分布情况,我们也不用考虑真正正确的模型是什么。。。
感知器的VC维 dvc
对于2维的感知器PLA,
我们在第二节课讲解PLA时,就说过,当我们的数据集D是线性可分的,则PLA一定能够停下来, 也就是说,经过一定的遍历,可以使得
Ein(g)=0
再之后,我们证明了2DPLA的
dvc=3
,当N足够大时,可以使得
Eout约等于Ein
将上面二者相结合,可以得到
Eout约等于0
可上面讨论的都是2维的情况,那在更高维时,PLA会是什么情况呢???
我们知道,1D的PLA,
dvc=2
,2D的PLA,
dvc=3
,,,dD的PLA,
dvc是否为d+1呢???
证明方法,分别证明一下两个不等式即可!!!
证明
dvc>=d+1
只需证明
其中由于本就要讨论的是d维的情况,所以数据的维度为d。由于只需要一种情况(存在d+1的数据被shatter)就可以.
那我们就构造一个就行了呗!既然要d+1个数据都被shatter,那么即存在w,所有的数据(d+1个)满足
sign(xw+b)
等于 正确的y。我们把b整合到x里面,即
sign(XW)=y
,又 ,即只要X可逆,那么就一定可以求出W。我们只需构造这样的X即可。x是d维的。共有d+1个数据。
我们这一定义x为 ,d+1×d的矩阵
则整合b后的X为,灰色的1就是截距那一项。
所以我们可以找到x,得到合理的W,使得d维的d+1个数据被shatter。即上面的式子成立。
下面证明
只需证明在d+2都不可能被shatter就可以了
即
由于行大于列,则存在依赖关系,
xd+1
可以被其他的表达
则(以下图片摘抄自其他人的笔记,由于是pdf的,所以具体也不知道是谁的,在这里用一下,万分感谢)