支持向量回归(多核函数)「建议收藏」

支持向量回归(多核函数)「建议收藏」支持向量机之支持向量回归,SVR

大家好,又见面了,我是你们的朋友全栈君。

1.导入模块

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

import matplotlib.pyplot as plt
%matplotlib inline

import sklearn.datasets as datasets

#支持向量回归
from sklearn.svm import SVR

2.生成训练数据

x = np.linspace(-np.pi,np.pi,60)
y = np.sin(x)
#数据加噪
y[::3]+=0.5-np.random.random(20)

X_train = x.reshape(-1,1)
Y_train = y

3.创建支持向量回归模型

svr_linear = SVR(kernel='linear')
svr_rbf = SVR(kernel='rbf')
svr_poly = SVR(kernel='poly')

4.训练数据

svr_linear.fit(X_train,Y_train)
svr_rbf.fit(X_train,Y_train)
svr_poly.fit(X_train,Y_train)

5.与测试数据

#获取预测数据自变量范围
xmin,xmax = X_train.min(),X_train.max()
x_test = np.arange(xmin,xmax,0.01).reshape(-1,1)

#获取预测数据
linear_y_pre = svr_linear.predict(x_test)
rbf_y_pre = svr_rbf.predict(x_test)
poly_y_pre = svr_poly.predict(x_test)

6.绘图

results = [linear_y_pre,rbf_y_pre,poly_y_pre]
titles = ['Linear','rbf','poly']

plt.figure(figsize=(12,12))

for i,result in enumerate(results):
    plt.subplot(3,1,i+1)
    plt.scatter(X_train,Y_train)
    plt.plot(x_test,result,color='orange')
    plt.title(titles[i])

这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135725.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 中getmapping,在Java spring尝试使用@getmapping到API时返回空JSON[通俗易懂]

    我有一个带有记录器的@bean,该记录器返回它从JIRAAPI获得的JSON数据。我当前正在记录启动程序时的响应。现在我想开始在我的控制器中使用@getmapping,并想在localhost:8080/上执行GET请求时记录信息。这是Controller类中的@bean,我想将其更改为@getmapping@BeanpublicCommandLineRunnerrun(RestTempla…

    2022年4月12日
    227
  • Silverlight群建立了,欢迎加入SilverlightQQ群!

    Silverlight群建立了,欢迎加入SilverlightQQ群!Silverlight群建立了,欢迎加入SilverlightQQ群,一切关于WPF(Windows Presentation Foundation)&Silverlight(RIA程序开发),欢迎大家上传Silverlight共享文档 加群者:”Silverlight爱好者或WPF爱好者”即可,拒绝潜水份子…群号:50992947论坛上的http://topic.csdn.n

    2022年7月17日
    13
  • 遍历ArrayList并移除一个元素[通俗易懂]

    遍历ArrayList并移除一个元素[通俗易懂]前言这是一个比较经典的面试题,相信也会有不少人遇到,今天就在此记录一下,写了两种方式供大家参考。方式一在for循环中删除元素,倒序遍历ArrayList能够有效防止漏删,这里大家可能会有疑问了?假设按照从0到size-1下标来删那么如果有相邻的两个元素是一样的,删除了第一个,此时数组长度会-1并且所有元素往前移动一位,那么第二个就移动到第一个元素的位置了,此时控值for循环的下标i已经+1了等于直接就跳过了第二个重复元素,倒叙就不会出现此类情况了。List<String>strs=

    2022年7月22日
    8
  • linux安装pycharm专业版_linux下pycharm使用

    linux安装pycharm专业版_linux下pycharm使用文件准备流程下载pycharm的linux版本的软件包,下载地址:http://www.jetbrains.com/pycharm/download/#section=linux解压$tar-xfpycharm-professional-2017.1.4.tar.gz进入解压后的文件夹下的bin目录,执行sudoshpycharm.sh在安装过程中选择激活码激活注

    2022年8月29日
    4
  • linux连接Redis客户端

    linux连接Redis客户端linux命令下载redis-stable#官网下载,这里使用wget直接下载的[linux]$wgethttp://download.redis.io/redis-stable.tar.gz#解压[linux]$tar-xzvfredis-stable.tar.gz#进入解压目录[linux]$cdredis-stable#编译[linux]$make#拷贝入bin目录[linux]$cpsrc/redis-cli/usr/local/bin/验证redi

    2022年5月5日
    56
  • IP地址和子网划分例题详解

    IP地址和子网划分例题详解1、为什么要划分子网?IPv4地址如果只使用有类(A、B、C类)来划分,会造成大量的浪费或者不够用,为了解决这个问题,可以在有类网络的基础上,通过对IP地址的主机号进行再划分,把一部分划入网络号,就能划分各种类型大小的网络了。2、IPv4子网划分与聚合为了解决IPv4的不足,提高网络划分的灵活性,诞生了两种非常重要的技术,那就是VLSM(可变长子网掩码)和CIDR(无类别域间路由),把传统标准的IPv4有类网络演变成一个更为高效,更为实用的无类网络。关于VLSM和CIDR的介绍参考上篇子网掩码详解有

    2022年6月27日
    95

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号