浅谈共线性的产生以及解决方法(中篇——今生)

上篇我们讲到共线性概念以及共线性问题存在时对模型的影响。那么如何对样本数据中存在的共线性问题进行诊断呢?

3 多重共线性的诊断方法

3.1 相关系数法

对于一个样本数据集,我们要了解解释变量,相关系数是一个重要的参数。假设样本中有x1x_{1}x1​,x2x_2x2​,x3x_3x3​,…,xpx_pxp​这些变量,两个变量间的相关系数:
R=∑i=1n(xi−xˉ)(yi−yˉ)∑i=1n(xi−xˉ)2∑i=1n(yi−yˉ)2R=\frac{\sum_{i=1}^{n}(x_{i}-\bar{x})(y_{i}-\bar{y})}{\sum_{i=1}^{n}(x_{i}-\bar{x})^2\sum_{i=1}^{n}(y_{i}-\bar{y})^2}R=∑i=1n​(xi​−xˉ)2∑i=1n​(yi​−yˉ​)2∑i=1n​(xi​−xˉ)(yi​−yˉ​)​
我在上篇博文中有提到,**存在一个常用但不完全合适的共线性度量指标,是样本自变量之间的相关系数的平方,精确共线性对应的相关系数的平方等于1,非共线性对应的相关系数的平方等于0,近似共线性的相关系数平方介于0和1之间,值越大,表明两个变量间近似共线性程度越大。**当有很多变量之间均存在共线性问题时,可以根据自变量的相关系数矩阵,对每个自变量统计相关系数>0.5的变量数(不计与自身的那一项),剔除掉那些共线性变量较多的变量,然后再进行建模。

3.2 条件数判别法

度量多重共线性严重程度的一个重要指标是XTX^{T}XTXXX的条件数(XXX是原始数据经过中心化和标准化后得到的向量),即
κ\kappaκ(XTX^{T}XTXXX)=∥XTX∥\left \|X^{T}X \right \|∥∥​XTX∥∥​*∥(XTX)−1∥\left \|(X^{T}X)^{-1} \right \|∥∥​(XTX)−1∥∥​=λmax(XTX)λmin(XTX)\frac{\lambda_{max}(X^{T}X)}{\lambda_{min}(X^{T}X)}λmin​(XTX)λmax​(XTX)​
λmax(XTX)\lambda_{max}(X^{T}X)λmax​(XTX)和λmin(XTX)\lambda_{min}(X^{T}X)λmin​(XTX)分别表示XTXX^{T}XXTX的最大、最小特征值。
条件数刻画了XTXX^{T}XXTX的分散程度,我们可以据此判断自变量之间存在多重共线性与否以及多重共线性的强弱程度。
实际应用经验:
当κ\kappaκ<100,认为多重共线性程度很小;
当100<=κ\kappaκ<=1000,认为存在中等或者较强程度的多重共线性;
当κ\kappaκ>1000,认为存在严重的多重共线性;
在R软件中,函数kappa()计算矩阵的条件数。kappa(z,exact=FALSE,…),z是矩阵,exact=TRUE时表示精确计算条件数,FALSE时表示近似计算条件数。

3.3 方差膨胀因子法

对自变量做中心标准化处理之后得到的相关阵为
记为:

称其为主对角线元素VIFjVIF_{j}VIFj​ = CjjC_{jj}Cjj​的为自变量XjX_{j}Xj​的方差扩大因子。
已知:
其中LjjL_{jj}Ljj​是XjX_{j}Xj​的离差平方和,Rj2R_{j}^{2}Rj2​为自变量XjX_{j}Xj​对其余的p−1个自变量的复决定系数,可以得到如下结论:

根据上式可知VIFjVIF_{j}VIFj​恒大于1,Rj2R_{j}^{2}Rj2​越大,说明自变量之间的多重共线性越严重。VIFjVIF_{j}VIFj​不仅能够诊断出自变量之间是否存在多重共线性,还能反映多重共线性的严重程度。一般处理问题时,当VIFjVIF_{j}VIFj​≥10时,说明自变量XjX_{j}Xj​与其余自变量之间存在着很严重的多重共线性,而且这种多重共线性很可能影响最小二乘估计值。

