您现在的位置:首页 >> 机器学习 >> 内容

m基于ESN+BP神经网络的数据预测算法matlab仿真,测试数据为太阳黑子变化数据

时间:2022/12/26 18:00:27 点击:

  核心提示:05_022_m,包括程序操作录像+说明文档...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/Y52alZZw

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览




3.算法概述

        在人工神经网络的发展历史上,感知机(Multilayer Perceptron,MLP)网络曾对人工神经网络的发展发挥了极大的作用,也被认为是一种真正能够使用的人工神经网络模型,它的出现曾掀起了人们研究人工神经元网络的热潮。单层感知网络(M-P模型)做为最初的神经网络,具有模型清晰、结构简单、计算量小等优点。但是,随着研究工作的深入,人们发现它还存在不足,例如无法处理非线性问题,即使计算单元的作用函数不用阀函数而用其他较复杂的非线性函数,仍然只能解决线性可分问题.不能实现某些基本功能,从而限制了它的应用。增强网络的分类和识别能力、解决非线性问题的唯一途径是采用多层前馈网络,即在输入层和输出层之间加上隐含层。构成多层前馈感知器网络。

       BP神经网络具有任意复杂的模式分类能力和优良的多维函数映射能力,解决了简单感知器不能解决的异或(Exclusive OR,XOR)和一些其他问题。从结构上讲,BP网络具有输入层、隐藏层和输出层;从本质上讲,BP算法就是以网络误差平方为目标函数、采用梯度下降法来计算目标函数的最小值。

4.部分源码

load data.mat

%数据分割

train_fraction                           = 0.5;

[trainInputSequence, testInputSequence]  = split_train_test(inputSequence,train_fraction);

[trainOutputSequence,testOutputSequence] = split_train_test(outputSequence,train_fraction);

%generate an esn 

global nInputUnits;

global nInternalUnits;

global nOutputUnits;

nInputUnits          = 2; 

nInternalUnits       = 8; 

nOutputUnits         = 1; 

esn                  = generate_esn(nInputUnits,nInternalUnits,nOutputUnits,'spectralRadius',0.5,'inputScaling',[0.1;0.1],'inputShift',[0;0],'teacherScaling',[0.3],'teacherShift',[-0.2],'feedbackScaling',0,'type','plain_esn'); 

esn.internalWeights  = esn.spectralRadius * esn.internalWeights_UnitSR;

%train the ESN

%discard the first 100 points

nForgetPoints        = 100; 

%这里,就固定设置一种默认的学习方式,其他的就注释掉了

[trainedEsn,stateMatrix] = train_esn(trainInputSequence,trainOutputSequence,esn,nForgetPoints) ; 

%test the ESN

nForgetPoints        = 100 ; 

predictedTrainOutput = test_esn(trainInputSequence, trainedEsn, nForgetPoints);

predictedTestOutput  = test_esn(testInputSequence,  trainedEsn, nForgetPoints) ; 

figure;

plot(testOutputSequence(nForgetPoints+1:end),'b');

hold on

plot(predictedTestOutput,'r');

legend('原数据','预测数据');

title('ESN-BP:测试数据的预测');

05_022_m

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168