【论文阅读】【TCSVT2023】基于混合标签的显著目标检测弱监督学习框架

引言

任务:弱监督显著目标检测

论文地址:

A Weakly Supervised Learning Framework for Salient Object Detection via Hybrid Labels | IEEE Journals & Magazine | IEEE Xplore

代码地址:

rmcong/Hybrid-Label-SOD_TCSVT2022

前置知识

首次构建了一种新的监管形式,通过在无监管标签的基础上释放部分真实标签来解决弱监管的SOD任务,称为混合标签。混合标签监督由两部分组成,即少量的像素级真实标签和由现有无监督SOD模型生成的大量粗标签(如全监督像素级标注的十分之一)。

一、摘要

目前全监督显著目标检测(SOD)方法已经取得了很大的进展,但这种方法往往依赖于大量的像素级标注,耗时且费力。

本文研究了一种新的混合标签下的弱监督SOD任务,该任务的监督标签包括传统无监督方法生成的大量粗标签和少量真实标签。

为了解决该任务中的标签噪声和数量不平衡问题,我们设计了一个新的管道框架,其中包含三种复杂的训练策略。在模型框架方面,我们将任务解耦为标签细化子任务和显著目标检测子任务,它们相互配合,交替训练。

二、面临的挑战

与图像级标签和稀疏标签(即潦草和点标签)作为监督信息相比,粗标签给出的信息是不可控的,并且可能会引入一些不可避免的干扰噪声,因此其监督作用较弱。

与上述监管形式不同的是,我们首次构建了一种新的监管形式,通过在无监管标签的基础上释放部分真实标签来解决弱监管的SOD任务,称为混合标签。混合标签监督由两部分组成,即少量的像素级真实标签和由现有无监督SOD模型生成的大量粗标签(如全监督像素级标注的十分之一)。

这种弱监督形式有望以更小的标注成本获得更好的检测性能。但是在这种监督下,由于粗标签的不可靠性以及实标记和粗标记数据之间的不平衡,弱监督的SOD任务变得更具挑战性

。具体来说,一方面,粗糙标签是由传统的无监督方法生成的,必然包含大量的噪声和误标注。如果一直用这样的标签来训练网络,网络会逐渐变得混乱和失能,严重影响最终的性能。

另一方面,在混合标签设置中,真实标签和粗标签的比例严重失衡(如1:9),如果直接进行混合训练,网络学习将会崩溃。因此,为了解决这些问题,我们从管道结构和训练策略的角度提出了一种新的带有混合标签的弱监督SOD框架。

我们将弱监督的SOD任务解耦为粗标签细化显著性目标检测 两个子任务,构建了如图2(b)所示的联合学习框架,由细化网络(R-Net) 和**显著性网络(S-Net)**组成。

这两个网络相互配合,交替训练。为了实现R-Net,设计了一种基于BGA (Guidance and Aggregation Mechanisms)的双流编码器模型,用于粗标签细化,包括显著性细化主流分支和rgb图像引导分支。

此外,面对混合标记数据上的不平衡训练,设计良好的训练策略对于保证网络训练的有效性和效率至关重要。具体来说,我们设计了三种巧妙的训练策略:(1)交替迭代机制。为了保证有足够有效的样本参与训练,我们交替进行R-Net和S-Net的迭代训练。这两个网络为彼此提供了更好的标签。

(2)群体增量机制。为了避免同时输入大量伪标签样本和少量实标签样本的不平衡,我们对训练集进行分组,在每次训练迭代中逐渐增加带有伪标签的数据量,从而逐步学习有效的特征表示。

(3)可信度验证机制。为了保证两个网络在迭代过程中能够相互提供可信的标签,从第二次迭代开始,我们在包含100张图像的验证集上设计一个验证阶段,只有满足验证条件的最优模型才能为对应的数据生成伪标签,参与下一步的训练。总的来说,这三种训练策略从数量分配、训练方法和可靠性判断三个方面对训练过程进行约束,从而实现对网络的有效训练。

