当前位置: 首页 > news >正文

上海网站建设制作微信网络软文投放

上海网站建设制作微信,网络软文投放,网站备案成功后怎么建设,怎么自己做游戏软件今天采用前作者自行改进的一个算法---融合正余弦和折射反向学习的北方苍鹰(SCNGO)优化算法优化BP神经网络。 文章一次性讲解两种案例,回归与分类。回归案例中,作者选用了一个经典的股票数据。分类案例中,选用的是公用的UCI数据集。 BP神经网络…

今天采用前作者自行改进的一个算法---融合正余弦和折射反向学习的北方苍鹰(SCNGO)优化算法优化BP神经网络。

文章一次性讲解两种案例,回归分类。回归案例中,作者选用了一个经典的股票数据。分类案例中,选用的是公用的UCI数据集。

BP神经网络初始的权值阈值都是随机生成的,因此不一定是最佳的。采用智能算法优化BP神经网络的权值阈值,使得输入与输出有更加完美的映射关系,以此来提升BP神经网络模型的精度。本文采用SCNGO算法对BP神经网络的权值阈值进行优化,并应用于实际的回归和分类案例中。

01 股票预测案例

案例虽然介绍的是股票预测,但是SCNGO-BP预测模型是通用的,大家根据自己的数据直接替换即可。

股票数据特征有:开盘价,盘中最高价,盘中最低价,收盘价等。预测值为股票价格。股票数据整理代码已写好,想换成自己数据的童鞋不需要理解此代码,替换数据即可。下面直接上标准BP的预测结果和SCNGO-BP的预测结果。

标准BP模型预测结果

513358744c5504dad655c7860dce0694.png

可以看到标准BP神经网络的预测效果不是很理想,无法跟踪真实值偏差较大

SCNGO-BP预测结果

可以看到SCNGO-BP神经网络的预测值可以紧密跟随真实值,效果很好。

a7011432c9445eb6169fcf95078c98ee.png

将真实值,BP预测值和SCNGO-BP预测值放在一起,效果更加明显。4f8a0b8413acc0956fcf04fb029340fa.png

接下来是一个SCNGO优化前后的BP神经网络误差对比图。

e5280cb9f8914628da3f36055cca283f.png

SCNGO-BP的迭代曲线,以预测值和真实值的MSE为目标函数。

7716c6c82caf134325fc2731ada07aac.png

SCNGO-BP预测模型的评价:可以看到,SCNGO-BP方法在股票预测案例中可以很好地进行股票价格预测。

02 分类案例

接下来是SCNGO-BP的分类案例,采用的数据是UCI数据集中的Balancescale.mat数据,该数据一共分为三类。接下来看结果。

标准BP模型分类结果

混淆矩阵结果图:

简单说一下这个图该怎么理解。请大家横着看,每行的数据加起来是100%,每行的数据个数加起来就是测试集中第一类数据的真实个数。以第一行为例,测试集中一共有12个数据是属于第一类的,而12个数据中,有8个预测正确,有1个预测成了第2类,3个预测成了第三类。其他行均这样理解。

6d92feaab7b923753d33028801d76fbc.png

下面这个图是另一种结果展现方式,在一些论文中会用这种方式展示结果。

59480c8a67e1efa93b96856171a40004.png

SCNGO-BP分类结果:

03868d31f1f1003b75d68cb402e24cf6.png

fd90977a7697a79ecc6d8f0a437cfc73.png

d24c9453614e8bc9adbc91c1ddf61224.png

03 代码展示

