欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > 记录一个SVR学习

记录一个SVR学习

2025/2/5 11:51:01 来源:https://blog.csdn.net/Zm6Cc/article/details/144677246  浏览:    关键词:记录一个SVR学习

1、为什么使用jupter来做数据预测?而不是传统pycharm编辑器

1、Jupyter Notebook 通过anaconda统一管理环境,可以运行python、R、Sql等数据分析常用语言。

2、做到交互式运行,可以逐步运行代码块,实时查看结果,便于调试和优化。

3、可以在 Notebook 中添加 Markdown 文本,记录分析过程和结论。

2、数据预测的思路分析

2.1、数据读取和数据预处理

首先对原始数据进行数据预处理是做一个数据预测的核心第一步。
在这里插入图片描述
在第一步我们做了数据的原始读取,并且将部分类名做了规范统一命名的处理。其次还删除掉了一些无效列。
在这里插入图片描述

第二步分析原始数据是否存在基本的数据问题,例如数据残缺、数据异常。
在这里插入图片描述
在这里插入图片描述

2.2 选取模型,按照要求选择SVR模型

支持向量回归(SVR, Support Vector Regression)是一种基于支持向量机(SVM, Support Vector Machine)的回归模型。SVR 通过找到一个平滑的回归函数,能够在一定的误差范围内对数据进行拟合,同时保持模型的简单性,避免过拟合。

选择原因如下:

1、适用于小样本高维数据集

2、通过 ε 和 C 平衡模型的复杂度和预测精度,避免过拟合或欠拟合

但是该模型需要对噪声数据敏感,可能需要在数据预处理中注意清洗和降噪(在上一步已经做了基本预处理)

接下来最重要就是对SVR 的关键参数进行调参

选择径向基函数(RBF)作为核函数,用于映射非线性关系。(根据提供的数据本身就是分线性关系)

惩罚系数C,控制模型对训练误差的容忍程度。

核系数gamma,决定 RBF 核的“影响范围”。

epsilon容忍误差范围,表示模型预测值与实际值允许的偏差。

通过调整 Cgammaepsilon,构建了一个具有良好拟合能力的支持向量回归模型,用于处理非线性数据。

svr = SVR(kernel="rbf", C=10, gamma=0.063, epsilon=0.1)

并且将原始数据的分为80%做训练,20%做测试集。这里random_state=42是固定随机种子,保证每次运行代码时拆分结果一致。
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com