VC-dimension的定义

机器学习中,我们希望引入一个量化指标,去衡量一个learner的最大表达能力,这就是VC-dimension

直观定义

不妨把多维数据想象为空间中的点,分类器learner想象为曲面。
给定空间点的个数m,甲乙两人做对抗游戏:

  • 甲:选取m个点的位置
  • 乙:从中选取0~m个数据作为一类(换句话说,给这m个数据加0/1 label)
  • 甲:给出一种参数取值,使得learner能够正确分类

乙需要尽可能地刁难甲
如果甲能做到,说明这个learner能够轻松应对m个数据的某种分布的任意label取值,VC-dimension≥\ge≥m
否则VC-dimension<<<m

逻辑定义

对于给定的m,如果
∃x1,⋯,xm,∀l1,⋯,lm,∃θ,f(xi;θ)=li,i=1,⋯,m\exist x_1,\cdots,x_m, \forall l_1,\cdots,l_m, \exist \theta, f(x_i;\theta)=l_i , i = 1,\cdots,m ∃x1​,⋯,xm​,∀l1​,⋯,lm​,∃θ,f(xi​;θ)=li​,i=1,⋯,m
则VC(f)≥m\mathrm{VC}(f) \ge mVC(f)≥m
否则VC(f)<m\mathrm{VC}(f)<mVC(f)<m

更一般的数学定义
  • A set system (X,H)(X, \mathcal{H})(X,H) consists of a setXXX and a class H\mathcal HH of subsets of XXX, i.e. H⊆P(X)\mathcal{H} \subseteq P(X)H⊆P(X)
    (XXX is a instance space, H\mathcal HH is a class of classifiers)

  • A set system (X,H)(X, \mathcal{H})(X,H) shatters a set A⊆XA\ \subseteq XA ⊆X iff ∀A′⊆A,∃h∈H,A′=A∩h\forall A' \subseteq A, \exist h \in \mathcal H, A'=A\cap h∀A′⊆A,∃h∈H,A′=A∩h

  • The VC-dimension of H\mathcal HH is VC(H)=max⁡AisshatteredbyH∣A∣\mathrm{VC}(\mathcal H) = \max_{A\ is\ shattered\ by\ \mathcal H}|A|VC(H)=A is shattered by Hmax​∣A∣

VC-dimension的应用


在数据量给定的情况下,随着模型参数增多,表达能力增强,Train Error不断减小,但一般误差中的VC项变大,导致模型的Test Error先减小后增大。增大对应着我们一般说的过拟合。

主要定理

Definition

For a set system (X,H)(X, \mathcal{H})(X,H), the shatter function πH(n)\pi_{\mathcal H}(n)πH​(n) is the maximum number of subsets of any set A of size n that can be expressed as A∩hA\cap hA∩h for some h∈Hh \in \mathcal Hh∈H, i.e.
πH(n)=max⁡∣A∣=n∣{A∩h∣h∈H}∣\pi_{\mathcal H}(n) = \max_{|A|=n}|\{A\cap h| h\in \mathcal H \}| πH​(n)=∣A∣=nmax​∣{A∩h∣h∈H}∣

Lemma (Sauer)

