MATLAB Curve Fitting Toolbox拟合结果统计数据的含义

 

最近常用Curve Fitting Toolbox(以下简称CFT)处理数据,在直观的比较各种参数配置下拟合结果的时候,也常常会好奇各种统计数据的含义。今天无意中找到一些用户手册中的详细解释,觉得有用,特分享给各位亲。以下内容大部分取自手册,只不过翻译成了国文。^_^

MATLAB Curve Fitting Toolbox拟合结果统计数据的含义_第1张图片

上面这副截图是一个典型的多种参数配置的统计结果比较。其中,主要使用了两种拟合方法:多项式拟合以及自定义表达式拟合;多项式拟合使用了不同阶次的参数,从2次、3次……一直到6次。下面就解释一下各个统计值的主要含义。

SSE 是拟合误差的平方和。它越接近0,说明拟合结果推断的准确性越高。
注:SSE的完整公式为




其中wi为权值,yi为测量值,戴草帽的yi为估计值。

R-Square 是表达值(即实测数据)与推测值(即用拟合模型计算的数据)之间相关系数的平方值(我猜可能是为了统一评估正负相关性才会使用平方)。它越接近1,说明模型能更好地解释变量间的比例关系。换言之,两组数据的相关性更好。
注:R-Square的完整公式有点复杂:

 

其中,

 




DFE 是误差的自由度。
Adj R-sq 是按照误差自由度调整后的R-square。它越接近1,说明拟合结果越好。请注意,按照R-Square的计算方法,只要增加系数(见下面的#Coef参数)就会使R-Square 增加,而Adj R-Sq则综合考虑误差自由度,所以选这个参数判断更合理些。
RMSE 是均方差,又称标准误差(注意不是标准差)。它越接近0说明拟合结果的推断越有用。
#Coeff 是模型的系数的数量。如果多个拟合结果的统计数据有接近的拟合优良性(goodness-of-fit),那就使用系数最少的模型作为最好拟合结果的评判标准。在拟合时,一定要权衡一下优良性和系数数量之间的平衡关系,否则可能会过拟合(overfitting)。

最后,作为一个有奖问答,各位综合以上指标,会选择哪一个参数配置(exp,poly2,……,poly6)作为最好的拟合结果呢?提示:请一定不要单纯地考虑SSE和R-Square。

计时开始…… 

好吧!我承认不少人看这个帖子可能都不想白白再多死脑细胞,那就看看下面的答案吧!(看不见的亲请用鼠标选中文字,因为是用白色,所以不会一眼看到,至少要动几秒钟的脑筋吧! )

 

答案:综合考虑SSE,R-Square和#Coeff,poly2~poly5是不错的选择。实际上,作为一个完整的例子,最佳选择是poly2,阶次为2以上的都过拟合了。

有关完整评判拟合结果好坏的例子且听下回分解!

 

补记:

1)2020/2/25, 更新了原来引用QQ空间出错的图像;

 

 

你可能感兴趣的:(科学计算)