数据准备与处理:从基础到高级技巧
1. 数据缩放与范围问题
在数据处理中,我们常常希望将输入数据缩放到 [0,1] 范围,目的是让训练过程尽可能高效,同时避免数值问题。不过,实际操作中可能会出现一些特殊情况。比如,当原始数据中的最小值进行转换后,可能会得到一个负数,超出了 [0,1] 范围。同样,如果遇到非常炎热的夜晚,得到的正温度值转换后可能会大于 1,也超出了这个范围。
但这些情况都是可以接受的。一旦系统训练完成,我们可以给它输入任意值,它会计算出相应的输出。当然,我们仍然需要关注数据的合理性。例如,如果系统预测明天的汽车数量为负数,我们显然不能基于这个数字来制定计划。
2. 交叉验证中的信息泄露问题
2.1 信息泄露的危害
在构建数据转换时,如果不谨慎操作,就可能出现信息泄露的情况。即一些本不应包含在转换中的信息意外地混入,影响了数据的转换。这不仅会导致数据转换不符合我们的预期,更糟糕的是,在评估测试数据时,系统可能会获得不公平的优势,使我们高估其准确性。我们可能会误以为系统性能良好可以部署,但实际使用时却发现性能远不如预期。
2.2 交叉验证中的信息泄露示例
在交叉验证中,我们通常会将初始训练集的一部分作为临时验证集,然后用剩余数据训练新的学习器,最后用验证集评估学习器。
如果我们错误地在分析输入数据构建转换时,将所有折(fold)的数据都包含在内,就会出现信息泄露。例如,我们要对训练集中的所有特征进行缩放,使其范围在 0 到 1 之间。假设第一个折中的最小和最大特征值为 0.01 和 0.99,而其他折中的值都在这个范围内。当我们将所有折的数据作为一个整体进行
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



