一. SVR原理简述

在前面的文章中详细讨论过关于线性回归的公式推导,线性回归传送站。线性回归的基本模型为:

,从某方面说这和超平面的的表达式:

有很大的相似性。但SVR认为只要

不要偏离太大即算预测正确,

为拟合精度控制参数。如图所示:SVR 示意图

从图例中分析,支持向量机回归与线性回归相比,支持向量回归表示只要在虚线内部的值都可认为是预测正确,只要计算虚线外部的值的损失即可。考虑到SVM中线性不可分的情形,在引入松弛变量

最终得出支持向量机回归的最优化问题:

s.t

;

;

;

引入拉格朗日乘数,经过一系列求解与对偶,求的线性拟合函数为:

;

为拉格朗日朗日乘子。

引入核函数,则得:

二. python函数介绍

这里面涉及到的核函数等其它知识可参考:svm通俗讲解。

sklearn.svm.SVR(

kernel ='rbf',

degree = 3,

gamma ='auto_deprecated',

coef0 = 0.0,

tol = 0.001,

C = 1.0,

epsilon = 0.1,

shrinking = True,

cache_size = 200,

verbose = False,

max_iter = -1

)

'''kernel:指定要在算法中使用的内核类型。它必须是'linear','poly','rbf', 'sigmoid','precomputed'或者callable之一。degree: int,可选(默认= 3)多项式核函数的次数('poly')。被所有其他内核忽略。gamma : float,(默认='auto'),'rbf','poly'和'sigmoid'的核系数。当前默认值为'auto',它使用1 / n_features。coef0 : float,(默认值= 0.0)核函数中的独立项。它只在'poly'和'sigmoid'中很重要。tol : float,(默认值= 1e-3)容忍停止标准。C : float,可选(默认= 1.0)错误术语的惩罚参数C.epsilon : float,optional(默认值= 0.1)epsilon在epsilon-SVR模型中。它指定了epsilon-tube,其中训练损失函数中没有惩罚与在实际值的距离epsilon内预测的点。shrinking : 布尔值,可选(默认= True)是否使用收缩启发式。cache_size : float,可选,指定内核缓存的大小(以MB为单位)。verbose : bool,默认值:False 启用详细输出。请注意,此设置利用libsvm中的每进程运行时设置,如果启用,则可能无法在多线程上下文中正常运行。max_iter : int,optional(默认值= -1) 求解器内迭代的硬限制,或无限制的-1'''

三. 示例代码https://github.com/zx3305/tennis/blob/master/svm/svr_test.py​github.com

import matplotlib.pyplot as plt

import numpy as np

import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.svm import SVR

from sklearn.metrics import r2_score

np.random.seed(0)

x = np.random.randn(80, 2)

y = x[:, 0] + 2*x[:, 1] + np.random.randn(80)

clf = SVR(kernel='linear', C=1.25)

x_tran,x_test,y_train,y_test = train_test_split(x, y, test_size=0.25)

clf.fit(x_tran, y_train)

y_hat = clf.predict(x_test)

print("得分:", r2_score(y_test, y_hat))

r = len(x_test) + 1

print(y_test)

plt.plot(np.arange(1,r), y_hat, 'go-', label="predict")

plt.plot(np.arange(1,r), y_test, 'co-', label="real")

plt.legend()

plt.show()结果示意图

