主要内容

narxnet

具有外部输入的非线性自动自动评等神经网络

描述

例子

narxnet (inputdelays.feedbackDelaysHiddensize.feedbackMode训练码的)将这些参数:

  • 行向量增加0或正输入延迟,inputdelays.

  • 增加0或正反馈延迟的行向量,feedbackDelays

  • 一个或多个隐藏层大小的行向量,Hiddensize.

  • 反馈类型,feedbackMode

  • BackProjagation培训功能,训练码

并返回一个narx神经网络。

NARX(带有外部输入的非线性自回归)网络可以学习预测相同时间序列的过去值,反馈输入和另一个时序序列称为外部(或外源)时间序列的另一个时间序列。

例子

全部折叠

用外部输入(NARX)神经网络训练非线性自回归,并预测新的时间序列数据。预测时间序列中的一系列值也被称为多步预测。闭环网络可以执行多步骤预测。当缺少外部反馈时,闭环网络可以使用内部反馈继续预测。在NARX预测中,从该系列的过去值,反馈输入和外部时间序列预测时间序列的未来值。

加载简单的时间序列预测数据。

[x,t] = simpleSeries_dataset;

将数据分区为培训数据XTrain.TTrain和预测数据Xpredict.。用Xpredict.在创建闭环网络后进行预测。

xtrain = x(1:80);ttrain = t(1:80);XPREDICT = X(81:100);

创建NARX网络。定义输入延迟、反馈延迟和隐藏层的大小。

net = narxnet(1:2,1:2,10);

使用。准备时间序列数据预料。此函数自动将输入和目标时间序列自动筛选填充初始输入和层延迟状态所需的步数。

[x, Xi, Ai, Ts] = preparets(网,XTrain, {}, TTrain);

推荐的做法是在开环中完全创建网络,然后将网络转换为闭环进行多步超前预测。然后,闭环网络可以预测尽可能多的未来值。如果只在闭环模式下模拟神经网络,那么该网络可以执行与输入序列中时间步长的数量相同的预测。

训练NARX网络。的火车函数在开环(串行架构)中培训网络,包括验证和测试步骤。

网=火车(净,x, Ts, Xi, Ai);

显示培训的网络。

视图(净)

计算网络输出y,最终输入国家XF.和最后一层状态AF.从网络输入中的开环网络XS.,初始输入状态xi.,和初始层状态AI.

[y,xf,af] = net(xs,xi,ai);

计算网络性能。

perf =执行(net,ts,y)
穿孔= 0.0153

为了预测未来20个时间步长的输出,首先在闭环模式下模拟网络。最终输入状态XF.和国家层AF.开环网络的网络成为初始输入状态Xic和国家层AIC.闭环网络

[Netc,XIC,AIC] = CloseLoop(Net,XF,AF);

显示闭环网络。

查看(Netc)

在闭环模式下运行预测20次前进的20个步骤。

YC = Netc(Xpredict,XIC,AIC)
YC = 1x20单元阵列列1到5 {[-0.0156]} {[0.1133]} {[-0.1472] {[-0.1472]} {[0.0355]} {[0.0355]} {[0.035]}列6到10 {[-0.2829]} {[0.2047] {[-0.3809]} {[0.2836]} {[0.1886]}列11到15 {[-0.1813]} {[0.1373]} {[0.2189]} {[0.2189]} {[0.2346]}列16到20 {[-0.0156]} {[0.0724]} {[0.3395]} {[0.1940]} {[0.0757]} {[0.0757]}

输入参数

全部折叠

输入延迟为零或正,指定为递增的行向量。

零或正反馈延迟,指定为增加的行向量。

隐藏图层的大小指定为一个或多个元素的行向量。

反馈类型,指定为“开放”'关闭', 或者'没有任何'

训练函数名,指定为下列之一。

训练功能 算法
'trainlm'

Levenberg-Marquardt

“trainbr”

贝叶斯正则化

'trainbfg'

BFGS Quasi-Newton

“trainrp”

弹性反向化

“trainscg”

缩放共轭梯度

'traincgb'

与鲍威尔/野鸽的共轭渐变重启

'traincgf'

Fletcher-Powell共轭梯度

“traincgp”

Polak-ribiére共轭渐变

“trainoss”

sec一步

“traingdx”

可变学习率梯度下降

“traingdm”

梯度下降动量

“traingd”

梯度下降法

例子:例如,可以指定可变学习率梯度下降算法为训练算法,具体如下:“traingdx”

有关培训函数的更多信息,请参阅火车和应用多层浅神经网络选择多层神经网络训练函数

数据类型:字符

介绍了R2010b