本节摘要:项目需求先落成类别表和边界画法,再谈收集公开集还是自采。标注是分割的监督来源,质量闸门包括抽检一致率、忽略区、按病例或场景划分以防泄漏。没有规范的数据管线,只是把混乱高速送进显卡。
阅读完本节,你应当能够:
原文项目流程从需求分析起头:目标用户、输入输出、精度与速度、环境约束。落到标注,就是一页说明书。谁来画、画到哪一级结构、模糊带怎么处理、小目标小于多少像素标忽略。医学要伦理与去标识;驾驶要天气与时段覆盖;质检要缺陷等级和光源。说明书比网络结构图更早冻结。
类别表用稳定整数,从 0 背景起。改名可以,改 id 要迁移脚本。合并两类等于改任务,旧权重不兼容。拆一类要回炉。所以第一版类别宁少勿多,先把伤害最大的那几类标准。
画法:多边形适合硬边界建筑;画刷适合器官;点提示加模型预分割适合加速,但预分割必须人工改,否则模型在自我复制错误。实例任务规定遮挡时「只画可见还是补全被挡部分」。两种都合法,混用则评估乱。
公开集能验证管线:读得进、损失降、指标脚本通。口径很少等于你的产品。街景里的「人」不含手术室里的「人」。自采要覆盖失败模式:逆光、污迹、倍率、设备差异。合成数据适合先把训练环跑通,或补充稀有缺陷,但纹理一假,模型会认纹理不认结构。
数据量没有魔法数字。语义小器官有时几百张精心标的切片比几千张脏标强。实例遮挡多,则需要更多样的重叠。记录来源、设备、标注员、版本。版本进文件名或清单,回滚才可能。
隐私:人脸、病历、厂区布局。能在设备侧训练就不要集中明文。这不是附录,是收集阶段的门禁。
随机把帧打进三盘,同一患者、同一条街、同一块晶圆会出现在训练和测试里。指标好看,上线掉下来。独立单元:患者 id、行程 id、批次号。单元内的帧可以增强,单元本身不跨盘。时间序列还要按时间切,不要用未来帧训练预测过去那种泄漏的变体。
验证集用途是选模型和早停,测试集锁住直到报告。两盘都太小,早停会随机。类别极稀有时,分层保证每盘都有正例,但仍以独立单元为先,分层为辅。
| 划分错误 | 看起来 | 实际上 |
|---|---|---|
| 按帧随机 | 验证 mIoU 很高 | 同一场景泄漏 |
| 训练集含测试增强副本 | 过拟合被掩盖 | 复制样本 |
| 用测试调参 | 报告漂亮 | 无泛化估计 |
| 忽略区定义训练测试不一致 | 数字对不上 | 脚本口径漂移 |
⚠️ 常见坑:多人标注无抽检。一致率低时模型在学标注员风格,不是学生理解剖。
💡 关键直觉:规范是法律,抽检是执法。只发法律不执法,边界会按手抖生长。
统计每类像素占比、每图是否出现、目标尺度直方图、标注员之间的分歧热区。占比悬殊就要在损失里加权或采样。尺度悬殊要考虑裁切策略或空洞多尺度。分歧热区往往是规范没写清的边界,应回去改说明书,而不是加更深的网络硬背分歧。
试标阶段用第 3 章传统方法看「人眼是否可分」。灰度完全重叠的两类,再多标注也只是给网络噪声。先改成像:染色、光源、镜头。数据管线包含采集,不只包含硬盘上的文件。

