负R平方是什么意思?


17

假设我有一些数据,然后将数据与模型拟合(非线性回归)。然后,我计算R平方()。[R2

如果R平方为负,那是什么意思?这是否意味着我的模型不好?我知道的范围可以是[-1,1]。当为0时,这还意味着什么?[R2[R2


4
这意味着你做错了什么,因为R2的谎言在[0,1]的定义。 另一方面,调整后的可以为负,您可以放心地认为这意味着您的模型与数据的拟合度很差。当[R 2是正好为零,这意味着ˉ ý一样好的预测ý作为最小二乘回归线本身。R2 R2y¯ÿ
dsaxton

1
对于没有拦截回归见,例如这是可能的stats.stackexchange.com/questions/164586/...



@gung我要暗示这可能是该问题的重复...您认为它们足够不同吗?(如果有什么问题,因为没有分散注意力的SPSS语法,这个问题看起来比其他问题更好,但是另一个线程的答案很好,似乎也涵盖了这个问题。)
Silverfish

Answers:


37

R2可以为负,仅表示:

  1. 该模型非常不适合您的数据
  2. 您没有设置拦截

对于那些说在0和1之间的人来说,情况并非如此。虽然对于带有单词“ squared”的东西来说,它的负值听起来好像违反了数学规则,但它可以在R 2模型中发生,而不会出现截距。要了解原因,我们需要查看如何计算R 2[R2[R2[R2

这有点长-如果您想要答案而不理解,请跳至最后。否则,我试图用简单的文字来写。

首先,让我们定义3个变量:牛逼小号小号Ë 小号小号[R小号小号Ť小号小号Ë小号小号

计算RSS

对于每个自变量,我们都有因变量y。我们绘制最佳拟合直线,其中预测值Ÿ对于每个值X。让我们叫的值Ÿ行预测ÿ。您的线所预测的值与实际y值之间的误差可以计算得出。所有这些差异平方并相加,这给广场的残差平方和[R 小号小号XÿÿXÿÿ^ÿ[R小号小号

将其代入方程,[R小号小号=ÿ-ÿ^2

计算TSS

我们可以计算出的平均值,这就是所谓ˉ ÿ。如果我们绘制ˉ Ÿ,它仅仅是一个水平线通过数据,因为它是恒定的。我们可以用它虽然做的是减法ˉ Ÿ(平均值Ÿ从每一个实际值)ÿ。结果被平方和相加,其给出平方的总和Ť 小号小号ÿÿ¯ÿ¯ÿ¯ÿÿŤ小号小号

将其代入方程Ť小号小号=ÿ-ÿ¯2

计算ESS

的之间的差异ÿ(的值Ÿ由线预测的),将其平均值ˉ ÿ被取平方并相加。这是正方形的解释总和,其等于 Σ Ý - ˉ ÿ2ÿ^ÿÿ¯ÿ^-ÿ¯2

请记住,,但我们可以添加一个+ ÿ - ÿ到它,因为它已将自身消去。因此,Ť 小号小号= Σ ÿ - ÿ + ý - ˉ ý2。扩大这些支架,我们得到牛逼小号小号= Σ Ÿ - Ÿ2 +Ť小号小号=ÿ-ÿ¯2+ÿ^-ÿ^Ť小号小号=ÿ-ÿ^+ÿ^-ÿ¯2TSS=(yy^)2+2(yy^)(y^y¯)+(y^y¯)2

时,只有当线与截距绘制,下面总是为真:。因此,Ť 小号小号= Σ Ý - Ý2 + Σ Ý - ˉ Ý2,你可能会注意到只是意味着Ť 小号小号= - [R 小号小号+2ÿ-ÿ^ÿ^-ÿ¯=0Ť小号小号=ÿ-ÿ^2+ÿ^-ÿ¯2。如果将所有项除以 T S S并重新排列,则得到 1 R S SŤ小号小号=[R小号小号+Ë小号小号Ť小号小号1-[R小号小号Ť小号小号=Ë小号小号Ť小号小号

这是重要的部分

定义为模型可以解释多少方差(模型的质量如何)。在方程式中, R 2 = 1 R S S[R2。看起来熟悉?当用截距绘制线时,我们可以将其替换为R2=ESS[R2=1-[R小号小号Ť小号小号。由于分子和指示符均为平方和,因此R2必须为正。[R2=Ë小号小号Ť小号小号[R2

当我们不指定拦截,不一定等于0。这意味着,Ť 小号小号= - [R 小号小号+ Ë 小号小号+ 2 * Σ Ý - ÝÝ - ˉ ÿ2ÿ-ÿ^ÿ^-ÿ¯0Ť小号小号=[R小号小号+Ë小号小号+2ÿ-ÿ^ÿ^-ÿ¯

将所有项除以,得到1 R S SŤ小号小号1-[R小号小号Ť小号小号=Ë小号小号+2ÿ-ÿ^ÿ^-ÿ¯Ť小号小号

最后,我们替补得到。这次,分子中有一个不是平方和的项,因此它可以是负数。这将使R2为负。什么时候会发生?2*ΣÝ - Ý Ý - ˉ Ý将是负时ÿ - ÿ是负的并且 ÿ - ˉ ÿ是正的,或者反之亦然。这发生的水平线 ˉ Ÿ实际上说明数据比最佳拟合线更好。[R2=Ë小号小号+2ÿ-ÿ^ÿ^-ÿ¯Ť小号小号[R22ÿ-ÿ^ÿ^-ÿ¯ÿ-ÿ^ÿ^-ÿ¯ÿ¯

这是为负时的夸大示例(来源:休斯敦大学清湖大学)[R2

R ^ 2为负时的夸张示例(来源:休斯敦大学清湖大学)

简单地说:

  • ,水平线比模型更好地解释了数据。[R2<0

您还询问了[R2=0

  • ,一条水平线和模型一样解释数据。[R2=0

我赞扬您做到了这一点。如果您认为这很有帮助,则还应该在这里引用我不得不提及的fcop答案,因为已经有一段时间了。


5
真的很棒的答案!缺少对我来说,唯一的事情就是后面为什么直觉时,只有当,有一个拦截集?2ÿ-ÿ^ÿ^-ÿ¯=0
Owen

6

到目前为止,没有一个答案是完全正确的,因此,我将尽我对R-Squared的理解。我在我的博客文章“什么是R平方”中对此做了更详细的说明。

平方和误差

普通最小二乘回归的目的是获得一条使平方和误差最小的线。具有最小和平方误差的默认线是通过平均值的水平线。基本上,如果您不能做得更好,则可以预测平均值,这将为您提供最小的平方和误差

通过均值的水平线

R-Squared是一种基于平方误差总和来测量比平均线好多少的方法。R平方的方程是

r平方的方程

现在,SS回归和SS Total都是平方项的和。两者始终都是积极的。这意味着我们取1,然后减去一个正值。因此,最大R平方值是正1,但最小值是负无穷大。 是的,这是正确的,R平方的范围在-infinity和1之间,而不是-1和1之间,而不是0和1之间

什么是平方和误差

平方误差总和是在每个点取误差,将其平方,然后加所有平方。对于总误差,它使用通过均值的水平线,因为如果您没有其他任何信息(即,不能进行回归),则得出的平方和误差最低。

在此处输入图片说明

等式是这个

平方和总误差方程

现在通过回归,我们的目标是做得比平均值更好。例如,与使用水平线相比,此回归线将给出更低的平方和误差。

在此处输入图片说明

回归和平方误差的方程式是

在此处输入图片说明

理想情况下,您的回归误差为零,即回归线与数据完全匹配。在这种情况下,您将获得R平方值1

r平方值1

负R平方

以上所有信息都是非常标准的。现在负R平方又如何呢?

事实证明,没有理由让您的回归方程得出的平方和总和低于平均值。通常认为,如果您无法做出比平均值更好的预测,则只使用平均值即可,但没有任何强迫性的原因。例如,您可以预测所有数据的中位数。

在实际实践中,对于普通的最小二乘回归,获得负R-Squared值的最常见时间是在您强制回归线必须经过的点时。这通常是通过设置截距来完成的,但是您可以强制回归线穿过任何一点。

当您执行此操作时,回归线穿过该点,并尝试在仍穿过该点的同时获得最小平方和误差。

固定点

默认情况下,回归方程式使用平均值x和平均值y作为回归线经过的点。但是,如果将其强制通过远离回归线通常所在的点,则可获得平方和误差,该误差将高于使用水平线

在下图中,两个回归线都被强制具有0的ay截距。这导致与原点相距很远的数据的负R平方。

负r平方

对于最上面的一组点(红色的),回归线是最好的回归线,它也穿过原点。碰巧的是,回归线比使用水平线差,因此给出负R平方。

未定义R平方

这里没有提到一种特殊情况,您可以在其中获得未定义的R平方。也就是说,如果您的数据是完全水平的,则总和平方误差为零。结果,在R平方方程中,您将得到零除以零(未定义)。

在此处输入图片说明

在此处输入图片说明


一个非常生动的答案,希望看到更多这种类型的答案!

0

如先前的评论者所述,r ^ 2在[0,1]之间,而不是[-1,+ 1]之间,因此不可能为负。您不能对值取平方并得到负数。也许您在看r的相关性?可以在[-1,+ 1]之间,其中零表示变量之间没有关系,-1表示存在理想的负关系(随着一个变量的增加,另一变量减小),而+1则是理想的正关系(两个变量都一致地上升或下降)。

如果确实要查看r ^ 2,那么正如前一个评论者所描述的,您可能会看到调整后的r ^ 2,而不是实际的r ^ 2。考虑一下统计的含义:我教行为科学统计学,而我学会向学生讲解r ^ 2含义的最简单方法是“解释%方差”。因此,如果r ^ 2 = 0.5,该模型将解释因变量(结果)的50%变化。如果r ^ 2为负,则意味着模型解释了结果变量的负%,这不是直观上合理的建议。但是,调整后的r ^ 2将样本量(n)和预测变量数(p)考虑在内。计算公式在这里。如果您的r ^ 2非常低,那么很容易获得负值。诚然,负调整后的r ^ 2不会比常规的r ^ 2具有更直观的含义,但是正如前面的评论者所说,这仅意味着您的模型非常差,甚至不仅仅是简单无用。


3
[R2[R2定义为解释的方差百分比,而不是实际值与拟合值之间的平方相关。这可能不会在OLS估计截距的回归中发生,但可能在没有截距或其他情况的回归中发生。
理查德·哈迪

4
[R2 不可能是 <0 在样本中,在样本外计算可以为负,即在固定所有回归系数后在保留样本上。如上所述,这表示比随机预测更糟糕。
Frank Harrell 2015年

@FrankHarrell,您确定需要提供样品吗?当然,您必须完全忽略数据才能生成比均值更差的模型,但是我不明白为什么仅对样本数据无法做到这一点。
Matt Krause 2015年

我假设样本是指估计系数的样本。那就不能为负。
Frank Harrell

1
@FrankHarrell,假设模型真的很残酷-您适合一些无截取函数,例如ωX+ϕ到对角线。不应该[R2即使对于样本数据也为负数?当我这样做时,Matlab确实给了我一个相当大的负数...
马特·克劳斯
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.