分类预测 | Matlab实现KPCA-IDBO-LSSVM基于核主成分分析-改进蜣螂算法优化最小二乘支持向量机的分类预测
分类效果
基本描述
1.多特征输入,附赠DBO-LSSVM、原始LSSVM两个模型的对比。经过降维后利用改进蜣螂算法优化LSSVM参数为:sig,gamma。
2.蜣螂算法改进点如下,融合了改进的正弦算法,自适应高斯-柯西混合变异扰动和Bernoulli混沌映射,三个改进点。
3.直接替换Excel数据即可用,注释清晰,适合新手小白。
4.附赠示例数据,直接运行main一键出图。
程序设计
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 数据转置
P_train = P_train'; P_test = P_test';
T_train = T_train'; T_test = T_test';
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 得到训练集和测试样本个数
M = size(P_train, 2);
N = size(P_test , 2);
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 数据归一化
[p_train, ps_input] = mapminmax(P_train, 0, 1);
p_test = mapminmax('apply', P_test, ps_input);
t_train = ind2vec(T_train);
t_test = ind2vec(T_test );
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 转置以适应模型
p_train = p_train'; p_test = p_test';
t_train = t_train'; t_test = t_test';
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
dbn.sizes = [70 32 56]; % 隐藏层节点
opts.numepochs = 100; % 训练次数
opts.batchsize = M; % 每次训练样本个数 需满足:(M / batchsize = 整数)
opts.momentum = 0; % 学习率的动量
opts.alpha = 0.01; % 学习率
dbn = dbnsetup(dbn, p_train, opts); % 建立模型
dbn = dbntrain(dbn, p_train, opts); % 训练模型
————————————————
版权声明:本文为CSDN博主「机器学习之心」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kjm13182345320/article/details/131174983
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/129036772?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128690229
原文地址:https://blog.csdn.net/kjm13182345320/article/details/134566058
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_4665.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。