多重共线性和非线性回归的问题

上传人:wt****50 文档编号:37852132 上传时间:2018-04-23 格式:DOC 页数:9 大小:57.50KB
返回 下载 相关 举报
多重共线性和非线性回归的问题_第1页
第1页 / 共9页
多重共线性和非线性回归的问题_第2页
第2页 / 共9页
多重共线性和非线性回归的问题_第3页
第3页 / 共9页
多重共线性和非线性回归的问题_第4页
第4页 / 共9页
多重共线性和非线性回归的问题_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《多重共线性和非线性回归的问题》由会员分享,可在线阅读,更多相关《多重共线性和非线性回归的问题(9页珍藏版)》请在金锄头文库上搜索。

1、多重共线性和非线性回归的问题多重共线性和非线性回归的问题前几天她和我说,在百度里有个人连续追着我的回答,三次说我的回答错了。当时非常惊讶, 赶紧找到那个回答的问题,看看那个人是怎么说。最终发现他是说多重共线性和非线性回归的 问题,他认为多个自变量进行不能直接回归,存在共线性的问题,需要进行因子分析(或主成 分分析);说非线性回归不能转换成线性回归的方法,这里我详细说说这两方面的问题到底是 怎么回事(根据我的理解),我发现很多人很怕这个多重共线性的问题,听到非线性回归,脑 袋就更大了。 (1)多重共线性问题我们都知道在进行多元回归的时候,特别是进行经济上指标回归的时候,很多变量存 在共同趋势相关

2、性,让我们得不到希望的回归模型。这里经常用到的有三种方法,而不同的方 法有不同的目的,我们分别来看看:第一个,是最熟悉也是最方便的逐步回归法。逐步回归法是根据自变量与因变量相关性的大小,将自变量一个一个选入方法中,并 且每选入一个自变量都进行一次检验。最终留在模型里的自变量是对因变量有最大显著性的, 而剔除的自变量是与因变量无显著线性相关性的,以及与其他自变量存在共线性的。用逐步回 归法做的多元回归分析,通常自变量不宜太多,一般十几个以下,而且你的数据量要是变量个 数 3 倍以上才可以,不然做出来的回归模型误差较大。比如说你有 10 个变量,数据只有 15 组, 然后做拟合回归,得到 9 个自

3、变量的系数,虽然可以得到,但是精度不高。这个方法我们不仅 可以找到对因变量影响显著的几个自变量,还可以得到一个精确的预测模型,进行预测,这个 非常重要的。而往往通过逐步回归只能得到几个自变量进入方程中,有时甚至只有一两个,令 我们非常失望,这是因为自变量很多都存在共线性,被剔除了,这时可以通过第二个方法来做 回归。第二个,通过因子分析(或主成分分析)再进行回归。这种方法用的也很多,而且可以很好的解决自变量间的多重共线性。首先通过因子分析 将几个存在共线性的自变量合为一个因子,再用因子分析得到的几个因子和因变量做回归分析, 这里的因子之间没有显著的线性相关性,根本谈不上共线性的问题。通过这种方法

4、可以得到哪 个因子对因变量存在显著的相关性,哪个因子没有显著的相关性,再从因子中的变量对因子的 载荷来看,得知哪个变量对因变量的影响大小关系。而这个方法只能得到这些信息,第一它不 是得到一个精确的,可以预测的回归模型;第二这种方法不知道有显著影响的因子中每个变量 是不是都对因变量有显著的影响,比如说因子分析得到三个因子,用这三个因子和因变量做回 归分析,得到第一和第二个因子对因变量有显著的影响,而在第一个因子中有 4 个变量组成, 第二个因子有 3 个变量组成,这里就不知道这 7 个变量是否都对因变量存在显著的影响;第三 它不能得到每个变量对因变量准确的影响大小关系,而我们可以通过逐步回归法直

5、观的看到自 变量前面的系数大小,从而判断自变量对因变量影响的大小。第三个,岭回归。通过逐步回归时,我们可能得到几个自变量进入方程中,但是有时会出现自变量影响的 方向出现错误,比如第一产业的产值对国民收入是正效应,而可能方程中的系数为负的,这种 肯定是由于共线性导致出现了拟合失真的结果,而这样的结果我们只能通过自己的经验去判断。 通常我们在做影响因素判断的时候,不仅希望得到各个因素对因变量真实的影响关系,还希望 知道准确的影响大小,就是每个自变量系数的大小,这个时候,我们就可以通过岭回归的方法。岭回归是在自变量信息矩阵的主对角线元素上人为地加入一个非负因子 k,从而使回 归系数的估计稍有偏差、而