三、创新点

•我们首次提出了一种新的基于混合标签的弱监督SOD任务,以大量的粗标签和少量的真实标签作为监督。为此,我们将该任务解耦为粗标签细化和显著目标检测两个子任务,并设计了相应的R-Net和S-Net。

此外,我们的方法在全监督设置中仅使用十分之一的真实标签在五个广泛使用的基准数据集上取得了具有竞争力的性能。

•我们在R-Net中设计了一个BGA,实现两阶段特征解码,其中制导阶段用于引入rgb -图像制导分支的制导信息,以保证相对鲁棒的性能基线,聚合阶段是根据不同级别特征的修改或补充作用动态集成。

•为了保证网络训练的有效性和高效性,我们从数量分配、训练方法和可靠性判断的角度,设计了交替迭代机制、分组增量机制和可信度验证机制

四、R-Net

R-Net的目的是改进粗标签,并产生更好的伪标签,可用于S-Net训练。 考虑到粗标签的不确定性和噪声,在R-Net中引入单独的RGB-Image Guidance Branch(简称Guidance Branch),形成两流编码结构,用于向主流分支提供一些目标定位和完整性等引导信息,从而保证了相对鲁棒的性能基线。

五、引导阶段

在第一阶段,RGB分支可以为主流分支提供引导信息(如对象定位和完整性),保证其有效学习和稳健的性能基线。

为了保证将足够的显著性信息传递到主流分支,并减轻粗标签输入带来的不可靠噪声,我们对信道维度中的特征进行了补充和过滤。具体而言,首先将两个分支中对应层的编码器特征连接起来进行互补,然后使用信道注意来突出必要的信道特征进行滤波。

其中,Fi com表示信道注意后的互补特征,ca表示信道注意操作[66],f i srm和f i rgb分别表示主流支路和引导支路中ith层的编码器特征,[·,·]表示沿信道维数的拼接操作,表示逐路广播的逐元乘法。

其中,Fi En为空间注意后制导阶段的最终输出编码器特征,sa为空间注意运算[68],为逐元乘法,Conv1×1为核大小为1×1的卷积层。

六、聚集阶段

第二阶段主要用于实现多层特征的融合,包括第一阶段生成的对应层的编码器特征、来自顶层编码器层的全局特征以及前一层的解码器特征。

其中fg = conv([f5 srm, f5 rgb])表示两个分支融合的语义特征,Pi是控制fg和f5 En特征融合速率的学习重要性权重。然后,将包含全局语义信息的融合特征激活为语义掩码,用于修改上采样的解码器特征:

其中,fi DeR为第i+1 h级的修改后的解码器特征,fi +1 De为第(i +1)t h级的原始解码器特征,U p为双线性插值的上采样操作,σ为sigmoid激活函数。

其中,f iDeR为i t h级修改后的解码器特征,SA为空间注意运算

七、混合标签训练策略

在我们的训练集中给出了像素级的真实标签和粗标签,其中粗标签仅作为S-Net的输入,而不作为监督。

在网络训练过程中会产生伪标签作为监督信息。 在实现中,我们从DUTS-TR数据集中随机选择1000个样本作为实标记训练子集,并使用MB方法对DUTS-TR数据集中所有样本(包括前面提到的1000个样本)生成相应的粗标签。 因此,这1000个样本(包括RGB图像、粗标签和真实标签)可以支持R-Net训练的第一次迭代。 为了保证网络训练的有效性和高效性,我们提出了三种关键的训练机制,分别是交替迭代机制、分组增量机制和可信度验证机制。
考虑到粗糙的标签可能包含大量的噪声,在这些监督下直接训练网络必然会导致性能不佳。 因此,我们设计了用于标签校正的R-Net和用于显著目标检测的S-Net。 在网络训练方面,我们交替迭代地训练这两个网络,从而为彼此提供更好的伪标签。 具体来说: 使用当前迭代训练后的R-Net生成的伪标签来训练当前迭代的S-Net,并将训练后的S-Net生成的伪标签进一步用于下一次迭代的R-Net训练。两个网络交替训练,直到遍历所有训练样本,称为交替迭代机制。
考虑到粗糙的标签可能包含大量的噪声,在这些监督下直接训练网络必然会导致性能不佳。 因此,我们设计了用于标签校正的R-Net和用于显著目标检测的S-Net。 在网络训练方面,我们交替迭代地训练这两个网络,从而为彼此提供更好的伪标签。 具体来说: 使用当前迭代训练后的R-Net生成的伪标签来训练当前迭代的S-Net,并将训练后的S-Net生成的伪标签进一步用于下一次迭代的R-Net训练。两个网络交替训练,直到遍历所有训练样本,称为交替迭代机制。
分组增量机制:

