Unable to predict data well enough
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Gulrukh Turabee
am 11 Nov. 2019
Bearbeitet: John D'Errico
am 11 Nov. 2019
Hi,
I have a dataset of 19 non linear regression data points. I am training the first 10 and trying to predict the next 9 values using different Neural Network. However, after trying out mulitple Neural Networks such as Radial Basis Function, Baysian Reguralization BackPropogation, Function Fitting Neural Network and LSTM, i am still not getting good prediction results. I have attached the data where X is the input and Y is the output. First 10 data points are being used for training and next 9 points are used for testing. I have also attached by code which uses Baysian Regularization backpropogation.
Attached is the dataset link :
The results obtained using Baysian Regularization backpropogation are shown in graph attached below :
The code used is as follows:
close all;
clear all;
rng('default');
out_col = 2;
inp_col = 1;
data= xlsread('Neww_BRP.xlsx');
n = 7;
Neurons = 5;
X_Train=data(i:n,inp_col);
Y_Train=data(i:n,out_col);
XValidation = data(n+1,inp_col);
net = feedforwardnet(Neurons,'trainbr');
[net,tr] = train(net,X_Train',Y_Train');
y = net(XValidation')';
Kindly let me know how can i improve the prediction results?
Thank you.
0 Kommentare
Akzeptierte Antwort
ME
am 11 Nov. 2019
I am far from an expert in this area but I'd guess that you are struggling to get a good preciction because you don't have enough data points to train your network properly.
2 Kommentare
ME
am 11 Nov. 2019
Have you tried using a random sample of you data points to train the network rather than just using the first ten? That way your training data will likely cover a greater range of the behaviour seen in your data set and perhaps improve the predictive ability of your trained networks.
Weitere Antworten (1)
John D'Errico
am 11 Nov. 2019
Bearbeitet: John D'Errico
am 11 Nov. 2019
I would point out that your code shows you using the first SEVEN data points, not the first 10, despite your claim otherwise.
n = 7;
As well, since those first two points are completely inconsistent with the rest of your data, I'd expect to see a serious problem in any intelligent long term extrapolation. You gave it 7 data points, and 28% of your data was completely useless crapola. Just because someone else had success does not mean that your data is as good as theirs.
I would instead, suggest that you really try using the first 10 data points. Better yet, try using points 3:10 to train the net. Then see how well prediction actually proceeds for points 11-19.
Remember that extrapolation is always a risky business, prone to failure. If it was always so easy to do, then we would always have perfectly accurate weather forecasts.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Sequence and Numeric Feature Data Workflows finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!