用于闭环网络NarX现实

5视图(30天)
格雷格感谢你的回复。我认为网络是评估openloop我认为它给了好的结果,但是现在我不相信他们。我的问题如下:
1 -我已经评估的准确性openloop,如何在closeloop ?。第一次模拟closeloop作为输入我因此创建了一个用最后两个值矩阵InputSeries说30输入训练样本外,2 * 32的数组。创建矩阵newsTargets介绍targetSeries数组的最后一个值和充满31日南从而得到另一个矩阵1 * 32。从这里我模拟网络和给我的价值观,让他们一起真正的目标有点流离失所。(我想发送一个截图,图,如果你告诉我如何发送)。我认为我正确执行操作,虽然我想评估准确性closeloop非常严格。
2 -我的第二个问题是,因为如果我试着真实的网络,也就是说,假设我们是3月4日,2013年。我通过一个平台获取数据输入和EMA (RSI),即我newInputs其他矩阵的最后2介绍inputSeries价值观和RSI今天价值观和教育津贴。(到目前为止我认为我做得很好)。创建另一个数组newTarget与最后一个值南targetSeries和2相同的维度newInput(2 * 3)和newTarget(1 * 3)和执行仿真获得的预测价值日3月5日,2013年。继续迭代引入价值的3月5日和3月6日的价值,就像网络NAR吗?是,在preparets命令:
(输入、inputStates layerStates目标]= preparets(网,inputSeries, targetSeries); ? ?和评估样本外的网络。
这些是我的疑问。
非常感谢Greg

接受的答案

格雷格·希斯
格雷格·希斯 2013年3月5日
编辑:格雷格·希斯 2013年3月5日
我认为网络是评估openloop我认为它给了好的结果,
什么是我N ID、FD H, Ntrn,造船,Ntst, R2trn, R2trna R2val和R2tst吗?
但是现在我不相信他们。
为什么?
什么你从相同的数据使用closeloop吗?
我的问题如下:
1 -我已经评估的准确性openloop,如何在closeloop ?。第一次模拟closeloop作为输入我因此创建了一个用最后两个值矩阵InputSeries说30输入训练样本外,2 * 32的数组。创建矩阵newsTargets介绍targetSeries数组的最后一个值和充满31日南从而得到另一个矩阵1 * 32。
不明白这些数据从何而来。
从这里我模拟网络和给我的价值观,让他们一起真正的目标有点流离失所。(我想发送一个截图,图,如果你告诉我如何发送)。我认为我正确执行操作,虽然我想评估准确性closeloop非常严格。
在那里是一种看到阴谋的答案。曾经如何。现在我需要看到你的代码。
2 -我的第二个问题是,因为如果我试着真实的网络,也就是说,假设我们是3月4日,2013年。我通过一个平台获取数据输入和EMA (RSI),即我newInputs其他矩阵的最后2介绍inputSeries价值观和RSI今天价值观和教育津贴。(到目前为止我认为我做得很好)。创建另一个数组newTarget与最后一个值南targetSeries和2相同的维度newInput(2 * 3)和newTarget(1 * 3)和执行仿真获得的预测价值日3月5日,2013年。继续迭代引入价值的3月5日和3月6日的价值,就像网络NAR吗?是,在preparets命令:
(输入、inputStates layerStates目标]= preparets(网,inputSeries, targetSeries); ? ?和评估样本外的网络。
这些是我的疑问。
不明白你的意思。发布的代码。
格雷格
2的评论
旧金山
旧金山 2013年3月7日
好,应该改变大小的输入和网络层netc ? ?我一直觉得如何执行多步向前,但我认为的解决方案将会容易得多。非常感谢

登录置评。

答案(1)

格雷格·希斯
格雷格·希斯 2013年3月8日
请添加一行英文翻译下你的西班牙cooments
%我有两个文件:% p(输入),由8列和2200行组成的% t(的目标)和2200行1列
需要调换…
% MSE00 =意味着(var (t1, 1));% MSE00 MSE00a = = 0.0095%意味着(var (t1 0));MSE00a = 0.0095
不完全是。应该消除初始延误和分成单独的环境/ trna / val /测试估计
% %号y de卡帕retrasos % inputDelays = 1:2;% feedbackDelays = 1:2;% hiddenLayerSize = 9;% %弗雷德还有parametros % [N] =大小(p);% = 8;N = 2200% (O (N) =大小(t);% O = 1;Neq = N * O (N = 2200%;% Neq = 2200
不。应该排除N2 = 100例外数据和2初始延迟数据点
Neq = (n - 100 - 2) * O = 2098
% Nw = (I + 1) * hiddenLayerSize + (hiddenLayerSize + 1) * O;% Nw = 91
不。应该包括延迟的重量吗
*我西北=(国家免疫日+ NFD * O + 1) * H + (H + 1) * O = 181
配置或训练后可以检查
西北= net.numWeightElements
% Ntrneq = 0.7 * Neq;% Ntrneq = 1540
Ntrn = N 2 * 1468 (0.15 * N) %
% Ndof = Ntrneq-Nw;% Ndof = 1449
Ndof = 1287
% net.divideFcn =“divideblock”;
“divideind”也将工作如果你指定的整数
% net.trainParam.goal = 0.01 * MSE00;
net.trainParam。目标= 0.01 * Ndof * MSEtrn00a / Ntrneq
获得R2trna ~ 0.990
% % entrenamiento de la红色%(网络,tr) =火车(净、输入目标,inputStates layerStates);
(净tr y Es Xf Af) =…
y, Es包含环境/ val /测试输出和错误时间序列
Xf,房颤是最后的延迟数据使用你的下一个N2 = 100数据点。
%公司salida y错误% =净输出(输入、inputStates layerStates);% = gsubtract错误(目标,输出);% MSE =执行(网络,目标,输出);% MSE = 7.7982 e-5 % MSEa = Neq * MSE / (Neq-Nw);% MSEa = 8.1346 e-5 % R2 = 1-MSE / MSE00;% R2 = 0.9918% R2a = 1-MSEa / MSE00a;% R2a = 0.9915% MSEtrn = tr.perf(结束);% MSEtrn = 7.1240 e-5 % MSEval = tr.vperf(结束);% MSEval = 9.4383 e-5 % MSEtst = tr.tperf(结束);% MSEtst = 9.3139 e-5 % R2trn = 1-MSEtrn / MSE00; %R2trn=0.9925 % R2val=1-MSEval/MSE00; %R2val=0.9901 % R2tst=1-MSEtst/MSE00; %R2tst=0.9902 % precisiones=[MSE MSEa R2 R2a R2trn R2val R2tst];
几乎。
需要MSEtrna R2trna和正确使用MSEtrn00 MSEtrn00a, MSEval00 MSEtst00。
现在关闭循环和测试原始数据,我解释了尼古拉斯在最近的答案。
% % 50我们关闭循环和检查的p2 % %值cerramos bucle % netc = closeloop(净);% netc.name = [net.name”——闭环”);%视图(netc) % % cogemos期de predicciones % NumberOfPredictions = 50;
为什么不使用所有100的p2 (:, 1: N2) ?
= = = = = = = = = = = = = = =更多的后来
格雷格
3评论
旧金山
旧金山 2013年3月10日
提出了改善这些细节吗?。如果我能把更好的代码示例中,更容易理解,有时候不太理解指令和我将在NarX扩展知识。
多谢。

登录置评。

标签

s manbetx 845

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!