提出原因:由于实标记样本数量与粗标记样本数量不同而导致的样本不平衡。如果直接使用不平衡的训练样本进行网络训练,会造成网络学习的模糊性和不可用性。

具体做法:将所有训练样本(即1000个真实标记的样本和9000个粗糙标记的样本)平均分为10组,其中1000个真实标记的样本分为第1组。 在第一次迭代中,我们只加载GROUP 1的样本来训练R-Net,然后使用训练好的R-Net对GROUP 2的样本进行测试,得到相应的伪标签。 随后,将具有真实标签的GROUP 1和具有伪标签的GROUP 2中的所有样本用于S-Net训练。 最后,使用训练好的S-Net对GROUP 3中的样本进行测试,并将生成的显著性映射用作下一次R-Net训练的伪标签。至此,第一个迭代就完成了。
我们在第一次迭代中没有将所有实数标记样本加载到训练中,而是使用增量策略。

具体而言,在第一次迭代中,我们从GROUP 1中选取500个样本作为实标记样本批,剩余的500个样本通过旋转、裁剪、遮挡等操作退化为污染标记样本批。 在随后的训练迭代中,我们逐渐减少污染标记数据的数量,增加真实标记数据的数量。 在第二次迭代中,我们仍然先训练R-Net,然后是S-Net。对于R-Net训练,使用了GROUP 1和GROUP 3中的2000个样本,其中真实标记的样本数量增加到600个,污染标记的样本数量减少到400个。 注意,GROUP 3中对应的伪标签是使用前一次迭代训练的S-Net对GROUP 3中的样本进行测试得到的。 然后,利用新训练的R-Net对第4组进行测试。使用第1、2、4组的样本再次训练S-Net。为了遍历整个训练数据集(即10000个样本),需要执行5次迭代,其他迭代的训练过程可以类比。 此外,由于R-Net和S-Net都使用混合标签进行训练,为了保证训练的有效性和可执行性,我们首先在伪标记样本下训练网络,然后在一个训练历元中对实标记样本进行微调。
可信度验证机制

引入原因:两个网络交替训练的目的是为彼此提供更好的伪标签,因此我们从第二次迭代开始引入可信度验证机制来保证所提供标签的有效性。

只有当当前模型在包含100张图像的验证集上优于之前的最佳模型时,我们才使用它为相应的组生成伪标签,并参与下一个训练步骤。 以S-Net的验证过程为例,在第二次迭代中,如果使用GROUP1和GROUP3数据在验证集上新训练的R-Net模型的MAE得分小于之前最佳R-Net模型(此时第一次迭代训练的R-Net模型)的MAE得分2,则我们使用当前R-Net模型对GROUP 4进行测试,并生成相应的伪标签;否则,我们使用在第一次迭代中训练的R-Net模型来生成伪标签。其他迭代的验证与此过程类似。

相关推荐
西岸行者4 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码4 天前
嵌入式学习路线
学习
毛小茛4 天前
计算机系统概论——校验码
学习
babe小鑫4 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms4 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下4 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。4 天前
2026.2.25监控学习
学习
im_AMBER4 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J4 天前
从“Hello World“ 开始 C++
c语言·c++·学习