• 为了保证你在浏览本网站时有着更好的体验,建议使用类似Chrome、Firefox之类的浏览器~~
    • 如果你喜欢本站的内容何不Ctrl+D收藏一下呢,与大家一起分享各种编程知识~
    • 本网站研究机器学习、计算机视觉、模式识别~当然不局限于此,生命在于折腾,何不年轻时多折腾一下

浅谈机器学习共线性问题

Alg admin 5个月前 (03-26) 577次浏览 0个评论 扫描二维码

这两天组里有同事在做特征分析这块的工作的时候其实会涉及到特征共线性问题,所以趁这个机会也去理解一下这个概念,说实话以前也没太在意这个问题。

先看下共线性的基本概念

多重共线性(Multicollinearity)是指线性回归模型中的自变量之间由于存在高度相关关系而使模型的权重参数估计失真或难以估计准确的一种特性,多重是指一个自变量可能与多个其他自变量之间存在相关关系。

例如一件商品的销售数量可能与当地的人均收入和当地人口数这两个其他因素存在相关关系。

在统计学中大谈特谈回归中需要注意的前提,独立同分布,多个自变量独立不相关,还有残差分析,多重共线性检验之类,但是在机器学习中我们谈的其实就没那么多了。

机器学习里面的假设其实就没有那么多了,通常是通过模型的复杂度来说明这些问题。

共现性数据支撑论证

现在使用一些实际的例子来证明,并没有直接的理论推导

假设现在我们有一个训练数据(1,x1,x2)和 y,我们使用 sgd 训练的结果得到的权重是[7.89,-4.43,0.75]

现在我们扩展特征(1,x1,x2,x1,x2),相当于对特征 x1 和 x2 出现了共线性特征,现在我们实际训练到的结果就变成

如下这个样子[7.47,-5.36,-6.08,1.24,6.75]

下面抛出两个现象:

  1. 直观的取观察这个问题应该是共线性的特征会变为 0,但是其实结果并没有。
  2. 另外一种想象相关的特征权重大小一致。

从这可以理解随机梯度下降到某个地方就停止了训练,并且在一个解空间里面都是满足解的需求。

处理共线性特征方式

处理共线性特征有很多种方式,但是从之前的分析来看,都是我们“想象中”的“共线性”会影响模型的效果。

这里大致罗列一下吧,比如常见的正则化,以及特征之间的相关性分析等等

常见的 LR 模型我们都会加入正则化技术,L1 得到稀疏解等

非线性模型对于共线性特征分析

这里提一下决策树之类的非线性模型,共线性特征是否会产生影响呢?

答案是不会有任何的影响。

决策树在节点分裂的时候选择增益最大的特征作为分裂的特征,拿上面举的例子来说,

出现相同的特征,但是我们只会选择其中的一个作为分裂的特征,所以即使你有多个也不影响哈。

 


Deeplearn, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明浅谈机器学习共线性问题
喜欢 (0)
admin
关于作者:
互联网行业码农一枚/业余铲屎官/数码影音爱好者/二次元

您必须 登录 才能发表评论!