回归产生的标准差要小得多,并且均值不正确,这可能是什么问题?

数据挖掘 回归
2022-02-12 23:47:50

我正在建模一个回归问题。初始尝试产生以下结果:

labels.mean(): 0.00018132978443886167
labels.std(): 0.013450786078937208

predictions.mean(): 0.0005549060297198594
predictions.std(): 0.00430255476385355

如您所见,均值已关闭,标准差完全不同。我想知道它说明了什么?

我的猜测:这是否意味着我的特征没有足够的辨别力,以至于模型看到带有正面和负面标签的示例,因此输出的差异很小?

我正在使用XGBRegressor, 运行回归,并提前停止。我有 100 万个训练示例、10 万个验证示例(用于提前停止)和另外 10 万个用于测试目的(上面显示了平均值和标准差)。

我还检查了三组的标签分布基本相同。

1个回答

标准偏差的差异没有任何可疑之处。如果您的相关性较弱,则只能预期。

假设回归是y ~ x,即y = ax + b假设x它只解释了 中的一小部分可变性y,即y分散在各处,并且最小回归线仅弱拟合数据。还假设这条线几乎是水平的(即a很小)。那么预测值的标准偏差y会很小(因为线几乎是水平的),但实际值的标准偏差y可能会很大。

但实际上,弄清楚发生了什么的方法是可视化数据您应该始终从可视化数据开始。绘制散点图,并在其上叠加最小二乘拟合线。我敢打赌,您会立即对可能发生的事情有更好的了解。