台湾国立大学机器学习基石.听课笔记(第七讲):The VC Dimension
来源:互联网 发布:单片机程序员工资 编辑:程序博客网 时间:2024/05/21 11:36
听课笔记(第七讲): VC维理论 (台大机器学习)
上一讲的最后得到了VC bound,这一讲对VC维理论进行理解,这是机器学习(最)重要的理论基础。
一、VC Dimension的定义
我们先对前面得到的生长函数和VC bound 做一点小的修改。
VC Demension: 对于假设空间H,满足生长函数m(N) = 2^N 的最大的N, 记为dvc(H).
可知,dvc(H) 比H 的最小突破点k 小1,即 dvc(H) = k-1.
2维感知机的VC维是3.
二、VC Dimension of perceptions
1,感知机的VC维
我们已经知道,2维感知机的VC维是3.
对于d 维感知机,我们猜测它的VC 维是 d+1 ?
对此,我们只要证明 dvc >= d+1 && dvc <= d+1.
即 x1 = (1, x11, x12, ... , x1d)。 (x1 是一个向量)
取组特殊的输入数据:
对于上面的d+1 个输入数据,我们可以求得向量w :
也就是说,不可能存在d+2 个线性独立的输入数据。其中,线性组合中的系数可能为正、负或零,但是不全为零。
等式两边都乘以 w 向量:
假设这d+2 个数据都可以被打散。那么我们可以对 w*x 随意取值(-1 或 +1),上式都应该能够满足。然而,对于这样的情况:当系数a 为正数时,w*x 取+1,反之w*x 取-1,式子右边一定大于0;此时式子左边就无法取-1,与假设矛盾。
所以d 维感知机无法打散 d+2 个点,也就是说VC 维最大只能是 d+1.
综合(1)(2),证得 dvc = d+1.
通过对常见几种假设的VC 维的分析,我们可以得到规律:VC 维与假设参数w 的自由变量数目大约相等。
例如,对于2维感知机,w = (w0, w1, w2),有三个自由变量,dvc = 3.
上面的”模型复杂度“ 的惩罚(penalty),基本表达了模型越复杂(VC维大),Eout 可能距离Ein 越远。下面的曲线可以更直观地表示这一点:
我们已经知道,2维感知机的VC维是3.
对于d 维感知机,我们猜测它的VC 维是 d+1 ?
对此,我们只要证明 dvc >= d+1 && dvc <= d+1.
(1) 证明 dvc >= d+1
对于d 维空间的任意输入数据x1, 都增加一个分量x10, 取值恒为1.即 x1 = (1, x11, x12, ... , x1d)。 (x1 是一个向量)
取组特殊的输入数据:
也就是说,这样的d+1 个输入数据可以被d 维感知机打散(shattered), 所以有 dvc >= d+1.
(2) 证明 dvc <= d+1
对于d 维空间的输入数据:等式两边都乘以 w 向量:
所以d 维感知机无法打散 d+2 个点,也就是说VC 维最大只能是 d+1.
综合(1)(2),证得 dvc = d+1.
三、VC 维的物理意义
VC维可以反映假设H 的强大程度(powerfulness),VC 维越大,H也越强,因为它可以打散更多的点。通过对常见几种假设的VC 维的分析,我们可以得到规律:VC 维与假设参数w 的自由变量数目大约相等。
例如,对于2维感知机,w = (w0, w1, w2),有三个自由变量,dvc = 3.
四、VC 维的解释
1、VC 维反映了假设H 的强大程度,然而VC 维并不是越大越好。
通过一些列数学推导,我们得到:上面的”模型复杂度“ 的惩罚(penalty),基本表达了模型越复杂(VC维大),Eout 可能距离Ein 越远。
2、模型较复杂时(dvc 较大),需要更多的训练数据。
理论上,数据规模N 约等于 10000*dvc(称为采样复杂性,sample complexity);然而,实际经验是,只需要 N = 10*dvc.
造成理论值与实际值之差如此之大的最大原因是,VC Bound 过于宽松了,我们得到的是一个比实际大得多的上界。
造成理论值与实际值之差如此之大的最大原因是,VC Bound 过于宽松了,我们得到的是一个比实际大得多的上界。
原因有四个:1、Hoffding for unknown E_out 对任何f和P都满足
2、m_H(N)(成长函数) instead of |H(x_1,x_2,...x_N)| 对任何data都满足
3、N^(d_vc) instead of m_H(N) 对任何H都有相同的d_vc
4、union bound on worst cases
即便如此,VC Dimension & VC bound 依然是分析机器学习模型的最重要的理论工具。
即便如此,VC Dimension & VC bound 依然是分析机器学习模型的最重要的理论工具。
0 0
- 台湾国立大学机器学习基石.听课笔记(第七讲):The VC Dimension
- 听课笔记(第三讲): 机器学习的分类学 (台湾国立大学机器学习基石)
- 台湾国立大学机器学习基石.听课笔记(第三讲): 机器学习的分类
- 台湾国立大学机器学习基石.听课笔记(第四讲): 机器学习的可行性
- 台湾国立大学机器学习基石.听课笔记(第四讲): 机器学习的可行性
- 听课笔记(第四讲):学习的可行性分析 (台湾国立大学机器学习基石)
- 听课笔记(第二讲): Perceptron-感知机 (台湾国立大学机器学习基石)
- 台湾国立大学机器学习基石.听课笔记(第六讲): 一般化(举一反三)的理论
- 听课笔记(第二讲): Perceptron-感知机 (台湾国立大学机器学习基石)
- 听课笔记(第一讲):台湾国立大学的《机器学习基石》(Coursera 版)
- 台湾国立大学机器学习基石.听课笔记(第五讲): 训练和测试有什么不同
- 台湾国立大学机器学习基石.听课笔记(第八讲):Noise and Error
- 台湾国立大学机器学习基石.听课笔记(第九讲):Linear Regression
- 台湾国立大学机器学习基石.听课笔记(第十讲):Logistic Regression
- 台湾国立大学机器学习基石.听课笔记(第十一讲):Linear Models of Classification
- 台湾国立大学机器学习基石.听课笔记(第十二讲):Nonlinear Transformation
- 台湾国立大学机器学习基石.听课笔记(第十四讲):Regularization
- 台湾国立大学机器学习基石.听课笔记(第十五讲):validation
- 什么是原子操作
- 用tomcat+花生壳搭建自己的web服务器+域名
- 暑假学习第三周
- Spring学习笔记二(Bean注入的几种方式)
- 改变复选框显示样式
- 台湾国立大学机器学习基石.听课笔记(第七讲):The VC Dimension
- [前端] canvas绘制圆、渐变、字体和图片及其他
- 各大型网站架构分析收集
- html5 canvas 实现简易马祖小游戏
- 百练 2798:2进制转化为16进制
- Linux下文件的阻塞与非阻塞对部分系统调用的影响
- python实现的json数据以HTTP GET,POST,PUT,DELETE方式页面请求
- HTML5 Application Cache
- UML基础