SVM-VC维和结构风险最小化

简介: 支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上。置信风险: 分类器对 未知样本进行分类,得到的误差。经验风险: 训练好的分类器,对训练样本重新分类得到的误差。

支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上。

置信风险: 分类器对 未知样本进行分类,得到的误差。
经验风险: 训练好的分类器,对训练样本重新分类得到的误差。即样本误差
结构风险:置信风险 + 经验风险
结构风险最小化就是为了防止过拟合而提出来的策略,贝叶斯估计中最大后验概率估计就是结构风险最小化的一个例子。当模型的条件概率分布、损失函数是对数损失函数、模型复杂度由模型先验概率表示时,结构风险最小化等价于最大后验概率估计。监督学习问题变成经验风险或结构风险函数的最优化问题,这时经验风险或结构风险函数是最优化的目标函数。

置信风险因素:

样本数量,给定的样本数量越大,学习结果越有可能正确,此时置信风险越小;
分类函数的VC维,显然VC维越大,推广能力越差,置信风险会变大。
提高样本数量,降低VC维,降低置信风险。

以前机器学习的目标是降低经验风险,要降低经验风险,就要提高分类函数的复杂度,导致VC维很高,VC维高,置信风险就高,所以,结构风险也高。---- 这是SVM比其他机器学习具有优势的地方。
SVM在小样本训练集上能够得到比其它算法好很多的结果。支持向量机之所以成为目前最常用,效果最好的分类器之一,在于其优秀的泛化能力,这是是因为其本身的优化目标是结构化风险最小,而不是经验风险最小,因此,通过margin的概念,得到对数据分布的结构化描述,因此减低了对数据规模和数据分布的要求。SVM也并不是在任何场景都比其他算法好,对于每种应用,最好尝试多种算法,然后评估结果。如SVM在邮件分类上,还不如逻辑回归、KNN、bayes的效果好。

VC维:

将N个点进行分类,如分成两类,那么可以有2N种分法,即可以理解成有2N个学习问题。若存在一个假设H,能准确无误地将2^N种问题进行分类。那么这些点的数量N,就是H的VC维。 这个定义真生硬,只能先记住。一个实例就平面上3个点的线性划分的VC维是3. 而平面上 VC维不是4,是因为不存在4个样本点,能被划分成2^4 = 16种划分法,因为对角的两对点不能被线性划分为两类。更一般地,在r 维空间中,线性决策面的VC维为r+1。
置信风险的影响因素有: 训练样本数目和分类函数的VC维。训练样本数目,即样本越多,置信风险就可以比较小;VC维越大,问题的解的种类就越多,推广能力就越差,置信风险也就越大。因此,增加样本数,降低VC维,才能降低置信风险。而一般的分类函数,需要提高VC维,即样本的特征数据量,来降低经验风险,如多项式分类函数。如此就会导致置信风险变高,结构风险也相应变高。过度学习即overfit,就是置信风险变高的缘故。

结构风险最小化srm

SRM(structured risk minimize)就是同时考虑经验风险与结构风险。在小样本情况下,取得比较好的分类效果。保证分类精度(经验风险)的同时,降低学习机器的 VC 维,可以使学习机器在整个样本集上的期望风险得到控制,这应该就是SRM的原则。
当训练样本给定时,分类间隔越大,则对应的分类超平面集合的 VC 维就越小。(分类间隔的要求,对VC维的影响)
根据结构风险最小化原则,前者是保证经验风险(经验风险和期望风险依赖于学习机器函数族的选择)最小,而后者使分类间隔最大,导致 VC 维最小,实际上就是使推广性的界中的置信范围最小,从而达到使真实风险最小。
训练样本在线性可分的情况下,全部样本能被正确地分类(咦这个不就是传说中的yi(wxi+b))>=1的条件吗),即经验风险Remp 为 0 的前提下,通过对分类间隔最大化(咦,这个就是Φ(w)=(1/2)ww嘛),使分类器获得最好的推广性能。

下面再添加一些相关内容:

正则化

