Azzera filtri
Azzera filtri

Why the neural network creates the same output values for the different inputs?

2 visualizzazioni (ultimi 30 giorni)
I created a neural network model as you can see the model code. Firstly I normalized the data between 0 and 1, then I divided the input and target data for test and validation. I see that the all validation output values (y) is the same. I checked the normalized validation input data, it doesn't contain an error.
(Xtn: Normalized input test values, Xvn: Normalized input validation values, Ytn: Normalized target test values, Y:Normalized validation output values, Ye: Denormalized validation output values)
Can you help me?
Data=xlsread('Data31.10.xlsx'); Input=Data(:,4:12); Target=Data(:,end);
I=Input';
T=Target';
A=minmax(I); Min=A(:,1); Max=A(:,2); Fark=Max-Min; In=(I-Min)./Fark;
Tmin=min(T); Tmax=max(T);
nofdata=size(In,2);
ntd=round(nofdata*trainingrate);
Xtn=In(:,1:ntd);
Xvn=In(:, ntd+1:end);
Yt=T(1:ntd);
Yv=T(ntd+1:end);
Ytn=(Yt-Tmin)./(Tmax-Tmin);
net=newff(Xtn, Ytn, [n1,n2], {'logsig', 'logsig', 'logsig'}, 'trainlm');
net=train(net,Xtn,Ytn);
y=sim(net,Xvn);
ye=y*(Tmax-Tmin)+Tmin;
  3 Commenti
Perihan Bilgeç
Perihan Bilgeç il 6 Nov 2018
I couldn't get an answer. Can somebody help me what the problem is about it. Thanks a lot.

Accedi per commentare.

Risposte (1)

Greg Heath
Greg Heath il 7 Nov 2018
Where is your training data?
Typically, the data division is
train/val/test = 70%/15%/15%
Hope this helps,
Greg
  1 Commento
Perihan Bilgeç
Perihan Bilgeç il 7 Nov 2018
I defined a trainingrate and I divided the data with using this rate. Xtn is the testing data, Xvn is the validation data.

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by