机器学习 之 SVM VC维度、样本数目与经验风险最小化的关系
VC维在有限的训练样本情况下,当样本数 n 固定时。此时学习机器的 VC 维越高学习机器的复杂性越高。
VC 维反映了函数集的学习能力,VC 维越大则学习机器越复杂(容量越大)。
所谓的结构风险最小化就是在保证分类精度(经验风险)的同一时候,减少学习机器的 VC 维,能够使学习机器在整个样本集上的期望风险得到控制。
经验风险和实际风险之间的关系,注意引入这个原因是什么?
由于训练误差再小也就是在这个训练集合上,实际的推广能力不行就会引起过拟合问题。
所以说要引入置信范围也就是经验误差和实际期望误差之间的关系
期望误差R(ω) ≤ Remp (ω)+ Φ(n/h)
注意Remp (ω)是经验误差也就是训练误差(线性中使得全部的都训练正确)。
Φ(n/h)是置信范围,它是和样本数和VC维有关的。
上式中置信范围Φ 随n/h添加,单调下降。
即当n/h较小时,置信范围Φ 较大,用经验风险近似实际风险就存在较大的误差。因此,用採用经验风险最小化准则。取得的最优解可能具有较差的推广性;
假设样本数较多,n/h较大。则置信范围就会非常小,採用经验风险最小化准则,求得的最优解就接近实际的最优解。
可知:影响期望风险上界的因子有两个方面:
首先是训练集的规模 n,其次是 VC 维 h。
可见,在保证分类精度(经验风险)的同一时候。减少学习机器的 VC 维,能够使学习机器在整个样本集上的期望风险得到控制,这就是结构风险最小化(Structure Risk Minimization,简称 SRM)的由来。
在有限的训练样本情况下,当样本数 n 固定时。此时学习机器的 VC 维越高(学习机器的复杂性越高),则置信范围就越大,此时。真实风险与经验风险之间的区别就越大,这就是为什么会出现过学习现象的原因。
机器学习过程不但要使经验风险最小。还要使其 VC 维尽量小,以缩小置信范围。才干取得较小的实际风险。即对未来样本有较好的推广性,它与学习机器的 VC 维及训练样本数有关。
机器学习 之 SVM VC维度、样本数目与经验风险最小化的关系的更多相关文章
- svm、经验风险最小化、vc维
原文:http://blog.csdn.net/keith0812/article/details/8901113 “支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上” 结构化 ...
- 机器学习理论基础学习3.3--- Linear classification 线性分类之logistic regression(基于经验风险最小化)
一.逻辑回归是什么? 1.逻辑回归 逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的. logistic回归也称为逻辑回归,与线性回归这样输出 ...
- 【转载】VC维,结构风险最小化
以下文章转载自http://blog.sina.com.cn/s/blog_7103b28a0102w9tr.html 如有侵权,请留言,立即删除. 1 VC维的描述和理解 给定一个集合S={x1,x ...
- 文本分类学习 (七)支持向量机SVM 的前奏 结构风险最小化和VC维度理论
前言: 经历过文本的特征提取,使用LibSvm工具包进行了测试,Svm算法的效果还是很好的.于是开始逐一的去了解SVM的原理. SVM 是在建立在结构风险最小化和VC维理论的基础上.所以这篇只介绍关于 ...
- 《机器学习基石》---VC维
1 VC维的定义 VC维其实就是第一个break point的之前的样本容量.标准定义是:对一个假设空间,如果存在N个样本能够被假设空间中的h按所有可能的2的N次方种形式分开,则称该假设空间能够把N个 ...
- 项目二:使用机器学习(SVM)进行基因预测
SVM软件包 LIBSVM -- A Library for Support Vector Machines(本项目所用到的SVM包)(目前最新版:libsvm-3.21,2016年7月8日) C-S ...
- 机器学习——支持向量机SVM
前言 学习本章节前需要先学习: <机器学习--最优化问题:拉格朗日乘子法.KKT条件以及对偶问题> <机器学习--感知机> 1 摘要: 支持向量机(SVM)是一种二类分类模型, ...
- 【机器学习】svm
机器学习算法--SVM 目录 机器学习算法--SVM 1. 背景 2. SVM推导 2.1 几何间隔和函数间隔 2.2 SVM原问题 2.3 SVM对偶问题 2.4 SMO算法 2.4.1 更新公式 ...
- 机器学习:SVM(目标函数推导:Hard Margin SVM、Soft Margin SVM)
一.Hard Margin SVM SVM 的思想,最终用数学表达出来,就是在优化一个有条件的目标函数: 此为 Hard Margin SVM,一切的前提都是样本类型线性可分: 1)思想 SVM 算法 ...
随机推荐
- 早前阅读live555源码做的笔记
早前阅读live555源码的时候做了一些简单的笔记.现在看来那个时候对C++的理解还是不够,还有很多不足.当时对很多名词也不是很熟悉,对一些类的描述也很生硬,所以笔记中有一些不通畅之处. 阅读live ...
- adb forward交互流程
命令:adb forward tcp:6100 tcp:7100 // PC上所有6100端口通信数据将被重定向到手机端7100端口server上 或者adb forward tcp:6100 loc ...
- $(document).ready() 和 window.onload 方法比较
说明 页面加载文档完毕后,浏览器会通过 Javascript 为 DOM 元素添加事件. Javascript 使用 window.onload 方法,而 jQuery 使用 $(document). ...
- Easyui入门视频教程 第02集--- ASP.NET MVC下 搭建 EasyUI环境
Easyui入门视频教程 第02集--- ASP.NET MVC下 搭建 EasyUI环境 目录 ----------------------- Easyui入门视频教程 第09集---登录完善 图标 ...
- cmd下查看端口被某程序占用命令
经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用 假如我们需要确定谁占用了我们的9050端口 ...
- JavaScript 消息框,警告框,确认框,提示框
1.警告框 警告框经常用于确保用户可以得到某些信息. 当警告框出现后,用户需要点击确定按钮才能继续进行操作. 语法: alert("文本") 2.确认框 确认框用于使用户可以验证或 ...
- mysql 排序 oder by 和 使用hibernate 排序
String sql="select * from sys_invitation where to_phone = '13000000000' order by create_time de ...
- Bean的加载过程
参考地址: http://blog.csdn.net/jy0902/article/details/50519115 http://blog.csdn.net/architect0719/articl ...
- STAF进行分布式脚本分发----实践篇
该博文理论支持文章:http://www.cnblogs.com/zhangfei/p/3169139.html 一.准备条件 1.安装STAF.由于其官网被墙了,所以大家可进入WAT群的网盘里去下载 ...
- macOS SIP 权限设置
1.macOS SIP 权限设置 对于 macOS 10.11+ 用户,由于系统启用了 SIP(System Integrity Protection), 导致 root 用户也没有权限修改 /usr ...