支持向量回归(SVR)

方法描述

核心思想:

  • 线性模型(f(x)=wTx+bf(x)=w^Tx+bf(x)=wTx+b)对回归问题进行拟合

  • 确定的线性模型对应w,bw,bw,b唯一确定一个超平面wTx+b=0w^Tx+b=0wTx+b=0

  • 不同于一般线性模型,在超平面两侧定义间隔ϵ\epsilonϵ,在间隔带内则不计算损失,当且仅当f(x)与y之间的差距的绝对值大于ϵ\epsilonϵ才计算损失

  • 通过最大化间隔带的宽度最小化总损失来优化模型

相关概念

  • 硬间隔

    • 最大容忍偏差为ϵ\epsilonϵ,仅当∣f(x)−y∣>ϵ|f(x)-y|>\epsilon∣f(x)−y∣>ϵ时计算误差

    • 即形式化目标为:
      minw,b12∣∣w∣∣2+C∑i=1nlϵ(f(xi),yi)lϵ(f(xi),yi)={0∣f(xi)−yi∣<ϵ∣f(xi)−yi∣−ϵelse\underset{w,b}{min}\ \frac12||w||^2+C\sum_{i=1}^nl_{\epsilon}(f(x_i),y_i)\\ l_{\epsilon}(f(x_i),y_i)=\begin{cases} 0\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ |f(x_i)-y_i|<\epsilon\\ |f(x_i)-y_i|-\epsilon\ \ \ \ \ \ \ \ \ \ \ \ else \end{cases} w,bmin​ 21​∣∣w∣∣2+Ci=1∑n​lϵ​(f(xi​),yi​)lϵ​(f(xi​),yi​)={0                                   ∣f(xi​)−yi​∣<ϵ∣f(xi​)−yi​∣−ϵ            else​

  • 软间隔

    • 实际任务中,往往很难直接确定合适的ϵ\epsilonϵ,使大部分点都在间隔带之内

    • 因此引入松弛变量ξ,ξˉ\xi,\bar\xiξ,ξˉ​,从而使函数的间隔要求变的放松,允许一些训练样本不在间隔内

      对于任意样本xix_ixi​,如果它在间隔带里面或者边缘上,ξi=(ξiˉ)=0\xi_i=\bar{(\xi_i})=0ξi​=(ξi​ˉ​)=0

      样本xix_ixi​在间隔带外,需要通过松弛变量将点移动到间隔带内,此处需要进行两个约束:能移进间隔,不会超出间隔

    • 此时,所有样本满足条件
      ∣yi−f(xi)∣≤ϵ+ξi|y_i-f(x_i)|\leq\epsilon+\xi_i ∣yi​−f(xi​)∣≤ϵ+ξi​

    • 优化目标可以重写为:
      minw,b,ξo,ξˉi12∣∣w∣∣2+C∑i=1n(ξi+ξiˉ)s.t.f(xi)−yi≤ϵ+ξiyi−f(xi)≤ϵ+ξiˉξi>0,ξiˉ>0\underset{w,b,\xi_o,\bar\xi_i}{min}\ \frac12||w||^2+C\sum_{i=1}^n(\xi_i+\bar{\xi_i})\\ \begin{aligned} s.t. &f(x_i)-y_i\leq\epsilon+\xi_i\\ &y_i-f(x_i)\leq\epsilon+\bar{\xi_i}\\ &\xi_i>0,\ \bar{\xi_i}>0 \end{aligned} w,b,ξo​,ξˉ​i​min​ 21​∣∣w∣∣2+Ci=1∑n​(ξi​+ξi​ˉ​)s.t.​f(xi​)−yi​≤ϵ+ξi​yi​−f(xi​)≤ϵ+ξi​ˉ​ξi​>0, ξi​ˉ​>0​

方法推导

针对软间隔目标进行优化

  • 构建拉格朗日方程:
    L(w,b,ξ,ξˉ,α,αˉ,μ,μˉ)=12∣∣w∣∣2+C∑i=1n(ξi+ξiˉ)+∑i=1nαi(f(xi)−yi−ϵ−ξi)+∑i=1nαiˉ(yi−f(xi)−ϵ−ξiˉ)+∑i=1nμi(0−ξi)+∑i=1nμiˉ(0−ξiˉ)L(w,b,\xi,\bar{\xi},\alpha,\bar{\alpha},\mu,\bar\mu)=\\ \frac12||w||^2+C\sum_{i=1}^n(\xi_i+\bar{\xi_i})+\sum_{i=1}^n\alpha_i(f(x_i)-y_i-\epsilon-\xi_i)+\sum_{i=1}^n\bar{\alpha_i}(y_i-f(x_i)-\epsilon-\bar{\xi_i})+\sum_{i=1}^n\mu_i(0-\xi_i)+\sum_{i=1}^n\bar{\mu_i}(0-\bar{\xi_i}) L(w,b,ξ,ξˉ​,α,αˉ,μ,μˉ​)=21​∣∣w∣∣2+Ci=1∑n​(ξi​+ξi​ˉ​)+i=1∑n​αi​(f(xi​)−yi​−ϵ−ξi​)+i=1∑n​αi​ˉ​(yi​−f(xi​)−ϵ−ξi​ˉ​)+i=1∑n​μi​(0−ξi​)+i=1∑n​μi​ˉ​(0−ξi​ˉ​)

  • 求对www偏导,令为0,得:
    ∂L∂w=w+∑i=1nαixi−∑i=1nαiˉxi=0有:w=∑i=1n(αiˉ−αi)xi\frac{\partial{L}}{\partial{w}}=w+\sum_{i=1}^n\alpha_ix_i-\sum_{i=1}^n\bar{\alpha_i}x_i=0\\ 有:w=\sum_{i=1}^n(\bar{\alpha_i}-\alpha_i)x_i ∂w∂L​=w+i=1∑n​αi​xi​−i=1∑n​αi​ˉ​xi​=0有:w=i=1∑n​(αi​ˉ​−αi​)xi​
    同时又有其他偏导约束:
    ∂L∂b=∑i=1nαi−∑i=1nαiˉ=0\frac{\partial{L}}{\partial{b}}=\sum_{i=1}^n\alpha_i-\sum_{i=1}^n\bar{\alpha_i}=0\\ ∂b∂L​=i=1∑n​αi​−i=1∑n​αi​ˉ​=0

  • 同时,满足KKT条件:
    αi∗(f(xi∗)−yi∗−ϵ−ξi∗)=0αi∗ˉ(f(xi∗)−yi∗−ϵ−ξi∗ˉ)=0αi∗αi∗ˉ=0,ξi∗ξi∗ˉ=0(C−αi∗)ξi∗=0,(C−αi∗ˉ)ξi∗ˉ=0\alpha_i^*(f(x_i^*)-y_i^*-\epsilon-\xi_i^*)=0\\ \bar{\alpha_i^*}(f(x_i^*)-y_i^*-\epsilon-\bar{\xi_i^*})=0\\ \alpha_i^*\bar{\alpha_i^*}=0,\ \xi_i^*\bar{\xi_i^*}=0\\ (C-\alpha_i^*)\xi_i^*=0,\ (C-\bar{\alpha_i^*})\bar{\xi_i^*}=0 αi∗​(f(xi∗​)−yi∗​−ϵ−ξi∗​)=0αi∗​ˉ​(f(xi∗​)−yi∗​−ϵ−ξi∗​ˉ​)=0αi∗​αi∗​ˉ​=0, ξi∗​ξi∗​ˉ​=0(C−αi∗​)ξi∗​=0, (C−αi∗​ˉ​)ξi∗​ˉ​=0

  • 在α∗,α∗ˉ\alpha^*,\bar{\alpha^*}α∗,α∗ˉ确定情况下,有:
    w∗=∑i=1n(αiˉ−αi)xib∗=yi∗−w∗Txw^*=\sum_{i=1}^n(\bar{\alpha_i}-\alpha_i)x_i\\ b^*=y_i^*-{w^*}^Tx w∗=i=1∑n​(αi​ˉ​−αi​)xi​b∗=yi∗​−w∗Tx

  • SVR的解形如:
    f(x)=∑i=1n(αiˉ−αi)xiT⋅x+bf(x)=\sum_{i=1}^n(\bar{\alpha_i}-\alpha_i)x_i^T·x+b f(x)=i=1∑n​(αi​ˉ​−αi​)xiT​⋅x+b
    满足αiˉ−αi≠0\bar{\alpha_i}-\alpha_i\neq0αi​ˉ​−αi​​=0的样本(间隔带之外样本)是SVR的支持向量,即www可以视作支持向量线性组合

  • 为完成优化,通过SMO方法求解
    minα,αˉL\underset{\alpha,\bar{\alpha}}{min}\ L α,αˉmin​ L
    得到α∗,α∗ˉ\alpha^*,\bar{\alpha^*}α∗,α∗ˉ,计算w=∑i=1n(αiˉ−αi)xiw=\sum_{i=1}^n(\bar{\alpha_i}-\alpha_i)x_iw=∑i=1n​(αi​ˉ​−αi​)xi​

方法流程

  • 构造输入数据矩阵X=[x1,x2,...,xn]X=[x_1,x_2,...,x_n]X=[x1​,x2​,...,xn​],标签矩阵Y=[y1,y2,...,yn]TY=[y_1,y_2,...,y_n]^TY=[y1​,y2​,...,yn​]T
  • 构造拉格朗日方程L,并用SMO方法求解令LLL最小的α∗与α∗ˉ\alpha^*与\bar{\alpha^*}α∗与α∗ˉ
  • 计算w∗=∑i=1n(αiˉ−αi)xiw*=\sum_{i=1}^n(\bar{\alpha_i}-\alpha_i)x_iw∗=∑i=1n​(αi​ˉ​−αi​)xi​与b∗=yi∗−w∗Txb^*=y_i^*-{w^*}^Txb∗=yi∗​−w∗Tx
  • 得到SVR模型:f(x)=wTx+b∗f(x)=w^Tx+b^*f(x)=wTx+b∗

参考资料

【1】支持向量机SVM、支持向量回归SVR详细推导

机器学习基础---回归方法---支持向量回归(SVR)相关推荐

  1. 【机器学习系列】之支持向量回归SVR

    作者:張張張張 github地址:https://github.com/zhanghekai [转载请注明出处,谢谢!] [机器学习系列]之SVM硬间隔和软间隔 [机器学习系列]之SVM核函数和SMO ...

  2. 【机器学习基础】支持向量回归

    引言 这一小节介绍一下支持向量回归,我们在之前介绍的核逻辑回归使用表示定理(Representer Theorem),将逻辑回归编程Kernel的形式,这一节我们沿着这个思路出发,看看如何将回归问题和 ...

  3. 机器学习之支持向量回归(SVR)预测房价—基于python

    大家好,我是带我去滑雪! 本期使用爬取到的有关房价数据集data.csv,使用支持向量回归(SVR)方法预测房价.该数据集中"y1"为响应变量,为房屋总价,而x1-x9为特征变量, ...

  4. 机器学习西瓜书笔记:软间隔和支持向量回归SVR

    1.首先由SVM问题(最大间隔超平面模型):所有样本都可以正确分类的最优化问题,引入软间隔SVM(允许分类错误)的最优化问题,即需要添加损失函数(样本不满足约束的程度,或者说分类错误的程度),然后最优 ...

  5. 机器学习——支持向量回归(SVR)

    机器学习--支持向量回归(SVR) educoder平台练习题 如果博客中图片加载失败可点击链接跳转至实训详情 https://www.educoder.net/shixuns/b6yi97f2/ch ...

  6. 支持向量机(SVM)、支持向量回归(SVR)

    论文完成也有一段时间了,用到了支持向量机(Support Vector Machine或SVM)方面的知识,感觉泛化能力比较好,一开始的时候,用了一些神经网络的模型,泛化能力都不是很满意,立即转到支持 ...

  7. 【视频】支持向量机SVM、支持向量回归SVR和R语言网格搜索超参数优化实例

    最近我们被客户要求撰写关于SVM的研究报告,包括一些图形和统计输出. 什么是支持向量机 (SVM)? 我们将从简单的理解 SVM 开始. [视频]支持向量机SVM.支持向量回归SVR和R语言网格搜索超 ...

  8. 基于支持向量回归(SVR)和PROSAIL模拟光谱数据的叶面积指数反演

    前言 本博客利用PROSAIL模型模拟出MODIS的光谱数据和LAI,然后采用支持向量回归(SVR)方法建立NDVI与LAI 的回归模型,用于LAI的反演.训练和测试数据的拟合效果还是比较好的,这表明 ...

  9. 【机器学习】支持向量回归

    有任何的书写错误.排版错误.概念错误等,希望大家包含指正. 在阅读本篇之前建议先学习: [机器学习]支持向量机[上]硬间隔 [机器学习]支持向量机[下]软间隔与核函数 支持向量回归 支持向量回归(su ...

  10. ❤️解决非线性回归问题的机器学习方法总结:多项式线性模型、广义线性(GAM)模型、回归树模型、支持向量回归(SVR)模型

    文章目录 前言 多项式回归模型 概念解释: sklearn实现多项式回归模型: 广义线性可加(GAM)模型 概念解释: pygam实现广义线性可加模型: GAM模型的优点与不足: 回归树模型 概念解释 ...

最新文章

  1. map vs hash_map
  2. Selenium java环境搭建
  3. Java 8 开发的 4 大顶级技巧
  4. sql 统计每月入职离职人数_入职登记表算合同吗?这里面有大学问
  5. collections模块的Counter类
  6. 关于webpack编译scss文件
  7. 设计模式之——静态代理模式
  8. 【转载】使用Lucene.NET实现数据检索功能
  9. acer软件保护卡怎么解除_外观精致性能强,配置丰富重量轻、宏碁(Acer)墨舞EX214轻薄笔记本 深度评测...
  10. 快解析 : 管家婆A8远程访问解决方案
  11. vue 基于网易云API实现二维码的登录
  12. GSM模块通过服务器或GSM内部获取网络时间 网络授时
  13. 铲雪车(snow) UVA10203 Snow Clearing 题解
  14. 如何独立开发 APP 赚钱?
  15. 浏览器被恶意篡改怎么办?
  16. 无线蓝牙耳机那个品牌比较好?试试这五款比较实用的吧
  17. 三维可视化引擎让空间数据管理更高效
  18. 修改Listen 1源码的一点心得
  19. 如何玩转信用卡 银行不会告诉你的十个秘密
  20. 最易懂的RAID0、RAID1、RAID5、RAID10/01概念解析

热门文章

  1. TouchDesigner学习 全屏输出
  2. 无线通信模块的双卡单待
  3. SimNow仿真交易【官方环境介绍】 期货仿真环境地址 期货模拟交易
  4. 树莓派4B-Python-控制TB6612FNG
  5. php工作流根据不同流程保存,启用SuiteCRM工作流(workflow)-权威指南
  6. 计算机无法验证签名,你如何解决电脑无法验证数字签名的问题
  7. 凯恩帝绝对坐标清零_凯恩帝 K90T i 数控车床系统使用手册分享
  8. 凯恩帝k1000ti参数设置_凯恩帝公司K1000T系统用户手册.pdf
  9. 3dmax卸载工具_3Dmax软件无法安装?3Dmax软件正确卸载方法,重装无忧
  10. MISRA C-2012规则中文版