How to| 获取拟合模型的结果
将数据拟合入一个模型中时,有一点往往比较重要,即获取额外的结果以对数据与拟合函数进行比较. 您可能会希望对参数的有效性进行检查,对模型的假设、数据点的影响以及拟合优度进行评估. 在 Wolfram 语言中,您可以从FittedModel 对象直接获取这些结果,该对象由 LinearModelFit、NonlinearModelFit 以及 GeneralizedLinearModelFit 等模型拟合函数返回.
使用 LinearModelFit 可以拟合一个简单的线性回归模型:
输出的是一个包含拟合及原始数据信息的 FittedModel 对象. 您可以直接从该对象得到结果并进行诊断.
使用 Normal 得到拟合模型的函数形式:
由于 FittedModel 对象的计算方式与函数相同,您可以直接使用 Plot 对其进行绘图:
您可以将数据点在拟合函数上进行可视化,方法是使用 Show 将数据点的 ListPlot 与上图合并:
FittedModel 对象还包含与所表示的模型类型(在此例中是一个线性模型)相关的许多结果和诊断量. 您可以通过 "Properties" 计算 FittedModel 以得到该模型可用性质的一个完整列表.
这里,Length 用于给出该模型已知性质的数目:
参数估计是否从统计学观点来说是有效的,即参数值是否显著不同于0,这个问题往往是非常重要的. 例如,对于一个线性模型,您或许会观察与该参数相关的 统计量的 值. 值是观察到一个 统计量至少比实际所得到的量距离零点远的概率.
对 FittedModel 使用 "ParameterTable",将显示一个表格,对参数估计、 统计量及 值进行总结:
您可使用其它属性单独获取 统计量 和 值. 如果想要基于这些性质计算其它结果,这样做尤其重要. 对 FittedModel 使用 "ParameterPValues" 仅对 值进行观察:
同时观察多个性质可以通过输入一个性质列表完成. 同时观察 统计量 及 值:
缺省返回的置信区间是 95%. 通过 ConfidenceLevel 选项您可以得到其它水平的置信区间.
使用 ListPlot 作出残差的视图:
尽管非线性和广义线性模型的可用性质有所不同,它们的结果和诊断量可用同种方式获得. 这些类型的模型拟合可用 NonlinearModelFit、GeneralizedLinearModelFit、LogitModelFit 或 ProbitModelFit 完成.
用 NonlinearModelFit 将数据拟合为一个指数模型:
与线性模型的情形相同,使用 Show 将数据点与模型的图形合并:
您也可以观察个别点处估计的列表式结果. 对FittedModel 使用 "SinglePredictionConfidenceIntervalTable" 以观察这样一个表格,表格中列出了预测值及其误差估计和置信区间:
首先,定义拟合函数在 80%、90%、95% 以及 99% 预测带上的函数:
对这些预测带界定的区域以及拟合函数制作视图,Filling 的使用使每个置信水平的区域更易于观察: