SVR——一种“宽容的回归模型”
严格的线性回归
线性回归:在向量空间里用线性函数去拟合样本。该模型以所有样本实际位置到该线性函数的综合距离为损失,通过最小化损失来求取线性函数的参数。对于线性回归而言,一个样本只要不算正好落在作为模型的线性函数上,就要被计算损失。
宽容的支持向量回归(SVR)
介绍一种“宽容的”回归模型:支持向量回归(Support Vector Regression,SVR)
模型函数
支持向量回归模型的模型函数也是一个线性函数:y=wx+by=wx+by=wx+b,但是和线性回归是两个不同的回归模型!
不同点在于:计算损失的原则不同,目标函数和最优化算法也不同。
原理
SVR在线性函数两侧制造了一个“间隔带”,对于所有落入到间隔带内的样本,都不计算损失;只有间隔带之外的,才计入损失函数。之后再通过最小化间隔带的宽度与总损失来最优化模型。如下图这样,只有那些圈了红圈的样本(或在隔离带边缘之外,或落在隔离带边缘上),才被计入最后的损失:

SVR的两个松弛变量
有一点和SVM是正好相反的:SVR希望样本点都落在“隔离带”内,而SVM希望样本点都在“隔离带”外。这导致SVR要同时引入两个松弛变量:ξ\xiξ和ξ∗\xi^*ξ∗

上图显示了SVR的基本情况:
- f(x)=wx+bf(x)=wx+bf(x)=wx+b是我们最终要求得的模型函数;
- wx+b+ϵwx+b+\epsilonwx+b+ϵwx+b−ϵwx+b-\epsilonwx+b−ϵ(也就是f(x)+ϵf(x)+\epsilonf(x)+ϵ和f(x)−ϵf(x)-\epsilonf(x)−ϵ)是隔离带的上下边缘;
- ξ∗\xi^*ξ∗是隔离带下边缘之下样本点,到隔离带下边缘上的投影,与该样本点yyy值的差。
公式表述:

对于任意样本xix_ixi,如果它在隔离带里面或者隔离带边缘上,则ξ\xiξ和ξ∗\xi^*ξ∗都为0;如果它在隔离带上边缘上方,则ξ>0\xi>0ξ>0 , ξ∗\xi^*ξ∗=0;如果它在隔离带下边缘下方,则ξ=0\xi=0ξ=0 , ξ∗0\xi^*0ξ∗0;
SVR的主问题和对偶问题
SVR主问题的数学描述

SVR的拉格朗日函数和对偶问题
我们针对上述主问题引入拉格朗日乘子:

构建拉格朗日函数:

它对应的对偶问题是:

求解SVR对偶问题
按照前面讲的方法,首先要求最小化部分:

然后分别对w,b,ξi,ξi∗w,b,\xi_i,\xi_i^*w,b,ξi,ξi∗

支持向量回归(SVR)是一种不同于传统线性回归的模型,它通过在预测值周围创建一个容忍区域,只计算超出该区域的样本误差。SVR通过最小化间隔带宽度和总损失来优化模型,利用支持向量确定线性模型参数,并可以通过核技巧进行非线性映射。SMO算法用于解决SVR的对偶问题,寻找最优支持向量。
2735

被折叠的 条评论
为什么被折叠?



