【论文阅读笔记】对比学习与语义分割

用以阅读关于对比学习与语义分割结合的相关论文的笔记,如有解读错误的地方,欢迎提出,另外有推荐文章也可进行分享。

文章一

论文标题:《Exploring Cross-Image Pixel Contrast for Semantic Segmentation》
论文地址:https://arxiv.org/abs/2101.11939
笔记部分

1、Pixel-Wise Cross-Entropy Loss.

公式 L i C E = − 1 c ˉ ⊤ log ⁡ ( softmax ⁡ ( y ) ) \mathcal{L}_{i}^{\mathrm{CE}}=-\mathbf{1}_{\bar{c}}^{\top} \log (\operatorname{softmax}(\boldsymbol{y})) LiCE=1cˉlog(softmax(y))
符号含义
− 1 c ˉ ⊤ -\mathbf{1}_{\bar{c}}^{\top} 1cˉ:像素的标签,具体形式为one-hot
公式解读:该公式为像素级别的交叉熵损失函数,式子中的y为对每个标签的预测概率,具体运算形式如下图。

在这里插入图片描述
其中-log图像在 x ∈ ( 0 , 2 ) x\in(0,2) x(0,2)的图像如下,当 x = 1 x=1 x=1时, y = 0 y=0 y=0
在这里插入图片描述
因此可以看出,如果需要将ixel-Wise Cross-Entropy Loss优化至最小,那么需要将损失函数中的y优化至最大。

2、Pixel-to-Pixel Contrast

公式 L i N C E = 1 ∣ P i ∣ ∑ i + ∈ P i − log ⁡ exp ⁡ ( i ⋅ i + / τ ) exp ⁡ ( i ⋅ i + / τ ) + ∑ i − ∈ N i exp ⁡ ( i ⋅ i − / τ ) \mathcal{L}_{i}^{\mathrm{NCE}}=\frac{1}{\left|\mathcal{P}_{i}\right|} \sum_{\boldsymbol{i}+\in \mathcal{P}_{i}}-\log \frac{\exp \left(\boldsymbol{i} \cdot \boldsymbol{i}^{+} / \tau\right)}{\exp \left(\boldsymbol{i} \cdot \boldsymbol{i}^{+} / \tau\right)+\sum_{\boldsymbol{i}^{-} \in \mathcal{N}_{i}} \exp \left(\boldsymbol{i} \cdot \boldsymbol{i}^{-} / \tau\right)} LiNCE=Pi1i+Pilogexp(ii+/τ)+iNiexp(ii/τ)exp(ii+/τ)
符号含义
i:像素的向量
i + i^{+} i+:同一图片下正样本像素的向量
τ \tau τ:非负常数
∣ P i ∣ |P_{i}| Pi:在不同图片中抽取出的正样本向量内积
公式解读:前面说过,-log函数想得到最小,那么log里面的东西需要达到最大,因此对于 L i N C E \mathcal{L}_{i}^{\mathrm{NCE}} LiNCE,优化方向为增大分子 e x p ( i ⋅ i + / τ ) exp(i\cdot i^{+}/\tau) exp(ii+/τ),减少分母 e x p ( i ⋅ i + / τ ) + ∑ i − ∈ N i e x p ( i ⋅ i − / τ ) exp(i\cdot i^{+}/\tau)+ {\textstyle \sum_{i^{-}\in N_{i} }^{}} exp(i\cdot i^{-}/\tau) exp(ii+/τ)+iNiexp(ii/τ)。但因为分母中有一部分与分子相同,那一部分是需要增大的,因此减少分母的优化方向不在这部分,而在负样本部分,即减少正样本像素与每个负样本的距离,即可达到优化损失函数的目的。这里就体现了对比学习的思想。

文章二

论文标题:《Contrastive Learning for Label Efficient Semantic Segmentation》
论文地址:https://arxiv.org/abs/2012.06985v4
笔记部分

1、Within-image loss

