主要内容

idWaveletNetwork

小波网络函数非线性ARX和Hammerstein-Wiener模型

描述

一个idWaveletNetwork对象实现小波网络功能,是一个非线性映射函数估算非线性ARX模型和非线性Hammerstein-Wiener。映射函数,也称为非线性,使用一个线性的组合权重,一个偏移量和一个非线性函数来计算其输出。非线性函数包含小波单元操作的函数的径向组合输入。

数学上,idWaveletNetwork是一个函数映射输入X(t)= (x(t1),x2(t),…x(t)]T一个标量输出y(t)使用以下关系:

y ( t ) = y 0 + Χ ( t ) T P l + W ( Χ ( t ) ) + 年代 ( Χ ( t ) )

在这里:

  • X(t)是一个1的输入向量,或解释变量

  • y0是输出补偿,一个标量。

  • P是一个——- - - - - -p投影矩阵,解释变量的数量,是吗p是数量的线性权重。必须大于或等于p

  • l是一个p1的权重向量。

  • W(X),年代(X)一起构成小波网络的非线性函数。W(X)是一个扩张和翻译小波年代(X)是一个扩张和翻译(也称为缩放功能scalelets)。小波的总数dw和缩放功能d年代被称为数量的单位的网络。

小波函数的定义术语W(X)和扩展功能年代(X),看更多关于

使用idWaveletNetwork的价值OutputFcn财产的idnlarx模型或InputNonlinearityOutputLinearity属性的idnlhw对象。例如,指定idWaveletNetwork当你评估一个idnlarx使用下面的命令模式。

sys = nlarx(数据、解释变量idWaveletNetwork)
nlarx估计模型,它估计的参数idWaveletNetwork函数。

您可以配置idWaveletNetwork函数来禁用组件和修正参数。忽略线性组件集LinearFcn.Use。省略了抵消,集Offset.Use。指定已知值的线性函数和偏移量,设置他们的价值直接和设置相应的属性免费的属性来。使用评估计算功能对于一个给定的输出向量的输入。

创建

描述

例子

W= idWaveletNetwork创建一个idWaveletNetwork对象W的函数计算单位自动在模型估计的数量。

例子

W= idWaveletNetwork (numUnits)指定的数量单位numUnits。这个语法包括一个选项允许交互式评估单位和无法解释的方差的数量之间的关系。

例子

W= idWaveletNetwork (numUnits,UseLinearFcn)指定是否函数使用一个线性函数作为子组件。

例子

W= idWaveletNetwork (numUnits,UseLinearFcn,UseOffset)指定是否函数使用一个偏移量。

输入参数

全部展开

数量的单位,指定为字符串或字符向量表示“汽车”“互动”,或者是一个正整数。numUnits确定小波或缩放功能的数量,或者,如果两个元素存在,合并后的小波和扩展功能。通常情况下,小波网络包含小波或扩展函数,但不能两者兼得。指定numUnits下列值之一:

  • “汽车”-软件确定的数量单位自动在模型估计。

  • “互动”——在模型估计,交互式软件显示一个条形图,相关解释方差的数量单位。点击酒吧查看实现适合估计数据为选定的单位的数量。蓝条表示的最优选择,基于广义交叉验证(GCV)标准。一般的数量单位的选择是使用最小数量的单位,捕获大部分的方差。

  • 正整数——软件直接使用指定的值。

这个参数设置W.NonlinearFcn.NumberOfUnits财产。

选择使用线性函数子组件,指定为真正的。这个参数设置的值W.LinearFcn.Use财产。

选择使用一个偏移量,指定为真正的。这个参数设置的值W.Offset.Use财产。

属性

全部展开

输入信号输入的名称映射对象,指定为1×-单元阵列,是输入信号的数量。在评估这个属性决定。

输出信号名称映射的输出对象,指定为1×1细胞数组。在评估这个属性决定。

指定的线性函数,参数如下:

  • 使用——选择使用线性函数的小波网络,指定为一个标量的逻辑。默认值是真正的。设置这个选项的例子,请参阅线性项排除在小波网络映射对象

  • 价值——线性权重组成l”,指定为1×-p向量。

  • InputProjection——输入投影矩阵P指定为一个——- - - - - -p矩阵,将输入向量的长度成一个向量的长度p。对于Hammerstein-Wiener模型,InputProjection等于1

  • 免费的——选择更新的条目价值在评估期间,指定为1×-p逻辑向量。荣誉的软件免费的规范只有的起始值价值是有限的。默认值是真正的

指定参数补偿项,如下:

  • 使用——选择使用小波网络的抵消,指定为一个标量的逻辑。默认值是真正的

  • 价值-偏移值,指定为一个标量。

  • 免费的——选择更新价值在评估期间,指定为一个标量的逻辑。荣誉的软件免费的规范的只有在的价值价值是有限的。默认值是真正的

