当N大于等于2,k大于等于3时,

易得:mH(N)被Nk-1给bound住。

VC维:最小断点值-1/H能shatter的最大k值。

这里的k指的是存在k个输入能被H给shatter,不是任意k个输入都能被H给shatter。

如:2维感知机能shatter平面上呈三角形排列的3个样本点,却shatter不了平面上呈直线排列的3个样本点,

因为当另外2个点标签值一致时,中间那个点无法取与它们相反的标签值。

若无断点,则该H下,VC维为无穷。

所以,存在断点--->有限VC维。

d维感知器算法下,VC维=d+1。

证明:

D,大小为d+1--->矩阵X,易得X是(d+1)*(d+1)的矩阵,X的秩小于等于d+1,

所以存在X,行向量之间线性无关,每一行向量可取任意标签值,

所以H能shatter这个X对应的d+1个样本点,即VC维>=d+1;

D,大小为d+2--->矩阵X,易得X是(d+2)*(d+1)的矩阵,X的秩小于d+2,

所以任意X,总有一行与其他行向量线性相关,该行的标签值收到限制,

所以H不能shatter这个X对应的d+2个样本点,即VC维<=d+1;

所以,VC维=d+1。

VC维,反映的是H的自由度,可粗略认为是自由参数的个数(不总是)。

VC维增大,Ein减小,模型复杂度增大;

VC维减小,Ein增大,模型复杂度减小。

给定差异容忍度epsilon,概率容忍度delta,VC维,求满足条件需要多少样本。

理论上,N约等于10000倍的VC维,

实际上,N取10倍的VC维就足够了。

可见,VC维是十分松弛的,

1.使用霍夫丁不等式,不管f、输入分布P;

2.使用成长函数,不管具体的D;

3.使用N的多项式,不管H(VC维相同);

4.使用联合bound,不管A。

之所以使用VC维是为了定性分析VC维里包含的信息,

而且它对所有模型都近似松弛。

07 The VC Dimension的更多相关文章

  1. 机器学习基石:07 The VC Dimension

    当N大于等于2,k大于等于3时, 易得:mH(N)被Nk-1给bound住. VC维:最小断点值-1/H能shatter的最大k值. 这里的k指的是存在k个输入能被H给shatter,不是任意k个输入 ...

  2. 机器学习基石笔记:07 The VC Dimension

    当N大于等于2,k大于等于3时, 易得:mH(N)被Nk-1给bound住. VC维:最小断点值-1/H能shatter的最大k值. 这里的k指的是存在k个输入能被H给shatter,不是任意k个输入 ...

  3. Coursera台大机器学习课程笔记6 -- The VC Dimension

    本章的思路在于揭示VC Dimension的意义,简单来说就是假设的自由度,或者假设包含的feature vector的个数(一般情况下),同时进一步说明了Dvc和,Eout,Ein以及Model C ...

  4. VC Dimension -衡量模型与样本的复杂度

    (1)定义VC Dimension: dichotomies数量的上限是成长函数,成长函数的上限是边界函数: 所以VC Bound可以改写成: 下面我们定义VC Dimension: 对于某个备选函数 ...

  5. 机器学习基石7-The VC Dimension

    注: 文章中所有的图片均来自台湾大学林轩田<机器学习基石>课程. 笔记原作者:红色石头 微信公众号:AI有道 前几节课着重介绍了机器能够学习的条件并做了详细的推导和解释.机器能够学习必须满 ...

  6. VC dimension and Model complexity

    可以把growth function m_H(N)的upper bound用N^(k-1)来限制, for N large, k>=3 Thus, 定义: VC Dimension: maxim ...

  7. 【机器学习基石笔记】七、vc Dimension

    vc demension定义: breakPoint - 1 N > vc dimension, 任意的N个,就不能任意划分 N <= vc dimension,存在N个,可以任意划分 只 ...

  8. 【The VC Dimension】林轩田机器学习基石

    首先回顾上节课末尾引出来的VC Bound概念,对于机器学习来说,VC dimension理论到底有啥用. 三点: 1. 如果有Break Point证明是一个好的假设集合 2. 如果N足够大,那么E ...

  9. 理解机器为什么可以学习(四)---VC Dimension

    前面一节我们通过引入增长函数的上限的上限,一个多项式,来把Ein 和 Eout 的差Bound住,这一节引入VC Bound进一步说明这个问题. 前边我们得到,如果一个hypethesis集是有bre ...

随机推荐

  1. 了解 : prevent default

    基本了解是阻止事件之前设置好的事件触发,像是angular router ui里的 preventDefault是这样的. 在$stateChange的是后,可以调用preventDefault 来阻 ...

  2. Android Studio 代码自动提示无效

    Android Studio代码自动提示无效(not available in Power Save mode)的解决办法 问题描述: 今天用Android studio敲代码,突然间就没有代码提示了 ...

  3. 2017-2-18 net 输入输出语句

    控制台程序的创建,输出,输入语句,定义变量,变量赋值,值覆盖,值拼接,值打印两种数据类型,整形类型转换 知识点: 1.输出语句 Console.WriteLine("");光标换行 ...

  4. 使用jQuery快速高效制作网页特效-----------------------------之jQuery事件与动画

    1.基础事件 分为三个事件 1.1 window事件 所谓window事件,就是当用户执行某些会影响浏览器的操作时,而触发的事件. 1.2 鼠标事件 鼠标事件顾名思义就是当用户在文档上移动或单击鼠标时 ...

  5. Asp.net mvc 知多少(十)

    本系列主要翻译自<ASP.NET MVC Interview Questions and Answers >- By Shailendra Chauhan,想看英文原版的可访问http:/ ...

  6. 提交Sublime Text 插件到Package Control

    最近写了一个lua智能提示的插件LuaSmartTips.这个插件一直都是自己一个人在用,昨天突然想把插件提交到Package Control,如果其他的人有这样的需求就可以直接安装. Package ...

  7. 购买的wemall 6.0商城系统源码分享

    使用方法 1.解压目录 2.cd wemall6 && npm i 3.配置config下的config.json 4.npm start 摒弃以往的开发框架thinkphp,使用no ...

  8. vim 括号自动补全

    来源:http://www.cnblogs.com/huanlei/archive/2012/04/02/2430153.html 有时要重新配置vim 的,所以收藏了: inoremap ( ()& ...

  9. 【js数据结构】栈解决括号不匹配问题

    栈可以用来判断一个算术表达式中的括号是否匹配. 思路:读取算术表达式,遇到左括号'{'.'['.'('压入栈,栈的特点是后入先出,所以当遇到右括号'}'.']'.')'的时候,取出栈顶元素,是否满足读 ...

  10. HBase架构

    文章作者:luxianghao 文章来源:http://www.cnblogs.com/luxianghao/p/6573817.html  转载请注明,谢谢合作. 免责声明:文章内容仅代表个人观点, ...