python svr回归_SVR入门介绍(Python代码)相关推荐

  1. svr公式推导_SVR入门介绍(Python代码)

    一. SVR原理简述 在前面的文章中详细讨论过关于线性回归的公式推导,线性回归传送站.线性回归的基本模型为: ,从某方面说这和超平面的的表达式: 有很大的相似性.但SVR认为只要 与 不要偏离太大即算 ...

  2. python svr回归_SVR回归分析简明教程

    关于使用SVM进行回归分析的介绍很少,在这里,我们讨论一下SVR的理论知识,并对该方法有一个简明的理解. SVR简单介绍 SVR全称是support vector regression,是SVM(支持 ...

  3. 视频教程-Python全栈开发入门课-Python

    Python全栈开发入门课 前百度资深大数据工程师,现在爱奇艺推荐算法架构师,对python使用7年,具备大数据.机器学习.深度学习.推荐算法等多领域的技术能力 裴帅帅 ¥29.00 立即订阅 扫码下 ...

  4. 《看漫画学python》第1章介绍python的历史和特点

    30年前,第一个Python编译器问世,标志着Python的第一个版本正式诞生. 30年后,Python成为了名副其实的最受欢迎程序设计语言之一,甚至在中小学里也掀起了Python狂潮. 经过30年的 ...

  5. python svr回归_机器学习入门之机器学习之路:python支持向量机回归SVR 预测波士顿地区房价...

    本文主要向大家介绍了机器学习入门之机器学习之路:python支持向量机回归SVR  预测波士顿地区房价,通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助. 支持向量机的两种核函数模型进行预 ...

  6. python svr回归_使用sklearn库中的SVR做回归分析

    sklearn中的回归有多种方法,广义线性回归集中在linear_model库下,例如普通线性回归.Lasso.岭回归等:另外还有其他非线性回归方法,例如核svm.集成方法.贝叶斯回归.K近邻回归.决 ...

  7. 【用SQLite做数据分析】Python操作SQLite的入门介绍

    本篇推文共计2000个字,阅读时间约3分钟. Python 进行数据分析和数据挖掘是当前炙手可热的技术领域,如何高效地管理大量数据是其中非常关键的环节.数据库是最佳的解决方案之一,目前流行的数据库有 ...

  8. python魔力手册-小白入门宝典:Python快速入门魔力手册 PDF 超清版

    给大家带来的一篇关于Python编程相关的电子书资源,介绍了关于小白入门.python入门.Python手册方面的内容,本书是由魔力手册出版,格式为PDF,资源大小11.8 MB,魔力手册编写,目前豆 ...

  9. 零基础学python书籍-5本好书------Python零基础到入门必读Python书籍!

    新手学习Python光看网上教程是不够,书籍也是必备之一,没有书籍就没有可以参考的东西,假如不会代码,参考书籍会提供给你,因此我们也需要一些Python书籍,那我们看哪一些书籍好呢?今天小编为大家推荐 ...

最新文章

  1. spring cloud集成 consul源码分析
  2. c++Error:c++调用python文件提示由于找不到python3.8.dll,无法继续运行。。。
  3. IIS Form 认证 保护HTML页面
  4. python的userlist_Python Collections.UserList用法及代码示例
  5. python使用的编辑器_我用过的最好的python编辑器PyScripter
  6. MacOS如何修复磁盘权限
  7. 一个自动动态播放图片的类(downmoon)新增图片效果
  8. 简单工具之 ---- IP地址快速修改脚本
  9. 海康威视云台相机4200客户端调试记录
  10. Super超级ERP系统---(7)货位管理
  11. 风尚云网笔记-vue中echarts引入
  12. dvi线支持多少分辨率_为什么用DVI接口分辨率不能达到1080
  13. 【码上实战】【立体匹配系列】经典AD-Census: (5)扫描线优化
  14. Pygame实现小球躲避
  15. Windows系统的电脑有可以删除的文件夹(个人笔记)
  16. 如何将夜晚图片转化为白天图片 matlab,Python|记一次图片夜景效果尝试
  17. 【学习OpenCV4】图像金字塔总结
  18. Java实现bt文件下载、制作、解析、磁力链接
  19. 【OpenCV】Qt + OpenCV 开发配置 + 入门知识(代码示例)
  20. java课程设计 计算器_java课程设计-保存计算过程的计算器

热门文章

  1. Vue3电影中后台开发纪实(三):数据展示
  2. 制作雪花图案--scratch编程二级
  3. 带你读懂Spring的事务传播行为
  4. Kommander同步调试方法
  5. 计算机数据结构代码题----Day02
  6. 生辰八字--命重 (参考)
  7. 超苹果三星华为,一加手机成印度高端市场冠军,凭什么?
  8. Windwos10系统提示”无法完成更新、正在撤销更改、请不要关闭你的计算机“解决办法
  9. linux 复制文件夹命令
  10. Pixel XL刷机ROOT教程