【机器学习详解】SVM解回归问题

转载请注明出处:http://blog.csdn.net/luoshixian099/article/details/51121767

CSDN?勿在浮沙筑高台

对于SVM解分类二分类问题,及多分类问题,在上一篇文章已经详述http://blog.csdn.net/luoshixian099/article/details/51073885。本文将对SVM解回归问题,进行分析。

1.方法分析

在样本数据集(xn,tn)中,tn不是简单的离散值,而是连续值。如在线性回归中,预测房价的问题。与线性回归类似,目标函数是正则平方误差函数:

在SVM回归算法中,目的是训练出超平面y=wTx+b,采用yn=wTxn+b作为预测值。为了获得稀疏解,即计算超平面参数w,b不依靠所用样本数据,而是部分数据(如在SVM分类算法中,支持向量的定义),采用??insensitive 误差函数–Vapnik,1995。

??insensitive 误差函数定义为,如果预测值yn与真实值tn的差值小于阈值?将不对此样本点做惩罚,若超出阈值,惩罚量为|yn?tn|??。

下图为??insensitive 误差函数与平方误差函数的图形

2.目标函数

观察上述的E? 误差函数的形式,可以看到,实际形成了一个类似管道的样子,在管道中样本点,不做惩罚,所以被称为??tube,如下图阴影红色部分

采用E?替代平方误差项,因此可以定义最小化误差函数作为优化目标:

由于上述目标函数含有绝对值项不可微。我们可以转化成一个约束优化问题,常用的方法是为每一个样本数据定义两个松弛变量ξn≥0,ξn^≥0,表示度量tn与??tube的距离。

如上图所示:

当样本点真实值tn位于管道上方时,ξn>0,写成表达式:tn>y(xn)+?时,ξn>0,ξ^n=0;

当样本点真实值tn位于管道下方时,ξn^>0,写成表达式:tn<y(xn)??时,ξn^>0,ξn=0;

因此使得每个样本点位于管道内部的条件为:

当tn位于管道上方时,ξn>0,有tn?y(xn)?ξn≤?

当tn位于管道下方时,ξn^>0,有y(xn)?tn?ξ^n≤?

误差函数可以写为一个凸二次优化问题:

约束条件:

ξn≥0

ξn^≥0

tn?y(xn)?ξn≤?

y(xn)?tn?ξ^n≤?

写成拉格朗日函数:

3.对偶问题

上述问题为极小极大问题:minw,b,ξn,ξn^ maxμn,μn^,αn,αn^L与SVM分类分析方法一样,改写成对偶问题maxμn,μn^,αn,αn^ minw,b,ξn,ξn^L;首先分别对w,b,ξn,ξn^求偏导数

带回到拉格朗日函数中,化简得到只关于αn,αn^的函数,目标即最大化此函数。

约束条件为:

0≤αn≤C

0≤αn^≤C,其中k(xn,xm)=(xn)Txm为向量内积。

下面考虑KKT条件:

由式7.65,7.66知:

当αn≠0时,必有?+ξn+y(xn)?tn=0,这些点位于管道上方边界出,或者管道上面。

当α^n≠0时,必有?+ξn?y(xn)+tn=0,这些点位于管道下方边界出,或者管道下面。

同时,由式7.65,7.66知,对于任意一个数据点,由于?>0,则αn,α^n不可能同时不为0,而且得到在管道内部的点,必然有αn=0,α^n=0。

4.超平面计算:

把w表达式带入到y=wTx+b得:

由上述的分析,影响超平面参数的点为位于管道边界处,或者管道外面。

关于b的计算,可以考虑在管道上方边界处一个点必然有:

ξn=0

?+ξn+y(xn)?tn=0

联立解出:

参考:PRML

时间: 2024-11-06 19:40:51

【机器学习详解】SVM解回归问题的相关文章

【机器学习详解】SMO算法剖析(转载)

[机器学习详解]SMO算法剖析 转载请注明出处:http://blog.csdn.net/luoshixian099/article/details/51227754 CSDN?勿在浮沙筑高台 本文力求简化SMO的算法思想,毕竟自己理解有限,无奈还是要拿一堆公式推来推去,但是静下心看完本篇并随手推导,你会迎刃而解的.推荐参看SMO原文中的伪代码. 1.SMO概念 上一篇博客已经详细介绍了SVM原理,为了方便求解,把原始最优化问题转化成了其对偶问题,因为对偶问题是一个凸二次规划问题,这样的凸二次规

攀登传统机器学习的珠峰-SVM (中)

