模型在测试集上拿到很高的分数,上线后却频繁出错,一个常见原因是训练样本与测试样本并没有真正分开。例如,同一张设备故障照片的裁剪版进入训练集,原图进入测试集;或同一客户工单的改写版本分散到两边。这样的“串题”会让评估结果高估模型面对新材料时的能力。人工智能训练工程师需要在划分数据前识别“同一件事”的多种表面形式。
人工智能训练工程师先查哪些重复?
第一层是完全重复:相同文件哈希、相同文本或相同记录号。第二层是近似重复:换了文件名、裁剪尺寸、标点或少量措辞,但核心内容相同。第三层是业务关联:同一客户的一串工单、同一次设备故障的连拍图、同一合同的多个版本。第三层未必能靠文本相似度自动发现,需要业务主键、事件编号或人工抽样核查。
建立数据清单时,最好保留来源系统、采集批次、时间、授权或使用范围、去重规则、关联组编号。若来源本身无法追溯,先把这批材料标为待确认,不宜直接混入评估集。去重也不是机械删除所有相似样本:有些相似材料代表真实业务分布,关键是让相关样本在同一侧,并记录为何保留。
人工智能训练工程师如何划分训练、验证和测试数据?
先确定划分单位,再生成训练集、验证集和测试集。对于同一事件的多条记录,应按事件或客户组划分,而不是逐行随机切分。对于随时间变化明显的场景,可以另设时间靠后的测试批次,观察模型对新数据的表现。划分后检查各集合的类别、来源和时间分布,防止测试集只剩容易样本。
Google机器学习课程建议将训练、验证、测试数据分开,并指出好的测试集不应含有来自训练集的重复样本。验证集用于开发过程中的比较,测试集留作最终确认;反复依据测试结果调参数,也会使模型逐渐适应这套题。比例并无对所有项目通用的固定答案,应按数据量和业务代表性决定。
人工智能训练工程师还要防止预处理泄漏
即使文件没有重复,处理步骤也可能把测试集信息带回训练阶段。例如,先用全量数据计算标准化参数、筛选特征,再切分测试集;或者让标注人员看着测试答案修改训练规则。正确顺序通常是先划分,再只在训练数据上拟合需要学习的预处理参数,之后把同一变换应用于验证和测试数据。scikit-learn官方文档把这类情况列为数据泄漏的常见陷阱,并建议使用能约束步骤顺序的流程工具。
还要隔离人工反馈:分析验证集错误可以帮助改进模型;测试集若被频繁拿来挑模型,就不再是独立的最终检验。若业务持续更新,应建立新的、未参与开发的评估批次,而不是反复“刷”旧测试集分数。
人工智能训练工程师怎样交付可复核的评估结果?
随模型版本保存划分规则、随机种子或时间界线、去重与分组脚本版本、各集合记录数、剔除清单及人工复核样本。报告里分别写明数据质量检查结果和模型指标,不把“没有发现重复”表述为“绝无泄漏”。发生争议时,可以回查某条测试样本的来源、关联组和进入测试集的过程。
对包含个人信息或企业敏感数据的工单与图片,还应按项目授权和数据治理要求控制复制、共享与保存期限。评估的可信度来自独立样本和可追溯过程,而非单个漂亮分数。
资料依据:Google for Developers:Datasets: Dividing the original dataset;scikit-learn官方文档:Common pitfalls and recommended practices。资料核对:2026年10月22日。

本文整理与核对
整理:中山优才教育咨询有限公司。公司以职业培训考证咨询为主业,不颁发证书,考核与发证由对应发证单位办理。文中的条件、周期、查询入口均按发证单位当期公开资料核对,如有调整以最新通知为准。咨询 400-160-1813(每日 9:00—23:00,全年无休)。中山优才教育咨询有限公司的统一社会信用代码为 91442000588260611C,工商登记信息可公开查询。







