多项式回归、非线性回归模型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

多项式回归、非线性回归模型

关键词:回归方程的统计检验、拟合优度检验、回归方程的显著性检验、F 检验、回归系数的显著性检验、残差分析、一元多项式回归模型、一元非线性回归模型

一、回归方程的统计检验 1. 拟合优度检验

1. 概念介绍

SST 总离差平方和total SSR 回归平方和regression SSE 剩余平方和error

∑∑∑∑====--=

---

=n

i i i

n

i i i

n

i i i

n

i i i

y y

y y y y

y

y R 1

2

1

2

12

12

2)()ˆ()()ˆ(1

2. 例题1

存在四点(-2,-3)、(-1,-1)、(1,2)、(4,3)求拟合直线与决定系数。

2. 回归方程的显著性检验

)

2/()2/()ˆ()ˆ(1

212

-=

---=

∑∑==n SSE SSA

n y

y

y y

F n

i i i n

i i i

例6(F 检验)

在合金钢强度的例1中,我们已求出了回归方程,这里考虑关于回归方程的显著性检验,经计算有:

表5 X 射线照射次数与残留细菌数的方差分析表

这里值很小,因此,在显著性水平0.01下回归方程是显著的。 3. 回归系数的显著性检验 4. 残差分析

二、一元多项式回归模型

模型如以下形式的称为一元多项式回归模型:

0111a x a x a x a y n n n n ++++=--

例1(多项式回归模型)

为了分析X 射线的杀菌作用,用200千伏的X 射线来照射细菌,每次照射6分钟,用平板计数法估计尚存活的细菌数。照射次数记为t ,照射后的细菌数为y 见表1。试求:

(1)给出y 与t 的二次回归模型。

(2)在同一坐标系内作出原始数据与拟合结果的散点图。 (3)预测16=t 时残留的细菌数。

(4)根据问题的实际意义,你认为选择多项式函数是否合适?

表1 X 射线照射次数与残留细菌数

程序1 t=1:15;

y=[352 211 197 160 142 106 104 60 56 38 36 32 21 19 15]; p=polyfit(t,y,2)%作二次多项式回归 y1=polyval(p,t);%模型估计与作图

plot(t,y,'-*',t,y1,'-o');%在同一坐标系中做出两个图形 legend('原始数据','二次函数') xlabel('t(照射次数)')%横坐标名 ylabel('y(残留细菌数)')%纵坐标名 t0=16;

yc1=polyconf(p,t0)%预测t0=16时残留的细菌数,方法1 yc2=polyval(p,t0)%预测t0=16时残留的细菌数,方法2 即二次回归模型为:

8967.3471394.519897.121+-=t t y

图1 原始数据与拟合效果的散点图

原始数据与拟合结果的散点图如图所示,从图形可知拟合效果较好。照射16次后,用二次函数计算出细菌残留数为39.0396,显然与实际不符。由实际问题的意义可知,尽管二次多项式拟合效果较好,但是用于预测并不理想。因此如何根据原始数据散点图的规律,选择适当的回归曲线是非常重要的,这样就有必要给出非线性回归模型。

三、一元非线性回归模型

为了便于正确选择合适的函数进行回归分析建模,我们给出通常选择的6类曲线: (1)双曲线

x

b

a y +=1(如图所示) (2)幂函数曲线b

ax y =,其中0>x ,(如图所示) (3)指数曲线,其中参数(如图所示) (4)倒指数曲线,其中(如图所示)

(5)对数曲线(如图所示) (6)S 型曲线x

be

a y -+=

1

,其中(如图所示) 非线性回归建模通常有两种方法:一是通过适当的变换转化为线性回归模型,例如双曲线模型

(如图1所示),如果作变换y y 1

=',则有x b a y '+=',此时就是线性回归模型。如果无法实现线性化,可以利用最小二乘法直接建立非线性回归模型,求解最佳参数。

例2(非线性回归模型、置信区间)

炼钢厂出钢时所用盛钢水的钢包,由于钢水对耐火材料的侵蚀,容积不断增大,我们希望找出使用次数与增大容积之间的函数关系。实验数据见表2。

t(照射次数)

y (残留细菌数)

0>a bx

ae y =0>a x b ae

y /=0>a x b a y ln +=0>ab x b a y +=1x

x 1='

(1)建立非线性回归模型

x

b a y +=1; (2)预测钢包使用170=x 次后增大的容积0y ; (3)计算回归模型参数的置信度为95%的置信区间。

表2 钢包使用次数与增大容积

解:(1)建立非线性回归模型: 程序2 x=[2:16];

y= [6.42 8.2 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.6 10.8 10.6 10.9 10.76]; %建立非线性双曲线回归模型 b0=[0.084,0.1436];%回归系数初值

fun=inline('x./(b(1)*x+b(2))','b','x');%建立函数

[beta,r,J]=nlinfit(x,y,fun,b0);%非线性拟合命令;其中,beta 表示最佳回归系数的估计值,r 是残差,J 是雅可比矩阵

beta%输出最佳参数

y1=x./(0.0845*x+0.1152);%拟合曲线 plot(x,y,'*',x,y1,'-or')

legend('原始数据','拟合曲线')%legend 为图例命令

初始值要先计算后才能得到上面程序中的b0,选择已知程序中的点(2,6.42)和点(16,10.76),可选择手工方法解方程,也可利用以下MATLAB 程序求解。

程序3

[a,b]=solve('1/6.42=a+b/2','1/10.76=a+b/16')%解方程

注:当所求解的方程过于复杂时,MATLAB 运行会出现错误,此时需将方程尽量化简后再进行求解,如以下形式:

[a,b]=solve('6.42*(2*a+b)=2','10.76*(16*a+b)=16')

运行程序3可得到最佳参数为、,求解得到钢包使用次数与增大容积的非线性拟合图,如图2所示。

0845.0=a 1152.0=b

相关文档
最新文档