机器学习基石-The VC Dimension

大纲

机器学习基石-The VC Dimension_第1张图片

Definition of VC dimension

1 回顾

首先,我们知道如果一个假设空间H有break point k,那么它的成长函数是有界的,它的上界称为Bound function。根据数学归纳法,Bound function也是有界的,且上界为Nk−1。从下面的表格可以看出, O(Nk1) 比B(N,k)松弛很多。
机器学习基石-The VC Dimension_第2张图片

根据上节课的推导,VC Bound可以转化为
机器学习基石-The VC Dimension_第3张图片

  • 如果假设的成长函数 mH(N 存在break point,且数据集 D 充分大,那么根据VC Bound理论,Ein(g)Eout(g),即假设具有良好的泛化能力
  • 如果通过演算法从假设空间中选取一个 g ,使Ein(g)0,那么我们的算法真的可以学到东西

2 定义

  • 假设集 H 最大能shatter的数据个数
  • break point -1

3 举例

机器学习基石-The VC Dimension_第4张图片

在数据量充分大的情况下,如果dVC是有限的,那么我们就可以说 Ein(g)Eout(g) 是PAC的,不用管是什么演算法,不用管数据的分布,不用管目标函数

4 2D的感知机

回顾一下之前学过的PLA算法,其实是分为两部分进行保证学习性的
机器学习基石-The VC Dimension_第5张图片

  • 第一部分是通过VC Bound理论,保证在数据充分大的时候, Ein(g)Eout(g)
  • 第二部分是通过演算法PLA选取一个 g ,使Ein(g)0

那么就可以说明2D的感知机是可以学习的,那么多维的感知机呢?

5 感知机的VC Dimension

机器学习基石-The VC Dimension_第6张图片

1维的感知机,我们知道 dVC=2 ,2维的感知机,我们知道 dVC=3 ,那么我们推测d维的感知机,他的 dVC=d+1 ,我们分两步证明

  • 证明 dVCd+1 ,通过证明存在一些d+1个输入,我们可以shatter.
  • 证明 dVCd+1 ,通过证明对于所有的d+2个输入,我们都不可以shatter

证明过程参考课件,这里省略,我们可以得出结论

dVC=d+1

Physical intuition of VC Dimension

自由度

机器学习基石-The VC Dimension_第7张图片
如上图所示,假设的参数产生了自由度,假设的数量和自由度是成正比的,自由度是可以调节的,可以通过控制假设的参数,一般在实践中,
这里写图片描述

一个假设的VC dimension约等于自由变量的数量。

M和 dVC 的关系

机器学习基石-The VC Dimension_第8张图片
在数据量 N 一定的时候,
- 当dVC比较小时,Bad Sample发生的概率会小, Ein(g)Eout(g) ,但是限制了假设的数目,可能 Ein(g) 比较大
- 当 dVC 比较大时,Bad Sample发生的概率会大, Ein(g) Eout(g) 相差比较大,不过假设的数目很多, Ein(g)0

Intepreting VC Dimension

Model Complexity

机器学习基石-The VC Dimension_第9张图片

根据VC Bound 理论,Bad Sample发生的概率是 δ ,那么反过来,Good Sample发生的概率是1- δ

机器学习基石-The VC Dimension_第10张图片

进一步有
机器学习基石-The VC Dimension_第11张图片

我们习惯上把根号中的内容称为模型复杂度所带来的惩罚,用 Ω 表示,我们一般只关注右边的,那么有

机器学习基石-The VC Dimension_第12张图片

通过分析

  • dVC 增加的时候, Ein 会减少,但是 Ω 会增加
  • dVC 减少的时候, Ein 会增加,但是 Ω 会减少
  • 如图所示,最好的 dVC 应该在中间

Sample Complexity

  • 理论上来说,一般控制 N10000dVC ,能取得比较好的泛化性能
  • 但在实践中,我们发现 N10dVC ,已经可以取得不错的效果

Looseness of VC Bound

从上面的数据我们可以知道,实际上VC Bound是很宽松的,为什么呢?
机器学习基石-The VC Dimension_第13张图片

  • Hoeffding是比较宽松的,他是对于所有的数据分布,所有的目标函数

  • 我们是对于所有的数据可能情况,求最大的 |H(x1,x2...xN)| ,即 mH(N)

  • 我们是求 NdVC ,即 mH(N) 的上界

  • 我们是考虑最坏的情况,就是让演算法在假设空间中自由的选择 g

你可能感兴趣的:(机器学习,台大林轩田机器学习课程笔记,机器学习)