分类预测 | Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测
目录
- 分类预测 | Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测
- 分类效果
- 基本描述
- 程序设计
- 参考资料
分类效果
基本描述
1.Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测(完整源码和数据) 优化支持向量机核函数参数c和g。
2.多特征输入单输出的二分类及多分类模型。运行环境matlab2018。
3.语言为matlab,含分类效果图,迭代优化图,混淆矩阵图。
4.直接替换数据即可使用,保证程序可正常运行。运行环境MATLAB2018及以上。
5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。
程序设计
- 完整程序和数据获取方式(资源处直接下载)Matlab实现FA-SVM萤火虫算法优化支持向量机的多变量输入数据分类预测。
%% 参数设置
% 定义优化参数的个数,在该场景中,优化参数的个数dim为2 。
% 定义优化参数的上下限,如c的范围是[0.01, 1], g的范围是[2^-5, 2^5],那么参数的下限lb=[0.01, 2^-5];参数的上限ub=[1, 2^5]。
%目标函数
fun = @getObjValue;
% 优化参数的个数 (c、g)
dim = 2;
% 优化参数的取值下限
lb = [10^-1, 1];
ub = [10^2, 2^8];
%% 参数设置
pop =6; %种群数量
maxgen=100;%最大迭代次数
v = 5; %交叉验证折数
%% 优化(这里主要调用函数)
[Best_score,Best_pos,Convergence_curve]=OOA(pop,maxgen,lb,ub,dim,fun);
c = Best_pos(1, 1);
g = Best_pos(1, 2);
toc
% 用优化得到c,g训练和测试
cmd = ['-s 0 -t 2 ', '-c ', num2str(c), ' -g ', num2str(g), ' -q','v',v];
model = libsvmtrain(T_train, P_train, cmd);
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/129036772?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128690229