约束线性回归中的残差总和

时间:2019-07-04 19:25:04

标签: constraints regression

即使我们在回归模型中为系数添加了序数约束,残差总和== 0仍然成立吗?

2 个答案:

答案 0 :(得分:0)

在现实生活中,错误永远不会总计为零,因为它们倾向于积累

请考虑您的误差在所有数据点之间的范围[-999,+ 999]中均匀波动。现在我们可以总结k个数据点的错误并绘制图表err_sum = f(k)。 C ++测试代码:

#include <iostream>
#include <sys/random.h>

int main()
{

  int i,k;
  int rnd;
  int err; 
  char buf[4];

  for (k=10000; k < 1000000; k+=10000) {
    err = 0;
    for (i=0; i < k; i++) {
      getrandom(buf, 4, 0);
      rnd = *(int*)buf;
      err += rnd%1000;
    }
    std::cout << k << "," << err << "\n";
  }

  return EXIT_SUCCESS;
}

结果图为: enter image description here

从图中可以看出,总和误差不会收敛到零,也不会收敛到其他任何值。随着增加的更多数据点,它只会增加。同样,对于每一个k,值从线性拟合中散布到几乎不能称为“线性”的程度。

答案 1 :(得分:0)

理想地,误差必须均匀分布,即误差可以是正值也可以是负值,这将抵消为零。在实际情况下,由于数据中的噪声,它们永远不会等于零。但是,如果您观察到误差分布中显示出稳定增长或下降的任何模式,则表明我们尚未在模型中发现这一点。 我对数据科学非常陌生。请让我知道我是否错了。

相关问题