【机器学习详解】SVM解回归问题
转载请注明出处:http://blog.csdn.net/luoshixian099/article/details/51121767
\color{Blue}{CSDN-勿在浮沙筑高台}
对于SVM解分类二分类问题,及多分类问题,在上一篇文章已经详述 http://blog.csdn.net/luoshixian099/article/details/51073885。本文将对SVM解回归问题,进行分析。
1.方法分析
在样本数据集 (xn,tn) (x_n,t_n)中, tn t_n不是简单的离散值,而是连续值。如在线性回归中,预测房价的问题。与线性回归类似,目标函数是正则平方误差函数:
在SVM回归算法中,目的是训练出超平面 y=wTx+b y=w^Tx+b,采用 yn=wTxn+b y_n=w^Tx_n+b作为预测值。为了获得稀疏解,即计算超平面参数 w,b w,b不依靠所有样本数据,而是部分数据(如在SVM分类算法中,支持向量的定义),采用 ϵ−insensitive \epsilon-insensitive 误差函数–Vapnik,1995。
ϵ−insensitive \epsilon-insensitive 误差函数定义为,如果预测值 yn y_n与真实值 tn t_n的差值小于阈值 ϵ \epsilon将不对此样本点做惩罚,若超出阈值,惩罚量为 |yn−tn|−ϵ |y_n-t_n|-\epsilon。
下图为 ϵ−insensitive \epsilon-insensitive 误差函数与平方误差函数的图形
2.目标函数
观察上述的 Eϵ E_{\epsilon} 误差函数的形式,可以看到,实际形成了一个类似管道的样子,在管道中样本点,不做惩罚,所以被称为 ϵ−tube \epsilon-tube,如下图阴影红色部分
采用 Eϵ E_{\epsilon}替代平方误差项,因此可以定义最小化误差函数作为优化目标:
由于上述目标函数含有绝对值项不可微。我们可以转化成一个约束优化问题,常用的方法是为每一个样本数据定义两个松弛变量 ξn≥0,ξn^≥0 \xi_n\geq0,\hat{\xi_n}\geq0,表示度量 tn t_n与 ϵ−tube \epsilon-tube的距离。
如上图所示:
当样本点真实值 tn t_n位于管道上方时, ξn>0 \xi_n>0,写成表达式: tn>y(xn)+ϵ t_n>y(x_n)+\epsilon时, ξn>0,ξ^n=0 \xi_n>0,\hat\xi_n=0;
当样本点真实值 tn t_n位于管道下方时, ξn^>0 \hat{\xi_n}>0,写成表达式: tn<y(xn)−ϵ t_n时, ξn^>0,ξn=0 \hat{\xi_n}>0,\xi_n=0;
因此使得每个样本点位于管道内部的条件为:
当 tn t_n位于管道上方时, ξn>0 \xi_n>0,有 tn−y(xn)−ξn≤ϵ t_n-y(x_n)-\xi_n\leq\epsilon
当 tn t_n位于管道下方时, ξn^>0 \hat{\xi_n}>0,有 y(xn)−tn−ξ^n≤ϵ y(x_n)-t_n-\hat{\xi}_n\leq\epsilon
误差函数可以写为一个凸二次优化问题:
约束条件:
ξn≥0 \xi_n\geq0
ξn^≥0 \hat{\xi_n}\geq0
tn−y(xn)−ξn≤ϵ t_n-y(x_n)-\xi_n\leq\epsilon
y(xn)−tn−ξ^n≤ϵ y(x_n)-t_n-\hat{\xi}_n\leq\epsilon
写成拉格朗日函数:
3.对偶问题
上述问题为极小极大问题: minw,b,ξn,ξn^ maxμn,μn^,αn,αn^L min_{w,b,\xi_n,\hat{\xi_n}}\ max_{\mu_n,\hat{\mu_n},\alpha_n,\hat{\alpha_n}}L与SVM分类分析方法一样,改写成对偶问题 maxμn,μn^,αn,αn^ minw,b,ξn,ξn^L max_{\mu_n,\hat{\mu_n},\alpha_n,\hat{\alpha_n}}\ min_{w,b,\xi_n,\hat{\xi_n}}L;首先分别对 w,b,ξn,ξn^ w,b,\xi_n,\hat{\xi_n}求偏导数
带回到拉格朗日函数中,化简得到只关于 αn,αn^ \alpha_n,\hat{\alpha_n}的函数,目标即最大化此函数。
约束条件为:
0≤αn≤C 0\leq\alpha_n\leq C
0≤αn^≤C 0\leq \hat{\alpha_n} \leq C,其中 k(xn,xm)=(xn)Txm k(x_n,x_m)=(x_n)^Tx_m为向量内积。
下面考虑KKT条件:
由式7.65,7.66知:
当 αn≠0 \alpha_n\neq0时,必有 ϵ+ξn+y(xn)−tn=0 \epsilon+\xi_n+y(x_n)-t_n=0,这些点位于管道上方边界出,或者管道上面。
当 α^n≠0 \hat\alpha_n\neq0时,必有 ϵ+ξn−y(xn)+tn=0 \epsilon+\xi_n-y(x_n)+t_n=0,这些点位于管道下方边界出,或者管道下面。
同时,由式7.65,7.66知,对于任意一个数据点,由于 ϵ>0 \epsilon>0,则 αn,α^n \alpha_n,\hat\alpha_n不可能同时不为0,而且得到在管道内部的点,必然有 αn=0,α^n=0 \alpha_n=0,\hat\alpha_n=0。
4.超平面计算:
把 w w表达式带入到y=wTx+by=w^Tx+b得:
由上述的分析,影响超平面参数的点为位于管道边界处,或者管道外面。
关于b的计算,可以考虑在管道上方边界处一个点必然有:
ξn=0 \xi_n=0
ϵ+ξn+y(xn)−tn=0 \epsilon+\xi_n+y(x_n)-t_n=0
联立解出:
参考:PRML
【机器学习详解】SVM解回归问题相关推荐
- 二分类最优阈值确定_机器学习 | 详解GBDT在分类场景中的应用原理与公式推导...
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题的第31篇文章,我们一起继续来聊聊GBDT模型. 在上一篇文章当中,我们学习了GBDT这个模型在回归问题当中的原理.GBD ...
- 详解SVM支持向量机算法(四:坐标上升和SMO算法)
作者:RayChiu_Labloy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 目录 背景 坐标上升算法 定义 过程 举个求解的栗子 基于坐标上升的SMO算法 SMO ...
- 【备战蓝桥】 算法·每日一题(详解+多解)-- day1
[备战蓝桥] 算法·每日一题(详解+多解)-- day1 ✨博主介绍 什么是蓝桥杯 第一题: 第二题 第三题 第四题 第五题 第六题 第七题
- 【备战蓝桥杯】 算法·每日一题(详解+多解)-- day11
[备战蓝桥杯] 算法·每日一题(详解+多解)-- day11 ✨博主介绍 前言 Dijkstra 算法 流程 网络延迟时间 解题思路 Bellman-Ford 算法 流程 K 站内最便宜的航班 解题思 ...
- svm 支持向量机 回归 预测_机器学习:简单理解支持向量机SVM
在介绍过贝叶斯之后,今天尝试着给大家介绍支持向量机SVM. 在机器学习中,SVM试图找到一个最佳的超平面,该平面可以最佳地分割来自不同类别的观察结果.一个在N-1维的超平面可以分割Ñ维的特征空间.例如 ...
- 机器学习实战 支持向量机SVM 代码解析
机器学习实战 支持向量机SVM 代码解析 <机器学习实战>用代码实现了算法,理解源代码更有助于我们掌握算法,但是比较适合有一定基础的小伙伴.svm这章代码看起来风轻云淡,实则对于新手来说有 ...
- 机器学习概念总结笔记(一)——机器学习算法分类、最小二乘回归、岭回归、LASSO回归
原文:https://cloud.tencent.com/community/article/137341 机器学习概念总结 1,机器学习算法分类 1)监督学习: 有train set,train s ...
- Coursera公开课笔记: 斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)”
Coursera公开课笔记: 斯坦福大学机器学习第六课"逻辑回归(Logistic Regression)" 斯坦福大学机器学习第六课"逻辑回归"学习笔记,本次 ...
- Scikit-Learn 机器学习笔记 -- 线性回归、逻辑回归、softmax回归
Scikit-Learn 机器学习笔记 – 线性回归.逻辑回归.softmax回归 参考文档: handson-ml import numpy as np from matplotlib import ...
最新文章
- 商品列表选择尺寸和颜色高亮,并且把选择的数据传递到下一个页面
- Datawhale第五期组队学习团队成员
- php是音频吗,只要是用PHP和JS发布的HTML5是否可以播放音频?
- OSI七层模型中每层的协议及网络设备—Vecloud微云
- Linux下首次操作MySQL失败
- onenote快捷键_onenote链接系列:4种链接笔记的地址
- 图书《图像并行处理技术》简介
- ese如何实现支付 nfc_海运费如何实现快捷支付?答案有了
- Silverlight 入门
- 1660用哪个驱动稳定_PDF转word怎么转?哪个PDF转换器最好用?-PDF ——快科技(驱动之家旗下媒体)-...
- 技术面试问项目难题如何解决的_同轴线如何当网线使用?解决改造项目中难题...
- zz:NETCONF协议详解
- CCF201909-2 小明种苹果(续)(100分)【序列处理】
- 蓝桥杯 C语言 试题 历届试题 格子刷油漆
- 如何从道客巴巴上下载收费文档之我见
- Android连点器(adb)
- 汪磊Node基础、Node入门、黑马Node
- Egret 配置主题
- 荣耀8微信总是无法连接服务器,微信无法登陆想要登陆的王者荣耀账号,怎么办?...
- ffmpeg4.x支持的编解码器等相关信息一览表