机器学习中的数据泄漏,是指无意中使用了模型在预测或接受评估时本不应获得的信息。它可能源于受到污染的训练数据、不恰当的输入变量、预处理或模型选择流程。数据泄漏通常会使性能估计过于乐观,因此,模型在测试集上的出色表现未必能反映其对真正新样本的泛化(机器学习)能力。核心问题在于:信息是否越过了预期预测任务和评估设计所规定的边界。(scikit-learn.org)
含义与范围
在监督学习中,使用训练标签来学习预测关系是合理的。当额外信息——例如评估数据的标签、未来观测值或结果发生后产生的信息——进入本应在没有这些信息的情况下运行的流程时,就发生了泄漏。因此,仅检查数据集并不总能识别泄漏:预测发生的时间、当时可用的信息,以及结果所要适用的总体也同样重要。某个变量可能适合用于回顾性分类,却不适合用于预测尚未发生的事件。(pmc.ncbi.nlm.nih.gov)
数据泄漏与过拟合有关,但两者并不相同。过拟合是指对已观测数据的过度适应;数据泄漏则是指获取了任务或评估规程所禁止使用的信息。模型选择可能将两者联系起来:反复根据评估结果选择配置,会使开发流程逐渐适应这些观测数据,从而削弱它们作为性能证据的独立性。(scikit-learn.org)
主要机制
目标泄漏是指预测变量以预测时无法获得的方式,直接或间接揭示了结果。例如,用订单取消后才生成的退款记录来预测订单是否会被取消,就等于向模型提供了它本应提前预测的事件所产生的信息。变量与目标高度相关,本身并不能证明存在泄漏;关键在于该变量在预测时是否理应可用。(pmc.ncbi.nlm.nih.gov)
预处理泄漏是指利用评估样本来学习数据变换。例如,在完整数据集上计算特征缩放参数,在划分数据之前进行缺失数据插补,或将训练样本和测试样本合在一起拟合主成分分析。使用全部标签进行特征选择是尤其直接的泄漏:评估样本的结果影响了哪些输入会被送入模型。即使最终估计器仅在训练数据行上拟合,这些问题也可能发生。(scikit-learn.org)
重叠泄漏与组间泄漏是指相同记录、近似重复记录或彼此依赖的观测样本同时出现在评估划分的两侧。来自同一个人或同一台设备的重复测量,可能让模型利用熟悉的、特定于该实体的模式。因此,按数据行随机划分,可能评估的是对已知实体的预测能力,而不是所声称的对未见过的实体的预测能力。恰当的划分边界取决于预期应用。(pmc.ncbi.nlm.nih.gov)
时间泄漏是指将未来信息用于预测较早发生的事件。在时间序列任务中,将观测样本随机分配到各折,可能导致模型用较晚时期的数据训练,却在较早时期的数据上接受评估。按时间顺序评估则将训练样本安排在评估时期之前;有些规程还会在两者之间留出时间间隔。这所解决的约束,与仅仅确保数据行索引不重叠并不相同。(scikit-learn.org)
评估与模型选择
验证集用于支持开发决策,而独立的测试集用于评估由此形成的流程。选择某个超参数配置后,再用同一批观测样本报告其性能,会产生选择偏差。所选配置的得分既反映预测能力,也反映开发过程对该特定评估样本的适应。(scikit-learn.org)
交叉验证并不会自动消除泄漏。需要从数据中学习的预处理步骤必须在每一折的训练部分内分别拟合,分组或时间方面的限制也必须始终得到遵守。在嵌套交叉验证中,内层循环选择配置,外层循环则使用留出样本评估完整的选择流程。这将调参与性能评估分离开来,但无法纠正输入变量本身已经包含不可用的未来信息这一问题。(scikit-learn.org)
目标编码展示了一种更微妙的边界问题。用某个类别中观测结果的均值替代该类别,可能让每个训练样本的编码包含其自身标签的信息,尤其是在类别较为罕见时。交叉拟合使用其他折而非样本所在折的数据来构建该样本的编码。这既限制了训练表示中的标签信息,又保留了类别层面结果估计的实用价值。(sklearn.org)
预防与排查
能够防范泄漏的工作流程,会在拟合需要从数据中学习的变换之前,将评估数据分离出来。预处理流水线可以将变换与估计器结合,使每次交叉验证迭代都仅从该次迭代的训练子集中学习这些变换。随后,将已拟合的变换原样应用于留出样本。这样的流水线能够控制预处理的信息边界,但不能防范所有可能源于语义或时间顺序的泄漏。(scikit-learn.org)
评估设计还需要明确划分的单位。当目标是衡量模型在新实体上的性能时,基于分组的划分会将整个实体留出;按时间顺序划分则使用较早的数据来评估对未来观测样本的预测。排查时还应检查输入信息是否可用、是否存在重复记录、样本之间的依赖关系,以及开发决策的依据来源。记录这些假设有助于提高可复现性,也使性能声明更易于审查。(scikit-learn.org)
语言模型中的基准数据污染
对于大语言模型,一个相关问题是基准数据污染:评估题目进入预训练语料,可能使测得的性能虚高。污染还可能包括测试材料的修改版本,这使得通过精确匹配进行检测更加困难。其影响因重叠类型和评估任务而异;是否接触过评估材料与性能是否被抬高,是不可相互替代的衡量指标。(aclanthology.org)
自然语言处理领域的研究通过语料检索和行为测试来调查污染,包括要求模型还原基准题目中不寻常的缺失片段。当训练语料未公开时,这些方法尤其有用。移除可检测到的重叠内容是一种缓解措施,但修改过的样本可能逃过污染清除,因此仍难以确定某个基准衡量的是模型在陌生任务上的表现,还是先前接触过相关材料所带来的效果。(aclanthology.org)