主要内容

nlhwOptions

选项设置nlhw

描述

例子

选择= nlhwOptions创建默认的选项设置nlhw。使用点符号来定制选项设置,如果必要的。

例子

选择= nlhwOptions (<一个href="#namevaluepairarguments" class="intrnllnk">名称,值)创建一个选项设置和选项指定一个或多个名称,值对参数。您没有指定的选项保持默认值。

例子

全部折叠

创建评估选项设置nlhw查看评估进展,使用Levenberg-Marquardt搜索方法,并设置最大迭代步骤50

选择= nlhwOptions;opt.Display =“上”;opt.SearchMethod =“lm”;opt.SearchOptions。MaxIterations= 50;

加载数据和估计模型。

负载iddata3sys = nlhw (z3、[4 2 1] idSigmoidNetwork, idPiecewiseLinear,选择);

创建一个选项设置nlhw地点:

  • 初始条件估计的估计数据。

  • 子空间高斯牛顿最小二乘法用于估计。

选择= nlhwOptions (“InitialCondition”,“估计”,“SearchMethod”,“gn”);

输入参数

全部折叠

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:nlhwOptions (“InitialCondition”,“估计”)

在评估使用处理初始条件nlhw,指定为逗号分隔两人组成的InitialCondition和下列之一:

  • “零”——初始条件设置为0。

  • “估计”——初始条件被视为独立的估计参数。

评估进展显示设置,指定为逗号分隔组成的“显示”和下列之一:

  • “关闭”——没有任何进展或结果信息显示。

  • “上”——信息模型结构和评估结果显示在一个progress-viewer窗口。

选择规范化评估数据,指定为真正的。如果正常化真正的,那么该算法使用中指定的方法NormalizationOptions规范化的数据。

因为饱和、死区和分段线性非线性物理意义,您必须使用时谨慎考虑正常化指定初始值。然而,即使正常化是真的,软件会自动禁用这些非线性归一化时设置的属性NormalizationOptions.NormalizationMethod“汽车”

选项设置配置规范化,指定为下表所示的选项。第一个选项,NormalizationMethod算法使用,确定哪些方法。默认的选项是“汽车”。一般来说,对idnlhw模型,设置的“汽车”相当于一个设置的“中心”。但是,如果您的模型包括的任何非线性估计有物理意义的参数idSaturation,idDeadzone,idPiecewiseLinear——设置“汽车”结果在软件禁用这些估计正常化。

除了“medianiqr”,每个特定的方法NormalizationMethod都有一个关联的配置选项,如CenterMethodType当你指定“中心”方法。关于这些方法的更多信息,请参见MATLAB®函数<一个href="//www.tatmou.com/help/matlab/ref/double.normalize.html">正常化

方法或方法的选择 价值 描述 默认的
NormalizationMethod “汽车” 自动设置方法。

“汽车”

(相当于“中心”)

“汽车”设置禁用输入和输出归一化idSaturation,idDeadzone,idPiecewiseLinear非线性。

“中心” 数据中心的意思是0。
“zscore” z分数平均值为0和标准偏差1。
“规范” 2-norm。
“规模” 规模的标准差。
“范围” 重新调节范围的数据(最小,最大)。
“medianiqr” 数据中心和规模1 0中位数和四分位范围。

CenterMethodType(适用于“中心”)

“的意思是” 中心意思是0。 “的意思是”
“中值” 中心值0。

ZScoreType(适用于“zscore”)

“性病” 中心和规模意味着0和标准偏差1。 “性病”
“稳健” 中心和规模值0,平均绝对偏差1。

ScaleMethodType(适用于“规模”)

“性病” 规模的标准差。 “性病”
“疯了” 规模的平均绝对偏差。
“差” 四分位范围规模。
“第一” 规模数据的第一个元素。

NormValue(适用于“规范”)

积极的实际价值 p-norm,p是一个正整数。 2

范围(适用范围)

2-element行向量 重新调节范围的数据表单的一个区间[b],在那里一个<b [0 1]

权重在多输出预测误差模型的估计,指定为逗号分隔组成的“OutputWeight”和下列之一:

  • “噪音”——自动计算最优加权估计噪声方差的倒数。这个权重最小化依据(E”* E),在那里E矩阵的预测错误。当使用该选项不可用“lsqnonlin”作为一个“SearchMethod”

  • 一个半正定矩阵,W的数量,大小等于输出。这个权重最小化跟踪(E”* E * W / N),在那里E矩阵的预测错误和吗N是数据样本的数量。

选择正规化的估计模型参数,指定为逗号分隔组成的“正规化”和一个结构域:

字段名 描述 默认的
λ 偏差和方差平衡常数,指定为负的标量。 0- - - - - -表示没有正规化。
R 加权矩阵,指定为一个向量的非负标量或广场半正定矩阵。长度必须等于模型中的自由参数的数量,np。使用<一个href="//www.tatmou.com/help/ident/ref/idmodel.nparams.html">nparams命令来确定模型参数的数量。 1:表示的值眼睛(np)
名义上的