6、估计的稳定性却可能明显提高的一种回归分析方法,它是最小二乘 法的一种补充,岭回归可以修复病态矩阵,达到较好的效果。在 SPSS 中没有提供岭回归的模 块,可以直接点击使用,只能通过编程来实现,当然在 SAS、Matlab 中也可以实现。做岭回归 的时候,需要进行多次调试,选择适当的 k 值,才能得到比较满意的方程,现在这个方法应用 越来越普遍。在 07 年的时候,我的一个老师还觉得这个方法是他的看家本领,但是现在很多 人都会这个方法,而且用的越来越多了,得到的结果也非常合理。特别提醒的是:多重共线性说的是变量之间线性关系,和非线性不要混淆了。多组变量 之间两种极端的关系是完全多重共线性关系和完

7、全非线性关系,即完全是平行直线的关系和完 全无规则的曲线关系(是什么形状,还真不好形容,自己悟去吧_)。当然解决多重共线性 问题的方法还有,比如差分微分模型,应用的很少,我估计是非常专业的人才会用的吧,呵呵, 反正我不会这个方法。接下来说说非线性回归。(2)非线性回归的问题。非线性回归,顾名思义自变量和因变量是非线性的关系,比如平方、次方等等,但是 大多数的非线性方程都可以转换成线性的方程,比如我们通常知道的二次函数: y=a0+a1*x+a2*x2,这里就可以转换成线性方程,首先将 x2 计算得到 x1,方程就变成 y=a0+a1*x+a2*x1,而这个方程就是我们一般见到的多元线性回归,直

8、接进行线性拟合就可以 了。这里需要特别提醒的是:我说的可以转换成线性的非线性方程,是一元非线性方程, 而不是多元非线性方程。我们知道在 SPSS 回归分析中有单独一个模块叫曲线估计,它里面提 供的 11 个非线性模型都是可以转换成线性模型的,而且在进行系数拟合的时候都是通过转换 成线性方程进行拟合的,这就是为什么同样是非线性方程,在曲线估计里面不需要输入系数的 初始值,而在非线性回归中却要输入。将非线性方程转换成线性方程再进行拟合,不是因为我们不会做非线性拟合,而改成 线性拟合我就会做了,主要原因不是因为这个。而是因为同样的非线性方程拟合比转换成的线 性方程拟合误差更大一些,而且由于迭代次数的

9、增多,计算时间会更长,由于我们平时计算的 数据不是很多,这种感觉不是非常明显,但是当我们做实际问题的时候,特别是规划问题中, 我们将非线性方程转换成线性方程时,计算速度会明显加快。还有一个原因是,做非线性回归 的时候,我们要在拟合之前设置初始值,而初始值的选择直接影响后面系数的确定,你改变初 始值,拟合出来的系数都会发生变化,这样也会增加非线性回归产生的误差,前面说的误差是 计算上产生的误差,而这里是人为经验上产生的误差。因此在做非线性回归时,如果能转换成 线性回归,一定转换成线性的来做。说到那个人,他在留言中说,这样我没有考虑到转换之后自变量之间的多重共线性, 不能这样做,还声嘶力竭的喊我误

10、人子弟。这里我要详细说明是怎么回事,要不要考虑这里的 多重共线的问题,如果他也能看到更好。一般我们做回归分析的时候,通常第一步看自变量和 因变量之间的散点图,通过散点图我们大致判断两者之间存在怎么的关系,再来选择适当的模 型。而通常我们不知道具体选择哪个模型,可以选择几个可能相似的模型比较一下,选择一个 拟合效果最好的。这里比如说两个变量之间知道是非线性的,但是不知道是二次的、三次的还 是四次及以上的关系(通常次方数越低越好),你可以同时考虑,然后根据拟合的结果来判断。 如将方程设置为:y=a0+a1*x+a2*x2+a3*x3+a4*x4,转换成线性方程就是: y=a0+a1*x+a2*x2

11、+a3*x3+a4*x4,而这里需不需要考虑这四个自变量之间的共线性呢,上面说 过,多重共线性指的是变量之间的线性关系,而这里的四个自变量他们是非线性的关系(x、x2、x3、x4),即使他们的线性相关系数很高(这是因为二次或者三次曲线用直线拟 合得到效果也不错,但是我们知道他们之间的确是非线性的关系,而不是线性关系),因此, 我们可以他们的多重共线性,在拟合的时候,选择逐步回归法,也可以不考虑,选择直接进入 法,两者得到的结果几乎一样,我亲自试验了。如果得到的结果的确有四次方的关系,那么 x4 自变量就会通过检验,我们可以通过检验来判断两个变量到底存在什么样的曲线关系。这样还需要简单说下多元非

