2018Unsupervised Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training

文章目录


一、简单介绍

        我先说自己找这篇文章的目的:Self-Training的方法看过很多,想从类别平衡这个角度上去找找思路,看完摘要,有几个地方先记录下:啥叫隐变量损失最小化,另外大的类别(比如road,占图像比例较多),它的伪标签生成占优势,为了类别平衡,引入空间先验来优化生成的标签。Self-Training通常是:sourece 数据训练模型—>生成target数据的伪标签,然后和源域有label的数据一起重新训练模型,这样交替进行。
        不同域上不同类别的物体在视觉上存在明显差异,比如外观,尺度等。这就导致了网络在学习可转移知识时,对于每一个类,有的容易,有的难,比如不同国家,具有不同的建筑物,不同的植物,但交通灯和车辆这些类别确极其相似,所以在学习可迁移的知识时,后者肯定容易。另外源域上的类别分布不平衡以及源域与目标域分布的差异,也会造成不同类的知识迁移的难易程度不同。而ST的方法在伪标签生成时,往往选择置信分数大的,这样就会造成对容易迁移的样本的偏好,从而忽略了其它类别,降低了域适应性能。
        所以文章贡献中就提到:

  • self-training with self-paced learning的框架,ST已经解释了,self-paced看后面解释,从而学习域不变特征和分类器
  • 利用置信值归一化来选择和生成类分布均衡的伪标签
  • 交通场景有其自身的空间结构,引入空间先验,利用空间先验加权的概率分数作为伪标签生成度量
    下面对这三条贡献分别进行说明:
    1、self-training没啥可说的,就一个交叉熵公式
    2018Unsupervised Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training
           其实self-training并不能保证生成的伪标签就是正确的,更好的策略是采用从简单到复杂的自步课程学习方法,因为简单样本,相对来说,生成的伪标签更准确。先从简单学习,然后更新模型。整个loss函数变为2018Unsupervised Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training
    注意:公式(3)仅仅是加了一个L1正则,告诉你应该选择哪些点作为伪标签。更大的k,意味着伪标签的值更小,那就有更多的值会被选择为伪标签进行训练。采用交替优化的方式进行求解,a)先固定w,选择一定比例高置信值的伪标签,b)然后self-training,求解w。在求解a)时,问题变为一个对离散变量非线性整数规划的优化问题。(选择哪些点才能让(3)最小),等价于2018Unsupervised Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training
    (4)(5)公式表达意思就是:对于每一个target样本,每个像素点都会有一个预测值,首先要保证要大于exp(-k),从这些点中再去选择。整个self-training with self-paced learning,学习域不变特征和分类器。

2、Class-balanced self-training (CBST)
2018Unsupervised Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training
公式所要表达的意思就是,选择伪标签时,不是只看最终的输出置信分数,
2018Unsupervised Domain Adaptation for Semantic Segmentation via Class-Balanced Self-Training
对比下ST和CBST选择伪标签时的不同点,后者加入了exp( − k c -k_{c} kc)进行类别的平衡

3、对比ST和CBST,关键是k和 − k c -k_{c} kc是怎么确定

4、空间先验
利用空间先验知识,比如交通场景有共同的结构,天空不太可能出现在底部,road不太可能出现在上部

先记录到这里,很多地方别搞晕了,看完代码再来补充

经典DANN:分类网络+domain分类器,域分类器从分类网络的特征提取器中提取特征作为输入,用来区分instance来自哪个域,对抗学习domain-invariant features
泛化性和mode collapse :一个是在研究能不能生成新样本,一个是研究生成样本的多样性,mode collapse是产生的样本单一