Research Engineer / ML · ML Coding / Dataset Analysis

脏图像分类:问题分型、脏数据率和改进验证

图像不可解码、标签错和近重复是不同问题,不能混成一个clean步骤。

题目重点:图像不可解码、标签错和近重复是不同问题,不能混成一个clean步骤。

题意与假设

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

  • 实际图像文件、标签taxonomy和脏定义未给,本文给审阅流程而非捏造原数据rate/错误样本。
  • 脏率分母与类别需先定:不可读文件占总文件数、错标占人工核查样本数、重复占样本数不是同一个比例。抽样误差与未审样本要说明。

解题路线

  1. 保留raw manifest与处理版本,逐文件检查解码、尺寸、通道、方向、截断、异常格式及ID/label关系。记录失败原因和可修复性,不以悄悄跳过坏图让训练看似成功。
  2. 结构问题可确定性修复,如EXIF旋转/统一RGB/尺寸;标签错、低质量和语义含糊需要人工准则。标准化时train和eval保持一致,避免train缩放路径与test不同。
  3. 查exact hash和感知近重复,将同源/近重复组放同split;视频截帧或同商品不同裁剪也可能跨split泄漏。若评泛化到新实体,应按实体分组而非随机图像。
  4. 脏率报告总体与来源/类别切片,人工抽样可分层后按总体权重估计。不能因为只审核模型错例而将其中脏比例当全数据脏率;保留审核协议与unknown项。
  5. 改善先建立固定clean/representative eval,比较原始/修复/过滤/标签复核训练方案。过滤后各类分布和罕见场景可能变,准确率升高不代表真实任务变好;测每类recall、混淆和数据覆盖。

手动走一遍

总文件1000、20不可解码,则该定义rate2%;人工随机核查100张发现5错标,只能报告审核样本5%及不确定性,不能说全库恰好50错。一个高亮度来源几乎全positive,可能学来源捷径;按来源留出验证并检查label/来源关系。删掉模糊图后平均accuracy提高,但部署真实模糊输入仍多,需训练鲁棒性或设置可解释拒识,而非只优化干净test。

规模与取舍

全量解码审查O(总压缩/像素bytes),exact hash O(bytes),近重复检索取决于embedding和索引。人工标签审查成本按样本数与准则;大数据应先manifest统计/分层抽样,不必须全量模型训练才发现问题。

易错点与追问

容易失分的边界

  • 把全部异常样本无记录删掉,无法追溯数据变化。
  • 训练集过滤但eval也删困难例,制造虚高提升。
  • hash去重后仍忽略语义近重复跨split。

继续深挖

  • 脏数据率不同来源差异很大时,怎样设计审核抽样?
  • 部署输入脏率上升,监控信号与模型/数据修复优先级怎样定?
✓已复制微信号!