自由参数的标称值对被评估期间,指定为以下之一:

  • “零”——拉参数为零。

  • “模型”——拉在初始模型参数对预先存在的值。使用这个选项只有当你well-initializedidnlhw模型与有限的参数值。

“零”

指定字段值正则化,创建一个默认的nlhwOptions设置和修改字段使用点符号。任何字段,你不要修改保留默认值。

选择= nlhwOptions;opt.Regularization。λ= 1.2;opt.Regularization。R = 0.5 *眼(np);

正则化技术用于指定模型弹性约束,减少不确定性的估计参数值。有关更多信息,请参见<一个href="//www.tatmou.com/help/ident/ug/regularized-estimates-of-model-parameters.html" class="a">正则化模型参数的估计。

数值搜索方法用于迭代参数估计中,指定为下表中的值之一。

SearchMethod 描述
“汽车”

自动选择方法

线搜索算法的组合,“gn”,“lm”,“玲娜”,“研究生”在每一次迭代时,试着在序列。第一个下降方向导致减少使用估计的成本。

“gn”

子空间高斯牛顿最小二乘搜索。

雅可比矩阵的奇异值小于GnPinvConstant * eps *马克斯(大小(J)) *规范(J)被丢弃在计算搜索方向。J雅可比矩阵。海赛矩阵的近似JTJ。如果这个方向没有改进,功能梯度方向。

“玲娜”

自适应子空间高斯牛顿搜索。

特征值小于γ*马克斯(sv)黑森被忽略的sv包含黑森的奇异值。剩下的子空间的高斯牛顿方向计算。γ的初始值InitialGnaTolerance(见先进的“SearchOptions”的更多信息)。这个值是增加的因素LMStep每次的搜索没有找到一个较低的价值标准在不到五两断。这个值是下降的因素2 * LMStep每次搜索成功没有任何两断。

“lm”

Levenberg-Marquardt最小二乘搜索

每个参数值-pinv (H + d *我)*毕业生从之前的值。H海赛,是单位矩阵,研究生梯度。d是一个数量,增加到一个较低的价值标准。

“研究生”

最陡下降最小二乘搜索。

“lsqnonlin”

Trust-region-reflective算法<一个href="//www.tatmou.com/help/optim/ug/lsqnonlin.html">lsqnonlin(优化工具箱)

  • 需要优化工具箱™软件。

“fmincon”

约束非线性动力学。

您可以使用序贯二次规划(SQP)和trust-region-reflective算法的<一个href="//www.tatmou.com/help/optim/ug/fmincon.html">fmincon(优化工具箱)解算器。如果你有优化工具箱软件,您还可以使用的内点和有效集算法fmincon解算器。指定的算法SearchOptions.Algorithm选择。的fmincon算法可能导致改进评估结果在以下场景:

  • 当边界约束的最小化问题对模型参数。

  • 模型结构的损失函数是一个非线性、非光滑函数的参数。

  • 输出模型估计。行列式<一个href="//www.tatmou.com/help/ident/ug/model-quality-metrics.html" class="a">损失函数在默认情况下是最小化输出模型估计。fmincon直接算法能够减少这种损失函数。其他搜索方法等“lm”“gn”由交替最小化损失函数行列式估计噪声方差和减少损失值对于一个给定的噪声方差值。因此,fmincon算法可以提供更好的输出模型估计的效率和准确性。

搜索算法选项设置,指定为逗号分隔组成的“SearchOptions”和搜索选项设置字段的值取决于SearchMethod

SearchOptions结构时SearchMethod被指定为“gn”,“玲娜”,“lm”,“研究生”,或“汽车”

字段名 描述 默认的
宽容

最低百分比区别的当前值损失函数及其预期改善在下一次迭代之后,指定为一个积极的标量。当预期改善的百分比小于宽容,迭代停止。估计预期的损失函数的改进在下一次迭代是基于高斯牛顿向量计算当前参数值。

1 e-5
MaxIterations

最大数量的迭代期间损失函数最小化,指定为一个正整数。迭代停止时MaxIterations达到或另一个停止准则是满意,如宽容

设置MaxIterations = 0启动过程的返回结果。

使用sys.Report.Termination.Iterations得到实际的迭代次数在估计,在哪里sys是一个idtf模型。

20.
先进的

高级搜索设置,指定为一个结构有以下字段:

字段名 描述 默认的
GnPinvConstant

雅可比矩阵奇异值阈值,指定为一个积极的标量。雅可比矩阵的奇异值小于GnPinvConstant *马克斯(大小(J) *规范(J) * eps)被丢弃在计算搜索方向。适用时<一个href="#buperj4_sep_shared-SearchMethod" class="intrnllnk">SearchMethod“gn”

10000年
InitialGnaTolerance

初始值的γ,指定为一个积极的标量。适用时SearchMethod“玲娜”

0.0001
LMStartValue

起始值搜索方向的长度d在Levenberg-Marquardt方法中,指定为一个积极的标量。适用时SearchMethod“lm”

0.001
LMStep

的大小Levenberg-Marquardt一步,指定为一个正整数。下一个值搜索方向的长度dLevenberg-Marquardt方法LMStep前一个。适用时SearchMethod“lm”

2
MaxBisections

最大数量的二分用于线搜索的搜索方向,指定为一个正整数。

25
MaxFunctionEvaluations

最大数量的调用模型文件,指定为一个正整数。迭代停止如果调用模型文件的数量超过这个值。

MinParameterChange

最小的参数更新允许每个迭代,指定为负的标量。

0
RelativeImprovement

相对改进阈值,指定为负的标量。准则函数的迭代停止如果相对改善小于这个值。

0
StepReduction

一步减少因素,指定为一个积极的标量,大于1。建议参数更新减少的因素StepReduction每次试一试。这一直持续到MaxBisections努力完成或一个较低的值的判别函数。

StepReduction并不适用于SearchMethod“lm”(Levenberg-Marquardt方法)。

2

SearchOptions结构时SearchMethod被指定为“lsqnonlin”

字段名 描述 默认的
FunctionTolerance

终止宽容的损失函数最小化来确定的软件估计参数值,指定为一个积极的标量。

的价值FunctionTolerance是一样的吗opt.SearchOptions.Advanced.TolFun

1 e-5
StepTolerance

终止宽容估计参数值,指定为一个积极的标量。

的价值StepTolerance是一样的吗opt.SearchOptions.Advanced.TolX

1 e-6
MaxIterations

最大数量的迭代期间损失函数最小化,指定为一个正整数。迭代停止时MaxIterations达到或另一个停止准则是满意,如FunctionTolerance

的价值MaxIterations是一样的吗opt.SearchOptions.Advanced.MaxIter

20.
先进的

高级搜索设置,指定为一个选项设置lsqnonlin

有关更多信息,请参见优化选项表中<一个href="//www.tatmou.com/help/optim/ug/optimization-options-reference.html" class="a">优化选项(优化工具箱)

使用optimset (“lsqnonlin”)创建一个默认的选项集。

SearchOptions结构时SearchMethod被指定为“fmincon”

字段名 描述 默认的
算法

fmincon优化算法,指定为以下之一:

  • “sqp”——序贯二次规划算法。迭代算法满足边界,并且可以恢复结果。它不是一个大规模的算法。有关更多信息,请参见<一个href="//www.tatmou.com/help/optim/ug/choosing-the-algorithm.html" class="a">大型和中型的算法(优化工具箱)

  • “trust-region-reflective”-子空间基于interior-reflective牛顿方法的信赖域方法。这是一个大规模的算法。

  • “内点”-大规模算法需要优化工具箱软件。迭代算法满足边界,并且可以恢复结果。

  • “激活集”——需要优化工具箱软件。算法可以采取大的步骤,这增加了速度。它不是一个大规模的算法。

关于算法的更多信息,请参阅<一个href="//www.tatmou.com/help/optim/ug/constrained-nonlinear-optimization-algorithms.html" class="a">约束非线性优化算法(优化工具箱)和<一个href="//www.tatmou.com/help/optim/ug/choosing-the-algorithm.html" class="a">选择算法(优化工具箱)

“sqp”
FunctionTolerance

终止宽容的损失函数最小化来确定的软件估计参数值,指定为一个积极的标量。

1 e-6
StepTolerance

终止宽容估计参数值,指定为一个积极的标量。

1 e-6
MaxIterations

最大数量的迭代期间损失函数最小化,指定为一个正整数。迭代停止时MaxIterations达到或另一个停止准则是满意,如FunctionTolerance

One hundred.

指定字段值SearchOptions,创建一个默认的nlhwOptions设置和修改字段使用点符号。任何字段,你不要修改保留默认值。

选择= nlhwOptions;opt.SearchOptions。MaxIterations= 50; opt.SearchOptions.Advanced.RelImprovement = 0.5;

更多高级选项,指定为逗号分隔组成的“高级”和一个结构域:

字段名 描述 默认的
ErrorThreshold 阈值调整时的重量从二次线性大错误,指定为负的标量。错误比ErrorThreshold倍标准差估计有一个线性重量损失函数。标准差估计强劲的平均绝对偏差值的预测错误,除以0.7。如果你估计数据包含异常值,试着设置ErrorThreshold1.6 0——会导致一个纯粹的二次损失函数。
最大尺寸 最大数量的元素在一个段分为段,输入-输出数据时指定为一个正整数。 250000年

指定字段值先进的,创建一个默认的nlhwOptions设置和修改字段使用点符号。任何字段,你不要修改保留默认值。

选择= nlhwOptions;opt.Advanced。ErrorThreshold = 1.2;

输出参数

全部折叠

选项设置nlhw,作为一个返回nlhwOptions选项设置。

版本历史

介绍了R2015a

全部展开

另请参阅