变化方差的线性回归

机器算法验证 回归
2022-03-19 16:16:30

我想对一些数据进行线性回归。对于 x 的每个值,数据值在 y 上正态分布,大约是某个平均值。然而,方差随着 x 的增加而线性增加。我制作了这个示例图:

线性回归图

蓝色是回归线,红色是数据点,黑色表示正态分布,绿色表示方差增加。

如何计算方差变化的回归,同时对数据进行线性回归?数据是异方差的,我已经阅读了对这些数据进行线性回归的方法。但是,我没有发现任何关于估计数据方差的实际变化的信息。

我没有严格研究统计数据,所以我可以进一步查看任何简单的解释或资源将不胜感激。

更多细节:

原始数据集如下y=a/x+b. 方差为x变化遵循类似的模型s2=c/x+d. 我使用转换数据x=1/x使数据线性化(只是为了简化问题)。这是一个示例图(左边是转换的,右边是原始的):

在此处输入图像描述

3个回答

这听起来像是异方差的一个特例

有两个问题:

  1. 在存在异方差的情况下应该使用什么估计量?
  2. 你应该如何计算你的标准误?

最直接的做法是运行常规回归,但使用异方差稳健标准误差。正如@Glen_b 在评论中所建议的那样,您可能可以通过有效利用问题的已知结构来做得更好。

使用什么估算器?

  • 你可以运行一个正常的回归。

    • 在存在异方差的情况下,正则普通最小二乘(OLS) 估计量仍然是一致的。用外行的话来说,只要有足够的数据,OLS 仍然可以工作。但 OLS效率不高。
  • 您可以运行加权最小二乘法,这是广义最小二乘法的一种应用松散的想法是给予具有低方差误差项的观察更多的权重。

    • 因为您可能事先不知道误差项的方差如何随x,您可能必须做一些可行的 gls 之类的事情。

如果您运行常规 OLS 回归,则不应使用基于同方差假设的通常标准误差。相反,您应该使用异方差稳健标准误差任何统计数据包都可以做到这一点。

您的数据违反了同方差的假设。您可以使用产生对异方差具有稳健性的标准误差的回归方法。你用什么软件来运行你的回归?如果您使用的是 R,则可以使用该sandwich包来估计稳健的标准误差。

机器学习专家——尽管我很喜欢统计数据,但机器学习通常会在现实世界的应用中获胜,而异方差就是这样一种常见现象。一个更通用的解决方案是非参数的并且适用于这个和其他(甚至是高度)非线性回归问题是只使用分位数回归和袋装决策树。您可以通过Matlab上的一些链接了解更多信息(他们的示例很容易转移到 Python 或 R)。