标签不够怎么办?半监督、域适应与主动学习那些野路子

标签不够怎么办?半监督、域适应与主动学习那些野路子 聊完算力咱们聊点更扎心的——数据。你要做个 ImageNet 分类网上一抓一大把标注好的。但语义分割呵呵一张 1024x2048 的城市街景图每个像素都要标上类别熟练的标注员对着点云和图像的融合数据一天能标个三五张就算高产了。你去找数据标注公司报价像素级分割的单价贵得让你怀疑公司还能撑几个月。所以现实就是大规模像素级标注数据是一种奢侈品。那没钱没人怎么办各路大神就开始玩“花活儿”了。第一个花活儿是半监督学习。给你 N 张带标签的图和 10N 张不带标签的图怎么把这 10N 张无标签数据用起来经典的套路是 consistency regularization一致性正则化。原理很简单对同一张无标签图做两次不同强度的数据增强比如一次弱增强、一次强增强让模型输出的预测结果尽量一致。Mean Teacher 那一套就是这思路——一个教师模型给学生模型打伪标签然后学生模型再反过来更新教师模型互相拉扯着共同进步。还有 FixMatch 在分割上的变体用高置信度的伪标签当 ground truth 去算监督 loss。说实话这种方法的收益在分类任务上惊人在分割上就一般了因为分割的类别不平衡和边界模糊问题太严重伪标签的噪声集中在边缘区域这些噪声在反向传播时会被放大搞不好就把模型带沟里了。第二个花活儿是域适应。这玩意儿比半监督更狠——我连目标域的无标签图都不想给你太多直接玩“源域到目标域的迁移”。比如用 GTA5 游戏引擎生成的海量虚拟街景图带完美像素级标签去训练模型然后直接应用到真实的 Cityscapes 图片上。听着很美好吧但游戏画面和真实世界的 Domain Gap 大得能装下一头大象——光照、纹理、物体形状全都不一样模型直接过去精度能从 75 掉到 40 以下。于是 CycleGAN、风格迁移那一套被搬了过来把游戏图转成类似真实风格的图再训练。还有近几年火得不行的对抗训练加一个 Domain Discriminator让特征提取器努力骗过判别器让它分不清特征来自源域还是目标域。这招有点效果但训练极不稳定GAN 的顽疾它一个不少——模式崩塌、梯度消失调参调到你想砸键盘。第三个花活儿是主动学习。这玩意儿逻辑特别朴素既然标注贵那我能不能只挑那些“最有价值”的样本送去给人工标什么叫有价值——模型最不确定的那些样本。比如在分割图的某个区域Softmax 输出的概率最高值只有 0.4说明模型对这块儿是懵的那你把这部分圈出来发给标注员重点标。反复迭代几轮用最少的标注预算达到最大的精度提升。这方法逻辑闭环完美实际操作起来也靠谱——唯一的问题是标注员不乐意因为他们看到的是模型筛出来的“困难户”全是边缘模糊、遮挡严重、光照诡异的图标一张顶平时标十张的时间人都标抑郁了。说到这儿我得说句掏心窝子的话这年头顶会上那些“无监督语义分割”的论文我持保留态度。完全不看任何标签光靠对比学习或者聚类就能把物体区分开在 PASCAL VOC 这种简单场景上看着还行一到 Cityscapes 的 19 类复杂场景结果基本没法看。分割本质上是个监督任务无监督能做粗略的物体纹理聚类但想达到像素级精细类别划分目前还是天方夜谭。真有那预算不如雇几个学生熬夜标数据虽然不人道但比迷信无监督算法更靠谱。