数据泄露
数据泄露是指,在训练数据中包含目标信息,但在预测时没有可用的类似数据。这会使得训练数据(或者验证数据)效果比较好,但实际生产(预测)时效果特别差。
有两种泄露类型:target leakage(目标泄露) 和 train-test contamination(训练测试污染)
当测试集上的预测结果准确率特别高,比如95%以上时,要检查一下是否数据泄露了。
target leakage
预测包含未来才知道的数据时,会发生目标泄露。
train-test contamination
比如在切分训练集 / 测试集之前,就使用了如均值插值法处理缺失值,那么训练集中其实就已经包含了测试集的信息。
例子
生病与吃药
用是否吃药,来预测是否会得病。
**数据泄露:**生病的才会吃药,所以用是否吃药来预测是否得病贼准。
原料消耗与产值
用当月皮革使用量,来预测鞋带的需求量。
**数据泄露:**咋一看没有直接联系,其实,皮革使用量 -> 鞋子产量 -