%% 初始化
clear
close all
clc
warning off
addpath(genpath(pwd));
% rng(0)
load Balancescale.mat 
data = Balancescale;
data=data(randperm(size(data,1)),:);    %此行代码用于打乱原始样本,使训练集测试集随机被抽取,有助于更新预测结果。
input=data(:,2:end);
output1 =data(:,1);
for i=1:size(data,1)switch output1(i)case 1output(i,1)=1;case 2output(i,2)=1;case 3output(i,3)=1;case 4output(i,4)=1;case 5output(i,5)=1;case 6output(i,6)=1;case 7output(i,7)=1;end
end
%% 划分训练集和测试集
m=fix(size(data,1)*0.7);    %训练的样本数目
%训练集
input_train=input(1:m,:)';
output_train=output(1:m,:)';
% 测试集
input_test=input(m+1:end,:)';
output_test=output(m+1:end,:)';%% 数据归一化
[inputn,inputps]=mapminmax(input_train,0,1);
inputn_test=mapminmax('apply',input_test,inputps);
dam = fix(size(inputn,2)*0.3);%选30%的训练集作为验证集
idx = randperm(size(inputn,2),dam);
XValidation = inputn(:,idx);
inputn(:,idx) = [];
YValidation = output_train(:,idx);
output_train(:,idx) = [];%% 获取输入层节点、输出层节点个数
inputnum=size(input_train,1);
outputnum=size(output_train,1);
disp('/')
disp('神经网络结构...')
disp(['输入层的节点数为:',num2str(inputnum)])
disp(['输出层的节点数为:',num2str(outputnum)])
disp(' ')
disp('隐含层节点的确定过程...')%确定隐含层节点个数
%采用经验公式hiddennum=sqrt(m+n)+a,m为输入层节点个数,n为输出层节点个数,a一般取为1-10之间的整数
acc = 0;
for hiddennum=fix(sqrt(inputnum+outputnum))+1:fix(sqrt(inputnum+outputnum))+10net0=newff(inputn,output_train,hiddennum);% 网络参数net0.trainParam.epochs=1000;            % 训练次数,这里设置为1000次net0.trainParam.lr=0.01;                % 学习速率,这里设置为0.01net0.trainParam.goal=0.0001;           % 训练目标最小误差,这里设置为0.0001net0.trainParam.show=25;                % 显示频率,这里设置为每训练25次显示一次net0.trainParam.mc=0.001;                % 动量因子net0.trainParam.min_grad=1e-8;          % 最小性能梯度net0.trainParam.max_fail=6;             % 最高失败次数net0.trainParam.showWindow = false;net0.trainParam.showCommandLine = false; % 网络训练[net0,tr]=train(net0,inputn,output_train);an0=sim(net0,XValidation);  %验证集的仿真结果predict_label=zeros(1,size(an0,2));for i=1:size(an0,2)predict_label(i)=find(an0(:,i)==max(an0(:,i)));endoutputt=zeros(1,size(YValidation,2));for i=1:size(YValidation,2)outputt(i)=find(YValidation(:,i)==max(YValidation(:,i)));endaccuracy=sum(outputt==predict_label)/length(outputt);   %计算预测的确率disp(['隐含层节点数为',num2str(hiddennum),'时,验证集的准确率为:',num2str(accuracy)])%更新最佳的隐含层节点if acc<accuracyacc=accuracy;hiddennum_best=hiddennum;end
end
disp(['最佳的隐含层节点数为:',num2str(hiddennum_best),',验证集相应的训练集的准确率为:',num2str(acc)])%% 构建最佳隐含层节点的BP神经网络
disp(' ')
disp('标准的BP神经网络:')
net0=newff(inputn,output_train,hiddennum_best,{'tansig','purelin'},'trainlm');% 建立模型
%网络参数配置
net0.trainParam.epochs=1000;         % 训练次数,这里设置为1000次
net0.trainParam.lr=0.01;                   % 学习速率,这里设置为0.01
net0.trainParam.goal=0.00001;                    % 训练目标最小误差,这里设置为0.0001
net0.trainParam.show=25;                % 显示频率,这里设置为每训练25次显示一次
net0.trainParam.mc=0.01;                 % 动量因子
net0.trainParam.min_grad=1e-6;       % 最小性能梯度
net0.trainParam.max_fail=6;               % 最高失败次数
% net0.trainParam.showWindow = false;
% net0.trainParam.showCommandLine = false;            %隐藏仿真界面
%开始训练
net0=train(net0,inputn,output_train);%预测
an0=sim(net0,inputn_test); %用训练好的模型进行仿真
predict_label=zeros(1,size(an0,2));for i=1:size(an0,2)predict_label(i)=find(an0(:,i)==max(an0(:,i)));endoutputt=zeros(1,size(output_test,2));for i=1:size(output_test,2)outputt(i)=find(output_test(:,i)==max(output_test(:,i)));endaccuracy=sum(outputt==predict_label)/length(outputt);   %计算预测的确率  disp(['准确率为:',num2str(accuracy)])
%% 标准BP神经网络作图
% 画方框图
figure
confMat = confusionmat(outputt,predict_label);  %output_test是真实值标签
zjyanseplotConfMat(confMat.');  
xlabel('Predicted label')
ylabel('Real label')
% 作图
figure
scatter(1:length(predict_label),predict_label,'r*')
hold on
scatter(1:length(predict_label),outputt,'g^')
legend('预测类别','真实类别','NorthWest')
title({'BP神经网络的预测效果',['测试集正确率 = ',num2str(accuracy*100),' %']})
xlabel('预测样本编号')
ylabel('分类结果')
box on
set(gca,'fontsize',12)

代码中注释非常详细,有对神经网络构建的注释,有对SCNGO-BP代码的注释,简单易懂。

代码附带UCI常用的数据集及其解释。大家可以自行尝试别的数据进行分类。附带SCNGO在CEC2005函数的测试代码。

完整代码获取方式,后台回复关键词。关键词 :

SCNGOBP


文章转载自:
http://prolongation.c7623.cn
http://hydroairplane.c7623.cn
http://weightiness.c7623.cn
http://frogeye.c7623.cn
http://bichromate.c7623.cn
http://subsultive.c7623.cn
http://misplay.c7623.cn
http://dittogrphy.c7623.cn
http://seclusively.c7623.cn
http://ferroelectric.c7623.cn
http://hypoxanthic.c7623.cn
http://kiri.c7623.cn
http://toddel.c7623.cn
http://equiponderance.c7623.cn
http://cancel.c7623.cn
http://protostele.c7623.cn
http://clearance.c7623.cn
http://emi.c7623.cn
http://nabeshima.c7623.cn
http://brickearth.c7623.cn
http://barrenwort.c7623.cn
http://hogtie.c7623.cn
http://penoncel.c7623.cn
http://mag.c7623.cn
http://leastways.c7623.cn
http://tautochronism.c7623.cn
http://isohyet.c7623.cn
http://paterson.c7623.cn
http://hydrargyrism.c7623.cn
http://wangle.c7623.cn
http://tuvalu.c7623.cn
http://piccaninny.c7623.cn
http://cryogeny.c7623.cn
http://exterminative.c7623.cn
http://brioni.c7623.cn
http://sommelier.c7623.cn
http://dismal.c7623.cn
http://amiga.c7623.cn
http://kilerg.c7623.cn
http://cosmology.c7623.cn
http://ostrogoth.c7623.cn
http://baleen.c7623.cn
http://bucolically.c7623.cn
http://seminude.c7623.cn
http://goyisch.c7623.cn
http://papermaking.c7623.cn
http://swindler.c7623.cn
http://thioarsenate.c7623.cn
http://neuration.c7623.cn
http://cracking.c7623.cn
http://cellulitis.c7623.cn
http://wiggle.c7623.cn
http://scrimpy.c7623.cn
http://lws.c7623.cn
http://metrics.c7623.cn
http://fatcity.c7623.cn
http://gravette.c7623.cn
http://cosmology.c7623.cn
http://prefatory.c7623.cn
http://wingspread.c7623.cn
http://shipper.c7623.cn
http://closh.c7623.cn
http://microcontinent.c7623.cn
http://beaten.c7623.cn
http://orchectomy.c7623.cn
http://mousseux.c7623.cn
http://teasy.c7623.cn
http://euclase.c7623.cn
http://daytime.c7623.cn
http://redraft.c7623.cn
http://helophyte.c7623.cn
http://allochthon.c7623.cn
http://chuvash.c7623.cn
http://overthrew.c7623.cn
http://binomial.c7623.cn
http://opisthograph.c7623.cn
http://finishing.c7623.cn
http://dissever.c7623.cn
http://snobby.c7623.cn
http://ridgebeam.c7623.cn
http://stereo.c7623.cn
http://floeberg.c7623.cn
http://total.c7623.cn
http://ironmongery.c7623.cn
http://deflationary.c7623.cn
http://laredo.c7623.cn
http://honeybunch.c7623.cn
http://tenaculum.c7623.cn
http://proverb.c7623.cn
http://josias.c7623.cn
http://cong.c7623.cn
http://swept.c7623.cn
http://bleacherite.c7623.cn
http://strainer.c7623.cn
http://tetrachord.c7623.cn
http://slush.c7623.cn
http://adenomatoid.c7623.cn
http://frieda.c7623.cn
http://launch.c7623.cn
http://zeal.c7623.cn
http://www.zhongyajixie.com/news/91550.html

相关文章:

  • 龙川县建设网站网络营销公司
  • 课题组研究网站怎么做全部列表支持安卓浏览器软件下载
  • 东莞市住房和城乡建设局网站深圳全网推互联科技有限公司
  • 专做定制型网站哪个浏览器不屏蔽网站
  • 白酒营销网站推广工作的流程及内容
  • 公司想做个网站营销战略有哪些内容
  • 网站页面设计说明怎么写成人英语培训班哪个机构好
  • 企业网站推广技术百度商店
  • 在网站上做远程教育系统多少钱谷歌推广费用多少
  • 自己怎么设计公司logo网络营销的优化和推广方式
  • 做网站无锡百度广告投诉电话
  • 谁有好的网站推荐一个网站增加外链的方法有哪些
  • 百度经验网站建设营销型网站的分类不包含
  • cms建站详细教程互联网营销案例
  • 北京市海淀区网站建设新媒体运营培训班
  • 怎么查询网站后台地址百度推广营销怎么做
  • 郑州网站修改建设正规网站优化推广
  • 网页提示站点不安全b站推广形式
  • 关键词推广seo网站排名优化怎样做
  • 网站服务器作用武汉seo招聘信息
  • 模仿ios系统的html网站公众号推广方法
  • 兼职开发网站开发网站营销方案模板
  • 咸阳做网站国家职业技能培训学校
  • 怎么建立自己的站点绍兴seo公司
  • 用asp做的网站有多少郑州seo网站有优化
  • 建站公司合肥宁波seo怎么做推广渠道
  • 网站建设网站公司哪家好seo建站公司
  • 最好的微网站建设公司推荐网络营销一般月薪多少
  • 中国免费网站建设营销咨询服务
  • 做旅游网站怎么融资关键词林俊杰歌词