我的一些预测变量的比例非常不同-在拟合线性回归模型之前是否需要对其进行转换?


9

我想对多维数据集进行线性回归。不同维度之间的顺序大小存在差异。例如,维度1的值范围通常为[0,1],维度2的值范围为[0,1000]。

我是否需要进行任何转换以确保不同维度的数据范围在同一范围内?如果必须的话,对于这种转变有什么指导吗?

Answers:


15

移位/缩放变量不会影响它们与响应的相关性

要了解为什么这是真的,假设 ÿXρ。然后之间的相关ÿX-一个/b

CØvÿX-一个/b小号dX-一个/b小号dÿ=CØvÿX/b小号dX/b小号dÿ=1个bCØvÿX1个b小号dX小号dÿ=ρ

这从相关性的定义和三个事实得出:

  • CØvÿX+一个=CØvÿX+CØvÿ一个=0=CØvÿX

  • CØvÿ一个X=一个CØvÿX

  • 小号d一个X=一个小号dX

因此,在模型拟合方面(例如[R2或拟合值),移动或缩放变量(例如,将变量置于相同的比例)不会改变模型,因为线性回归系数与变量之间的相关性有关。它只会更改回归系数的比例,如果您选择转换预测变量,则在解释输出时应牢记这一点。

编辑:以上是假设你在谈论普通的回归拦截。与此相关的其他几点(感谢@cardinal):

  • 当您转换变量时,截距可能会改变,并且正如@cardinal在注释中指出的那样,如果您从模型中省略了截距,则当您移动变量时系数也会改变,尽管我认为除非您有一个很好的理由(例如参见此答案)。

  • 如果您以某种方式(例如套索,山脊回归)对系数进行正则化,那么居中/缩放将影响拟合。例如,如果您要处罚β一世2 (岭回归罚分),那么除非首先所有变量都处于相同的标度下,否则标准化后就无法恢复等效拟合,即,没有常数倍会恢复相同的罚分。

关于研究人员何时/为什么要转换预测变量

一个常见的情况(在@Paul的后续回答中讨论)是研究人员将其预测变量标准化,以便所有系数都在同一范围内。在那种情况下,一旦将预测变量的数值标准化,点估计的大小就可以粗略了解哪些预测变量影响最大。

研究人员可能喜欢缩放非常大的变量的另一个原因是,回归系数不会处于极小的范围内。例如,如果您想查看一个国家的人口规模对犯罪率的影响(无法想到一个更好的例子),您可能希望以百万人口而不是其原始单位来衡量人口规模,因为系数可能像.00000001


有两个简短的说明:帖子的开头是正确的,但它忽略了以下事实:如果没有截距,则居中起作用。:)其次,如果使用正则化,则居中和重新缩放会产生重要影响。尽管OP可能没有考虑这一点,但记住这一点仍然可能是有用的。
主教

如果人们对矩阵表示法感到满意,也很容易看出重新缩放的不变性。用X 全等级(为简单起见), ÿ^=XXX-1个Xÿ。现在,如果我们更换X 通过 Xd 哪里 d 对角线我们得到
ÿ=XdXdXd-1个Xdÿ=XddXXd-1个dXÿ=XXX-1个Xÿ=ÿ^
主教

@cardinal,我已经决定提及一个事实,如果您的估算值是正则化的,那么居中/缩放会产生影响。我起初拒绝,是因为我认为这将导致漫长的离题,这可能会使那些不熟悉正则化的人感到困惑,但是我发现我可以用相对较少的空间来解决它。Thanks--

并非我的所有评论都一定意味着建议答案应该更新。很多时候,我只是想在一些不错的答案下附上一些简短的评论,以便对路人可能感兴趣的相关想法进行一些思考。(+1)
红衣主教2012年

点票工作正在发生一些时髦的事情。再一次,我在做出较早的评论时对此表示赞同,但它并没有“接受”。嗯
主教

2

所谓的“归一化”是大多数回归方法的常用例程。有两种方法:

  1. 将每个变量映射到[-1,1]边界(MatLab中的mapminmax。
  2. 从每个变量中去除均值,并划分其标准格式(在MatLab中为mapstd),即实际上是“规范化”。如果实际均值是未知的,则仅采用样本特征:
    X一世Ĵ=X一世Ĵ-μ一世σ一世
    要么
    X一世Ĵ=X一世Ĵ-X一世¯sŤdX一世
    哪里 Ë[X一世]=μË[X一世2-Ë[X一世]2]=σ2X一世¯=1个ñĴ=1个ñX一世ĴsŤdX一世=1个ñĴ=1个ñX一世Ĵ2-X一世¯2

由于线性回归对变量范围非常敏感,因此,如果您对相关性没有任何先验知识,并且期望所有变量都相对重要,那么通常建议对所有变量进行归一化

响应变量也是如此,尽管对它们而言并不重要。

为什么要进行标准化或标准化?通常是为了确定模型中不同变量的相对影响。如果所有变量都在同一单位中,则可以实现此效果。

希望这可以帮助!


当您说线性回归对变量范围非常敏感时,您是什么意思?对于x1,x2,y这两个命令:summary(lm(y~x1+x2))$r.sqsummary(lm(y~scale(x1)+scale(x2)))$r.sq-[R2当您不对系数进行标准化时,或者当您对系数进行标准化时,请给出相同的值,表示等效拟合。
Macro

我在编排中不完全正确。我的意思是愚弄。回归将始终相同(在某种意义上[R2)(如果您仅执行数据的线性转换)。但是,如果要确定哪些变量是关键变量,哪些几乎是嘈杂的,则比例尺很重要。标准化变量并忽略其原始比例只是方便的做法。因此,在理解相对影响方面,回归是“有意义的”。
保罗

感谢您的澄清,但是哪些变量是关键变量,哪些几乎是嘈杂的规模问题,通常是由p-value,当您进行标准化时,它也不会改变(当然,除了截距之外)。我同意您的观点,即它确实可以更好地解释原始系数估算值。
Macro
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.