• VC维含义的个人理解


      有关于VC维可以在很多机器学习的理论中见到,它是一个重要的概念。在读《神经网络原理》的时候对一个实例不是很明白,通过这段时间观看斯坦福的机器学习公开课及相关补充材料,又参考了一些网络上的资料(主要是这篇,不过个人感觉仍然没有抓住重点),重新思考了一下,终于理解了这个定义所要传达的思想。

      先要介绍分散(shatter)的概念:对于一个给定集合S={x1, ... ,xd},如果一个假设类H能够实现集合S中所有元素的任意一种标记方式,则称H能够分散S。

      这样之后才有VC维的定义:H的VC维表示为VC(H) ,指能够被H分散的最大集合的大小。若H能分散任意大小的集合,那么VC(H)为无穷大。在《神经网络原理》中有另一种记号:对于二分总体F,其VC维写作VCdim(F)。

      通常定义之后,会用二维线性分类器举例说明为什么其VC维是3,而不能分散4个样本的集合,这里也就是容易产生困惑的地方。下面进行解释。

      对于三个样本点的情况,下面的S1所有的标记方式是可以使用线性分类器进行分类的,因此其VC维至少为3(图片来自于斯坦福机器学习公开课的materials,cs229-notes4.pdf):

        

      虽然存在下面这种情况的S2,其中一种标记方式无法用线性分类器分类(图片来自于斯坦福机器学习公开课的materials,cs229-notes4.pdf)

              

      但这种情况并不影响,这是因为,上一种的S1中,我们的H={二维线性分类器}可以实现其所有可能标签情况的分类,这和S2不能用H分散无关。

      而对于4个样本点的情况,我们的H不能实现其所有可能标签情况的分类(这是经过证明的,过程不详)如下图中某个S和其中一种标签分配情况:

      

            

      可见,H={二维线性分类器}的VC维是3。

      从这个解释过程可以看出,对于VC维定义理解的前提是先理解分散的定义。分散中的集合S是事先选定的,而VC维是能分散集合中基数(即这里的样本数)最大的。因此,当VC(H)=3时,也可能存在S',|S'|=3但不能被H分散;而对于任意事先给定的S",|S"|=4,H不能对其所有可能的标签分配方式进行分散。这里所谓“事先给定”可以看作其点在平面上位置已定,但所属类别未定(即可能是任意一种标签分配)。


    作者:五岳
    出处:http://www.cnblogs.com/wuyuegb2312
    对于标题未标注为“转载”的文章均为原创,其版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

     
  • 相关阅读:
    iOS7 界面适配-NavigationBar StateBar
    ios UIScrollView 基础属性
    保存图片信息通过NSData保存到本地文件中
    根据UIScrollView 滑动获取当前页数
    iOS工程通用模块介绍
    ios--appDelegate切换根视图rootViewController(最常用的场合是首次启动跳至导航ViewController)
    使用UIGestureRecognizer监听屏幕事件
    Introduction to CocoaPods Tutorial
    最基本的添加头像
    MFC多语言程序版本,在不同的windows系统上的使用 FP_SetThreadUILanguage
  • 原文地址:https://www.cnblogs.com/wuyuegb2312/p/2799893.html
Copyright © 2020-2023  润新知