【问题标题】:Feature engineering, handling missing data特征工程,处理缺失数据
【发布时间】:2019-03-06 09:36:15
【问题描述】:

考虑这个数据表

NumberOfAccidents   MeanDistance
1                   5
3                   0
0                   NA
0                   NA
6                   1.2
2                   0

第一个特征是事故数量,第二个是这些事故到某一点的平均距离。很明显,对于零事故的记录,MeanDistance 不会有值。但是,估算这些缺失值是不合逻辑的!

我的解决方案:我决定将MeanDistance 离散化,其中NAs 是一个级别(bin),其余数据位于bin 中,例如:[0,1), [1,2.5), [2.5, Inf)。决赛桌将如下所示:

NumberOfAccidents   NAs   first_bin   sec_bin     third_bin
1                   0     0           0           1
3                   0     1           0           0
0                   1     0           0           0
0                   1     0           0           0
6                   0     0           1           0
2                   0     1           0           0

您对这些无法估算的缺失值有什么想法? 您对此问题的解决方案是什么?

【问题讨论】:

    标签: machine-learning classification missing-data


    【解决方案1】:

    这实际上取决于域和您要预测的内容。即使您的解决方案很好,我也不会像您那样对其余数据进行分类。鉴于NumberOfAccidents 功能已经告诉MeanDistanceNA 值,我可能只是将0 归入NA 值(用于计算)并保留其余数据不变。

    尽管如此,没有必要限制自己,只需尝试不同的方法并保留能够提升您的KPI(关键绩效指标)的方法。

    【讨论】:

    • 它是二元分类问题的一部分。你的意思是让(0,0)对而不是(0,NA)起作用?我的数据集中有很多这样的特性,我必须想出一个强大的解决方案。
    • 是的,根据您描述的情况,我相信这会奏效。然而,直觉不是你应该信任的东西,只是尝试一下,看看它是否会提升你的模型,如果它不只是放弃这个想法。关于具有NA 值的其他功能,它们是否也依赖于NumberOfAccidents
    • 我的第一个解决方案与您的想法相同,我正在考虑将值离散化。我有一组特征:NumberOfAccident_60,它计算过去 60 分钟内的事故和一些依赖于过去 60 分钟事故的特征,例如事故类型的计数,MeanDist_60MinDist_60 等等。还有其他组统计最后 90 分钟事故的特征等等...但是每组的 NA's 取决于每组的第一个特征的零值(NumberOfAccident_60NumberOfAccident_90
    • 知道了。只要这些间隔[0,1), [1,2.5), [2.5, Inf) 选择得当,您的解决方案对于这个特定问题似乎很好。但正如我之前所说,尝试这两种方法并看看哪种方法能给你带来更好的结果是没有坏处的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-17
    • 2017-10-18
    • 2023-02-08
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多