2.2 VC维 - 51CTO.COM

来源:百度文库 编辑:神马文学网 时间:2024/06/13 01:13:01

2.2 VC维

http://book.51cto.com  2009-06-21 12:37  范明/昝红英/牛常勇译  机械工业出版社  我要评论(0)
  • 摘要:《机器学习导论》第2章监督学习,本章从最简单的情况开始讨论监督学习,首先从正例和负例集合中学习类别,继而推广并讨论多类的情况,然后再讨论输出为连续值的回归。本节为大家介绍VC维。
  • 标签:机器学习  机器学习导论
  • 限时报名参加“甲骨文全球大会·2010·北京”及“JavaOne和甲骨文开发者大会2010”

2.2 VC维

假定我们有一个数据集,包含N个点。这N个点可以用  种方法标记为正例和负例。因此,N个数据点可以定义种不同的学习问题。如果对于这些问题中的任何一个,我们都能够找到一个假设h∈将正例和负例分开,那么我们就称散列(shatter)N个点。也就是说,可以用N个点定义的任何的学习问题都能够用一个从中抽取的假设无误差地学习。可以被散列的点的最大数量称为的VC维(VapnikChervonenkisdimension),记为VC(),它度量假设类的学习能力(capacity)。

在图25中,我们可以看到,轴平行的矩形能够散列二维空间的4个点。因此,当为二维空间中轴平行的矩形的假设类时,VC()等于4。在计算VC维时,能找到4个被散列的点就够了;没有必要去散列二维空间中任意4个点。例如,位于同一直线上的4个点不能被矩形散列。然而,我们无法在二维空间的任何位置设置5个点,使得对于所有可能的标记,一个矩形能够分开正例和负例。

  (点击查看大图)图2-5 轴平行的矩形能够散
列4个点,其中只显示了覆盖两个点的矩形 

也许VC维看起来比较悲观,它告诉我们使用矩形作为假设类, 我们只能学习包括4个点的数据集。能够学习含有4个点的数据集的学习算法不是很有用。然而, 这是因为VC维独立于数据实例的概率分布。在实际生活中,世界是平滑变化的, 在大多数时间相近的实例具有相同的标记,我们并不需要担心所有可能的标记。有很多包含远不止4个点的数据集都可以通过我们的假设类来学习(参见图2-1)。因此, 即便是具有较小VC维的假设类也是有应用价值的,并且比那些较大的VC维(例如, 具有无穷VC维的查找表)更可取。