why am i getting unsatisfied result with same Training and Testing data in Narx time series network?

2 ビュー (過去 30 日間)
I am planning to predict the temperature as a output while providing the input parameter as a current. I have uploaded my time series data data. i am training with same data set and testing on same data. but i am getting a unsatisfied result. Beforehand i have trained with this time series data set and test with another time series data set, but i did not get the result, which i was expecting. Now i am trying to Traing and Testing with same data set to find out if my Model is learning with this dataset or not, still it is not working. i am not getting satisfied result, even i am trying to train and test same data set. why? here is my Narxnet code
Data = readtable('Data.xlsx');
Current = table2array(Data(:,"I_DC")); % Input Value (Current)
Output = table2array(Data(:,"T_AGG")); % Target value (Temperature)
X_Train = tonndata(Current(1:end,:),false,false);
Y_Train = tonndata(Output(1:end),false,false);
trainFcn = 'trainlm'; %
inputDelays = 1:2;
feedbackDelays = 1:2;
hiddenLayerSize = 5;
net = narxnet(inputDelays,feedbackDelays,hiddenLayerSize,'open',trainFcn);
[x,xi,ai,t] = preparets(net,X_Train,{},Y_Train);
[net,tr] = train(net,x,t,xi,ai);
% Test the Network
[y,Xf,Af] = net(x,xi,ai);
e = gsubtract(t,y);
performance = perform(net,t,y)
% closed loop the same data for Testing multiple time step prediction
[netc,Xic,Aic] = closeloop(net,xi,ai);
view(netc)
Yc = netc(X_Test,Xic,Aic);
figure, plotregression(Y_Test,Yc)
figure, plotresponse(Y_Test,Yc)
It would be very helpful for me, if you could help me with this issue? I am not getting what i am doing wrong. or data is not appropriate to learn for Narxnet time series? Any suggestion would be helpful....Thanks in advance

採用された回答

Ganesh
Ganesh 2024 年 6 月 13 日
Let's try and see the correlation between Current and Temperature.
Data = readtable('Data.xlsx');
Current = table2array(Data(:,"I_DC")); % Input Value (Current)
Output = table2array(Data(:,"T_AGG")); % Target value (Temperature)
corrcoef(Current,Output)
ans = 2x2
1.0000 -0.0561 -0.0561 1.0000
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
Correlation of less -0.056 is pretty low, the Target variables show very low dependency with the Input Variables i.e. the externally determined variable shows low influence.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSequence and Numeric Feature Data Workflows についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by