1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第四部分 回归分析,回归分析的概念,一元线性回归,多元线性回归,多项式回归,非线性回归,逐步回归,4/10/2026,1,4.1,回归分析的概念,在工农业生产和科学研究中,常常需要研究变量之间的关系。变量之间的关系可以分为两类:确定性关系、非确定性关系。确定性关系就是指存在某种函数关系。然而,更常见的变量之间的关系存在着某种不确定性。例如:商品的销售量与当地人口有关,人口越多,销售量越大,但它们之间并没有确定性的数值关系,同样的人口,可能有不同的销售量。这种既有关联,又不存在确定性数值关系的相互关系
2、就称为,相关关系,。,回归分析就是研究变量之间相关关系的一种数理统计分析方法。在回归分析中,主要研究以下几个问题:,4/10/2026,2,4.1,回归分析的概念,(1),拟合,:建立变量之间有效的经验函数关系;,(2),变量选择,:在一批变量中确定哪些变量对因变量有显著影响,哪些没有实质影响;,(3),估计与检验,:估计回归模型中的未知参数,并且对模型提出的各种假设进行推断;,(4),预测,:给定某个自变量,预测因变量的值或范围。,根据自变量个数和经验函数形式的不同,回归分析可以分为许多类别。,4/10/2026,3,4.2,一元线性回归,一元线性回归模型,给定一组数据点,(x,1,y,1
3、),(x,2,y,2,),.,(,x,n,y,n,),,如果通过,散点图,可以观察出变量间大致存在线性函数关系,则可以建立如下模型:,其中,a,b,称为一元线性回归的回归系数;,表示回归值与测量值之间的误差。,针对该模型,需要解决以下问题:,(1),如何估计参数,a,b,以及,2,;,(2),模型的假设是否正确?,(3),如何应用所求的回归方程对试验指标进行预测。,4/10/2026,4,4.2,一元线性回归,回归系数的最小二乘估计,已知,(x,1,y,1,),(x,2,y,2,),.,(,x,n,y,n,),,代入回归模型得到:,采用最小二乘法(即使观测值与回归值的离差平方和最小):,4/
4、10/2026,5,4.2,一元线性回归,回归系数估计量的性质,4/10/2026,6,4.2,一元线性回归,对,2,的估计,对,a,b,2,的区间估计,4/10/2026,7,4.2,一元线性回归,样本相关系数及其显著性检验,显然:样本相关系数,R,的符号决定于,L,xy,,因此与相关系数,b,的符号一致。说明:,(1),当,R=0,时,,Lxy,=0,,因此,b=0,,说明,Y,的变化与,X,无关,此时,Y,与,X,毫无线性相关关系;,(2),当,R=,1,时,所有的样本点都在回归直线上,此时称,Y,与,X,完全线性相关,,R=1,,完全正相关,,R=-1,,完全负相关;,(3),当,0|
5、R|1,时,说明,X,与,Y,存在一定的线性相关关系,,0R1,,正相关;,-1 R,F,a,(,F*,为,F,的观测值),则拒绝假设即认为,X,与,Y,之间相关关系显著;否则认为,Y,与,X,不存在线性相关关系;也可使用,P=PFF*,来比较,若,P,F,a,),则拒绝假设即认为,X,与,Y,之间相关关系显著;一般使用时,,P,接近于,0,。,显著性检验:原假设,H,0,:,b=0,的值可以使用,polyfit,(),或,regress(),命令计算,用法参看,MATLAB,具体说明。,4/10/2026,9,4.2,一元线性回归,利用回归模型进行预测,当回归模型和系数通过检验后,可由给定的
6、x,0,值代入回归方程得到,Y,的点预测值,y,0,:,给定显著性水平,a,,可以得到,Y,的预测区间:,4/10/2026,10,4.2,一元线性回归,利用回归模型进行控制,观察值,y,在某个区间,(y,1,y,2,),取值时,应如何控制,x,的取值范围,使得响应的观察值落入指定区间的概率至少为,1-a.,解方程:,解得,x,1,x,2,,即可以得到,x,的控制区间的两个端点值。,x,1,x,2,y,2,y,1,4/10/2026,11,4.2,一元线性回归,异常数据的剔除,当用,regress(),命令得到回归模型的系数估计值和残差及残差置信区间时,由于残差符合均值为零的正态分布,所以残
7、差置信区间应该通过零点。用,rcoplot(r,rint,),画出残差图,由图可容易看出异常数据点,剔除这些异常点,重新进行回归分析,可使模型预测更精确。,4/10/2026,12,4.2,一元线性回归,例,4.1,人口预测,1949,年,1994,年我国人口数据资料如下:,年份,x,i,49 54 59 64 69 74 79 84 89 94,人数,y,i,5.4 6.0 6.7 7.0 8.1 9.1 9.8 10.3 11.3 11.8,建模分析我国人口增长的规律,预报,1999,、,2005,年我国人口数。,建模分析步骤:,(1),在坐标系上作观测数据的散点图。,(2),根据散点分布
8、的几何特征提出模型,(3),利用数据估计模型的参数,(4),计算拟合效果,(1),散点图,4/10/2026,13,4.2,一元线性回归,(2),人口线性增长模型,假设:人口随时间线性地增加,模型:,y=a+b x+,(3),利用数据估计模型的参数,观测值的模型:,y,i,=a+b x,i,+,i,,,i=1,n,拟合的精度,:Q=,i,2,=,(,y,i,-a b x,i,),2,误差平方和。,最小二乘法:求参数,a,和,b,,使得误差平方和最小。,用,MATLAB,中的,regress(),命令,可以算出:,a=2.032,,,b=0.148,模型:,y=2.032+0.148 x,(4)
9、拟合精度,Q=0.3280,R,2,=0.9928 ,F=1101.878 ,P=0,由,R,2,和,P,表明拟合效果很好!,(5),预报,当,X=99,时,,Y=12.62,亿,;,当,X=105,时,,Y=13.508,亿,4/10/2026,14,4.3,多元线性回归,多元线性回归模型,其中,i,称为多元线性回归的回归系数;,表示回归值与测量值之间的误差。,4/10/2026,15,4.3,多元线性回归,回归系数的最小二乘估计,已知,(x,i1,x,i2,.,x,im,y,i,),i,=1,2,.,n,,代入回归模型,利用最小二乘法可得到回归系数的最小二乘估计。令:,4/10/2026
10、16,4.3,多元线性回归,4/10/2026,17,4.3,多元线性回归,回归模型的检验,回归模型是否为线性函数形式?问题可转化为检验原假设:,H,0,:,1,=,2,=.=,m,=0,与一元回归分析一样,F,检验,命令说明等类似。,4/10/2026,18,4.3,多元线性回归,回归系数的检验,上个检验被拒绝时,表明回归系数不全为零,但不排除某个或某些系数为零。检验原假设:,H,0,:,i,=0,若假设成立,表明因素,X,i,对,Y,的影响不显著。,4/10/2026,19,4.3,多元线性回归,例,4.2,为了研究火柴销量与各因素间的回归关系,收集数据:,年份,火柴销量,y(,万件,)
11、煤气户数,x1(,万户,),卷烟销量,x2(,万箱,),蚊香销量,x3(,十万盒,),打火石,x4(,百万粒,),1971,17.84,27.43,21.43,11.09,25.78,1972,18.27,29.95,24.96,14.48,28.16,1973,20.29,33.53,28.37,16.97,24.26,1974,22.61,37.31,42.57,20.16,30.18,1975,26.71,41.16,45.16,26.39,17.08,1976,31.19,45.73,52.46,27.04,7.39,1977,30.5,50.59,45.3,23.08,3.88,1
12、978,29.63,58.82,46.8,24.46,10.53,1979,29.69,65.28,51.11,33.82,20.09,1980,29.25,71.25,53.29,33.57,21.22,4/10/2026,20,4.3,多元线性回归,MATLAB,实现:,x1=17.84,27.43,21.43,11.09,25.78;18.27,29.95,24.96,.,14.48,28.16;20.29,33.53,28.37,16.97,24.26;22.61,37.31,.,42.57,20.16,30.18;26.71,41.16,45.16,26.39,17.08;31.19
13、45.73,52.46,27.04,7.39;30.5,50.59,45.3,23.08,3.88;29.63,.,58.82,46.8,24.46,10.53;29.69,65.28,51.11,33.82,20.09;.,29.25,71.25,53.29,33.57,21.22;,x=ones(size(x1(:,1),x1(:,2:5);y=x1(:,1);,b,bint,r,rint,stats=regress(y,x,0.05),b=17.2597 0.0486 0.2218 0.0705 -0.2469,stats=0.9980 626.2680 0.0000 0.1011
14、Q=r*r=0.5057,2,=Q/n-2=0.0632,4/10/2026,21,4.4,多项式回归,一元多项式回归模型,可以转化为多元线性回归推导公式(略)。可用,polyfit(),命令实现。辅助命令:,polyval(),、,polyconj(),、,polytool(),等参看,MATLAB,帮助。,多元二项式回归模型,命令:,rstool(),参看,MATLAB,帮助。,4/10/2026,22,4.5,非线性回归,非线性回归命令:,nlinfit(),、,nlparci(),、,nlpredci(),、,nlintool(),等参看,MATLAB,帮助。,非线性回归转化为线性回
15、归:,如:,y=ae,bx,z=ln a+b x=a*+b x.,y=a x,b,z=ln y=ln,b ln x=a*+b u,y=1/(a,bx)z=1/y=a+bx.,y=x/(b+ax)z=1/y=a+b/x=a+b u,y=(1+ax)/(1+bx)?,y=cxe,-dx,?,y=L/(1+ce,ax,)?,4/10/2026,23,4.5,非线性回归,例,4.3,赛跑的成绩与赛跑距离,表列数据为,1977,年以前六个不同距离的中短距离赛跑成绩的世界纪录,.,距离,x(m)100 200 400 800 1000 1500,时间,t(s)9.95 19.72 43.86 102.4
16、133.9 212.1,试用这些数据建模分析赛跑的成绩与赛跑距离的关系,(1),散点图,用线性模型误差比较大,4/10/2026,24,4.5,非线性回归,(2),模型,假设:,t=a x,b,令 z=ln t,u=ln x,则有,:,z=ln t=ln ab ln x=a*+bu,(3),利用数据估计模型的参数,可以算出:,a*=3.0341,,,b=1.1453,a=e,a*,=0.0481,R,2,=0.9987 ,P=0,模型:,y=0.0481*x,1.1453,(4),拟合精度,拟合值:,9.395 20.782 45.968 101.679 131.288 208.88,原值:,
17、9.95 19.72 43.86 102.4 133.9 212.1,Q=23.5746,4/10/2026,25,4.6,逐步回归,实际问题中影响因变量的因素可能很多,我们希望从中挑选出影响显著的自变量来建立回归模型,这就涉及到变量选择的问题。逐步回归是一种从众多变量中有效选择重要变量的方法。以下只讨论线性回归的情况。,原理:若候选的自变量集合为,S=x,1,x,2,.,x,m,从中选出一个子集,S,1,,假设包含,k,个自变量,由,S,1,和因变量,y,构造的回归模型的误差平方和为,Q,,则模型的剩余平方和,s,2,=Q/(n-l-1),n,为数据样本容量。所选子集,S,1,应使,s,尽量
18、小。通常模型包含的自变量越多,,Q,越小,但若模型中包含有对,y,影响很小的量,那么,Q,不会由于包含这些变量在内而减少,反而可能因,k,的增大而增大,因此可将,s,2,最小作为衡量变量选择的一个数量标准。,4/10/2026,26,4.6,逐步回归,步骤:先确定一初始子集,然后每次从子集外影响显著的变量中引入一个对 有影响最大的,再对原来子集中的变量进行检验,从变得不显著得变量中剔除一个影响最小的,直到不能引入和剔除为止。,注意事项:一要适当地选定引入变量的显著性水平,a,in,和剔除变量的显著性水平,a,out,,显然,,a,in,越大,引入的额变量越多,,a,out,越大,剔除的变量越少
19、二在最初选择变量时应尽量选择相互独立性强的那些变量。,MATLAB,实现,:命令,stepwise(x,y,inmodel,alpha),x,是自变量数据,(n,行,m,列,),;,y,是因变量数据,(n,行,1,列,),;,inmodel,是矩阵,x,的列数的指标,给出初始模型中包括的子集,缺省时设定为全部自变量;,alpha,为显著性水平。,4/10/2026,27,4.4,逐步回归,例,4.4,为了研究火柴销量与各因素间的回归关系,收集数据:,年份,火柴销量,y(,万件,),煤气户数,x1(,万户,),卷烟销量,x2(,万箱,),蚊香销量,x3(,十万盒,),打火石,x4(,百万粒,)
20、1971,17.84,27.43,21.43,11.09,25.78,1972,18.27,29.95,24.96,14.48,28.16,1973,20.29,33.53,28.37,16.97,24.26,1974,22.61,37.31,42.57,20.16,30.18,1975,26.71,41.16,45.16,26.39,17.08,1976,31.19,45.73,52.46,27.04,7.39,1977,30.5,50.59,45.3,23.08,3.88,1978,29.63,58.82,46.8,24.46,10.53,1979,29.69,65.28,51.11,3
21、3.82,20.09,1980,29.25,71.25,53.29,33.57,21.22,4/10/2026,28,4.4,逐步回归,确定一个线性模型。,MATLAB,实现:,x1=17.84,27.43,21.43,11.09,25.78;18.27,29.95,24.96,.,14.48,28.16;20.29,33.53,28.37,16.97,24.26;22.61,37.31,.,42.57,20.16,30.18;26.71,41.16,45.16,26.39,17.08;31.19,.,45.73,52.46,27.04,7.39;30.5,50.59,45.3,23.08,3
22、88;29.63,.,58.82,46.8,24.46,10.53;29.69,65.28,51.11,33.82,20.09;.,29.25,71.25,53.29,33.57,21.22;,x=x1(:,2:5);y=x1(:,1);,stepwise(x,y),4/10/2026,29,4.4,逐步回归,stepwise,初始界面:,S,1,为空。,(,红色表示未加入,),4/10/2026,30,4.4,逐步回归,第一步:将最显著的,x,2,加入,S,1,。,4/10/2026,31,4.4,逐步回归,第二步:将,x,4,、,x,3,加入,S,1,(,可以看出剩余标准差,RMSE,在
23、减小,),4/10/2026,32,4.4,逐步回归,最后利用,regress(),求逐步回归后的回归方程:,x=ones(size(x1(:,1),x1(:,2:3),x1(:,5);y=x1(:,1);,b,bint,r,rint,st=regress(y,x),b=16.8107 0.0630 0.2522 -0.2383,即,y=16.8107+0.0630 x,1,+0.2522x,2,-0.2383x,4,st=0.9974 753.0367 0.0000 0.1121,stats=0.9980 626.2680 0.0000 0.1011,可以看到与例,4.2,相比,,F,值变大了,Q=0.6725,4/10/2026,33,






