生成代码jupyter notebook (6) 使用 sklearn 包建立两种支持向量机回归模型分别采用和,分别训练两种模型后用测 试集数据进行预测; (7) 分别计算两种模型预测结果的均方误差和平均绝对误差; (8) 绘制两种模型的预测结果与实际值对比曲线图,其中预测结果用蓝色直线表示,实际 结果用红色直线表示

时间: 2024-02-27 14:59:17 浏览: 24
以下是使用 sklearn 包建立两种支持向量机回归模型、预测并计算误差、绘制预测结果与实际值对比曲线图的代码示例: ```python # 导入必要的库 import matplotlib.pyplot as plt import numpy as np from sklearn.svm import SVR from sklearn.metrics import mean_squared_error, mean_absolute_error # 构造训练数据和测试数据 X_train = np.sort(5 * np.random.rand(100, 1), axis=0) y_train = np.sin(X_train).ravel() X_test = np.sort(5 * np.random.rand(20, 1), axis=0) y_test = np.sin(X_test).ravel() # 建立 epsilon-SVR 模型 svr_eps = SVR(kernel='rbf', C=100, epsilon=0.1) svr_eps.fit(X_train, y_train) # 建立 nu-SVR 模型 svr_nu = SVR(kernel='rbf', C=100, nu=0.5) svr_nu.fit(X_train, y_train) # 进行预测并计算误差 y_eps_pred = svr_eps.predict(X_test) y_nu_pred = svr_nu.predict(X_test) mse_eps = mean_squared_error(y_test, y_eps_pred) mse_nu = mean_squared_error(y_test, y_nu_pred) mae_eps = mean_absolute_error(y_test, y_eps_pred) mae_nu = mean_absolute_error(y_test, y_nu_pred) # 绘制预测结果与实际值对比曲线图 plt.scatter(X_test, y_test, c='r', label='true') plt.plot(X_test, y_eps_pred, c='b', label='epsilon-SVR') plt.plot(X_test, y_nu_pred, c='g', label='nu-SVR') plt.legend() plt.show() # 输出误差结果 print('epsilon-SVR 模型的均方误差为:', mse_eps) print('epsilon-SVR 模型的平均绝对误差为:', mae_eps) print('nu-SVR 模型的均方误差为:', mse_nu) print('nu-SVR 模型的平均绝对误差为:', mae_nu) ``` 这段代码中,我们首先使用 `numpy` 生成了一些随机的训练数据和测试数据,然后分别建立了 epsilon-SVR 和 nu-SVR 两种支持向量机回归模型,并对测试数据进行了预测。接着,使用 `sklearn.metrics` 中的 `mean_squared_error` 和 `mean_absolute_error` 函数计算了模型预测结果的均方误差和平均绝对误差。最后,使用 `matplotlib` 绘制了预测结果与实际值对比曲线图,并输出了误差结果。

相关推荐

最新推荐

recommend-type

Jupyter notebook运行Spark+Scala教程

主要介绍了Jupyter notebook运行Spark+Scala教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

解决jupyter notebook显示不全出现框框或者乱码问题

主要介绍了解决jupyter notebook显示不全出现框框或者乱码问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

jupyterNotebook快捷键.docx

一个高效使用计算机的人,不用鼠标,而用键盘!掌握这些快捷键,能令你写ipynb文件时图文并茂得心应手。 Jupyter notebook中的内容,由多个单元(cell)组成。单元分为三种: 1.code,即代码单元,单元的内容为...
recommend-type

解决Jupyter notebook中.py与.ipynb文件的import问题

主要介绍了解决Jupyter notebook中.py与.ipynb文件的import问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

JupyterNotebook设置Python环境的方法步骤

主要介绍了JupyterNotebook设置Python环境的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

帮我设计一个基于Android平台的便签APP的代码

很抱歉,我是一个语言模型AI,无法提供完整的Android APP代码。但是,我可以给您一些设计便签APP的建议和思路。 1. 界面设计 首先考虑APP的界面设计,便签APP通常需要一个主界面用于显示所有的便签,以及一个编辑界面用于编辑单个便签。主界面可以采用列表的形式,列出所有的便签,每个便签可以显示标题和摘要内容。在编辑界面中,用户可以输入标题和正文内容,并且可以设置提醒时间、标签、优先级等。 2. 数据存储 便签APP需要一个数据存储的方案,可以考虑使用SQLite数据库来存储便签数据。每个便签可以存储标题、正文内容、提醒时间、标签、优先级等信息。 3. 便签操作 便签APP
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。