📄 例2-3.m
字号:
%
% 表2-4为某药品的销售情况,现构建一个如下的三层BP神经网络对药品的销售进行预测:输入层有三个结点,隐含层结点数为5,隐含层的激活函数为tansig(双曲正切S型传递函数);输出层结点数为1个,输出层的激活函数为logsig(S型的对数函数),并利用此网络对药品的销售量进行预测,预测方法采用滚动预测方式,即用前三个月的销售量来预测第四个月的销售量,如用1、2、3月的销售量为输入预测第4个月的销售量,用2、3、4月的销售量为输入预测第5个月的销售量.如此反复直至满足预测精度要求为止。
% 月份 1 2 3 4 5 6
% 销量 2056 2395 2600 2298 1634 1600
% 月份 7 8 9 10 11 12
% 销量 1873 1478 1900 1500 2046 1556
%
%以每三个月的销售量经归一化处理后作为输入
P=[0.5152 0.8173 1.0000 ;
0.8173 1.0000 0.7308;
1.0000 0.7308 0.1390;
0.7308 0.1390 0.1087;
0.1390 0.1087 0.3520;
0.1087 0.3520 0.0000;]';
%以第四个月的销售量归一化处理后作为目标向量
T=[0.7308 0.1390 0.1087 0.3520 0.0000 0.3761];
%创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有5个神经元,输出层
%有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为logsig,训练函数为梯度下
%降函数,即2.3.2节中所描述的标准学习算法
net=newff([0 1;0 1;0 1],[5,1],{'tansig','logsig'},'traingd');
net.trainParam.epochs=15000;
net.trainParam.goal=0.01;
%设置学习速率为0.1
LP.lr=0.1;
net=train(net,P,T);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -