我可以根据相同数据点的平均目标值创建一个新的目标值进行回归吗?

数据挖掘 回归 数据清理 监督学习 数据泄露
2022-03-10 11:14:10

我正在尝试预测零售店的利润。原始数据框如下所示:

店铺编号 特征A 特征 B 利润
一种 1 2 2016 年 20000
一种 1 2 2017 40000
4 3 2017 50000
4 3 2018 40000
C 5 6 2015 80000
C 5 6 2016 年 90000

将无法获得有关利润和年份的生产信息。由于年份不可用,我们有相同的数据点和不同的目标值。所以我想添加每家商店的平均利润,因为输入特征保持不变。然后删除旧的目标值、年份并删除重复项。然后它看起来像这样:

店铺编号 特征A 特征 B 平均利润
一种 1 2 30000
4 3 45000
C 5 6 85000

我可以使用“平均利润”作为回归模型的新目标还是会造成数据泄漏,因为平均值不是我们在生产中预测的(我们预测商店的利润不是平均值,并且独立于年份)?

或者这一步完全没有必要,因为这就是回归模型在数学上的工作方式?

提前致谢。

编辑:编辑样本集,因为利润可能会随着时间的推移而减少。但无论如何,关于年份的信息不可用 -> 所以没有时间依赖性

1个回答

您的解决方案完全有意义,如果您在生产中没有时间数据,那么您最好这样做。我只是补充一点:

  • 当您仅基于目标或仅基于特征进行转换时,不会发生数据泄漏。因此,根据数据泄漏,您在这里实际上是安全的。
  • 您的目标可能存在显着差异即您必须预测75k作为两个目标值的平均值100k50k. 我建议您还学习分散度量(方差、标准等)作为另一个目标,并训练学习中心(例如平均值)和分散(可变或标准)度量。这有助于您更好地了解您的“好”预测有多“好”(即预测75k因为上面的例子在机器学习方面很好,但是你的数据的真实统计表明这仍然远离两个真实值。这可以通过学习分散度量来捕获)