目录
One-shot/Few-shot segmentation一般任务设置
paper 1:One-Shot Learning for Semantic Segmentation BMVC 2017
paper 2 : CONDITIONAL NETWORKS FOR FEW-SHOT SEMANTIC SEGMENTATION ICLR 2018
paper 3:SG-One: Similarity Guidance Network for One-Shot Semantic Segmentation
paper 4: PANet: Few-Shot Image Semantic Segmentation with Prototype Alignment ICCV2019
One-shot/Few-shot segmentation一般任务设置
- 在测试任务上:通过利用很少的具有分割标签的support set 来获得query set上目标的分割结果;所以说对于query set 和 support set 两者的要求就是类别是相同的;
- 训练任务的要求:训练任务的support set与query set都需要给出分割的mask, support set 的mask是用于提供指导信息;query set mask用于计算预测损失,用于反向传播更新网络参数;
- 训练任务与测试任务的要求:训练任务中的类别与测试任务中的类别需要是不同。
从问题设置角度来说,one-shot/few-shot segmentation 的终极目的是利用support 中的K个训练图像对来“学习”一个模型,使得该模型能对训练图像对中出现的类别的新样本能够实现分割。至于“学习”为什么加引号后面再说;首先乍一看,one-shot/few-shot 可真厉害,就用几个训练样本"学习"一下就可以对新样本进行分割;不过还是那句话 No free lunch ! 为了实现小样本的学习,前提是我们需要一个更大样本库;具体流程描述如下:
训练的时候,我们构建一系列训练任务,每个训练任务都包含K个图像对,每个图像对是指训练图像与其对应的mask,通过构建很多的训练任务来对模型进行训练;测试过程其实就是前面所说的one-shot/few-shot segmentation的终极目的。所以说,测试过程中support set 中图像的目的并不是为了学习,因为网络参数在训练过程结束的时候已经固定了,更准确来说它们应该是起到一种指导的作用;来指导网络利用已学得的知识进行"举一反三"。这就好比让你在做一种新类型的题目前先给你看一遍参考答案的解题过程;然后让你学会做这种类型的题目。这时候又突然想到这与迁移学习的区别,同样借这个比方来解释一下迁移学习,迁移学习就是在做题目前你已经刷题无数,但是恰好现在的题目没见过,咋办,重新找和现在已有题目相似的题目重刷一遍,更新知识库,再去做题。所以当前的深度学习大部分情况下只能从头开始训练。使用Fine-tune来学习新任务,而Meta Learning 就是研究如何让神经网络很好的利用以往的知识,使得能根据新任务的调整自己。
paper 1:One-Shot Learning for Semantic Segmentation BMVC 2017
问题设置:


网络结构

本文首次提出双分支的网络用于few-shot segmentation,使用conditioning branch直接预测segmentation branch的权重参数,对segmentation branch提取到的特征进行加权融合,经过上采样后得到分割结果。每个网络分支的细节如下:
conditioning branch:
-
输入将原始三通道彩色图像与其中目标对应的mask相乘得到,这样就保证了输入只包含目标的信息。
-
输出的时候,为了是参数量与segmentation branch的特征图的通道数相对应,采用weight hashing的策略,将输出的1000维向量映射为4097维(w:4096, b:1),论文中是把这种映射机制建模成固定权重参数的全

本文概述了Few-shot Segmentation的任务设置,强调其利用少量样本进行学习的目标。介绍了四篇相关论文,包括One-Shot Learning for Semantic Segmentation、Conditional Networks for Few-Shot Semantic Segmentation、SG-One: Similarity Guidance Network以及PANet,详细解析了各论文的网络结构、训练和测试策略。这些工作旨在解决深度学习中通过少量样本进行有效学习的挑战。
最低0.47元/天 解锁文章

951





