C2第 6 / 6 节 · 约 45 分钟

整合数据准备:划分、泄漏与交付检查

本节目标
  • 区分训练、验证和测试的用途
  • 识别重复对象与未来信息造成的泄漏

从分析表走向机器学习输入

积木体验站下一步想在任务开始前预测是否容易完成。模型只能使用预测时已经知道的信息,例如积木数量、任务难度和此前练习次数;本次最终用时和是否领取完成贴纸发生在结束后,不能当作开始前的输入。用于预测的输入叫特征,用来学习和核对结果的目标叫标签。标签是本次是否完成。字段出现在表里,不代表就能合法用于预测;必须问它是在什么时候、通过什么流程获得的。预测问题的时间点是筛选特征的重要依据。

三个数据集合承担不同职责

训练集用于学习参数和数据处理规则,验证集用于选择模型、阈值或设置,测试集用于在方案确定后进行相对独立的最终评估。若反复查看测试成绩并按它修改方案,测试数据也参与了选择,就失去原先独立检查的作用。划分比例没有放之四海而皆准的答案,小样本尤其要关注各类别是否足够。可以先用十条虚构记录练习概念,但不要把这样的小测量包装成可靠的真实表现。最终应同时报告划分方式、数量和评估限制。

重复角色和时间顺序会影响划分

假设虚构角色甲有四次尝试,随机按行划分后,甲的前三次进入训练,第四次进入测试。模型可能记住甲的稳定特点,而测试目标原本是新角色,这样得分就会偏乐观。如果要评估对陌生角色的预测,应该按角色分组,使同一角色全部落在一个集合。若目标是预测下一批活动,则可按批次时间先后划分,训练使用较早批次,测试使用较晚批次。分组划分和时间划分回答不同问题,不能只为了分数好看选择容易的那种。

清洗规则也可能偷偷使用答案

把所有记录先求用时均值,再用这个均值填充训练缺失,已经让测试分布影响了训练流程。更稳妥的是先划分,在训练集计算填充值、类别编码表和缩放尺度,然后原样应用到验证与测试。测试出现未见类别时,要按预先定义的未知类别规则处理,不能为了让结果更好看重新训练全部流程。特别要排除直接暴露标签的字段,例如完成贴纸编号,因为有贴纸几乎等于已完成。模型看似预测准确,实际只是读取事后答案。

交付一份别人能复核的数据包

数据交付不只是一个干净表,还应包含问题定义、字段字典、来源性质、清洗日志、划分清单与质量检查。检查项目可以包括唯一编号无重复、分钟单位统一、标签允许值一致、每组样本数可见、所有特征在预测时可获得。保留原始版与处理版,不覆盖无法确认的异常;记录处理规则只从训练集学习。最后明确数据是虚构教学材料,不能支持真实部署决策。这样的流程把零散统计连接成一条证据链,也为下一模块的数学与模型评估提供可靠起点。

本节要点

  • 特征必须符合预测时点的可获得性
  • 划分方式应匹配未来使用情境
  • 先划分,再从训练集学习数据处理规则

动手练习:审核预测开始前完成情况的数据方案

  1. 列出积木数、任务难度、此前练习次数、本次最终用时、完成贴纸编号五个候选字段
  2. 保留开始前可得的特征,圈出事后信息
  3. 假设评估对象是新角色,设计按角色分组的训练验证测试清单
  4. 写明缺失填充统计量从哪个集合计算
  5. 输出至少五项交付检查标准

自查清单

  • 正确排除两个事后字段
  • 按角色而非仅按行隔离数据
  • 填充规则只由训练集计算
先自己做,再查看参考答案

开始前可以使用积木数量、预先定义的任务难度与此前练习次数;本次最终用时及完成贴纸编号是事后信息,应排除。若希望评估对新角色的能力,同一虚构角色的全部尝试必须放在同一集合,避免模型借熟悉角色的特点获得虚高成绩。缺失填充值只从训练集计算,验证集用于比较方案,测试集在方案确定后检查一次。交付清单应核对唯一编号、统一单位、标签规则、分组隔离和特征获得时点,并提供原始表、清洗日志及划分说明。这些检查能降低泄漏,但小样本仍不足以支持真实部署。

本节自测

学完了吗?

标记后会记录在本机浏览器,课程首页显示你的进度。