分类预测 | Matlab基于GWO-RBF灰狼算法优化径向基神经网络的分类预测
目录
分类效果
基本介绍
Matlab基于GWO-RBF灰狼算法优化径向基神经网络的分类预测。基于灰狼算法(GWO)优化径向基神经网络(GWO-RBF)的分类预测。
matlab代码,优化参数为扩散速度,采用交叉验证。多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matlab。程序可出分类效果图,迭代优化图,混淆矩阵图。
程序设计
- 完整程序和数据下载方式1(资源处直接下载):Matlab基于GWO-RBF灰狼算法优化径向基神经网络的分类预测
- 完整程序和数据下载方式2(订阅《智能学习》专栏,同时获取《智能学习》专栏收录程序3份,数据订阅后私信我获取):Matlab基于GWO-RBF灰狼算法优化径向基神经网络的分类预测
clike
%% 参数优化
[Best_score,Best_pos,curve]=GWO(pop,Max_iter,lb,ub,dim,fobj); %开始优化
%% 创建网络
rbf_spread = Best_pos; % 径向基函数的扩展速度
net = newrbe(p_train, t_train, rbf_spread);
%% 仿真测试
t_sim1 = sim(net, p_train);
t_sim2 = sim(net, p_test );
%% 数据反归一化
T_sim1 = vec2ind(t_sim1);
T_sim2 = vec2ind(t_sim2);
%% 性能评价
error1 = sum((T_sim1 == T_train)) / M * 100 ;
error2 = sum((T_sim2 == T_test )) / N * 100 ;
%% 网络结构
view(net)
%% 迭代
figure
plot(1 : length(curve), curve,'linewidth',1.5);
title('GWO-RBF', 'FontSize', 10);
xlabel('迭代次数', 'FontSize', 10);
ylabel('适应度值', 'FontSize', 10);
grid off
%% 绘图
figure
plot(1: M, T_train, 'r-*', 1: M, T_sim1, 'b-o', 'LineWidth', 1)
legend('真实值', 'GWO-RBF预测值')
xlabel('预测样本')
ylabel('预测结果')
string = {'训练集预测结果对比'; ['准确率=' num2str(error1) '%']};
title(string)
grid
figure
plot(1: N, T_test, 'r-*', 1: N, T_sim2, 'b-o', 'LineWidth', 1)
legend('真实值', 'GWO-RBF预测值')
xlabel('预测样本')
ylabel('预测结果')
string = {'测试集预测结果对比'; ['准确率=' num2str(error2) '%']};
title(string)
grid
%% 混淆矩阵
if flag_conusion == 1
figure
cm = confusionchart(T_train, T_sim1);
cm.Title = 'Confusion Matrix for Train Data';
cm.ColumnSummary = 'column-normalized';
cm.RowSummary = 'row-normalized';
figure
cm = confusionchart(T_test, T_sim2);
cm.Title = 'Confusion Matrix for Test Data';
cm.ColumnSummary = 'column-normalized';
cm.RowSummary = 'row-normalized';
end
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/128440985?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128368295?spm=1001.2014.3001.5502