数学建模学习笔记(十三)神经网络——中:matlab程序实现
2023-09-14 09:01:37 时间
BP神经网络训练函数:
BP网络构建:
1、生成BP网络
net=newff(PR,[S1 S2...SNl]),{TF1 TF2...TFNl},BTF)
PR:由R维的输入样本最小最大值构成的R*2维矩阵
[S1 S2…SNl]各层的神经元个数
{TF1 TF2…TFNl}各层的神经元传递函数
BTF训练用函数的名称
2、网络训练
net=train(net,P,T)
3、网络仿真
Y2=sim(net,P2)
matlab程序示例:
clear;
clc;
X=-1:0.1:1;
D=[-0.9602 -0.5770 -0.0729 0.3771 0.6405 0.6600 0.4609...
0.1336 -0.2013 -0.4344 -0.5000 -0.3930 -0.1647 -.0988...
0.3072 0.3960 0.3449 0.1816 -0.312 -0.2189 -0.3201];
figure;
plot(X,D,'*'); %绘制原始数据分布图(附录:1-1)
net = newff(minmax(X),[5 1],{'tansig','tansig'});
net.trainParam.epochs = 100; %训练的最大次数
net.trainParam.goal = 0.005; %全局最小误差
net = train(net,X,D);
O = sim(net,X);
figure;
plot(X,D,X,O,'r'); %绘制训练后得到的结果和误差曲线
V = net.iw{1,1}%输入层到中间层权值
theta1 = net.b{1}%中间层各神经元阈值
W = net.lw{2,1}%中间层到输出层权值
theta2 = net.b{2}%输出层各神经元阈值
程序运行结果:
程序解读:
figure %用于创建程序窗口
net = newff(minmax(X),[5 1],{‘tansig’,‘tansig’});
生成BP网络
minmax返回数组中每一行的最小值和最大值
运行
X=-1:0.1:1;
minmax(X)
返回-1,1
[5 1]:两层神经元个数为5,1
tansig:即tansig函数,两层均用此函数训练
net = train(net,X,D):X自变量,D因变量
O = sim(net,X):预测(仿真)函数,O即X对应的因变量
训练窗口的注解:
epoch:其代表着迭代次数
time:训练的时间
validation checks:与performance和gradient同为停止条件之一。意思是若连续几次训练performance和gradient的效果不再提高则视为训练完成。但是通过performance和gradient停止意味着该神经网络达到了我们的预期,而通过validation checks停止则意味着该神经网络没有达到了我们的预期。
训练图注解:
Performance’按钮可以显示训练结果示意图
Training State’可以得到神经网络训练参数的变化过程示意图
Regression‘得到拟合结果,R越接近1拟合效果越好
相关文章
- Caffe+Matlab'hole
- 数学建模番外篇6:二维/三维热力图绘制(matlab)
- 数学建模学习笔记(六)多元回归分析算法(matlab)
- [转] Matlab与C++混合编程,添加OpenCV库
- [转载] MATLAB快捷键
- 微电网两阶段鲁棒优化经济调度方法[3]【升级优化版本】(Matlab代码实现)
- 【数学建模】单、多因素试验的方差分析(Matlab代码实现)
- 风电的Weibull分布及光电的Beta分布组合研究(Matlab代码实现)
- 【不确定性研究】基于信息间隙决策理论的综合能源系统优化调度研究【改进粒子群优化算法求解】(Matlab代码实现)
- 四旋翼飞行器建模与PID控制器设计(Matlab&Simulink)
- 数学建模学习(96): BP/RBF/RBF-BP神经网络案例实现(matlab)
- 数学建模学习(82):模拟退火算法(SA,matlab版本)
- 数学建模学习(79):Matlab神经网络工具箱使用,实现多输入多输出预测
- m基于5G毫米波场景Salen-Valenzula信道建模与matlab仿真
- m基于matlab的GPS卫星信号捕获和数据解析仿真
- m在simulink进行DS-CDMA建模,然后通过MATLAB调用simulink模型进行误码率仿真
- m基于3GPP-LTE通信网络的认知家庭网络Cognitive-femtocell性能matlab仿真
- m短波宽带通信系统的信道建模matlab仿真
- m基于改进PSO粒子群优化的RBF神经网络解耦控制算法matlab仿真
- MATLAB | 逻辑回归(Logistic Regression)+书推
- 【状态估计】电力系统状态估计的虚假数据注入攻击建模与对策(Matlab代码实现)
- 【语音分离】基于平均谐波结构建模的无监督单声道音乐声源分离(Matlab代码实现)
- 基于评估去混响算法的房间脉冲响应研究(Matlab代码实现)
- 【无线通信】鲸鱼优化算法及其在无线网络资源分配中的应用(Matlab代码实现)
- 基于matlab的分簇异构无线传感器网络选举协议
- 基于二维切片图序列的三维立体建模MATLAB仿真