关于软间隔SVM和非线性SVM,在学习过程中,估计有很多入门的同学会好奇软间隔和硬间隔的区别有没有更合理的解释?软间隔中引入的松弛变量到底是什么?软间隔的优化函数和硬间隔的优化函数化简之后,为什么长得这么类似?有没有更形象的方式来划分软间隔中的支持向量,噪声点和误分类的点?软间隔SVM的代价函数,硬间隔SVM的代价函数和合页损失函数是一致的吗?以及核函数是个什么玩意?核函数的优点到底怎么解释? 下面我将用EM算法的思想去解释软间隔和硬间隔的区别,并用通俗易懂的语言解释松弛变量的几何含义,以及系数

Stanford机器学习课程笔记——SVM

Stanford机器学习课程笔记--SVM 前面已经学习过SVM,写了几片博文,如下: 入门SVM:http://blog.csdn.net/puqutogether/article/details/39894835 SVM中的线性不可分情况:http://blog.csdn.net/puqutogether/article/details/41309745 SVM中的多类分类问题:http://blog.csdn.net/puqutogether/article/details/4167960

Coursera机器学习-第三周-逻辑回归Logistic Regression

Classification and Representation 1. Classification Linear Regression (线性回归)考虑的是连续值([0,1]之间的数)的问题,而Logistic Regression(逻辑回归)考虑的是离散值(例如只能取0或1而不能取0到1之间的数)的问题.举个例子,你需要根据以往季度的电力数据,预测下一季度的电力数据,这个时候需要使用的是线性回归,因为这个值是连续的,而不是离散的.而当你需要判断这个人抽烟还是不抽烟的问题时,就需要使用逻辑回

机器学习---支持向量机(SVM)

非常久之前就学了SVM,总认为不就是找到中间那条线嘛,但有些地方模棱两可,真正编程的时候又是一团浆糊.參数任意试验,毫无章法.既然又又一次学到了这一章节,那就要把之前没有搞懂的地方都整明确,嗯~ 下面使用到的图片来自上海交大杨旸老师的课件.网址例如以下:http://bcmi.sjtu.edu.cn/~yangyang/ml/ 支持向量机就是一种分类方法.仅仅是起的这个名字,看起来非常复杂而已. 中间一条线:分类用的,须要求出系数W , b 支持向量:线性超平面上的点,能够理解为两边的线上的点

机器学习中的数学(1)-回归(regression)、梯度下降(gradient descent)

机器学习中的数学(1)-回归(regression).梯度下降(gradient descent) 版权声明: 本文由LeftNotEasy所有,发布于http://leftnoteasy.cnblogs.com.如果转载,请注明出处,在未经作者同意下将本文用于商业用途,将追究其法律责任. 前言: 上次写过一篇关于贝叶斯概率论的数学,最近时间比较紧,coding的任务比较重,不过还是抽空看了一些机器学习的书和视频,其中很推荐两个:一个是stanford的machine learning公开课,在

linux_DNS服务器(正解/反解)的简单创建

什么是DNS? DNS(Domain Name System) 域名系统.它是如今互联网上能够相互通信的服务之一,对于现在的互联网特别特别重要的,因为在这个人们不能很好记忆数字IP地址的问题上,输入IP地址来访问其他的主机是很困难的,和不现实的,如果数字IP地址用我们所熟悉的各种名称(字符,例如:baidu taobao 等)就很好记忆啦.DNS就是来完成这个解析的功能的. DNS工作的原理: 首先,我们先了解一个内容,例如www.baidu.com, www.baidu.com 在DNS中是有

机器学习实战笔记5(logistic回归)

1:简单概念描述 假设现在有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合参数,使用的是最优化算法. 基于sigmoid函数分类:logistic回归想要的函数能够接受所有的输入然后预测出类别.这个函数就是sigmoid函数,它也像一个阶跃函数.其公式如下: 其中: z = w0x0+w1x1+-.+wnxn,w为参数, x为特征 为了实现logistic回归分类器,我们可以在每个特征上乘以一个回归系数,然后把所有的结果

机器学习分类实例——SVM(修改)/Decision Tree/Naive Bayes

机器学习分类实例--SVM(修改)/Decision Tree/Naive Bayes 20180427-28笔记.30总结 已经5月了,毕设告一段落了,该准备论文了.前天开会老师说,希望我以后做关于语义分析那一块内容,会议期间还讨论了学姐的知识图谱的知识推理内容,感觉也挺有趣的,但是感觉应该会比较复杂.有时间的话希望对这块了解一下.其实吧,具体怎么展示我还是不太清楚... 大概就是图表那个样子.我先做一个出来,让老师看看,两个礼拜写论文.24/25答辩,6月就可以去浪哈哈哈哈哈哈. 一.工作