公式 − 1 N I N I ∑ p = 1 N I 1 N y p I I ^ I p q I I ^ l o g ( e p q I I ^ ∑ k = 1 N I ^ e p q I I ^ ) -\frac{1}{N^{I}}{N^{I}}\sum_{p=1}^{N^{I}}\frac{1}{N_{y_{p}^{I} }^{\hat{I}}} \mathbb{I}_{pq}^{I\hat{I}}log(\frac{e_{pq}^{I\hat{I}}}{\sum_{k=1}^{N^{\hat{I}}}e_{pq}^{I\hat{I}}} ) NI1NIp=1NINypII^1IpqII^log(k=1NI^epqII^epqII^)
符号含义
I ^ \hat{I} I^:失真后的图片
y p I y_{p}^{I} ypI:在图片I中,像素P的类别
N c I N_{c}^{I} NcI:在图片I中,类别c的数量
N I N^{I} NI:图片I的像素
f p I f_{p}^{I} fpI:在图片I中,像素P的向量
I \mathbb{I} I:指示函数
e p k A B = e x p ( f p A ⋅ f k B / τ ) e^{AB}_{pk}=exp(f_{p}^{A}\cdot f_{k}^{B}/ \tau) epkAB=exp(fpAfkB/τ)
τ \tau τ:非负常数
公式解读:该损失函数用于图片内的对比学习,正样本使用的是同一图片经过失真处理后同一类别的向量,其优化的方向与交叉熵函数很相像,但有一点区别,这里使用了指示函数,即在训练过程中更多的考虑正样本影响。

2、Cross-image loss

公式 − 1 N I N I ∑ p = 1 N I ∑ q = 1 N I ^ I p q I I ^ N y p I I ^ + N y p I J ^ l o g ( e p q I I ^ ∑ k = 1 N I ^ e p q I I ^ + ∑ k = 1 N J ^ I p q I J ^ e p q I J ^ ) − 1 N I N I ∑ p = 1 N I ∑ q = 1 N J ^ I p q I J ^ N y p I I ^ + N y p I J ^ l o g ( e p q I I ^ ∑ k = 1 N I ^ e p q I I ^ + ∑ k = 1 N J ^ I p q I J ^ e p q I J ^ ) -\frac{1}{N^{I}}{N^{I}}\sum_{p=1}^{N^{I}}\sum_{q=1}^{N^{\hat{I}}}\frac{\mathbb{I}_{pq}^{I\hat{I}}}{N_{y_{p}^{I} }^{\hat{I}}+N_{y_{p}^{I} }^{\hat{J}}} log(\frac{e_{pq}^{I\hat{I}}}{\sum_{k=1}^{N^{\hat{I}}}e_{pq}^{I\hat{I}} + \sum_{k=1}^{N^{\hat{J}}}\mathbb{I}_{pq}^{I\hat{J}} e_{pq}^{I\hat{J}}} )-\frac{1}{N^{I}}{N^{I}}\sum_{p=1}^{N^{I}}\sum_{q=1}^{N^{\hat{J}}}\frac{\mathbb{I}_{pq}^{I\hat{J}}}{N_{y_{p}^{I} }^{\hat{I}}+N_{y_{p}^{I} }^{\hat{J}}} log(\frac{e_{pq}^{I\hat{I}}}{\sum_{k=1}^{N^{\hat{I}}}e_{pq}^{I\hat{I}} + \sum_{k=1}^{N^{\hat{J}}}\mathbb{I}_{pq}^{I\hat{J}} e_{pq}^{I\hat{J}}} ) NI1NIp=1NIq=1NI^NypII^+NypIJ^IpqII^log(k=1NI^epqII^+k=1NJ^IpqIJ^epqIJ^epqII^)NI1NIp=1NIq=1NJ^NypII^+NypIJ^IpqIJ^log(k=1NI^epqII^+k=1NJ^IpqIJ^epqIJ^epqII^)
符号含义
J:其他数据集的样本
公式解读:该损失函数为前面Within-image loss 的延申,在log里面优化中,增加考虑了不同图片的数据,但更多的还是考虑了正样本的影响,在文章中论文作者提到过当考虑其他图片的负样本时,效果不好。

文章三

论文标题:《Regional Semantic Contrast and Aggregation for Weakly Supervised Semantic Segmentation》
论文地址:https://arxiv.org/abs/2203.09653#
笔记部分

1、Pseudo-Region Representation