regularization归一化:normalization李航博士在其统计学习方法中写道统计学习的三要素由模型、策略和算法组成。在监督学习中模型即是要学习的概率分布函数或决策函数,因此模型的假设空间便包括所有可能的概率分布或决策函数。模型的假设空间有了之后,下面的问题就是如何选择最优的模型,选择的准则又是什么。这就引入了损失函数和风险函数的概念。损失函数度量一次预测的好坏。风险函数度量平均意义下模型的好好。在监督学习中我们从假设空间中选择f作为我们的决策函数,那么给一个输入X,我们会产生一个输出f(X)[分类回归均可],模型f产生的输出f(X)和实际输出y会有一定的差距。我们用损失函数(loss function)或代价函数(cost function)来衡量预测错误的程度。损失函数有很多种,例如平方损失函数(例如回归问题用的),绝对损失函数,对数损失函数(例如logistic regression用的)可见损失函数值越小,模型预测的就越好。
当然现实世界中我们并不知道输入输出的概率分布是啥,不然也用不着我们去预测了。我们只拥有的是一些训练数据用做训练集,在这个训练集上,模型得到的平均损失称为经验风险(empirical risk)或经验损失(empirical loss)。如果样本的数量足够大,根据大数定理,经验风险应该接近期望风险。因此我们可以用经验风险来估计期望风险。因此经验风险最小化(empirical risk minimization,ERM)的的原则就是说使经验风险最小的模型就是最优的模型。为了使经验风险最小,可以说无所不用其极,这样就有可能导致训练出的模型经验风险小,但模型复杂,导致模型泛化能力差,即在新数据上表型性能差,奥,对,专业名词叫过拟合(overfitting)。避免过拟合的问题可以用减少features的方法,也可以用结构风险最小化(structural risk minimization, SRM)。结构风险最小化等价于正则化(regularization),即在经验风险的后面加上与模型复杂度相符的正则化项(regularizer)或惩罚项(penalty term)
lambda表示对模型复杂的惩罚。值越大,惩罚越大。在实际操作中需要权衡。lambda=0,即不进行正则化,出现过拟合,以机器学习公开课logistic regression的图为例:
让lambda=1,对模型复杂度进行惩罚,分类效果与泛化能力还不错:

惩罚过火的话,比如lambda=100,出现欠拟合(underfitting)的问题:

目录
相关文章
|
存储 人工智能 数据管理
媒体声音|专访阿里云数据库周文超博士:AI就绪的智能数据平台设计思路
在生成式AI的浪潮中,数据的重要性日益凸显。大模型在实际业务场景的落地过程中,必须有海量数据的支撑:经过训练、推理和分析等一系列复杂的数据处理过程,才能最终产生业务价值。事实上,大模型本身就是数据处理后的产物,以数据驱动的决策与创新需要通过更智能的平台解决数据多模处理、实时分析等问题,这正是以阿里云为代表的企业推动 “Data+AI”融合战略的核心动因。
|
数据可视化 图形学 C++
探索Qt Quick Item的奥秘:从原理到高级应用
探索Qt Quick Item的奥秘:从原理到高级应用
1008 1
|
Ubuntu 数据安全/隐私保护
安装Ubuntu16.04卡在Ubuntu的logo界面解决方法
安装Ubuntu16.04卡在Ubuntu的logo界面解决方法
3774 0
安装Ubuntu16.04卡在Ubuntu的logo界面解决方法
|
算法 Linux C语言
Linux驱动IO篇——异步通知
Linux驱动IO篇——异步通知
|
数据采集 数据可视化 大数据
大数据体系知识学习(三):数据清洗_箱线图的概念以及代码实现
这篇文章介绍了如何使用Python中的matplotlib和numpy库来创建箱线图,以检测和处理数据集中的异常值。
575 1
大数据体系知识学习(三):数据清洗_箱线图的概念以及代码实现
|
Java 应用服务中间件 Maven
不同版本Idea部署Maven和Tomcat教学
不同版本Idea部署Maven和Tomcat教学
769 0
|
算法 Python
群智能算法:灰狼优化算法(GWO)的详细解读
在优化问题中,寻找最优解是核心目标。灰狼优化算法(GWO)受到自然界灰狼狩猎行为和社会等级结构的启发,通过模拟Alpha(头狼)、Beta(助手狼)、Delta(支配狼)和Omega(普通狼)的角色,高效搜索最优解。本文详细解析GWO的原理与步骤,并提供Python代码实现,帮助读者理解并应用这一算法。
|
存储 安全 NoSQL
SpringSecurity 核心过滤器——CsrfFilter
Spring Security除了认证授权外功能外,还提供了安全防护功能。本文我们来介绍下SpringSecurity中是如何阻止CSRF攻击的。
799 0
|
安全 Java
JDK的安装及环境变量配置
JDK的安装及环境变量配置
931 0
|
搜索推荐 开发者 UED
【开发者必看—运动篇】数据赋能运动App留存率再创新高
如何在拉新后促活并成功留存?如何减少新用户流失?
【开发者必看—运动篇】数据赋能运动App留存率再创新高

热门文章

最新文章