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

支持向量回归(多核函数)「建议收藏」支持向量机之支持向量回归,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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C# ExecuteReader「建议收藏」

    C# ExecuteReader「建议收藏」classProgram{staticvoidMain(string[]args){//连接数据库using(MySqlConnectionconn=newMySqlConnection("Server=localhost;Database=study;uid=root;pw…

    2022年6月20日
    52
  • Windows8 IIS的安装

    Windows8 IIS的安装Windows8 IIS的安装

    2022年4月24日
    50
  • HashMap扩容全过程

    HashMap扩容全过程 1.如果HashMap的大小超过了负载因子(loadfactor)定义的容量,怎么办?默认的负载因子大小为0.75,也就是说,当一个map填满了75%的bucket时候,和其它集合类(如ArrayList等)一样,将会创建原来HashMap大小的两倍的bucket数组,来重新调整map的大小,并将原来的对象放入新的bucket数组中。这个过程叫作rehashing,因为它调用hash方…

    2022年9月2日
    7
  • linux 重命名 文件夹_如何给文件批量重命名

    linux 重命名 文件夹_如何给文件批量重命名目录1.使用mv命令2.使用rename命令1.使用mv命令mv命令可以重命名或者移动文件或文件夹。mvAB#将目录A重命名为Bmv/a/b/c#将/a目录移动到/b下,并重命名为cmvabc123#将一个名为abc的文件重命名为123,如果当前目录下也有个123的文件的话,这个文件是会将它覆盖的。2.使用rename命令1.版本一:renameold_namenew_name<fil…

    2025年10月21日
    3
  • 批处理net命令集合

    批处理net命令集合批处理net命令集合netuse\\ip\ipc$””/user:””建立IPC空链接netuse\\ip\ipc$”密码”/user:”用户名”建立IPC非空链接 netuseh:\\ip\c$登陆后映射对方C:到本地为H: netuse\\ip\ipc$/del删除IPC链接 

    2022年5月28日
    43
  • idea设置黑色经典样式Darcula[通俗易懂]

    idea设置黑色经典样式Darcula[通俗易懂]1、File=>Settings2、Appearance=>Darcula

    2022年6月27日
    101

发表回复

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

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