为什么利用MATLAB拟合得到的多项式函数R=0.9992,而求出来的Z值与实际Z值误差却很大?
以下是MATLAB拟合结果:
Linear model Poly55:
f(x,y) = p00 + p10*x + p01*y + p20*x^2 + p11*x*y + p02*y^2 + p30*x^3 + p21*x^2*y
+ p12*x*y^2 + p03*y^3 + p40*x^4 + p31*x^3*y + p22*x^2*y^2
+ p13*x*y^3 + p04*y^4 + p50*x^5 + p41*x^4*y + p32*x^3*y^2
+ p23*x^2*y^3 + p14*x*y^4 + p05*y^5
Coefficients (with 95% confidence bounds):
p00 = 0.0226 (-0.06975, 0.115)
p10 = 0.2718 (0.06219, 0.4814)
p01 = -0.6836 (-3.116, 1.748)
p20 = 9.223 (8.684, 9.762)
p11 = -6.219 (-10.63, -1.808)
p02 = 8.048 (-17.54, 33.64)
p30 = -7.992 (-9.399, -6.586)
p21 = -154.4 (-162.9, -146)
p12 = 53.07 (18.3, 87.84)
p03 = -46.51 (-181, 87.95)
p40 = -264.8 (-268.5, -261)
p31 = 92.77 (78.05, 107.5)
p22 = 845.7 (801.2, 890.2)
p13 = -199.8 (-321.4, -78.15)
p04 = 132.5 (-220.4, 485.3)
p50 = 16.18 (5.436, 26.93)
p41 = 1226 (1207, 1246)
p32 = -260.5 (-298.9, -222.1)
p23 = -1520 (-1598, -1442)
p14 = 279.7 (120.4, 438.9)
p05 = -149.1 (-519, 220.9)
Goodness of fit:
SSE: 4.894e-09
R-square: 0.9992
Adjusted R-square: 0.9992
RMSE: 1.347e-06
但是通过excel里的数据发现,误差大都很大,甚至达到200%,有大神解答一下吗,或者有没有更好的方案?谢谢各位@月只蓝
由于你是利用拟合工具箱做,其结果你注意到了吗?得到的拟合值是不完全确定的,但满足95%的置信度,所以你应该用其他的拟合函数来求解。
个别数据误差大没有关系。你这残差和均方根都不大,可能你数据比较小。拟合效果来看已经不错了,是不是代入计算有误,这个不是有个拟合效果图对比图么,看看就知道了
求大佬看一下
1楼的原因是否是因为参数数值精度取得不够?多项式拟合(超过4次或5次),精度对最终结果的影响有时是非常大的。
那您的意思是我需要对多项拟合的次数进行调整吗,但是如果换为低次的多项式拟合 R-square就会变得越小,拟合效果会变差
,
不是,求得的参数小数点后位数多取点,比如:p00 = 0.0226,只取到小数点后4位,取16位试试,所有参数。