本文主要是介绍【智能算法应用】基于麻雀搜索算法-支持向量回归预测(SSA-SVR),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 1.算法原理
- 2.数学模型
- 3.结果展示
- 4.调试记录
- 5.参考文献
- 6.代码获取
1.算法原理
【智能算法】麻雀搜索算法(SSA)原理及实现
2.数学模型
支持向量机(SVM)是针对二分类问题,支持向量回归(SVR)基于SVM应用与回归问题。SVR回归与SVM分类的区别在于SVR的样本点只有一类,SVM是要使到超平面最近的样本点的“距离”最大,SVR则是要使到超平面最远的样本点的“距离”最小。
{ min 1 2 ∥ w ∥ 2 s . t . ∣ y i − ( w x i + b ) ∣ ≤ ε , ∀ i (1) \begin{cases}\min\frac{1}{2}\left\|\boldsymbol{w}\right\|^2\\[2ex]s.t.\left|y_i-(wx_i+b)\right|\leq\varepsilon,&\forall i\end{cases}\tag{1} ⎩ ⎨ ⎧min21∥w∥2s.t.∣yi−(wxi+b)∣≤ε,∀i(1)
c是一个正则化参数,它控制着模型的复杂度和训练数据的适应程度。c是惩罚系数,即对误差的宽容度。c越高容易过拟合,c越小容易欠拟合。
gamma控制着高斯核的宽度,影响样本点的聚合或分散程度。gamma隐含地决定了数据映射到新的特征空间后的分布。gamma越大,支持向量越少;gamma值越小,支持向量越多。
因此,将c和gamma作为优化参数,适应度函数设计为:
f i t n e s s = e r r o r t r a i n + e r r o r t e s t (2) fitness=error_{train}+error_{test}\tag{2} fitness=errortrain+errortest(2)
3.结果展示
4.调试记录
PS:训练过程中使用了svmtrain函数,此函数已被删除,因此记录安装LIBSVM——支持向量机库过程。
a.来到下载传送门
下载压缩包后解压,路径一定不能空格
b.导入库文件
c. mex编译
如果没有mex编译功能,来到这里下载:传送门
解压后,matlab命令行执行:
matlab转到libsvm文件下的matlab文件夹
matlab命令行窗口执行:
此刻,安装LIBSVM——支持向量机库 完成✌️
5.参考文献
[1] https://zhuanlan.zhihu.com/p/76609851
[2] 徐炜君.考虑主环境因素的GWO-SVR风电功率超短期预测[J].电子设计工程,2023,31(15):150-156.
6.代码获取
这篇关于【智能算法应用】基于麻雀搜索算法-支持向量回归预测(SSA-SVR)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!