【问题标题】:Classification problem where only future data has important missing values?只有未来数据具有重要缺失值的分类问题?
【发布时间】:2019-05-25 13:52:55
【问题描述】:

我正在尝试使用梯度提升机来解决二进制分类问题。

鉴于下表包含 4 列,其中 ColumnA 是我试图预测的二进制值 (0,1)

|  ColumnA  |  ColumnB  |  ColumnC  | ColumnD  | ... |
|     0     |
|     1     |

在整个训练数据中,我计算了平均值,发现A为0和1时ColumnB的平均值有很大差异,所以从我的解释来看,这意味着这个值应该起到非常重要的作用在预测中?

但是,当涉及到我试图分类的未来数据时,我没有关于 ColumnB 的任何信息。我的问题是,简单地取 columnB 的平均值并将其作为未来数据的值是否有意义,或者我应该完全删除 ColumnB,因为我无法在未来的值中获取该数据?

目前我认为使用平均值作为默认值是有意义的,但由于这否定了该列在未来预测中的有效性,也许我这样做是徒劳的?

【问题讨论】:

    标签: python machine-learning classification


    【解决方案1】:

    您的问题的答案取决于两件事,首先是 GB 模型赋予 B 列的相对权重或重要性。如果该模型对 columnB 赋予了很大的权重,并且它是您的主要决定因素训练集,然后用平均值填充空值或缺失值可能会导致错误的预测。第二件事是columnB 上缺失值的数量。如果该列中总是缺少大量数据,例如 30% 或更多,那么使用该列是没有意义的,因为模型将不可靠,并且您的训练数据在列 B 中没有空值,因此模型从未见过数据与null 并在做出预测时会感到困惑。

    在继续之前,您应该测试模型中的特征重要性。在没有columnB 的情况下检查准确性。最后一个解决方案或高级解决方案将是拥有一个投票系统模型,其中您有多个模型,一些有列 B,一些没有。

    【讨论】:

      猜你喜欢
      • 2011-02-19
      • 2020-11-25
      • 1970-01-01
      • 2020-02-29
      • 1970-01-01
      • 1970-01-01
      • 2021-09-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多