这里使用了弱监督学习的方式获取像素向量。流程为对于输入的照片I,先通过 F = F F C N ( I ) ∈ R W × H × D F=\mathcal{F}_{FCN} (I)\in R^{W\times H\times D} F=FFCN(I)RW×H×D P = F C A M ( F ) ∈ R W × H × L P=\mathcal{F}_{CAM} (F)\in R^{W\times H\times L} P=FCAM(F)RW×H×L获得基本的embedding。之后使用掩码平均池化(Masked Average Pooling)的方法,得到像素i的向量 f l f_{l} fl

2、Pseudo-Region Memory Bank

这里是构建出一个标签集,标签集包含了所有类别的向量,这里的类别向量训练时会有一个更新的过程,公式为 γ m l + ( 1 − γ ) f l ⟶ m l \gamma m_{l} + (1-\gamma )f_{l}\longrightarrow m_{l} γml+(1γ)flml,其中 γ 为参数 \gamma 为参数 γ为参数

3、Regional Semantic Contrast (RSC)

这里定义了region-aware contrastive loss,公式如下:
L l N C E ( f l , y l ) = 1 ∣ M l ∣ ∑ m l + ∈ M l − log ⁡ e sim ⁡ ( f l , m l + ) / τ e sim ⁡ ( f l , m l + ) / τ + ∑ m l − ∈ M \ M l e sim ⁡ ( f l , m l − ) / τ \mathcal{L}_{l}^{\mathrm{NCE}}\left(\boldsymbol{f}_{l}, y_{l}\right)=\frac{1}{\left|\mathcal{M}_{l}\right|} \sum_{m_{l}^{+} \in \mathcal{M}_{l}}-\log \frac{e^{\operatorname{sim}\left(\boldsymbol{f}_{l}, \boldsymbol{m}_{l}^{+}\right) / \tau}}{e^{\operatorname{sim}\left(\boldsymbol{f}_{l}, \boldsymbol{m}_{l}^{+}\right) / \tau}+\sum_{m_{l}^{-} \in \mathcal{M} \backslash \mathcal{M}_{l}} e^{\operatorname{sim}\left(\boldsymbol{f}_{l}, \boldsymbol{m}_{l}^{-}\right) / \tau}} LlNCE(fl,yl)=Ml1ml+Mllogesim(fl,ml+)/τ+mlM\Mlesim(fl,ml)/τesim(fl,ml+)/τ

符号含义
f l f_{l} fl:像素的向量
y l y_{l} yl:标签初步向量
m l m_{l} ml:标签集里的向量
公式解读:与前面的Pixel-to-Pixel Contrast基本一致。但有以下调整:
L l R M − N C E = ω L l N C E ( f ^ l , y l ) + ( 1 − ω ) L l N C E ( f ^ l , y l − ) \mathcal{L}_{l}^{\mathrm{RM}-\mathrm{NCE}}=\omega \mathcal{L}_{l}^{\mathrm{NCE}}\left(\hat{\boldsymbol{f}}_{l}, y_{l}\right)+(1-\omega) \mathcal{L}_{l}^{\mathrm{NCE}}\left(\hat{\boldsymbol{f}}_{l}, y_{l^{-}}\right) LlRMNCE=ωLlNCE(f^l,yl)+(1ω)LlNCE(f^l,yl)
其中 w ∈ B ( β , β ) w\in B (\beta,\beta) wB(β,β)
公式解读:这里的调整与对比学习没有联系,更多的是因为这篇文章与弱监督学习相关,文章提到,训练的标签是有噪音的,即可能是不准确的,所以在计算损失函数时,不能只考虑与现有正样本的,还需要考虑负样本里潜在的正样本(即被标错的正样本)。因此这里计算了与负样本的损失函数,并与前面的正样本加权求和。其中这里的权重服从 β \beta β分布,使用 β \beta β分布分布的原因在于标签标错的概率是未知的,是缺乏大量先验知识的,因此这里使用该分布就行估计概率,其中参数的设定作者参考了其他论文的参数。

4、剩余部分

剩余部分不再涉及对比学习,因此简单叙述。在通过对比学习对Memory Bank里正负样本集的向量,之后在使用k-means进行聚类,每个类别都聚成K个向量,并于前面的样本向量F进行矩阵相乘等操作,得到蕴含整体数据集信息的向量,最后通过class activation maps进行预测,得到最后结果。

未完。。。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值