动手小实验:把试标的 30 对拿来打印 unique、前景占比、最短边。写进日志。这 30 对也将是第 3 章传统方法和第 4 章过拟合单图的材料。管线在小数据上先闭合,再花钱扩标注。
不要一上来雇一个团队标一万张。先由写规范的人自己标 30 对,覆盖你能想到的失败模式:暗、亮、脏、截断、粘连。然后请另一人只凭说明书标同一批,算一致率(可按像素 Dice 或按边界距离)。一致率低,改说明书再标,不要开始扩大。30 对也将是第 3 章基线和第 4 章单图过拟合的材料,一鱼三吃。
公开集的划分若与你的泄漏标准冲突(例如同一场景既在训练又在测试),你仍可用它练手,但报告产品指标时必须用自有独立单元划分。合成缺陷要登记生成器版本,现场真缺陷分布一变,合成分布可能完全脱节,权重会「看起来很能打、现场全瞎」。
隐私门禁:能去标识的先去标识,不能的限制访问名单。提示式大模型若要出网,先过法务,本教程默认本地工装。版本清单至少含:规范版本、标注员、预分割模型若有、图像采集设备。缺设备字段,以后换相机掉点时你无法归因。
独立单元优先,分层保证每盘都有正例为辅。某个批次全是良品、另一个全是缺陷,按批次划分会让验证没有正例或训练没有负例。必要时把「含缺陷的批次」作为分层键,而不是把帧打散。
分析输出一张表:每类像素占比、每图出现频率、最短边分布、标注员分歧热区。这张表进第 4.3 节做类别权重,进第 6.1 节做裁切策略。没有这张表,权重就是拍脑袋。
医学按患者而不是按切片。同一患者的相邻切片长得像,打散后验证等于看过答案。驾驶按行程或按日期块。质检按生产批次或按模具号。监控按摄像头加时间段。写不出独立单元名称,说明你还在按「张」思考,泄漏风险高。单元内帧可以增强,单元本身不跨训练验证测试三盘。
试标一致率低时的处理顺序:先改说明书里边界那一段,再改工具(画刷大小、预分割),最后才换人。换人而不改法律,下一对标注员仍会吵同样的缝。预分割模型版本必须进清单,否则「为什么这批边界都偏外一圈」无法追溯。公开集只打通读取和损失下降,产品报告必须用自有划分。
面积占比表要有「每图是否出现」列。某类只在 3 张图出现,随机划分可能让验证集看不到它,早停会把该类权重学废。分层键用「是否含该类」辅助,但仍以独立单元为先。合成数据登记生成器版本,真分布一变就要重估合成是否还配进训练集,而不是永远当免费增量。
独立单元名称写不出则不准划分。试标一致率低时先改法律再改工具最后换人。预分割版本进清单。面积表含「每图是否出现」,稀有类用分层辅助但仍以单元为先。合成生成器版本登记,真分布变了要重估。隔离目录每周清,清的是规范与读取,不是把断言调绿。数据版本加一才允许全量训练。
独立单元字段在清单里必填,空值禁止划分脚本运行。一致率流水线:法律、工具、人,三步都留下记录。预分割版本空则视为人工全画,不得事后补一个「大概是某版」。稀有类分层是辅,单元是主,脚本先按单元切再检查每盘是否含稀有类,不含则警告而不是自动把帧打散去凑。合成版本与真分布对照表每季度看一次。隔离目录周清,清完规范有 diff。数据版本加一的条件:四道测试绿、卡片放行记录在、一致率达标。缺一不加一。加一之后第 4 章才允许全量。没有依赖卡片放行的扩标,视为私自加料,权重不得进第 6 章发布。患者、行程、批次这些词必须出现在划分配置里,出现「random shuffle frames」视为违规。
反例档案:按切片随机划分,验证像训练,上线掉点。改为患者单元后数字变差但真实。结论:假好不如真差。第二份:稀有类全在训练盘,验证从未见到,早停杀死该类。分层警告加上后才发现。卡片放行记录成为扩标门禁后,私自加料进不了第 6 章。
口令卡:单元必填、法律先于人、预分割版本、稀有类警告、合成季度看、放行才加版本。帧级 shuffle 违规。私自加料拒收。患者行程批次必须出现在配置。一致率三步留痕。
划分配置出现 random 与 frame 组合即失败。单元字段空值跑不了脚本。放行记录是扩标钥匙。合成季度对照。私自加料在第 6 章拒收。法律工具人三步留痕缺一则一致率无效。
划分脚本对空单元字段直接失败。配置里若同时出现打散与帧,失败。扩标请求没有卡片放行号,失败。第 6 章接收权重时核对数据版本与放行号,缺号拒收。一致率记录缺法律或工具或人任一步,本周一致率作废。合成数据超过一季度未对照真分布,暂停合成增量。
放行号与数据版本缺一不可,少一个字都不准扩标。
划分按病人、镜头或地块,不按随机文件名。同一病人的切片进了训练又进验证,mIoU 是背题不是泛化。试标 30 对的分歧表决定规范补丁,不决定「再标 3000 张冲淡错误」。收集清单要写清分辨率、位深、是否有配准,缺字段的批次拒收。规范版本与数据版本绑定,换规范等于换数据集。
下一章用传统方法在这批数据上打基线。切不开,先回来改采集或规范。