指定参数的非线性函数,如下:

  • NumberOfUnits——数量的单位,指定为“汽车”,“互动”或者一个正整数。NumberOfUnits确定小波或缩放功能的数量,或者,如果两个元素存在,合并后的小波和扩展功能。通常情况下,小波网络包含小波或扩展函数,但不能两者兼得。的选项NumberOfUnits如下:

    • “汽车”-软件确定的数量单位自动在模型估计。

    • “互动”——在模型估计,交互式软件显示一个条形图,相关解释方差的数量单位。点击酒吧查看实现适合估计数据为选定的单位的数量。蓝条表示的最优选择,基于广义交叉验证(GCV)标准。一般的数量单位的选择是使用最小数量的单位,捕获大部分的方差。

    • 正整数——软件直接使用指定的值。

  • 结构——高级选项,控制结构的小波和缩放功能,指定为在下表中。

    财产 描述 默认的
    FinestCell 最小数量的数据点在最小的细胞,指定为“汽车”或者一个正整数。一个细胞所覆盖的区域是一个显著非零小波的一部分。默认设置的“汽车”在估计指定软件确定这个值。 “汽车”
    MinimumCells 最小数量的细胞分区,指定为一个正整数。 16
    MaximumCells 最大数量的细胞分区,指定为一个正整数。 16
    MaximumLevels 最大数量的小波水平,指定为一个正整数。 10
    DilationStep 扩张步长,指定为一个正整数。 2
    TranslationStep 翻译的步骤大小,指定为一个正整数。 1

  • 参数——参数idWaveletNetwork,指定为下面的表。

    字段名 描述 默认的
    InputProjection

    投影矩阵指定为一个——- - - - - -矩阵。变换去趋势的输入向量 ( X X ¯ ) 的长度成一个向量的长度。通常情况下,大小相同的线性投影矩阵P。在这种情况下,等于p的数量,这是线性权重。

    对于Hammerstein-Wiener模型,InputProjection等于1

    []
    ScalingCoefficient

    尺度函数系数年代指定为一个ds1的向量。

    []
    ScalingTranslation

    扩展转换矩阵,作为指定ds——- - - - - -翻译行向量矩阵的扩展e

    []
    ScalingDilation

    尺度函数膨胀系数d指定为一个ds1的向量。

    []
    WaveletCoefficient

    小波函数系数w指定为一个dw1的向量。

    []
    WaveletTranslation

    小波转换矩阵,e指定为一个dw——- - - - - -翻译行向量矩阵小波c

    []
    WaveletDilation

    小波膨胀系数b指定为一个dw1的向量。

    []

  • 免费的——选项来估计参数,指定为一个逻辑标量。如果所有的参数有有限值,比如当idWaveletNetwork对象对应一个此前估计的模型,然后设置免费的引起的非线性函数的参数W(X),年代(X在估计)保持不变。默认值是真正的

例子

全部折叠

莫= idWaveletNetwork;

查看idWaveletNetwork对象。

disp (MO)
小波网络的非线性函数:小波网络的单位数量自动选择线性函数:未初始化输出抵消:未初始化输入:{1}x0细胞输出:{1}x0细胞NonlinearFcn:“<小波和缩放功能单位及其参数>“LinearFcn:“<线性函数参数>”抵消:“<偏移量参数>”EstimationOptions:“<选项>估计”

创建idWaveletNetwork映射对象

莫= idWaveletNetwork;

排除的线性项

MO.LinearFcn。使用= false;

查看idWaveletNetwork对象。

disp (MO)
小波网络的非线性函数:小波网络的单位数量自动选择线性函数:不使用的输出补偿:未初始化输入:{1}x0细胞输出:{1}x0细胞NonlinearFcn:“<小波和缩放功能单位及其参数>“LinearFcn:“<线性函数参数>”抵消:“<偏移量参数>”EstimationOptions:“<选项>估计”

线性函数是不使用的。

负荷估算数据。

负载twotankdatayu;

创建一个iddata对象的评估数据。

z = iddata (y、u, 0.2);

创建一个小波网络映射对象有5个单位。

莫= idWaveletNetwork (5);

估计非线性ARX模型。

sys = nlarx (z,[4 4 1],密苏里州)
sys =非线性ARX模型与输入1输出和输入:u1输出:y1解释变量:线性解释变量y₁, u1输出功能:小波网络5单位样品时间:0.2秒状态:估计使用NLARX时域数据“z”。适合估算数据:96.8%(预测聚焦)消防工程:3.553 e-05, MSE: 3.515 e-05模型的“报告”属性的更多信息。

负荷估算数据。

负载motorizedcamera;

创建一个iddata对象。

z = iddata (y, u, 0.02,“名字”,“机动相机”,“TimeUnit”,“年代”);

z是一个iddata对象有六个输入和两个输出。

指定模型订单和延迟。

订单=[(2,6),则(2,6)的(2,6)];

为每个输入通道指定相同的非线性估计量。

InputNL = idWaveletNetwork;

指定不同的非线性估计为每一个输出通道。

OutputNL = [idDeadZone, idWaveletNetwork];

估计Hammerstein-Wiener模型。

sys = nlhw (z,订单、InputNL OutputNL);

看到的形状估计输入和输出非线性,非线性的阴谋。

情节(系统)

