Hi All I have a code , I am just checking how it works , my input matrice is : input = [0.0600000000000000 0.00100000000000000 45 0.0508000000000000 0.0127000000000000] and the target is a 6 by 6 matrixso using this code bellow , I get the mentioned error : Inputs and targets have different numbers of samples , Error in Neural (line 17) , [net,tr] = train(net,xn_tr,yn_tr); here is the full code : clc clear clear all load('input.txt') %load input load ('taget.txt') %normalizing data [xn_tr,xs_tr] = mapstd(input); [yn_tr,ys_tr] = mapstd(taget); %%network net=newff(xn_tr,yn_tr,[7 7],{'tansig'},'traingda');%7 hidden tanh layer gradian descent adaptive net.trainParam.epochs =70; net.trainParam.lr = 0.05; net.trainParam.lr_inc = 1.05; %training network net.trainFcn='traingda'; [net,tr] = train(net,xn_tr,yn_tr); %randomizing initial value f weight matrix net = init(net); net.trainParam.show = NaN; u_t=mapstd('apply',x,xs_tr); %simulating output y_hat=sim(net,u_t); %plotting performance plotperform(tr) mse=mse(y-y_hat)
Prashant Kumar answered .
2025-11-20
% >> help newpr
% load simpleclass_dataset
% net = newpr(simpleclassInputs,simpleclassTargets,20);
% net = train(net,simpleclassInputs,simpleclassTargets);
% simpleclassOutputs = net(simpleclassInputs);
close all, clear all, clc, plt = 0
[ x, t ] = simpleclass_dataset;
[ I N ] = size(x) % [ 2 1000 ]
[ O N ] = size(t) % [ 4 1000 ]
trueclass = vec2ind(t);
class1 = find(trueclass==1);
class2 = find(trueclass==2);
class3 = find(trueclass==3);
class4 = find(trueclass==4);
N1 = length(class1) % 243
N2 = length(class2) % 247
N3 = length(class3) % 233
N4 = length(class4) % 277
x1 = x(:,class1);
x2 = x(:,class2);
x3 = x(:,class3);
x4 = x(:,class4);
plt = plt + 1
hold on
plot(x1(1,:),x1(2,:),'ko')
plot(x2(1,:),x2(2,:),'bo')
plot(x3(1,:),x3(2,:),'ro')
plot(x4(1,:),x4(2,:),'go')
Hub = -1+ceil( (0.7*N*O-O)/(I+O+1)) % 399
Hmax = 40 % Hmax << Hub
dH = 4 % Design ~10 candidate nets
Hmin = 2 % I know 0 and 1 are too small
rng(0) % Allows duplicating the rsults
j=0
for h=Hmin:dH:Hmax
j = j+1
net = newpr(x,t,h);
[ net tr y ] = train( net, x, t );
assignedclass = vec2ind(y);
err = assignedclass~=trueclass;
Nerr = sum(err);
PctErr(j,1) = 100*Nerr/N;
end
h = (Hmin:dH:Hmax)';
PctErr = PctErr;
results = [ h PctErr ]