机器学习--VC维

VC Dimension

机器学习必须满足两个重要的条件,才能够学到有用的东西:

  • 假设空间H的size M有限,当N足够大的时候,挑选一个g,使得 E i n ( g ) ≈ E o u t ( g ) E_{in}(g)\approx E_{out}(g) Ein(g)Eout(g)
  • 利用某种演算法A,在M中挑选一个g使得 E i n ( g ) ≈ E_{in}(g)\approx Ein(g) 0

以上两个过程对应了机器学习的训练和测试,训练时所做的事情是让 E i n ( g ) ≈ E_{in}(g)\approx Ein(g) 0 。测试则是希望 E o u t ( g ) E_{out}(g) Eout(g)尽可能的接近 E i n ( g ) E_{in}(g) Ein(g)

基于这个原因,我们引入了break point,只要break point存在,我们就能推出,M的增长函数是多项式级别的。在根据上界函数的相关内容,就能很容易得出 E i n ( g ) ≈ E o u t ( g ) E_{in}(g)\approx E_{out}(g) Ein(g)Eout(g)

这次引入一个新的概念,VC Dimension。

1.定义

在定义VC dimension之前,需要先了解几个概念。

如果一个假设空间H 有break point k,那么它的成长函数是有界的,它的上界称为Bound function。由数学归纳法知,Bound function也是有界的,且上界为 N K − 1 N^{K-1} NK1。还有一个内容是关于VC bound的。VC bound的推导过程较为复杂,只需要了解一下他的内容就行。大体内容和霍夫定不等式说的事情一样,只不过将霍夫定不等式进行了更加具体的表述:
在这里插入图片描述
该不等式的最终结果只和N和k有关。N为样本的数量,不需要太过关注,集中精力来解决k的问题。如果在假设空间 H H H中存在k,那么根据VC bound,该模型具有良好的泛化能力,保证了预测结果的可行性。只需要尽可能的让 E i n ( g ) E_{in}(g) Ein(g)接近0就行。
在这里插入图片描述

VC dimension:在空间 H H H中,能最大完全二分点的数目(shatter),最大的完全正确的分类能力。列如输入N个点,最大的分类情况为 2 N 2^N 2N种,如果存在函数,能够将所有的情况都进行分类,那么N就是该空间的VC dimension。VC dimension的值为break point-1。
在这里插入图片描述
可以回想一下之前介绍的四个列子,他们对应的dimension是多少:
在这里插入图片描述
d v c d_{vc} dvc来代替k,VC bound就转化为,N和 d v c d_{vc} dvc之间的问题了,如果一个空间的 d v c d_{vc} dvc确定,那么机器学习的两个核心问题就解决了一个,能够保证 E i n ( g ) ≈ E_{in}(g)\approx Ein(g) E o u t ( g ) E_{out}(g) Eout(g)与样本分布,目标函数都无关。
在这里插入图片描述

2.VC dimension和2DPLA

简单回顾2D PLA算法,已知perceptions的k=4,则 d v c d_{vc} dvc=3。以下两个条件保证了2维线性可分数据是可以学习的》

  • 线性可分数据通过PLA算法运行足够长的时间,一定可以找出一条正确分类的直线,使得样本中没有分错的数据。
  • 在训练样本和整个数据集服从同一分布的情况下,有了VC的限制,保证了在 d v c d_{vc} dvc=3训练样本N足够大时, E i n ( g ) ≈ E_{in}(g)\approx Ein(g) E o u t ( g ) E_{out}(g) Eout(g)

以上两个共同条件得出:如果找到一个g使得 E i n ( g ) ≈ E_{in}(g)\approx Ein(g) 0,那么就能证明PLA是可以学习的。

在这里插入图片描述
如果是多维的PLA,他对应的 d v c d_{vc} dvc又是多少呢:1D d v c d_{vc} dvc=2,2D d v c d_{vc} dvc=3。那么我们就假设在n维的情况下, d v c d_{vc} dvc=n+1.经过证明该命题正确。具体证明可以参考林轩田老师的机器学习技法课程的VC dimension一节。

3.直观理解VC dimension

通过上面的分析,我们将感知机的维度和VC联系了起来。也大体了解了dimension的含义。在感知机中数据样本的维度又和权值向量的维度一致。 不同的权重向量对应着不同的假设函数,因此称假设函数的参数是假设空间的自由度。自由度可任意调节。如果从假设空间的数量上去描述,则自由度是无限大的,但是如果从二元感知机分类这一限制条件上去入手 ,可以使用VC来衡量其自由度。VC dimension代表了假设空间的分类能力,反映了H的自由度,也就等于features的个数。
在这里插入图片描述
上图中Positive Rays 的列子里,VC dimension d v c d_{vc} dvc=1时,假设空间有1个参数,Positive Intervals 的例子中,VC dimension d v c d_{vc} dvc=1时,假设空间有两个参数,即左右边界点。因此在大部分情况下,VC dimension d v c d_{vc} dvc大致等于假设空间的参数个数。

对于2D perceptions,线性分类 d v c d_{vc} dvc=3.从而得到如下结论:

在一些书中,参数较多的模型都称为复杂模型,很少给出解释,这一节的内容给出了很好的解释,因为在很多情况下模型参数的个数大致等于VC维的个数。参数越多或者说模型越复杂,越有可能找出使 E i n E _{i n} Ein最小的假设函数g,但是这需要大量训练样本的支持,因为只有在训练样本数量N足够大时,才能使更复杂(即参数更多或者说VC维更大)的模型出现不好情况的几率变小,如上表的右列。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值