2.2 VC维
《机器学习导论》第2章监督学习,本章从最简单的情况开始讨论监督学习,首先从正例和负例集合中学习类别,继而推广并讨论多类的情况,然后再讨论输出为连续值的回归。本节为大家介绍VC维。
2.2 VC维
假定我们有一个数据集,包含N个点。这N个点可以用 种方法标记为正例和负例。因此,N个数据点可以定义种不同的学习问题。如果对于这些问题中的任何一个,我们都能够找到一个假设h∈将正例和负例分开,那么我们就称散列(shatter)N个点。也就是说,可以用N个点定义的任何的学习问题都能够用一个从中抽取的假设无误差地学习。可以被散列的点的最大数量称为的VC维(VapnikChervonenkisdimension),记为VC(),它度量假设类的学习能力(capacity)。
在图25中,我们可以看到,轴平行的矩形能够散列二维空间的4个点。因此,当为二维空间中轴平行的矩形的假设类时,VC()等于4。在计算VC维时,能找到4个被散列的点就够了;没有必要去散列二维空间中任意4个点。例如,位于同一直线上的4个点不能被矩形散列。然而,我们无法在二维空间的任何位置设置5个点,使得对于所有可能的标记,一个矩形能够分开正例和负例。
(点击查看大图)图2-5 轴平行的矩形能够散 列4个点,其中只显示了覆盖两个点的矩形 |
也许VC维看起来比较悲观,它告诉我们使用矩形作为假设类, 我们只能学习包括4个点的数据集。能够学习含有4个点的数据集的学习算法不是很有用。然而, 这是因为VC维独立于数据实例的概率分布。在实际生活中,世界是平滑变化的, 在大多数时间相近的实例具有相同的标记,我们并不需要担心所有可能的标记。有很多包含远不止4个点的数据集都可以通过我们的假设类来学习(参见图2-1)。因此, 即便是具有较小VC维的假设类也是有应用价值的,并且比那些较大的VC维(例如, 具有无穷VC维的查找表)更可取。
基于libsvm的中文文本分类原型 ,虽然做了原型,但是概念还不是很清晰。
“支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上”
结构化风险
结构化风险 = 经验风险 + 置信风险
经验风险 = 分类器在给定样本上的误差
置信风险 = 分类器在未知文本上分类的结果的误差
置信风险因素:
- 样本数量,给定的样本数量越大,学习结果越有可能正确,此时置信风险越小;
- 分类函数的VC维,显然VC维越大,推广能力越差,置信风险会变大。
提高样本数量,降低VC维,降低置信风险。
以前机器学习的目标是降低经验风险,要降低经验风险,就要提高分类函数的复杂度,导致VC维很高,VC维高,置信风险就高,所以,结构风险也高。---- 这是SVM比其他机器学习具有优势的地方。下面就说说VC维是怎么回事。
VC维
机器学习导论 的解释 :假定我们有一个数据集,包含N个点。这N个点可以用 种方法标记为正例和负例(属于和不属于某个类)。因此,N个数据点可以定义 种不同的学习问题。假如(,)逗号前的是属于,逗号都的是不属于。比如1个点,可以分为( a , )( , a );2个点可以分为( ab , )( , ab ) ( a , b ) ( b , a )四种;依次类推...如果对于这些问题中的任何一个,我们都能够找到一个假设h∈ 将正例和负例分开,那么我们就称 散列(shatter )N个点。也就是说,可以用N个点定义的任何的学习问题都能够用一个从中抽取的假设无误差地学习。可以被散列的点的最大数量称为 的VC 维(Vapnik 和Cortes ),记为VC( ),它度量假设类 的学习能力(capactiy )。
具体参考:2.2 VC维
网友解释 :模式识别中VC 维的直观定义是:对一个指示函数集,如果存在N 个样本能够被函数集中的函数按所有可能的 种形式分开,则称函数集能够把N 个样本打 散,函数集的VC 维就是它能打散的最大样本数目N ,若对任意数目的样本都有函数能将它们打散. 则函数集的VC 维是无穷大。有界实函数的VC 维可以通过用一 定的阈值将它转化成指示函数来定义。VC 维反映了函数集的学习能力,VC 维越大则学习机器越复杂,所以VC 维又是学习机器复杂程度的一种衡量。换一个角度来理解,如果用函数类{f(z,a)} 代表一个学习机,a 确定后就确定了一个判别函数了EF ,而VC 维为该学习机能学习的可以由其分类函数正确给出的所有可能二值标识的最大训练样本数。
具体参考:http://xyxy100.blog.163.com/blog/static/115572596201041754333345/
为什么直线函数的VC维是3呢不是4呢。因为对角线上的AD分不到一起,BC分不到一起。
A B
C D
总之:分类函数简单,VC维低,分类函数复杂,VC维高。
正则化:regularization
归一化:normalization
李航博士在其统计学习方法中写道统计学习的三要素由模型、策略和算法组成。在监督学习中模型即是要学习的概率分布函数或决策函数,因此模型的假设空间便包括所有可能的概率分布或决策函数。
模型的假设空间有了之后,下面的问题就是如何选择最优的模型,选择的准则又是什么。这就引入了损失函数和风险函数的概念。
损失函数度量一次预测的好坏。
风险函数度量平均意义下模型的好好。
在监督学习中我们从假设空间中选择f作为我们的决策函数,那么给一个输入X,我们会产生一个输出f(X)[分类回归均可],模型f产生的输出f(X)和实际输出y会有一定的差距。我们用损失函数(loss function)或代价函数(cost function)来衡量预测错误的程度。损失函数有很多种,例如平方损失函数(例如回归问题用的),绝对损失函数,对数损失函数(例如logistic regression用的),统一记为:L(Y,f(X))。
可见损失函数值越小,模型预测的就越好。模型的输入输出(X,Y)遵循联合概率分布P(X,Y),因此模型的期望损失为: