NonlinearModelFit
NonlinearModelFit[{{x1,y1},{x2,y2},…},form,{β1,…},x]
构建公式为 form 的非线性模型,使用自由参数 βi 拟合每个 xi 的 yi.
NonlinearModelFit[data,form,params,{x1,…}]
构建一个非线性模型,其中 form 与变量 xk 相关.
NonlinearModelFit[data,{form,cons},params,{x1,…}]
在参数约束 cons 下构建一个非线性模型.
更多信息和选项
- NonlinearModelFit 尝试使用具有自由参数的普通的数学公式模拟输入数据.
- NonlinearModelFit 给出形为 的非线性模型,假设原始的 服从均值为 和具有常见标准差的独立正态分布.
- NonlinearModelFit 返回一个符号 FittedModel 对象,表示构建的线性模型. 模型的属性可以从 model["property"] 得到.
- NonlinearModelFit 在特定点 x1,… 的最佳拟合函数的值可以从 model[x1,…] 得到.
- NonlinearModelFit[data,form,pars,vars] 得到的最佳拟合函数和 FindFit[data,form,pars,vars] 的结果相同.
- NonlinearModelFit[data,form,{{β1,val1},…},vars] 从 {β1->val1,…} 开始搜索拟合值.
- data 的可能的形式为:
-
{y1,y2,…} 与形式 {{1,y1},{2,y2},…} 等价 {{x11,x12,…,y1},…} 独立值 xij 列表和响应 yi {{x11,x12,…}y1,…} 输入值和响应构成的规则列表 {{x11,x12,…},…}{y1,y2,…} 输入值列表和响应构成的规则 {{x11,…,y1,…},…}n 拟合矩阵的第 n 列 - 在多元数据的情况下,如 ,坐标 xi1、xi2、… 的数量应等于变量 xi 的数量.
- 数据点可以是近似实数. 不确定性可以用 Around 来指定.
- NonlinearModelFit 采用下列选项:
-
AccuracyGoal Automatic 搜索的准确度 ConfidenceLevel 95/100 参数和预测的置信度 EvaluationMonitor None 当计算 form 时,需要计算的表达式 Gradient Automatic form 的梯度分量列表 MaxIterations Automatic 使用迭代的最大数量 Method Automatic 使用的方法 PrecisionGoal Automatic 搜索的精度 StepMonitor None 当运用步长时,计算的表达式 VarianceEstimatorFunction Automatic 估计误差方差的值或函数 Weights Automatic 数据元素的权 WorkingPrecision Automatic 内部计算的精度 - 在 ConfidenceLevel->p 下,对参数和预测区间计算概率-p 的置信区间.
- 在设置 Weights->{w1,w2,…} 下,yi 的误差方差被假定为与 成比例.
- 在设置 Weights->Automatic 下,如果数据包含精确值,则权重将设置为 1. 如果数据包含 Around 值,则权重将设置为 ,其中 为总响应方差.
- 总响应方差 是初始响应方差 Δyi2 和独立值方差 的函数.
- 不确定性 通过使用 AroundReplace 在模型中传播,并将得到的方差加到响应方差 Δyi2. 根据 Fasano 和 Vio 方法,FindRoot 函数在内部用于寻找自洽解.
- 设置 VarianceEstimatorFunction->f,普通的方差通过 f[res,w] 估计,其中 res={y1-,y2-,…} 是残差列表, w 是权列表.
- 用 VarianceEstimatorFunction->(1&) 和 Weights->{1/Δy12,1/Δy22,…}, Δyi 视为已知的测量不确定度 yi,参数标准误差实际上仅从权计算.
- Method 的可能设置包括:
-
"ConjugateGradient" 非线性共轭梯度 "Gradient" 梯度递减 "LevenbergMarquardt" 最小二乘法的高斯-牛顿方法 "Newton" 牛顿方法 "QuasiNewton" 拟牛顿 BFGS 法 "InteriorPoint" 内点法 "NMinimize" 使用 NMinimize 进行最优化 Automatic 自动默认方法 - 可以用形式 Method->{…,opts} 给出其他方法子选项.
- Method 选项可以采用教程“非约束最优化:局部极小化方法”中指定的任何局部优化方法. »
- 可用 "NMinimize" 方法的子方法指定任何全局优化方法. 可以在“约束全局最优化的数值算法”教程中找到这些方法. »
- 对于约束模型,基于近似正态的属性可能不是有效的. 当计算这样的变量时,同时也产生一个警告信息.
- 用 model["property"] 得到的数据和拟合函数的属性包括:
-
"BestFit" 拟合函数 "BestFitParameters" 参数估计 "Data" 输入数据 "Function" 最佳拟合的纯函数 "Response" 输入数据中的响应值 "Weights" 用于拟合数据的权值 - 残差类型包括:
-
"FitResiduals" 具体响应和预测响应的差异 "StandardizedResiduals" 通过除以每个残差的标准误差的拟合残差 "StudentizedResiduals" 通过除以单个删除误差估计的拟合残差 - 与平方误差和相关的属性包括:
-
"ANOVA" 方差数据分析 "EstimatedVariance" 误差方差的估计 - 参数估计的属性包括:
-
"CorrelationMatrix" 渐近线的参数相关矩阵 "CovarianceMatrix" 渐近线的参数协方差矩阵 "ParameterEstimates" 拟合参数信息表 "ParameterBias" 参数估计的估计偏差 "ParameterConfidenceRegion" 椭圆参数的置信区域 - 曲率诊断的属性包括:
-
"CurvatureConfidenceRegion" 曲率诊断的置信区间 "FitCurvature" 拟合曲率信息表 "MaxIntrinsicCurvature" 最大内在曲率的测量 "MaxParameterEffectsCurvature" 最大参数效果曲率的测量 - 影响度量的相关属性包括:
-
"HatDiagonal" 帽子矩阵的对角元素 "SingleDeletionVariances" 方差估计列表,忽略第 个数据点 - 预测值属性包括:
-
"MeanPredictionBands" 均值预测的置信带 "MeanPredictions" 均值预测的置信区间 "PredictedResponse" 数据的拟合值 "SinglePredictionBands" 基于单个观察值的置信带 "SinglePredictions" 单个观察值预测响应的置信区间 - 拟合优度度量的属性包括:
-
"AdjustedRSquared" 模型参数数量的 调整 "AIC" Akaike 信息标准 "AICc" 有穷样本校正 AIC "BIC" 贝叶斯信息标准 "RSquared" 决定系数
选项
属性
范例
打开所有单元关闭所有单元范围 (15)
数据 (7)
属性 (8)
推广和延伸 (2)
使用 ParametricNDSolveValue 缓存微分方程的解,使计算速度更快:
选项 (10)
ConfidenceLevel (1)
Method (3)
使用 NMinimize 的全局优化方法进行更仔细的搜索:
Weights (4)
使用 Around 值为数据点赋予不同的权重:
在独立值和响应中使用 Around 值:
在某些情况下,处理自变量不确定性的求根算法在使用标准选项设置时可能不会收敛:
使用 FixedPoint 算法,设置较低的阻尼因子和较高的 MaxIterations 来达到收敛:
WorkingPrecision (1)
属性和关系 (5)
假设正态分布误差,NonlinearModelFit 拟合线性和非线性模型:
假设正态分布误差,LinearModelFit 拟合线性模型:
FindFit 和 NonlinearModelFit 拟合等价模型:
NonlinearModelFit 允许提取拟合的其它信息:
NonlinearModelFit 假设正态分布响应:
LogitModelFit 假设二项分布响应:
对于 ProbitModelFit 是相同的:
NonlinearModelFit 会使用一个 TimeSeries 的时间戳作为变量:
NonlinearModelFit 在多路径 TemporalData 上顺向操作:
可能存在的问题 (3)
NonlinearModelFit 中的决定系数 使用未校正数据计算:
文本
Wolfram Research (2008),NonlinearModelFit,Wolfram 语言函数,https://reference.wolfram.com/language/ref/NonlinearModelFit.html.
CMS
Wolfram 语言. 2008. "NonlinearModelFit." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/NonlinearModelFit.html.
APA
Wolfram 语言. (2008). NonlinearModelFit. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/NonlinearModelFit.html 年