当前位置:网站首页>[小样本分割]论文解读Prior Guided Feature Enrichment Network for Few-Shot Segmentation
[小样本分割]论文解读Prior Guided Feature Enrichment Network for Few-Shot Segmentation
2022-07-01 03:15:00 【是七叔呀】
论文:Prior Guided Feature Enrichment Network for Few-Shot Segmentation (arxiv.org)
Code:PFENet
Abstract
最先进的sota语义分割方法需要足够的标记数据才能获得好的结果,如果不进行微调,很难处理看不见的类。因此,小样本分割被提出来学习一个仅通过少量样本就能快速适应新类别的模型。由于对训练类别高级语义信息的不当使用以及查询和支持目标之间的空间不一致,这些框架仍然面临着对不可见类泛化能力降低的挑战。为了缓解这些问题,我们提出了先验引导特征增强网络(PFENet)。它包括:(1)一种无训练的先验掩码生成方法,该方法不仅保留了泛化能力,而且提高了模型性能;(2)特征丰富模块(FEM),该模块通过使用支撑集特征和先验掩码mask自适应增强查询特征来克服空间不一致性
。在PASCAL-5I和COCO上的大量实验证明,所提出的前代方法和有限元方法都显著改进了基线方法。我们的PFENet在没有效率损失的情况下,大大优于最先进的方法。
INTRODUCTION
深度学习的快速发展为语义分割带来了显著的改进。标志性框架【60】、【3】在自动驾驶、机器人视觉、医学图像等领域的广泛应用获益匪浅。然而,如果没有足够的全标记数据或在处理看不见的类时,这些框架的性能会迅速恶化。即使提供了额外的数据,微调仍然会耗费时间和资源。
为了解决这个问题,提出了小样本语义分割[33],其中数据被划分为支持集和查询集。如图1所示,首先将来自支持集和查询集的图像发送到主干网以提取特征。特征处理可以通过为分类器生成权重【33】、【41】、计算余弦相似性【5】、【45】、【23】或卷积【15】、【54】、【49】、【9】、【1】生成最终预测。
支持集提供有关目标类的信息,帮助模型对查询图像进行准确的分割预测。这个过程模拟了这样的场景:模型使用很少的支撑集标记数据,在查询集测试图像上预测没见过的类。因此,小样本的模型就需要快速适应新的类。然而,现有的几种小样本分割方法普遍存在的问题包括:由于 误 用 高 级 特 征 \color{red}{误用高级特征} 误用高级特征、以及 查 询 和 支 持 样 本 之 间 的 空 间 不 一 致 \color{red}{查询和支持样本之间的空间不一致} 查询和支持样本之间的空间不一致而导致的泛化损失。
本文主要解决这两个难题。
Generalization Reduction & High-level Features
通常小样本分割模型在很大程度上依赖于具有语义信息的高层(high-level)特征。CANet【54】的实验表明,在特征处理过程中,在小样本模型中简单地添加高级特征会导致性能下降。因此,在小样本学习中并不能以直接的方式利用语义信息。与以前的方法不同,我们使用ImageNet[32]预训练的支撑集和查询集高级(high-level)特征,为模型生成“先验”。这些先验知识有助于模型更好地识别查询集图像中的目标。由于先验生成过程是无需训练的,因此尽管在训练期间经常使用可见类的高级信息,但是生成的模型不会失去对未见过类的泛化能力。
Spatial Inconsistency
此外,由于样本有限,每个支撑集目标对象的尺寸和姿态可能与其查询集目标对象有很大的差异,我们称之为空间不一致。
为了处理这一问题,我们提出了一个新的模块,称为特征增强模块(FEM),使用支撑集特征来自适应地增强查询特征。第4节中的消融实验3表明,仅结合多尺度方案来处理空间不一致性是次优的,因为FEM提供了有条件的特征选择,有助于保留跨不同尺度传递的基本信息。FEM的性能优于其他多尺度结构,如HRNet【44】、PPM【60】、ASPP【4】和GAU【53】。
最后,基于所提出的先验生成方法和特征增强模块(FEM),我们构建了一个新的网络——先验引导特征增强网络(PFENet)。基于ResNet-50的PFENet仅包含10.8 M可学习的参数,但在PASCAL-5i[33]和COCO[21]基准测试中都取得了新的最先进的结果,达到了15.9和5.1 的FPS,分别具有1shot和5shot设置。此外,我们通过将我们的模型应用于无标记数据可用的0shot场景来证明其有效性。结果令人惊讶–PFENet sill在没有重大结构修改的情况下实现了良好的性能。
我们在本文中的贡献有三个方面:
- 我们利用高级特征(high-level features ),并提出无需训练的先验生成,以大大提高预测精度并保持较高的泛化能力。
- 通过结合支撑集特征和先验信息(prior information),我们的FEM自适应的通过有条件的尺度间信息互动修正查询集特征。
- PFENet在PASCAL-5I和COCO数据集上都取得了目前sota成果,同时又不影响效率。
OUR METHOD
在本节中,我们首先简要描述第3节中的小样本分割任务。然后介绍了先验生成方法和特征增强模块(FEM)。最后,在第3.4、讨论了我们提出的先验引导特征增强网络(PFENet)的细节。
3.2 小样本分割的先验知识
3.2.1 重要的观测
CANet【54】在基准PASCAL-5idataset上的表现大大优于之前的工作,因为它只从主干中提取中间级别的特征(例如ResNet-50的conv3 x和conv4 x)。在CANet中的实验还表明,高级(例如ResNet-50的conv5 x)特性会导致性能降低。【54】中解释了中层特征的性能更好,因为它构成了由看不见的类共享的对象部分,但我们的另一种解释是,高层特征中包含的语义信息比中层特征更特定于类,表明前者更可能对模型对不可见类的泛化能力产生负面影响。此外,在训练类中,与中级信息相比,更高级的特征直接提供训练类别的语义信息,在识别是否属于训练类的像素和减少训练损失方面贡献更大
。因此,这种行为导致对参与训练类别的偏好。缺乏通用性(low-level)和对训练类的偏好(high-level)都不利于对看不见的训练类的评估。
值得注意的是,与高级特征对小样本分割性能产生不利影响的发现相反,先前的分割框架[59]、[31]利用这些特征为最终预测提供语义线索。这一矛盾促使我们找到一种方法, 以 对 训 练 集 类 别 不 敏 感 的 方 式 利 用 高 级 信 息 \color{red}{以对训练集类别不敏感的方式利用高级信息} 以对训练集类别不敏感的方式利用高级信息,以提高小样本分割的性能。
3.2.2 先验生成
在我们的工作中,我们将ImageNet[32]预训练的包含语义信息的高级特征转换为先验掩码,该掩码告诉像素属于目标类的概率
,如图2所示。在训练期间,主干参数固定为[45]、[54]中的参数。因此,先验生成过程不会偏向于训练类,并在对看不见的测试类进行测试评估期间维持类的不敏感性。
我们有:(F代表backbone网络,XQ和XS代表高层级的查询集和支撑集特征[h, w, c],)
因此,二进制支撑掩码Ms通过将背景设置为零来删除支撑集中的背景。
须知:Hadamard product(哈达玛乘积)
哈达玛乘积是机器学习中常用的一种矩阵计算操作。不同于传统矩阵相乘计算方式,它是对应矩阵元素相乘,值得注意的是两个相乘的矩阵必须行列数相同。在Pytorch中的具体操作是torch.mul(详情点击)。当然,Numpy中也能计算就是*这个运算。具体的相乘细节看下面的图即可
具体来说,我们定义查询集XQ的先验YQ作为显示查询集和支撑集的高层特征XQ和XS按像素对应
的mask。
将先前的YQof查询特征XQ定义为显示xqa和XS之间像素级对应关系的掩码。yqm上具有更大值的查询集特征XQ的像素表示该像素与支持功能中的至少一个像素具有高对应关系。因此,它很可能位于查询图像的目标区域中。通过将背景支持特征设置为零,查询特征的像素与背景支持特征没有对应关系-它们只与前景目标区域相关。为了生成YQ,我们首先计算像素级
计算过程:
- 首先计算查询集特征和支撑集高级语义特征向量XQ、XS之间每个像素的余弦相似度:
- 对于每一个XQ中的小xq,我们取所有支撑集像素中的最大相似度作为对应值cq:
- 最后我们reshape先验mask YQ[hw, 1]—>[h, w, 1],之后使用min-max标准化公式处理YQ将值处理为0-1:
我们提出的先验生成方法的关键在于使用固定的高级特征,通过从hw×hw大小的相似矩阵中取最大值来生成先验掩模。我们的方法与其他先进方法的比较消融实验在4.4部分。
3.3 Feature Enrichment Module
3.3.1 Motivation
现有的小样本分割框架在进一步处理之前从支撑集图像中使用掩码全局平均池化提取类别向量。然而,由于查询集目标的区域可能比支撑集样本大得多或小得多,因此支撑集图像上的全局池化会导致空间信息不一致。因此,使用全局池化支撑集特征直接匹配查询集特征的每个像素并不理想。
一种自然的替代方法是添加PPM【60】或ASPP【4】,向特征提供多尺度的空间信息。PPM和ASPP帮助baseline模型产生更好的性能(如我们后面的实验所示)。然而,这两个模块的次优之处在于:1)它们为合并的特征提供空间信息,而没有在每个尺度内进行特定的细化过程;2) 忽略了不同尺度的层次关系。
为了缓解这些问题,我们分离了多尺度结构,并提出了特征增强模块(FEM),来1)水平地将查询集特征与每个尺度中的支撑集特征和先验mask进行交互,2)垂直地利用层次关系,通过自顶向下的信息路径从更精细的特征中提取基本信息来丰富粗糙的特征图。在水平和垂直优化之后,收集投影到不同尺度的特征,形成新的查询特征。FEM详情如下。
3.3.2 Module Structure
如上图所示,FEM模块使用查询集特征、先验mask和支撑集特征作为输入,输出使用带有支撑集特征修正后的查询集特征。增强过程可以分为3个子过程:
- 内部特征增强:首先将输入投影到不同的尺度,然后在每个尺度中独立地将查询集特征、支撑集特征和先验掩码交互;
- 内部尺度增强:在不同规模的合并的查询集支撑集特征之间有选择地传递基本信息;
- 信息集中:合并不同比例的特征,生成最终细化的查询特征。
下图4显示了具有四个尺度和尺度间相互作用自上而下路径的FEM图解。
Inter-Source Enrichment:
Inter-Scale Interaction:
值得注意的是,在下采样的特征图中可能不存在微小对象。自上而下的路径自适应地将信息从较细的特征传递到较粗的特征,有助于在我们的特征丰富模块中建立层次关系。现在的交互不仅是每个尺度中的查询和支持特征(水平)之间的交互,而且是不同尺度的合并特征(垂直)之间的交互,这有利于整体性能。
边栏推荐
- How do spark tasks of 10W workers run? (Distributed Computing)
- XXL job User Guide
- Clion and C language
- Home online shopping project
- Let's just say I can use thousands of expression packs
- 线程数据共享和安全 -ThreadLocal
- Avalanche problem and the use of sentinel
- 数据库DDL(Data Definition Language,数据定义语言)知识点
- [linear DP] shortest editing distance
- 【日常训练】1175. 质数排列
猜你喜欢
Ctfshow blasting WP
Best used trust automation script (shell)
JUC学习
So easy deploy program to server
A few lines of transaction codes cost me 160000 yuan
Edge Drawing: A combined real-time edge and segment detector 翻译
C语言多线程编程入门学习笔记
C#实现基于广度优先BFS求解无权图最短路径----完整程序展示
Server rendering technology JSP
终极套娃 2.0 | 云原生交付的封装
随机推荐
How do spark tasks of 10W workers run? (Distributed Computing)
XXL job User Guide
Redis高效点赞与取消功能
The value of the second servo encoder is linked to the NC virtual axis of Beifu PLC for display
4、【WebGIS实战】软件操作篇——数据导入及处理
The best learning method in the world: Feynman learning method
后台系统页面左边菜单按钮和右边内容的处理,后台系统页面出现双滚动
Golang multi graph generation gif
Force buckle - sum of two numbers
How to use hybrid format to output ISO files? isohybrid:command not found
Finally in promise
Edge Drawing: A combined real-time edge and segment detector 翻译
还在浪费脑细胞自学吗,这份面试笔记绝对是C站天花板
Nacos
雪崩问题以及sentinel的使用
[reading notes] copywriting realization -- four golden steps for writing effective copywriting
split(),splice(),slice()傻傻分不清楚?
Data exchange JSON
Filter
Chapter 03_ User and authority management