我已经建立了一个时滞神经网络(两个延迟,2层,隐藏层的大小2),改变了所有inputweights layerweights为零(无偏差使用)。我希望所有零输出,但是为什么给我非零值的代码。有没有人可以给建议怎么了?一个简单的代码显示如下:
清晰;
numtaps = 2;
hiddenLayerSize = 2;
dyn_net = timedelaynet (1: numtaps, hiddenLayerSize);
dyn_net。trainFcn =“trainlm”;
dyn_net.layers {1}。transferFcn =“tansig”;
dyn_net。initFcn =“initlay”;
dyn_net。performFcn =“mse”;
dyn_net。biasConnect = (0, 0);
dyn_net.trainParam。时代= 1;
输入= 0:0.1:1;
目标= 0:0.1:1;
inputs_1c = num2cell(输入,1);
targets_1c = num2cell(目标1);
[p,π,人工智能,t] = preparets (dyn_net, inputs_1c targets_1c);
[dyn_net, dyn_tr] =火车(dyn_net p t,π,Ai);
dyn_net。IW {1} = (0 0; 0 0);
dyn_net。LW {2, 1} = [0 0];
输出= dyn_net (p,π);
outputs1 = cell2mat(输出);%我应该期待零,但输出都是0.6。
dyn_net.LW {2, 1} * tansig (dyn_net.IW{1 1} *(输入(者)。”)%这个计算给我零