For a set system (X,H)(X, \mathcal{H})(X,H) whose VC-dimension equals ddd,
πH(n){=2n,n≤d≤(n≤d),n>d\pi_{\mathcal H}(n) \begin{cases} = 2^n & ,n \le d\\ \le \dbinom{n}{\le d} & ,n > d \end{cases} πH​(n)⎩⎨⎧​=2n≤(≤dn​)​,n≤d,n>d​
where
(n≤d)=(n0)+(n1)+⋯+(nd)≤nd+1\dbinom{n}{\le d}=\dbinom n 0 + \dbinom n 1 + \cdots + \dbinom n d \le n^d+1 (≤dn​)=(0n​)+(1n​)+⋯+(dn​)≤nd+1

The Key Theorem

With sufficiently large nnn, n≥4ϵn \ge \dfrac 4\epsilonn≥ϵ4​ and n≥1ϵ(log⁡2πH(2n)+log⁡22δ)n \ge \dfrac 1\epsilon \Big( \log_2\pi_{\mathcal H}(2n)+\log_2\dfrac 2 \delta \Big)n≥ϵ1​(log2​πH​(2n)+log2​δ2​)
Given training set TTT, ∣T∣=n|T|=n∣T∣=n
Prob[∃h,TrueErr(h)=ϵ,TrainErr(h)=0]<δ\mathrm{Prob}\Big[\exist h, \mathrm{TrueErr}(h)=\epsilon, \mathrm{TrainErr}(h)=0\Big] < \deltaProb[∃h,TrueErr(h)=ϵ,TrainErr(h)=0]<δ

VC-dimension相关推荐

  1. 台湾大学林轩田机器学习基石课程学习笔记7 -- The VC Dimension

    红色石头的个人网站:redstonewill.com 前几节课着重介绍了机器能够学习的条件并做了详细的推导和解释.机器能够学习必须满足两个条件: 假设空间H的Size M是有限的,即当N足够大的时候, ...

  2. 机器学习可行性与VC dimension

    机器学习可行性 在银行评估贷款申请人的授信请求前,会进行风险评估.符合申请则通过,反之驳回.长时间的数据和申请使得银行从中找到了一些规律并开始learning,所以风险评估就是一个learning的过 ...

  3. VC维(VC Dimension)

    定义 VC Dimension:全称是Vapnik-Chervonenkis dimension.其用来衡量一个模型的复杂度,定义为:在该模型对应的空间中随机撒x点,然后对其中的每个点随机分配一个2类 ...

  4. [課程筆記] 機器學習基石 - W7. The VC Dimension

    目录 Video1: Definition of VC Dimension Recap: More on Growth Function Recap: More on VC bound VC Dime ...

  5. 机器学习基石1(ML基本概念和VC dimension)

    文章目录 一.什么是机器学习? 二.什么时候可以使用机器学习? 三.感知机perceptron 四.机器学习的输入形式 五.机器真的可以学习吗? 六.vc dimension 一.什么是机器学习? 其 ...

  6. 机器学习笔记之十七——VC dimension

    定义 VC维(外文名Vapnik-Chervonenkis Dimension)的概念是为了研究学习过程一致收敛的速度和推广性,由统计学理论定义的有关函数集学习性能的一个重要指标. 传统的定义是:对一 ...

  7. Computational Learning Theory - VC Dimension

    文章地址:http://www.csuldw.com/2016/08/23/2016-08-23-vc-dimentions/#mjx-eqn-3

  8. VC维的来龙去脉(转)

    目录: 说说历史 Hoeffding不等式 Connection to Learning 学习可行的两个核心条件 Effective Number of Hypotheses Growth Funct ...

  9. VC维与DNN的Boundary

    原文链接:解读机器学习基础概念:VC维来去 作者:vincentyao 目录: 说说历史 Hoeffding不等式 Connection to Learning 学习可行的两个核心条件 Effecti ...

  10. 机器学习和数据挖掘(7):VC维

    VC维 回顾与说明 如果一个假设空间存在突破点,则一定存在成长函数mH(N)m_{\mathcal H}(N)被某个上限函数B(N,k)B(N,k)所约束,而上限函数等于一个组合的求和形式∑k−1i= ...

最新文章

  1. AlphaGo的制胜秘诀:蒙特卡洛树搜索初学者指南
  2. 怎么用matlab建立双机系统,基于MATLAB的双机通信的实现
  3. 宜信开源|数据库审核软件Themis的规则解析与部署攻略
  4. ThoughtWorks微服务架构交流心得
  5. TEMPO研究第一年影像学数据: 骨侵蚀修复几乎只出现在无关节肿胀或肿胀改善组...
  6. TensorFlow学习笔记(十七)tf.nn.conv2d
  7. redhat9Linux解压gz,linux (redhat9)下subversion 的安装
  8. 【C语言】(数组方式)求n名同学的平均成绩
  9. 【PAT甲】1007 Maximum Subsequence Sum (25分),求最大字段和及区间
  10. RTD-Net:Relaxed Transformer Decoders for Direct Action Proposal Generation 论文阅读笔记
  11. vscode 添加版权信息
  12. Zabbix内网监控外网阿里云主机
  13. 以太坊编程涉及那些开发语言?
  14. deepin php7,deepin安装php7
  15. GNU C++ 智能指针6-- 解析_Sp_counted_inplace类
  16. 软件行业装机卖软件模式没落 转型SaaS服务趋势明显
  17. 百度地图 android 自身地点,Android使用百度地图SDK获得当前设备位置所在的省、市(系列1)...
  18. 汉语拼音方案里的O(哦)和 UO(窝)
  19. pycharm连接数据库步骤
  20. 雷德(Rader)算法

热门文章

  1. 制作3D图片立方体旋转特效
  2. 【Apache POI】Excel操作(六):Excel计算公式的读取和使用
  3. 如何解决 Unity 导入的材质球变粉色的问题?
  4. 国内各地图API坐标系统比较
  5. Codeforces Round #782 (Div. 2) ABCD
  6. BZOJ 4244 邮戳拉力赛
  7. iOS 中如何添加应用自己的字体
  8. Python计算限制性核酸内切酶切割后的核酸片段及其片段分子量
  9. 交换网络环路解决方案
  10. 2021-07-08操作系统知识:程序计数器(pc)、指令寄存器(IR)、通用寄存器(GR)、状态寄存器(SR)、程序状态字PSW