NARXnet non-integer delays problem
Show older comments
I have read quite a bit on the crosscorr and autocorr and nncorr
I just dont get what this statement means:
Use the significant lags of the target autocorrelation function and the target/input crosscorrelation function to determine ID and FD.
could you please explain further?
From the code below, 1. What does the value 35 mean? 2. Do i just use the values: inputdelays and feedackdelays and input them straight into the net like this?:
net = narxnet( inputdelays , feedbackdelays ,hiddenLayerSize,'open',trainFcn)
...............
The delays were gotten with this code
x = OilRate; % 1×1500 cell
t = GasProduced; % 1×1500 cell
X = zscore(cell2mat(x));
T = zscore(cell2mat(t));
[ I N ] = size(X)
[ O N ] = size(T)
crosscorrXT = nncorr(X,T,N-1);
autocorrT = nncorr(T,T,N-1);
crosscorrXT(1:N-1) = []; % Delete negative delays
autocorrT(1:N-1) = [];
sigthresh95 = 0.21 % Significance threshold
sigcrossind = crosscorrXT( crosscorrXT >= sigthresh95 )
sigautoind = autocorrT( autocorrT >= sigthresh95 )
inputdelays = sigcrossind(sigcrossind <= 35)
feedbackdelays = sigautoind(sigautoind <= 35)
feedbackdelays(1)=[] % Delete zero delay
2. When I run the code above I get inputdelays(1×200 double) and fedbackdelays(1×154 double)
When I try to use this in my NARXnet code I get this error:
Parameters.InputDelays contains a non integer value
Which is true since
inputdelays has Min: 0.2181 & Max:0.5974
feedbackdelays has Min: 0.2103 Max:0.8725
How do I resolve this?
Accepted Answer
More Answers (0)
Categories
Find more on Linear Algebra in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!