使用转换变量时的线性回归效应大小

机器算法验证 回归 数据转换 规模效应
2022-03-19 16:40:26

在执行线性回归时,对因变量进行诸如对数变换之类的变换通常很有用,以实现更好的正态分布构象。通常,从回归中检查 beta 以更好地评估结果的效果大小/实际相关性也很有用。

这引发了一个问题,即当使用对数变换时,效果大小将采用对数尺度,并且我被告知,由于使用尺度的非线性,对这些 beta 进行反向变换将导致无意义的值没有任何现实世界的用法。

到目前为止,我们通常使用转换变量执行线性回归以检查显着性,然后使用原始非转换变量进行线性回归以确定效果大小。

有没有正确/更好的方法来做到这一点?在大多数情况下,我们使用临床数据,所以一个现实生活中的例子是确定某种暴露如何影响持续变量,例如身高、体重或一些实验室测量值,我们想得出类似“暴露 A 有影响”的结论体重增加 2 公斤”。

3个回答

我建议转换对于获得错误的正态分布并不重要。常态不是必要的假设。如果你有“足够”的数据,中心极限定理就会起作用,你的标准估计就会变得渐近正常。或者,您可以使用自举作为非参数方法来估计标准误差。(同方差是跨单位观察的常见方差,您的标准误差是正确的;稳健的选项允许异方差)。

相反,转换有助于确保线性模型是合适的。为了说明这一点,让我们考虑如何解释转换模型中的系数:

  • 结果是单位,预测变量是单位:预测变量的一个单位变化会导致结果的 beta 单位变化。
  • 以单位为单位的结果,以对数单位表示的预测变量:预测变量 1% 的变化会导致结果发生 beta/100 单位的变化。
  • 以对数单位表示的结果,以单位表示的预测变量:预测变量的一个单位变化会导致结果发生 beta x 100% 的变化。
  • 以对数单位表示的结果,以对数单位表示的预测变量:预测变量的 1% 变化会导致结果的 β 百分比变化。

如果必须进行转换以使您的模型有意义(即保持线性),则应使用该模型的估计进行推理。您不相信的模型估计值不是很有帮助。上面的解释对于理解转换模型的估计非常有用,并且通常与手头的问题更相关。例如,经济学家喜欢 log-log 公式,因为 beta 的解释是一种弹性,是经济学中的一个重要衡量标准。

我要补充一点,反向转换不起作用,因为函数的期望不是期望的函数;beta 的期望值的 log 不是 beta 的 log 的期望值。因此,您的估算器不是无偏的。这也会抛出标准错误。

简短回答:绝对正确,beta 值的反向变换是没有意义的。但是,您可以将非线性报告为类似的东西。“如果你体重 100 公斤,那么每天吃两块蛋糕会在一周内增加大约 2 公斤的体重。但是,如果你体重 200 公斤,你的体重会增加 2.5 公斤。关于这种非线性关系的描述,请参见图 1(图 1 是对原始数据的曲线拟合)。”

长答案:

反向转换值的意义各不相同,但如果处理得当,它通常具有一定的意义。

如果您对两个 x 预测变量的自然对数值进行回归,其中 beta 为 0.13,截距为 7.0,那么 0.13 (1.14) 的反向变换几乎没有意义。那是对的。但是,7.13 的反向转换将是一个可以解释为某种含义的值。然后,您可以减去 7.0 的反向变换,并留下一个余数,该余数是您在有意义的范围内的影响 (152.2)。如果您想查看任何预测值,您需要首先将其全部计算为对数值,然后进行反向转换。这必须为每个预测值单独完成,如果绘制成曲线,则会产生曲线。

如果您的转换对数据的影响相对较小,这通常是合理的。反应时间的对数变换是一种可以反变换的值。正确完成后,您会发现这些值似乎接近于对原始数据进行简单计算的中值。

即使那样,人们也必须小心交互和非交互。相对值在尺度上有所不同。分析对 log 值很敏感,而反向转换的值可能会显示不同的模式,使交互看起来不应该存在,反之亦然。换句话说,只要您小心,您就可以反向转换对数据进行微小更改的事物。

一些变化,比如概率的逻辑变换,可能会产生相当大的影响,尤其是在规模接近尾声时。一个你永远不应该反向变换的地方的例子是概率的高端或低端附近的交互图。

我认为,问题是关于边际效应(X 对 Y),而不是解释单个系数。正如人们有用地指出的那样,这些有时只能通过效应大小来识别,例如,当存在线性和加性关系时。

如果这是重点,那么(在概念上,如果不是实际上)考虑问题的最简单方法似乎是:

要在没有交互作用的线性正态回归模型中获得 X 对 Y 的边际效应,您只需查看 X 上的系数。但这还不够,因为它估计未知。在任何情况下,人们真正想要的边际效应是某种图或总结,它为一系列 X 值提供关于 Y 的预测,以及不确定性的度量。通常,人们可能想要预测的均值 Y 和置信区间,但也可能想要预测 X 的 Y 的完整条件分布。该分布比拟合模型的 sigma 估计更宽,因为它考虑了模型系数的不确定性.

对于像这样的简单模型,有各种封闭形式的解决方案。对于目前的目的,我们可以忽略它们,而是更一般地考虑如何通过模拟获得边际效应图,以处理任意复杂模型的方式。

假设您想要改变 X 对 Y 均值的影响,并且您很乐意将所有其他变量固定在一些有意义的值上。对于 X 的每个新值,从模型系数的分布中抽取一个大小为 B 的样本。在 R 中这样做的一个简单方法是假设它是具有均值coef(model)和协方差矩阵的 Normal vcov(model)为每组系数计算一个新的预期 Y,并用一个间隔对批次进行汇总。然后转到 X 的下一个值。

在我看来,这种方法应该不受应用于任何变量的任何花哨的转换的影响,只要您在每个采样步骤中也应用它们(或它们的倒数)。因此,如果拟合模型将 log(X) 作为预测变量,则在将新 X 乘以采样系数之前记录它。如果拟合模型将 sqrt(Y) 作为因变量,则将样本中的每个预测均值平方,然后将它们汇总为区间。

简而言之,更多的编程但更少的概率计算,以及临床上可理解的边际效应。这种“方法”有时在政治学文献中被称为 CLARIFY,但相当笼统。