idWaveletNetwork
小波网络函数非线性ARX和Hammerstein-Wiener模型
描述
一个idWaveletNetwork
对象实现小波网络功能,是一个非线性映射函数估算非线性ARX模型和非线性Hammerstein-Wiener。映射函数,也称为非线性,使用一个线性的组合权重,一个偏移量和一个非线性函数来计算其输出。非线性函数包含小波单元操作的函数的径向组合输入。
数学上,idWaveletNetwork
是一个函数映射米输入X(t)= (x(t1),x2(t),…x米(t)]T一个标量输出y(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
模型或InputNonlinearity
和OutputLinearity
属性的idnlhw
对象。例如,指定idWaveletNetwork
当你评估一个idnlarx
使用下面的命令模式。
sys = nlarx(数据、解释变量idWaveletNetwork)
nlarx
估计模型,它估计的参数idWaveletNetwork
函数。
您可以配置idWaveletNetwork
函数来禁用组件和修正参数。忽略线性组件集LinearFcn.Use
来假
。省略了抵消,集Offset.Use
来假
。指定已知值的线性函数和偏移量,设置他们的价值
直接和设置相应的属性免费的
属性来假
。使用评估
计算功能对于一个给定的输出向量的输入。
创建
语法
描述
创建一个W
= idWaveletNetworkidWaveletNetwork
对象W
的函数计算单位自动在模型估计的数量。
指定是否函数使用一个线性函数作为子组件。W
= idWaveletNetwork (numUnits
,UseLinearFcn
)
指定是否函数使用一个偏移量。W
= idWaveletNetwork (numUnits
,UseLinearFcn
,UseOffset
)
输入参数
numUnits
- - - - - -数量的单位
“汽车”
(默认)|“互动”
|正整数
数量的单位,指定为字符串或字符向量表示“汽车”
或“互动”
,或者是一个正整数。numUnits
确定小波或缩放功能的数量,或者,如果两个元素存在,合并后的小波和扩展功能。通常情况下,小波网络包含小波或扩展函数,但不能两者兼得。指定numUnits
下列值之一:
“汽车”
-软件确定的数量单位自动在模型估计。“互动”
——在模型估计,交互式软件显示一个条形图,相关解释方差的数量单位。点击酒吧查看实现适合估计数据为选定的单位的数量。蓝条表示的最优选择,基于广义交叉验证(GCV)标准。一般的数量单位的选择是使用最小数量的单位,捕获大部分的方差。正整数——软件直接使用指定的值。
这个参数设置W.NonlinearFcn.NumberOfUnits
财产。
UseLinearFcn
- - - - - -选择使用线性函数
真正的
(默认)|假
选择使用线性函数子组件,指定为真正的
或假
。这个参数设置的值W.LinearFcn.Use
财产。
UseOffset
- - - - - -选择使用抵消
真正的
(默认)|假
选择使用一个偏移量,指定为真正的
或假
。这个参数设置的值W.Offset.Use
财产。
属性
输入
- - - - - -输入信号的名字
单元阵列
输入信号输入的名称映射对象,指定为1×-米单元阵列,米是输入信号的数量。在评估这个属性决定。
输出
- - - - - -输出信号的名字
单元阵列
输出信号名称映射的输出对象,指定为1×1细胞数组。在评估这个属性决定。
LinearFcn
- - - - - -参数的线性函数
线性函数属性值(默认)
指定的线性函数,参数如下:
使用
——选择使用线性函数的小波网络,指定为一个标量的逻辑。默认值是真正的
。设置这个选项的例子,请参阅线性项排除在小波网络映射对象。价值
——线性权重组成l”,指定为1×-p向量。InputProjection
——输入投影矩阵P指定为一个米——- - - - - -p矩阵,将输入向量的长度米成一个向量的长度p。对于Hammerstein-Wiener模型,InputProjection
等于1
。免费的
——选择更新的条目价值
在评估期间,指定为1×-p逻辑向量。荣誉的软件免费的
规范只有的起始值价值
是有限的。默认值是真正的
。
抵消
- - - - - -偏移量的参数项
抵消属性值
指定参数补偿项,如下:
使用
——选择使用小波网络的抵消,指定为一个标量的逻辑。默认值是真正的
。价值
-偏移值,指定为一个标量。免费的
——选择更新价值
在评估期间,指定为一个标量的逻辑。荣誉的软件免费的
规范的假
只有在的价值价值
是有限的。默认值是真正的
。
NonlinearFcn
- - - - - -参数的非线性函数
非线性函数属性值
指定参数的非线性函数,如下:
NumberOfUnits
——数量的单位,指定为“汽车”
,“互动”
或者一个正整数。NumberOfUnits
确定小波或缩放功能的数量,或者,如果两个元素存在,合并后的小波和扩展功能。通常情况下,小波网络包含小波或扩展函数,但不能两者兼得。的选项NumberOfUnits
如下:“汽车”
-软件确定的数量单位自动在模型估计。“互动”
——在模型估计,交互式软件显示一个条形图,相关解释方差的数量单位。点击酒吧查看实现适合估计数据为选定的单位的数量。蓝条表示的最优选择,基于广义交叉验证(GCV)标准。一般的数量单位的选择是使用最小数量的单位,捕获大部分的方差。正整数——软件直接使用指定的值。
结构
——高级选项,控制结构的小波和缩放功能,指定为在下表中。财产 描述 默认的 FinestCell
最小数量的数据点在最小的细胞,指定为 “汽车”
或者一个正整数。一个细胞所覆盖的区域是一个显著非零小波的一部分。默认设置的“汽车”
在估计指定软件确定这个值。“汽车”
MinimumCells
最小数量的细胞分区,指定为一个正整数。 16
MaximumCells
最大数量的细胞分区,指定为一个正整数。 16
MaximumLevels
最大数量的小波水平,指定为一个正整数。 10
DilationStep
扩张步长,指定为一个正整数。 2
TranslationStep
翻译的步骤大小,指定为一个正整数。 1
参数
——参数idWaveletNetwork
,指定为下面的表。字段名 描述 默认的 InputProjection
投影矩阵问指定为一个米——- - - - - -问矩阵。问变换去趋势的输入向量 的长度米成一个向量的长度问。通常情况下,问大小相同的线性投影矩阵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:“<选项>估计”
线性函数是不使用的。
估计非线性ARX模型与特定的映射函数
负荷估算数据。
负载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模型的“报告”属性的更多信息。
估计那Hammerstein-Wiener模型
负荷估算数据。
负载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);
看到的形状估计输入和输出非线性,非线性的阴谋。
情节(系统)
点击输入和输出非线性块的顶部看到非线性的阴谋。
应用idWaveletNetwork
当估计非线性ARX模型约束
负荷估算数据。
负载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):非线性的}
应用idWaveletNetwork
当估计Hammerstein-Wiener模型约束
负荷估算数据。
负载throttledata
指定idWaveletNetwork
为模型输出非线性和设置参数NumUnits
来5
和UseLinearFcn
和UseOffset
来假
。
w = idWaveletNetwork(5日假,假);
消除线性函数和偏移量的另一个方法是使用点符号创建非线性之后。
w.LinearFcn。使用= false;w.Offset。使用=假;
估计模型,使用一个订单
规范的(4 4 1)
。
sys = nlhw (ThrottleData [4 4 1], [], w);
比较模拟模型响应的估计数据。
比较(ThrottleData sys);
更多关于
小波非线性函数W(X)
小波非线性函数是一个总和的扩张和翻译小波,并通过下面的方程来描述:
在这里:
问是一个米——- - - - - -问投影矩阵,米≥问
w1,w2、…wdw标量系数被称为小波系数。
b1,b2、…bdw标量被称为小波相呼应用输入矩阵X。
c1,c2、…cdw1 -问行向量称为小波转换。
是径向函数的平方大小只取决于向量x。x是一个行向量,由一个输入和一个偏移量的线性组合c我。
扩展非线性函数年代(X)
的扩展非线性函数是一个和扩张和翻译扩展功能,并描述以下方程:
在这里:
问是一个米——- - - - - -问投影矩阵,米≥问。
年代1,年代2、…年代ds标量系数被称为比例系数。
d1,d2、…dds标量被称为扩展相呼应用输入矩阵X。
e1,e2、…eds1 -问行向量称为扩展翻译。
是径向函数的平方大小只取决于向量x。x是一个行向量,由一个输入和一个偏移量的线性组合e我。米等于输入的数量,
暗(x)
。
算法
您可以使用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。
版本历史
介绍了R2007aR2022a:以前的idnlarx
从对象属性映射到数据归一化信息idnlarx
归一化
财产
相关信息数据标准化感动的idWaveletNetwork
映射对象级别模型级别。的归一化
财产的idnlarx
模型包含的数据中心和扩展信息估计过程计算。此外,regressor-selection过程映射对象也搬到模型级别。现在模型经过实际的回归量名称而不是选择指数映射对象,不再需要索引属性映射对象级别的。
下表总结了映射对象subproperties被消除。有关更多信息,请参见归一化
的属性idnlarx
。
主要属性/ Subproperties | 输入 |
输出 |
LinearMdl |
抵消 |
NonlinearMdl |
---|---|---|---|---|---|
的意思是 |
X | X | |||
范围 |
X | X | |||
最低 |
X | X | X | ||
最大 |
X | X | X | ||
SelectedInputIndex |
X | X |
R2021b:使用以前的idnlarx
和idnlhw
不推荐映射对象名称。
从R2021b,映射对象(也称为非线性)的非线性组件使用idnlarx
和idnlhw
对象被重新命名。下表列出了名称的变化。
Pre-R2021b名字 | R2021b名字 |
---|---|
wavenet |
idWaveletNetwork |
sigmoidnet |
idSigmoidNetwork |
treepartition |
idTreePartition |
customnet |
idCustomNetwork |
饱和 |
idSaturation |
死区 |
idDeadZone |
pwlinear |
idPiecewiseLinear |
poly1d |
idPolynomial1D |
unitgain |
idUnitGain |
线性 |
idLinear |
neuralnet |
idFeedforwardNetwork |
脚本与旧的名字仍然正常运行,尽管他们会产生一个警告。考虑使用新名称继续兼容新开发的功能和算法。没有计划排除这些对象名称的使用
R2021a:不推荐使用先前的非线性估计量的属性
从R2021a开始,对象的属性映射,以前被称为非线性估计被重组。这些对象wavenet
(W),sigmoidnet
(年代)treepartition
(T)customnet
(C)线性
(L)。不适用于属性更改neuralnet
。pre-R2021a属性的使用下表是气馁。然而,软件仍然接受命令,设置这些属性。没有计划排除这种命令。
Pre-R2021a财产 | R2021a财产 | 适用的映射对象 |
---|---|---|
NumberOfUnits |
NonlinearFcn.NumberOfUnits |
W S、T、C |
LinearTerm |
LinearFcn.Use ,Offset.Use |
W S C |
参数 |
分成三部分:
|
W S、T、C、L
|
选项 |
NonlinearFcn.Structure |
W T |
MATLAB명령
다음MATLAB명령에해당하는링크를클릭했습니다。
명령을실행하려면MATLAB명령창에입력하십시오。웹브라우저는MATLAB명령을지원하지않습니다。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。