ML / Research / SWE · Technical Screen / Project Deep Dive

xAI 项目数据深挖:从采集处理到下游任务影响

Screen 问简历项目的数据怎样收集、处理,以及数据和下游任务的关系;用可追溯数据链和消融说明。

题目重点:Screen 问简历项目的数据怎样收集、处理,以及数据和下游任务的关系;用可追溯数据链和消融说明。

题意与假设

这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。

  • 训练版讨论有输入数据、处理流水线和可测下游任务的 ML 项目;若项目不是监督学习,标签与目标指标需改写。
  • 任何规模、模型或收益数字都来自候选人真实记录,不能从题目推断。
  • 因果结论需实验或可靠对照,单次离线相关性不能证明某数据处理带来线上收益。

解题路线

  1. 画数据血缘:原始源、采样条件、采集时间、权限与 consent、去重、清洗、标注、版本、train/validation/test 切分、上线特征与监控。每环说明本人负责边界。
  2. 先给下游任务与目标指标,例如召回、准确率、延迟或人工审查成本;再说明数据处理每一步对应什么误差模式,而非机械列 ETL 步骤。
  3. 检查泄漏:同用户/同实体跨 train/test、未来时间进入训练特征、重复样本跨集合。切分单位与线上泛化目标一致。
  4. 用 ablation 对照数据版本:保持模型与训练设置近似相同,只改一个数据处理策略,报告总体与关键切片指标及置信/样本量;若多因素同变,则承认无法归因。
  5. 上线后监控输入分布、缺失/重复率、标注滞后、模型输出与业务指标,发现漂移要能回溯到数据版本并回滚。

手动走一遍

训练例:若目标是判断 tweet 是否含某类主题,旧数据只采英文,线上含多语。新增多语样本后,先按语言切片测召回,而非只报总体准确率;若同时换了模型架构,就不能把召回改善全部归功于数据。候选人需换成自己的真实项目。

规模与取舍

处理 N 条数据至少 O(N) 扫描,按 ID 去重平均 O(N) 时间与 O(U) 索引空间;大规模数据可分区/外排。训练、标注和人工审阅预算依实际规模而定,题目没有数值。

易错点与追问

容易失分的边界

  • 只讲模型结构,不知道数据从何而来、如何标注。
  • 离线提升归功于清洗,但同时改变数据切分/模型。
  • 把用户级泄漏当成合法泛化。
  • 报漂亮总体指标,掩盖关键人群或时间段退化。
  • 说数据一定改善任务,却无版本或对照证据。

继续深挖

  • 最严重的一次数据质量问题如何发现?
  • 如果线上分布变了,先查哪几个指标?
  • 如何防止同一实体泄漏到测试集?
  • 若标注预算只有一半,如何选择样本?
✓已复制微信号!