当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. Servlet探秘

    学习servlet,最重要的就是理解servlet下面四个点:        1.了解Servlet API的常用接口和类 2.掌握Servlet的生命周期 3.掌握Servlet的部署和配置 4.会 ...

  2. 3步轻松搭建Unity3d安卓开发环境

    之前写过一个Untiy3d安卓开发环境的配置教程,那是我第一次学习配置安卓开发环境,互联网上的信息良莠不齐,自己当时也不懂,配置步骤麻烦的一塌糊涂,现在见的多了,也会的多了,配置安卓开发环境变得非常容 ...

  3. C/C++ char数组存储字符串内存地址

    问题描述: #include <stdio.h> int main(void) { //program 6.3 Arrays of strings ][]; ;i<;++i){ ;j ...

  4. 深入Redux架构

    关于redux 之前写了一篇通过一个demo了解Redux,但对于redux的核心方法没有进行深入剖析,在此重新总结学习,完整的代码看这里.(参考了React 技术栈系列教程) 什么情况需要用redu ...

  5. SQL server 数据库 ——聚合函数(一列 多行,值类型)

    聚合函数 5种函数: 1.max最大值   select max(price) from car where code='c024' 2.min最小值   select * from car wher ...

  6. Node.js web快速入门 -- KoaHub.js组件koa-static-server

    koa-static-server Static file serving middleware for koa with directory, rewrite and index support k ...

  7. 关于JAVA中抽象类和接口的区别辨析

    今天主要整理一下新学习的有关于Java中抽象类和接口的相关知识和个人理解. 1 抽象类 用来描述事物的一般状态和行为,然后在其子类中去实现这些状态和行为.也就是说,抽象类中的方法,需要在子类中进行重写 ...

  8. 3522: [Poi2014]Hotel

    3522: [Poi2014]Hotel Time Limit: 20 Sec  Memory Limit: 128 MBSubmit: 253  Solved: 117[Submit][Status ...

  9. 一个web应用的诞生(8)--博文发布

    这个系统一直号称轻博客,但貌似博客的功能还没有实现,这一章将简单的实现一个博客功能,首先,当然是为数据库创建一个博文表(models\post.py): from .. import db from ...

  10. Linux云自动化运维第三课

    Linux云自动化运维第三课 一.正则表达式 1.匹配符 * ###匹配0到任意字符 ? ###匹配单个字符 [[:alpha:]] ###匹配单个字母 [[:lower:]] ###匹配单个小写字母 ...