12、线性回归,多元非线性回归也可以进行转换,但是转换完 之后就必须要考虑变量之间的多重共线性了,因为我们不能明确的知道转换之后的自变量是否 不存在线性的关系。上次有个人在百度里提问说,我有十几个自变量,想做非线性回归,我们 一般不推荐这么多自变量做多元非线性回归,除非你发现十几个自变量都和因变量存在非线性 的关系。因为多元非线性回归计算非常复杂,迭代次数非常庞大,而得到的结果也不尽如人意。好了,这些都是根据我自己的理解和经验来写的,如果一不小心被统计高手或者老师 看到,如发现说的不对的地方,请一定要在下面指正出来,非常感谢。 第节 回归诊断方法 检验所选模型中的各变量之间共线性(即某些自变量之间有

13、线性关系)情 况;根据模型推算出与自变量取各样本值时对应的因变量的估计值 y,反过来检验所测得的 Y 是否可靠,胀是回归诊断的项 -第节 回归诊断方法检验所选模型中的各变量之间共线性(即某些自变量之间有线性关系)情况;根据模型推算 出与自变量取各样本值时对应的因变量的估计值 y,反过来检验所测得的 Y 是否可靠,胀是 回归诊断的项主要任务。下面就 SAS 系统的 REG 过程运行后不同输出结果,仅从回归诊断方面理解和分析说明如下: 用条件数和方差分量来进行共线性诊断各入选变量的共线性诊断借助 SAS 的 MODEL 语句的选择项 COLLIN 或 COLLINOINT 来 完成。二者都给出信息

14、矩阵的特征根和条件数 (Condition Number),还给出各变量的方差在各 主成分上的分解(Decomposition),以百分数的形式给出,每个入选变量上的方差分量之和为 。COLLIN 和 COLLINOINT 的区别在于后者对模型中截距项作了校正。当截距项无显著性 时,看由 COLLIN 输出的结果;反之,应看由 COLLINOINT 输出的结果。 (1)条件数先求出信息矩阵杸 XX 枈的各特征根, 条件指数(condition indices)定义为: 最大特征根与每 个特征根比值的平根,其中最大条件指数称为矩阵杸 XX 枈的条件数。条件数大,说明设计矩阵有较强的共线性,使结果

15、不稳定,甚至使离开试验点的各估计值 或预测值毫无意义。直观上,条件数度量了信息矩阵 XX 的特征根散布程度,可用来判断多重共线性是否存在 以及多重共线性严重程度。在应用经验中,若10,则认为没有多重共线性; 1030,则认为存在中等程度或较强的多重共线性;30,则认为存在严重的多重共线性。 (2)方差分量强的多重共线性同时还会表现在变量的方差分量上对大的条件数同时有个以上变量的 方差分量超过 50,就意味这些变量间有一定程度的相关。用方差膨胀因子来进行共线性诊断 (1)容许度(Tolerance,在 Model 语句中的选择项为 TOL)对一个入选变量而言,该统计量等于 1- R2, 这里 R

16、2 是把该自变量当作因变量对模型中 所有其余回归变量的决定系数, R2 大(趋于 1),则 1-R2=TOL 小(趋于),容许度差,该变量不 由其他变量说明的部分相对很小。 (2)方差膨胀因子(VIF)VIF=1/TOL,该统计量有人译为“方差膨胀因子”(VarianceInflation Factor),对于不好的 试验设计,VIF 的取值可能趋于无限大。VIF 达到什么数值就可认为自变量间存在共线性?尚 无正规的临界值。陈希孺、王松桂,1987根据经验得出VIF或 10 时,就有严重的多重共 线性存在。用学生化残差对观测点中的强影响点进行诊断对因变量的预测值影响特别大,甚至容易导致相反结论的观测点,被称为强影响点(In- fluence Case)或称为异常点(Outlier)。有若干个统计量(如Cook D 统计量、hi 统计量、 STUDENT 统计量、RSTUDENT 统计量等,这些统计量的定义参见本章第节)可用于诊断哪 些点对因变量的预测值影响大,其中最便于判断的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号