3.4 特征根判别法

从高等代数中我们知道了矩阵的行列式等于其特征根的连乘积,所以,当行列式|X′X∣≈0X^{'}X|≈0X′X∣≈0时,也就是说设计矩阵中的自变量之间存在多重共线性,那么矩阵X′XX^{'}XX′X至少存在一个近似为零的特征根,该命题的逆命题为当矩阵X′XX^{'}XX′X至少存在一个近似为零的特征根时,X的列向量之间一定存在多重共线性
其中
是X的列向量,λ是矩阵X′XX^{'}XX′X的一个近似为0的特征根,
是对应特征根λ的单位特征向量,有

这恰是多重共线性关系满足的定义式,从而在实际问题中遇到此类情况,可判定为自变量之间存在着一定的共线性。另外当特征根向量是标准化正交向量时,设计矩阵X多重共线性的重数取决于矩阵X′XX^{'}XX′X有多少个近似为零的特征根。

4 多重共线性的解决方法

当在解决实际问题中,通过某种诊断方法发现自变量之间存在着严重的多重共线性时,我们就要找到合适的方法来削弱这种共线性。
常见的多重共线性产生的原因有两种:
一种是由于搜集数据的局限性造成的,表现在设计矩阵X的p个列向量

近似地都落在维数低于p的RnR^{n}Rn的超平面内,此时我们认为设计矩阵X的p个列向量就有多重共线性。这样的情况产生的多重共线性是非本质的,可以通过改善数据搜集方法克服
另一种产生多重共线性是本质内的,即自变量之间在客观上就有近似线性相关关系。处理自变量较多的回归问题时,由于缺乏对自变量之间关系的认识,很可能把一些具有共线性的变量引入到回归模型中,这种产生多重共线性的情况是无法克服的。一方面我们可以对最小二乘估计方法做改进处理;另一方面可以从消除自变量间的多重共线性入手。常用的解决方法如下:

4.1 岭估计

岭回归方法优化了回归系数估计方法,对最小二乘估计法做了改良,当自变量之间存在多重共线性时,即 |X′X∣≈0X^{'}X|≈0X′X∣≈0,如果给X′XX^{'}XX′X加上一个常数矩阵k∙I(k>0),那么(X′X+kI)−1(X^{'}X+kI)^{-1}(X′X+kI)−1接近奇异的可能性要比X′XX^{'}XX′X小得多,所以用岭估计值
作为β的估计理论上比最小二乘估计更加稳定。
设0≤k<∞,由β^(k)\hat{β}(k)β^​(k)参与的的回归方程称为岭回归方程,k称为岭参数。。对于回归系数

的每一分量β^j\hat{β}_{j}β^​j​(k)来说,在直角坐标系中k-β^j\hat{β}_{j}β^​j​(k)的图像称为岭迹。
岭参数k的选择,具体原则如下:
1 各回归系数的岭估计基本稳定;
2 用最小二乘估计时符号不合理的回归系数,其岭估计的符号将变得合理;
3 回归系数没有不合理的绝对值;
4 残差平方和上升的不太多。

不存在奇异性是,岭迹应该是稳定地逐渐趋于0,如下图所示

当存在奇异性时,由岭回归的参数估计结果可以看出来,刚开始k不够大时,奇异性并没有得到太大的改变,所以随着k的变化,回归的估计参数震动很大,当k足够大时,奇异性的影响逐渐减少,从而估计参数的值变得逐渐稳定。
(1). 岭迹法与基于残差的传统方法是不同的,它提供了一种新的分析问题的思想方法,对分析各个变量之间的关系是有帮助的。但岭迹法选择岭参数存在着一定的主观性,目前为止还没有一个理论能够支持岭迹法的科学性。
(2).方差扩大因子法(略)
(3).由残差平方和确定k值
从前面的介绍,可知岭估计β ̂(k)在减小均方误差的同时,残差平方和是增大的。我们可以给定一个大于1的c值,将岭回归的残差平方和SSE(k)控制在一定的限度内,即满足
求出满足上诉条件最大的k值。

4.2 LASSO回归

lasso回归无论因变量是连续还是离散的,它都能处理。 lasso对于数据的要求是非常低的,所以应用程度较广,能够对变量进行筛选和降低模型的复杂程度。变量筛选是指不把所有的变量都放入模型中进行拟合,而是有选择的把变量放入模型从而得到使模型效果更好的参数。
LASSO回归的原理:在传统最小二乘估计的基础上,对模型的参数增加一个惩罚函数:

其中n为样本个数,α为常数,需要调控得到最优值。‖θ‖1‖θ‖_{1}‖θ‖1​为一范数,即绝对值。
对系数进行压缩,将较大的系数变小,甚至有可能把较小的系数压缩为零。在满足限制条件

时,使得残差平方和达到最小,从而求得此时的回归系数的估计值。
我们用LASSO回归的方法,使得自变量之间变得稀疏,这种稀疏性由调整参数α来实现。随着α的增大,惩罚也随之增大,导致有些解释变量的系数为零,使得简化了模型结构,重要的变量得以保留,从而增加了模型对数据的解释能力。
在R软件中的lars包提供了lasso算法,根据问题的需要,我们可以利用lars包中的lasso算法,结合AIC准则和BIC准则进行变量选择,从而降低了系统的复杂度,进而增加了模型的解释能力。

4.3 主成分回归

主成分估计也是有偏估计,这是一种基于多元统计中的主成分分析的概念而提出的估计方法。
主成分分析的实质是降维。在损失一小部分信息的前提下把多个指标利用正交旋转变换转化为几个综合指标的多元统计方法。一般情况下,我们常把转化生成的综合指标称为主成分,并且每个主成分都是原始自变量的线性组合,每个主成分之间互不相关。我们只考虑少数几个主成分且不至于失去过多信息,这样使得问题简化,从而更容易发现研究问题的主要矛盾,揭示事物内部变量的规律,分析效率也会提高。
设由p个自变量构成的随机向量为

随机向量X的均值为μ,协方差矩阵为Σ。
对X进行线性变换处理,能形成新的综合变量,用Y表示,即
为了使得YiY_{i}Yi​尽可能完全的表示样本信息,我们要求YiY_{i}Yi​的方差尽可能大且YiY_{i}Yi​之间互相独立
根据以下原则,确定主成分

这样通过主成分分析得到的参数估计称为主成分估计。对于主成分估计,需要解决选择主成分个数的问题,通常有两种常用的方法:第一种是略去特征根接近零的主成分;第二种是选择r个主成分使得满足下述条件

4.4 偏最小二乘

一般,我们估计多元线性模型的参数时,当自变量个数p小于观测组数n时,我们常采用最小二乘估计方法估计回归系数;当自变量个数p大于观测组数时,导致矩阵X’X奇异,无法求出其逆矩阵。主成分回归不用求X’X的逆,而是得到矩阵X’X的特征根,选择出几个重要的主成分,这样我们就可以用少数几个主要成分表示样本总体信息,从而得到多元线性模型。偏最小二乘(PLS)也能解决p>n的情况,思想是考虑偏向于y有关的自变量x1,x2,…,xpx_1,x_2,…,x_px1​,x2​,…,xp​的线性组合。

由于篇幅限制,本文暂更新到这里,已经对建模中共线性问题的诊断和消除的方法做了详尽的介绍,下篇会更新实例应用,请大家耐心等更。

浅谈共线性的产生以及解决方法(中篇——今生)相关推荐

  1. 浅谈共线性的产生以及解决方法(上篇——前世)

    标题:浅谈共线性的产生以及解决方法(上篇--前世) 1. 多元线性回归模型 在线性相关条件下,两个或两个以上解释变量对一个被解释变量的数量变化关系,称之为多元线性回归分析,由多元线性回归分析得到的数学 ...

  2. 浅谈手机内存不够的解决方法--我的手机是红米note5

    手机内存不够的解决方法 手机内存不够的解决方法 我为什么要关系内存问题? 应用搬到sd卡的方法 link2sd 刷机 注意 手机内存不够的解决方法 清理内存 大概卸载一些暂时不用的软件 我为什么要关系 ...

  3. 浅谈图像撕裂问题及解决方法

    图像撕裂问题及解决方法 什么是图像撕裂 就是一张图片在显示的时候分成了两半,即出现断层.如下图: 图像撕裂是如何形成的呢 我们先从图像的显示说起: 图像 -> CPU将图片解码,交给GPU -& ...

  4. java get请求 数组,浅谈vue中get请求解决传输数据是数组格式的问题

    qs的stringify接收2个参数,第一个参数是需要序列化的对象,第二个参数是转化格式,一般默认格式是给出明确的索引,如:arr[0]=1&arr[1]=2 //indices是index的 ...

  5. 怎么把ps转化成html,【论文】浅谈Photoshop转化成Html的方法.pdf

    科技信息 计算机与网络 浅谈Photoshop 转化成Html 的方法 江苏经贸职业技术学院信息系 马 涛 [摘 要]Photoshop 是公认最出色的图像处理软件之一,与平面设计或者广告设计一样,网 ...

  6. 浅谈Python类的属性和方法

    浅谈Python类的属性和方法 参考文献 在python中,有私有属性和公有属性,方法我们也一样,他们之间有何区别? 还有类属性和实例属性又是怎么回事? 静态方法和类方法又有什么区别? 我们在工作过程 ...

  7. 浅谈系统性能提升的经验和方法

    浅谈系统性能提升的经验和方法 随着信息技术的快速发展,系统性能优化变得越来越重要.在现代应用程序中,高性能系统已经成为了一个非常重要的目标,因为这可以帮助提高用户体验和提高生产力.在本篇博客中,我将探 ...

  8. 浅谈种子搜索算法及C++实现方法

    今天研究种子搜索算法九点多钟了,我儿子长大,真诚待之必然得到真诚回应,我们全家决定骑自行车去中百仓储,天气渐渐冷了,他们要回家了,你真好,他经常自豪地对他们同事说,大谈国际新闻. C++实现方法: d ...

  9. 三维坐标系带偏航角俯仰角_浅谈三维旋转的三种方法及差异

    概述 在3D图形学中,几何变换大致分为三种:平移变换(Translation).缩放变换(Scaling).旋转变换(Rotation),而其中又以旋转变换(Rotation)最为复杂,通常旋转变换( ...

最新文章

  1. USACO 做题小结
  2. oracle同步复制清理,Oracle数据库同步——高级复制
  3. $_SERVER['SCRIPT_FILENAME'] 与 __FILE__ 区别
  4. C++设计模式-Prototype原型模式
  5. 庆五一,We7同步发行2.5正式版、2.6 Beta版!
  6. github提交代码403
  7. Windows 3.1 往事:历史上第一个真正占据主导地位的操作系统
  8. android 自定义字体_Android自定义字体教程
  9. 一文读懂品质体系认证,学会判断 PCB 板厂生产资质
  10. 企业BI项目蓝图规划建设方案
  11. python在统计学中的应用论文_应用统计学论文
  12. tpc-ds99 工具使用
  13. simulink PID自动整定
  14. 微信小程序入门5-微信公众号扫码登录PC端网页
  15. 【T3】批次参照结存数量为0的也显示
  16. 初学 Click 路由器
  17. Ubuntu 安装rar文件解压工具
  18. MD5大小写,32,16
  19. “模型驱动”还不够!企业级低代码开发平台系统架构解密
  20. vue websocket 聊天之发送表情

热门文章

  1. Semi-Supervised Semantic Segmentation with Cross-Consistency Training论文笔记
  2. 男神网络红人莫小涛2022生活百度图片大全
  3. 我的世界服务器的启动器在哪个文件夹,原神启动器在哪 启动器位置文件介绍...
  4. Lego Boost打算把所有乐高玩具变成可编程机器人
  5. 2018 拼多多校招贪心算法题
  6. 使用Matlab把图片集合生成视频流文件
  7. 全链通“铭镜”农产品溯源平台介绍分析
  8. 用STC12C5A60S2的P4接口点亮LED
  9. 阿尔法编程python答案_C语言程序设计-阿尔法编程(编程答案)
  10. 后端每天更新微信用户用户头像