第八章 统计回归模型
- 格式:doc
- 大小:615.00 KB
- 文档页数:17
第八章 回归分析方法当人们对研究对象的内在特性和各因素间的关系有比较充分的认识时,一般用机理分析方法建立数学模型。
如果由于客观事物内部规律的复杂性及人们认识程度的限制,无法分析实际对象内在的因果关系,建立合乎机理规律的数学模型,那么通常的办法是搜集大量数据,基于对数据的统计分析去建立模型。
本章讨论其中用途非常广泛的一类模型——统计回归模型。
回归模型常用来解决预测、控制、生产工艺优化等问题。
变量之间的关系可以分为两类:一类叫确定性关系,也叫函数关系,其特征是:一个变量随着其它变量的确定而确定。
另一类关系叫相关关系,变量之间的关系很难用一种精确的方法表示出来。
例如,通常人的年龄越大血压越高,但人的年龄和血压之间没有确定的数量关系,人的年龄和血压之间的关系就是相关关系。
回归分析就是处理变量之间的相关关系的一种数学方法。
其解决问题的大致方法、步骤如下: (1)收集一组包含因变量和自变量的数据;(2)选定因变量和自变量之间的模型,即一个数学式子,利用数据按照最小二乘准则计算模型中的系数;(3)利用统计分析方法对不同的模型进行比较,找出与数据拟合得最好的模型; (4)判断得到的模型是否适合于这组数据; (5)利用模型对因变量作出预测或解释。
应用统计分析特别是多元统计分析方法一般都要处理大量数据,工作量非常大,所以在计算机普及以前,这些方法大都是停留在理论研究上。
运用一般计算语言编程也要占用大量时间,而对于经济管理及社会学等对高级编程语言了解不深的人来说要应用这些统计方法更是不可能。
MATLAB 等软件的开发和普及大大减少了对计算机编程的要求,使数据分析方法的广泛应用成为可能。
MATLAB 统计工具箱几乎包括了数理统计方面主要的概念、理论、方法和算法。
运用MATLAB 统计工具箱,我们可以十分方便地在计算机上进行计算,从而进一步加深理解,同时,其强大的图形功能使得概念、过程和结果可以直观地展现在我们面前。
本章内容通常先介绍有关回归分析的数学原理,主要说明建模过程中要做的工作及理由,如模型的假设检验、参数估计等,为了把主要精力集中在应用上,我们略去详细而繁杂的理论。
第八章 单方程回归模型的几个专题8.1虚拟变量(dummy variable )8.1.1 概念与用作在实际建模过程中,被解释变量不但受定量变量影响,同时还受定性变量影响。
例如需要考虑性别、民族、不同历史时期、季节差异、企业所有制性质等因素的影响。
这些因素也应该包括在模型中。
为此人们采取了一种构造人工变量的方法,将这些定性变量进行量化,使其能与数值变量一样在回归模型中得以应用。
构造的规则是当某种属性存在时,人工变量取值为1;当某种属性不存在时时,取值为0。
在计量经济学中,我们把反映定性因素变化,取值为0或1的人工变量称为虚拟变量。
习惯上用D 表示。
如:引入虚拟变量的作用主要有三个:1)可以描述定性因素的影响;2)能够正确反映经济变量的相互关系,提高模型的精度;3)便于处理异常数据。
当样本资料中存在异常数据时,一般有三种处理方式。
一是直接剔除;二是平滑掉;三是设置虚拟变量。
8.1.2 虚拟变量的设置 1、设置规则1)一个因素多个属性:若定性因素有M 个不同的属性,或相互排斥的类型,在模型中则只能引入M-1个虚拟变量,否则会引起完全多重共线性。
2)多个因素多个属性:每个因素的引入方法均按上述原则。
2、引入方式:1)加法方式(截距移动) 设有模型,y t = β0 + β1 x t + β2D + u t ,其中y t ,x t 为定量变量;D 为定性变量。
当D = 0 或1时,上述模型可表达为,y t =⎩⎨⎧=+++=++1)(012010D u x D u x tt t t βββββ 0204060204060X Y图8.1 测量截距不同D = 1或0表示某种特征的有无。
反映在数学上是截距不同的两个函数。
若β2显著不为零,说明截距不同;若β2为零,说明这种分类无显著性差异。
例:中国成年人体重y (kg )与身高x (cm )的回归关系如下:–105 + x D = 1 (男)y = - 100 + x - 5D =– 100 + x D = 0 (女)注意:① 若定性变量含有m 个类别,应引入m -1个虚拟变量,否则会导致多重共线性,称作虚拟变量陷阱(dummy variable trap )。
第八章 统计回归模型回归分析是研究一个变量Y 与其它若干变量X 之间相关关系的一种数学工具.它是在一组试验或观测数据的基础上,寻找被随机性掩盖了的变量之间的依存关系.粗略的讲,可以理解为用一种确定的函数关系去近似代替比较复杂的相关关系.这个函数称为回归函数.回归分析所研究的主要问题是如何利用变量X 、Y 的观察值(样本),对回归函数进行统计推断,包括对它进行估计及检验与它有关的假设等.回归分析包含的内容广泛.此处将讨论多项式回归、多元线性回归、非线性回归以及逐步回归.一、多项式回归(1) 一元多项式回归一元多项式回归模型的一般形式为εβββ++++=mm x x y ...10.如果从数据的散点图上发现y 与x 呈现较明显的二次(或高次)函数关系,则可以选用一元多项式回归.1. 用函数polyfit 估计模型参数,其具体调用格式如下:p=polyfit(x,y,m) p 返回多项式系数的估计值;m 设定多项式的最高次数;x ,y 为对应数据点值.[p,S]=polyfit(x,y,m) S 是一个矩阵,用来估计预测误差.2. 输出预估值与残差的计算用函数polyval 实现,其具体调用格式如下: Y=polyval(p,X) 求polyfit 所得的回归多项式在X 处的预测值Y.[Y,DELTA]=polyval(p,X,S) p ,S 为polyfit 的输出,DELTA 为误差估计.在线性回归模型中,Y ±DELTA 以50%的概率包含函数在X 处的真值.3. 模型预测的置信区间用polyconf 实现,其具体调用格式如下:[Y,DELTA]=polyconf(p,X,S,alpha) 求polyfit 所得的回归多项式在X 处的预测值Y 及预测值的显著性为1-alpha 的置信区间Y±DELTA,alpha 缺省时为0.05.4. 交互式画图工具polytool ,其具体调用格式如下: polytool(x,y,m); polytool(x,y,m,alpha);用m 次多项式拟合x ,y 的值,默认值为1,alpha 为显著性水平,默认值为0.05. 例1 观测物体降落的距离s 与时间t 的关系,得到数据如下表,求s.s (cm) 61.49 72.90 85.44 99.08 113.77 129.54 146.48解 根据数据的散点图,应拟合为一条二次曲线.选用二次模型,具体代码如下: %%%输入数据 t=1/30:1/30:14/30;s=[11.86 15.67 20.60 26.69 33.71 41.93 51.13 61.49 72.90 85.44 99.08 113.77 129.54 146.48];%%%多项式系数拟合 [p,S]=polyfit(t,s,2); 则得回归模型为:1329.98896.652946.489ˆ2++=t t s. %%%y 的拟合值及预测值y 的置信半径delta [y,dalta]=polyconf(p,t,S); 得结果如下: y=Columns 1 through 1111.8729 15.7002 20.6148 26.6168 33.7060 41.8826 51.1465 61.4978 72.9363 85.4622 99.0754Columns 12 through 14 113.7759 129.5637 146.4389 dalta=Columns 1 through 110.0937 0.0865 0.0829 0.0816 0.0817 0.0823 0.0827 0.0827 0.0823 0.0817 0.0816Columns 12 through 14 0.0829 0.0865 0.0937 %%%交互式画图 polytool(t,s,2);polytool 所得的交互式图形如图8-1所示.图8-1(2) 多元二项式回归多元二项式回归模型的一般形式为εββββ∑≤≤+++++=mk j k j jkm m x x x x y ,1110....多元二项式回归命令:rstool(x,y,’model’,alpha) x 表示n´m 矩阵;y 表示n 维列向量;alpha 为显著性水平(缺省时为0.05);model 表示由下列4个模型中选择1个(用字符串输入,缺省时为线性模型):linear(线性):m m x x y βββ+++= 110;purequadratic(纯二次):∑=++++=nj j jjm m x x x y 12110ββββ ;interaction(交叉):∑≤≠≤++++=mk j k j jkm m x x x x y 1110ββββ ;quadratic(完全二次):∑≤≤++++=mk j k j jkm m x x x x y ,1110ββββ .例2 设某商品的需求量与消费者的平均收入、商品价格的统计数据如下,建立回归模型,预测平均收入为1000、价格为6时的商品需求量.解 选择纯二次模型,即2222211122110x x x x y βββββ++++=.%%%输入数据x1=[1000 600 1200 500 300 400 1300 1100 1300 300]; x2=[5 7 6 6 8 7 5 4 3 9]; x=[x1' x2'];y=[100 75 80 70 50 65 90 100 110 60]'; %%%多元二项式回归rstool(x,y,'purequadratic'); 得如下结果:图8-2得到一个如图所示的交互式画面,左边是x1(=1000)固定时的曲线y (x1)及其置信区间,右边是x2(=6)固定时的曲线y (x2)及其置信区间.用鼠标移动图中的十字线,或在图下方窗口内输入,可改变x1,x2.在左边图形下方的方框中输入1000,右边图形下方的方框中输入6,则画面左边的“Predicted Y1”下方的数据变为88.4791,即预测出平均收入为1000、价格为6时的商品需求量为88.4791.在画面左下方单击”Export ”,在出现的窗体中单击”ok ”按钮,则beta 、rmse 和residuals 都传送到Matlab 工作区中.在Matlab 工作区中输入命令:beta,rmse ,得结果:beta=110.5313 0.1464 -26.5709 -0.0001 1.8475 rmse =4.5362故回归模型为:2221218475.10001.05709.261464.05313.110x x x x y +--+=,剩余标准差为4.5362,说明此回归模型的显著性较好.二、多元线性回归多元线性回归模型的一般形式为011...m m y x x βββε=++++.在Matlab 统计工具箱中使用函数regress 实现多元线性回归.具体调用格式为: b=regress(Y,X)[b,bint,r,rint,stats]=regress(Y,X,alpha)其中⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=n Y Y Y Y ...21,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=nm n n m m x x x x x x x x x X ...1..................1 (12)12222111211.对于一元线性回归,取1=m 即可.b 为输出向量;b ,bint 表示回归系数估计值和它们的置信区间;r 表示残差;rint 表示残差的置信区间;stats 表示用于检验回归模型的统计量,有四个数值:相关系数2R 、F 值、与F 值对应的概率P 、2s 的值.相关系数2R 越接近1,说明回归方程越显著;)1,(1-->-m n m F F α时拒绝0H ,F 越大,说明回归方程越显著;与F 对应的概率α<P 时拒绝0H ,回归模型成立;alpha 表示显著性水平(缺省时为0.05).残差及其置信区间可以用命令rcoplot(r,rint)画出.例3 已知某湖泊八年来湖水中COD 浓度实测值(y)与影响因素,如湖区工业产值(x 1)、总人口数(x 2)、捕鱼量(x 3)、降水量(x 4)的资料,建立y 的水质分析模型.湖水浓度与影响因素数据表x 1 1.376 1.3751.387 1.401 1.412 1.428 1.445 1.477 x 2 0.450 0.475 0.485 0.500 0.535 0.545 0.550 0.575 x 32.170 2.554 2.676 2.713 2.8233.088 3.122 3.262 x 4 0.8922 1.1610 0.5346 0.9589 1.0239 1.0499 1.1065 1.1387 y5.195.305.605.826.006.066.456.95解 作出因变量y 与各自变量的样本散点图作散点图的目的主要是观察因变量y 与各自变量间是否有比较好的线性关系,以便选择恰当的数学模型形式.图8-3、图8-4、图8-5、图8-6分别为y 与x 1、x 2、x 3、x 4的散点图.从图中可以看出这些点大致分布在一条直线旁边,因此有较好的线性关系,可以采用线性回归.图8-3 y 与x 1的散点图 图8-4 y 与x 2的散点图图8-5 y与x3的散点图图8-6 y与x4的散点图在Matlab中实现回归的具体代码如下:%%%输入数据x1=[1.376 1.375 1.387 1.401 1.412 1.428 1.445 1.477];x2=[0.450 0.475 0.485 0.500 0.535 0.545 0.550 0.575];x3=[2.170 2.554 2.676 2.713 2.823 3.088 3.122 3.262];x4=[0.8922 1.1610 0.5346 0.9589 1.0239 1.0499 1.1065 1.1387];x=[ones(8,1) x1' x2' x3' x4'];y=[5.19 5.30 5.60 5.82 6.00 6.06 6.45 6.95];%%%多元线性回归[b,bint,r,rint,stats]=regress(y',x);得如下结果:b =-13.984913.19202.42280.0754-0.1897bint =-26.0019 -1.96791.4130 24.9711-14.2808 19.1264-1.4859 1.6366-0.9638 0.5844r =-0.06180.02280.01230.08900.0431-0.14730.01450.0274rint =-0.1130 -0.0107 -0.1641 0.2098 -0.1051 0.1297 -0.2542 0.4321 -0.0292 0.1153 -0.2860 -0.0085 -0.3478 0.3769 -0.1938 0.2486 stats =0.9846 47.9654 0.0047 0.0123故回归模型为:43211897.00754.04228.21920.139849.13x x x x y -+++-=, 此外,由stats 的值可知9846.02=R ,9654.47=F ,0047.0=P 。