MATLAB BP神经网络多输入单输出代码问题 5

问题内容是根据列车的入口速度,出口速度和间隔时间这三个输入量来估计区间距离,T是调整后的期望距离,运行程序出现以下错误Warning:NEWFFusedinanobsol... 问题内容是根据列车的入口速度,出口速度和间隔时间这三个输入量来估计区间距离,T是调整后的期望距离,运行程序出现以下错误
Warning: NEWFF used in an obsolete way.
> In obs_use at 18
In newff>create_network at 127
In newff at 102
In bplizi at 1031
See help for NEWFF to update calls to the new argument list.

Error using traingd (line 102)
Inputs and targets have different numbers of samples.

Error in network/train (line 106)
[net,tr] = feval(net.trainFcn,net,X,T,Xi,Ai,EW,net.trainParam);

Error in bplizi (line 1044)
[net_1,tr]=train(net_1,P,T);
求大神指导!!
以下是原代码:
clear all;
x1=[256*1矩阵];
x2=[256*1矩阵];
x3=256*1矩阵];
P=[x1,x2,x3];
T=[256*1矩阵];
net_1=newff([0,1;0,1;0,1],[6,1],{'tansig','purelin'},'traingdm');
inputWeights=net_1.IW{1,1};
inputbias=net_1.b{1};
% 当前网络层权值和阈值
layerWeights=net_1.LW{2,1};
layerbias=net_1.b{2};
% 设置训练参数
net_1.trainParam.epochs = 10000;
net_1.trainParam.goal = 1e-3;
net_1.trainParam.show=50;
net_1.trainParam.lr=0.05;
net_1.trainParam.mc=0.9;
% 调用 TRAINGDM 算法训练 BP 网络
[net_1,tr]=train(net_1,P,T);
% 对 BP 网络进行仿真
A = sim(net_1,P);
plot(P,T)
% 计算仿真误差
V=net_1.iw{1,1};%输入层到中间层权值
theta1=net_1.b{1};%中间层各神经元阈值
W=net_1.lw{2,1};%中间层到输出层权值
theta2=net_1.b{2};%输出层各神经元阈值
E = T - A;
MSE=mse(E);
figure(1)
plot(E,'- *')
title('BP网络训练误差','fontsize',10)
ylabel('误差','fontsize',10)
xlabel('样本','fontsize',10)
展开
 我来答
百度网友b0f3af6
2014-11-27
知道答主
回答量:9
采纳率:100%
帮助的人:2.8万
展开全部
我也遇到同样的问题,问题是输入向量和目标向量之间有问题,可以把目标向量改成行向量。必须保证输入行数目和目标列数目相等。
钺联昱M
2014-04-27 · TA获得超过706个赞
知道小有建树答主
回答量:1789
采纳率:33%
帮助的人:853万
展开全部
输入个数不一致的原因
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式