图Hammerstein-Wiener模型图包含6轴uipanel类型的对象和其他对象,uicontrol。轴与包含输入非线性对象1输入“u1 ylabel非线性值包含一个类型的对象。这个对象表示sys: idWaveletNetwork。轴与包含输入非线性对象2输入“u2”, ylabel非线性值包含一个类型的对象。这个对象表示sys: idWaveletNetwork。轴与包含输入非线性对象3输入“u3 ylabel非线性值包含一个类型的对象。这个对象表示sys: idWaveletNetwork。输入轴与包含输入非线性对象4“愉快”,ylabel非线性值包含一个对象类型的线。这个对象表示sys: idWaveletNetwork。轴与包含输入非线性对象5输入“u5 ylabel非线性值包含一个类型的对象。 This object represents sys:idWaveletNetwork. Axes object 6 with xlabel Input to nonlinearity at input

点击输入和输出非线性块的顶部看到非线性的阴谋。

负荷估算数据。

负载iddata7z7;

指定idWaveletNetwork为模型输出函数。配置idWaveletNetwork对象有一个固定的偏移值1和使用五单元非线性组件。

w = idWaveletNetwork;w.Offset。价值=1;w.Offset。免费的=假;w.NonlinearFcn。NumberOfUnits=5;

使用滞后数组指定一组线性模型回归量产生连续四个输出解释变量和连续五个解释变量输入。

reg = linearRegressor ({“日元”,‘u1’},{1:4,0:4});

估计非线性ARX模型。

sys = nlarx (z7 reg w);

检查postestimation输出函数的性质。

disp (sys.OutputFcn)
小波网络的输入:日元(t - 1), y1(2),日元(条t - 3),日元(第四节),u1 (t) u1 (t - 1), u1 (2) u1(条t - 3), u1(第四节)输出:日元(t)非线性功能:小波网络5单元线性函数:初始化为[-1.12 0.469 1.25 0.556 -0.81 -0.261 -0.074 0.711 1.15]输出抵消:固定1输入:{y1 (t - 1)的“日元”(2)“y1(条t - 3)”“y1(第四节)”“u1 (t)”“u1 (t - 1)”“u1 (2)”“u1(条t - 3)”“u1(第四节)”}输出:{“y1 (t)”} NonlinearFcn:“<小波和缩放功能单位及其参数>“LinearFcn:“<线性函数参数>”抵消:“<偏移量参数>”EstimationOptions:“<选项>估计”
disp (sys.OutputFcn.Input)
函数输入名称:{“y1 (t - 1)”“y1 (2)”“y1(条t - 3)”“y1(第四节)”“u1 (t)”“u1 (t - 1)”“u1 (2)”“u1(条t - 3)”的u1(第四节)}的意思是:[5.3829 e-17 7.1772 e-17 2.6914 e-17 0 1.3457 2.2429 3.3643 -4.4857 -4.4857 e-18 e-17 e-17 e-17 e-17)范围:[2 x9双)
disp (sys.OutputFcn.NonlinearFcn)
小波和缩放功能单位及其参数NumberOfUnits: 5参数:<小波参数>的自由:1输入:{“y1 (t - 1)”“y1 (2)”“y1(条t - 3)”“y1(第四节)”“u1 (t)”“u1 (t - 1)”“u1 (2)”“u1(条t - 3)”“u1(第四节)”}输出:{y1 (t):非线性的}

负荷估算数据。

负载throttledata

指定idWaveletNetwork为模型输出非线性和设置参数NumUnits5UseLinearFcnUseOffset

w = idWaveletNetwork(5日假,假);

消除线性函数和偏移量的另一个方法是使用点符号创建非线性之后。

w.LinearFcn。使用= false;w.Offset。使用=假;

估计模型,使用一个订单规范的(4 4 1)

sys = nlhw (ThrottleData [4 4 1], [], w);

比较模拟模型响应的估计数据。

比较(ThrottleData sys);

图包含一个坐标轴对象。坐标轴对象ylabel节流阀位置包含2线类型的对象。这些对象代表验证数据(节流阀位置),sys: 71.94%。

更多关于

全部展开

算法

您可以使用idWaveletNetwork在这两种非线性ARX和Hammerstein-Wiener模型。估计的算法idWaveletNetwork你估计参数依赖于模型。

  • 在非线性ARX模型,idWaveletNetwork使用noniterative或迭代技术预测参数,根据选项设置nlarxOptions

    • 如果焦点选项设置为“预测”,然后idWaveletNetwork使用一个快速noniterative技术来估计参数[1]。连续细化后第一个估计使用迭代算法。

    • 如果焦点选项设置为“模拟”,然后idWaveletNetwork使用迭代技术来估计参数。

    • 总是使用一个迭代或noniterative算法,指定IterativeWavenet的属性nlarxOptions作为“上”“关闭”,分别。

  • 在Hammerstein-Wiener模型中,idWaveletNetwork使用迭代的最小化来确定参数。

引用

[1]清华。“在非参数估计中使用小波网络。”IEEE神经网络8,不。2(1997年3月):227 - 36。https://doi.org/10.1109/72.557660。

版本历史

介绍了R2007a

全部展开