Why processed data regression is lower than unprocessed data regression?

3 次查看(过去 30 天)
For my fitnet neural network, Im preprocessing input and target data by mapminmax, and trained using trainbr, trainscg, and traincgb, also I have varied layers and its sizes.
For all these different combinations of network properties, the regression ranges between 65-70%.
But for original data (i.e, for postprocessing), the regression ranges between 90-97%.
Why it is so?
Regression should be same for both cases right ?
Please go through the code and tell me where am I doing wrong and suggestions for improving regression.
clc
clear all
load INP2kf.mat
load TAR2kf.mat
in = INP2kf %input
tar = TAR2kf %target
[pn, ps] = mapminmax(in)
[tn, ts] = mapminmax(tar)
net = fitnet([12], 'trainscg') %tried different combination of layers and its sizes
net.trainParam.epochs = 10000;
net.trainParam.min_grad = 1e-20;
net.trainParam.max_fail = 1000;
net.divideParam.trainRatio = 0.80; % training set [%]
net.divideParam.valRatio = 0.10; % validation set [%]
net.divideParam.testRatio = 0.10; % test set [%]
net.performFcn = 'msereg'
net.performParam.normalization = 'standard';
net = train(net,pn,tn);
an = sim(net,pn);
a = mapminmax('reverse',an,ts);
[m, b, r] = postreg(a,tar)
[m1, b1, r1] = postreg(an,tn)
NET8 = net;
save NET8
Thank You,
Harsha

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Linear Regression 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by