(2022 CVPR) U2PL Semi-Supervised Semantic Segmentation Using Unreliable Pseudo-Labels

(2022 CVPR) U2PL
Semi-Supervised Semantic Segmentation Using Unreliable Pseudo-Labels

Motivation:
半监督语义分割的关键是为未标记图像的像素分配足够的伪标签。

即使是不可靠的预测结果,虽然无法打上确定的伪标签,但仍可以作为部分类别的负样本,从而参与到模型的训练,从而让所有的无标签样本都能在训练过程中发挥作用。

Method:

(2022 CVPR) U2PL Semi-Supervised Semantic Segmentation Using Unreliable Pseudo-Labels_第1张图片
教师网络和学生网络:学生网络权重更新和一般网络更新过程相同,教师网络用EMA更新网络权重。
通过预测熵来分离可靠和不可靠像素,将每个不可靠像素推送到由负样本组成的类别队列中
在训练过程中,等量地选取B张labeled images和B张unlabeled images,对于每张带标签的图像目的是减小cross entropy loss;对于每张unlabeled image,teacher model进行预测,根据 pixel-level entropy 将预测结果分成 reliable pixels 和 unreliable pixels 两大部分, 然后选择reliable的伪标签计算upervised loss;对于剩余的unreliable的标签将通过contrastive loss. [InfoNCE Loss]
Pseudo-Labeling
无标签样本中可靠预测结果的利用方式,即损失函数中的Lu部分,通过熵
在这里插入图片描述

对预测结果的可靠性进行衡量,将最可靠的部分筛选出来,再通过常规方式打上伪标签
在这里插入图片描述

随着训练过程的推进,模型的性能在不断攀升,不可靠预测结果的比例相适应地也在不断下降,因此在不同的训练时刻对可靠部分的定义是不断变化的,这里简单采用了线性变化策略,
在这里插入图片描述

Using Unreliable Pseudo-Labes
无标签样本中不可靠预测结果的利用方式,即损失函数中的 Lc部分

  1. anchor pixels(queries)
  2. positive samples for each anchor
    每一个类别都算一个特征中心,同一类的 anchor pixel 会 share 共同的特征中心作为 postive sample。
  3. negative samples for each anchor
    对于有标签样本,每个类别对应的负样本是该类别的易混样本:
    1)不属于类别c;(2)难以区分是c类别还是其Ground Truth
    对于无标签样本,由于伪标签可能存在错误,将预测概率最高的几个类别过滤掉,将该像素认作为剩下几个类别的负样本。
    1)伪标签是unreliable的;(2)可能不属于c类别;(3)不属于大部分不可能的类别
    由于数据集中存在长尾问题,如果只使用一个 batch 的样本作为对比学习的负样本可能会非常受限,因此我们采用 MemoryBank 来维护一个类别相关的负样本库,存入的是由 teacher 生成的断梯度特征,以先进先出的队列结构维护。
    (2022 CVPR) U2PL Semi-Supervised Semantic Segmentation Using Unreliable Pseudo-Labels_第2张图片

Experiments

训练时间长,

你可能感兴趣的:(解决问题,图像分割,linux)