小样本语义分割

article/2025/10/24 18:24:52

小样本学习旨在通过极少的样本来完成新类的识别,在深度学习中,如果类别有充足的标注样本,深度模型可以从海量的数据分布中抽取到准确的类别表达,随着标注数据量的减少,数据将不能涵盖类别的完整分布,深度模型的表达将逐渐下降。所以对于小样本学习而言,通过模型拟合数据的完整分布来达到识别是不切实际的,由此引出小样本学习的新范式----元学习、度量学习。

所谓元学习就是需要模型具有“learning to learning”的能力,也可以理解为需要模型具有很强的迁移能力,只需要少量的样本就可以完成新类别的识别。而度量学习则将由参数引导的分类器转化为由距离指导的分类器,只要模型具有很强的距离映射能力,那么将很好的解决小样本学习。

现有小样本学习可以笼统的概括为元学习与度量学习的组合。其中最巨代表性与理解的就是Prototype Network。

Prototype Network通过Embedding函数,将每个类别的少量训练样本映射为N个向量,在检测分类时候,将待检测的物体也通过Embedding函数映射为向量,最后计算待检测向量与N个向量的距离,认定距离最小的为预测类别。以Prototype Network网络为基础模型,衍生出许多小样本识别、检测、分割模型。对于分割模型,其类似于一个**搜索过程**。具体而言,首先通过少量的样本得到类别的原型表达P,随后使用P在待分割图像的特征图F上进行“搜索”。

通过观察可知,小样本语义分割的重点就是原型P表达的准确性,可以粗鲁的认为只要P表达准确,那么小样本学习也就差不多完成了,其它的操作只是在为P服务。

交叉Support-Set与Query-Set

中心思想:使用 s u p p o r t − p r o t o t y p e support-prototype supportprototype来搜索 q u e r y − s e t query-set queryset中图片,参考搜索得到的结果,选取置信度大的 q u e r y − s e t query-set queryset中特征,计算得到 q u e r y − p r o t o t y p e query-prototype queryprototype,使用 q u e r y − p r o t o t y p e query-prototype queryprototype来搜索 s u p p o r t − s e t support-set supportset,并将搜索得到的结果计算损失。

PANet: Few-Shot Image Semantic Segmentation with Prototype Alignment

CRNet: Cross-Reference Networks for Few-Shot Segmentation(CVPR2020)

Prototype Refinement Network for Few-Shot Segmentation

多原型匹配

中心思想:单一的原型受限与样本个数,并不能很好的对类别进行特征表达;同时单纯的取均值得到的原型也太过于粗鲁。所以,建议使用多个原型来对类别进行表达,这样一来,不同原型可以关注图片中类别的不同区域,同时摒弃掉直接取均值的策略,采用更加合理的自动适配来进行原型的提取。

Adaptive Prototype Learning and Allocation for Few-Shot Segmentation(2021cvpr)

关键点:图片中局部原型不使用取均值得到;多个原型关注不同区域;聚类原型

  1. 提取图片的特征 F s F_s Fs,将 F s F_s Fs输入到 S G C SGC SGC模块中提取原型特征。
在$SGC$模块中,首先将$F_s$拼接两个位置层,以此来输入像素点的坐标信息。随后使用聚类算法计算到$N_{sp}$个原型。其中聚类算法中的距离度量会计算特征距离与坐标距离。
  1. 将得到的原型 N s p N_{sp} Nsp与待分割的图片特征输入到 G P A GPA GPA模块中,完成分割。

Prototype Mixture Models for Few-shot Semantic Segmentation(2020ECCV)

关键点:代替均值;原型由高斯混合到;基于EM算法的聚类

算法旨在消除图像语义歧义;使用多个原型关注局部区域;
在这里插入图片描述
其中多个原型通过EM算法求的:
在这里插入图片描述

  1. 关键步骤E-step:计算局部原型 u k u_k uk与图片中每个像素点 S − i S-i Si之间的相似性 E i k E_{ik} Eik,表示第 i i i个像素点特征与第 k k k个原型之间的相似度。
  2. 关键步骤M-step:使用像素特征 S i S_i Si并配合 E i k E_{ik} Eik完成局部原型的更新。
  3. 不断迭代E-step 与M-step,最终得到关注局部的多个原型 u k u_k uk

Part-aware Prototype Network for Few-shot Semantic Segmentation(2020ECCV)

通过聚类对得到局部原型;引入了无标注数据来微调

在这里插入图片描述

  1. Prototypes Generation Module:使用Labeled数据使用聚类算法生成多个局部模型
  2. Part Refinement Module:使用Unlabeled的数据来调整局部原型

http://chatgpt.dhexx.cn/article/HGG5GvlW.shtml

相关文章

小样本深度学习图像识别

深度学习方法极度依赖大规模标注数据, 这一缺陷极大地限制了深度学习方法在实际图像识别任务中的应用。 因此我们提出了小样本的图像识别 小样本图像识别任务需要机器学习模型在少量标注数据上进行训练和学习, 目前经常研究的问题为N-way K-shot形式, 即问题包括N种数据, 每种数…

小样本训练方法

在机器学习模型训练中,往往希望训练得到得模型具有很好的泛化能力,得到一个在训练集上表现很好的模型。为了达到这个目的,应该从训练样本中尽可能学出适用于所有潜在样本的“普遍规律”。然而,学得“太好”很可能出现过拟合现象。…

小样本学习综述

原文链接:https://mp.weixin.qq.com/s/-73CC3JqnM7wxEqIWCejWQ 问题定义 人类非常擅长通过极少量的样本识别一个新物体,比如小孩子只需要书中的一些图片就可以认识什么是“斑马”,什么是“犀牛”。在人类的快速学习能力的启发下,研…

小样本学习概述

前言 小样本学习(Few-Shot Learning)是近几年兴起的一个研究领域,小样本学习旨在解决在数据有限的机器学习任务。 小样本学习存在的意义? 近些年,以深度卷积神经网络为代表的深度学习方法在各类机器学习任务上取得了…

【少样本】学习综述:小样本学习研究综述

点击下面卡片,关注我呀,每天给你送来AI技术干货! 来源:知乎—Jy的炼丹炉 地址:https://zhuanlan.zhihu.com/p/389781532(侵删) 随着大数据时代的到来,深度学习模型已经在图像分类、文本分类等任务中取得了先进成果。但…

小样本学习

机器学习就是从数据中学习,从而使完成任务的表现越来越好。小样本学习是具有有限监督数据的机器学习。类似的,其他的机器学习定义也都是在机器学习定义的基础上加上不同的限制条件衍生出来。例如,弱监督学习是强调在不完整、不准确、有噪声、…

小样本(少样本)目标检测概述(few-shot object detection)

文章目录 一、小样本目标检测 vs 少样本目标检测二、小样本目标检测简介三、小样本目标检测的方法四、小样本目标检测现有的问题五、参考资料 一、小样本目标检测 vs 少样本目标检测 首先必须要分辨这两个概念。如果光看名字,我们可能会单纯的认为小样本就是代检测…

【学习笔记】小样本学习(Few-shot Learning)

参考视频:https://www.youtube.com/watch?vUkQ2FVpDxHg 文章目录 基本概念孪生网络(Siamese Network)Pretraining and Fine TuningFew-shot常用数据集参考资料 基本概念 小样本学习(few-shot learning)是什么&#x…

localStorage与location的用法

1、localStorage 是h5提供的客户端存储数据的新方法: 之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高。 设置存储时localStorage.s…

Locality-sensitive hashing

Locality-sensitive hashing (LSH) reduces the dimensionality of high-dimensional data. LSH hashes input items so that similar items map to the same “buckets” with high probability (the number of buckets being much smaller than the universe of possible inp…

localStorage 简介

localStorage是全局的公共对象 浏览器关闭了后不丢失,是永久存在的。(runoob.com上Window localStorage 属性里的笔记很清晰) // localStorage.user"sky"; console.log(localStorage.user);能够看出,存储过localStora…

localStroage

一、什么是localStroage、sessionStroage 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的…

localstorage用法

一、什么是localStorage、sessionStorage 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的…

Locality Sensitive Hashing

今天介绍Locality Sensitive Hashing(LSH)。不同以往,这次我先放参考文献,因为本文都是基于这些参考文献的个人理解和消化,强烈推荐先看我的再去看参考文献,以便能更好的理解参考文献。 文章目录 ReferencesIntroductionChalleng…

thread_local

一、介绍 thread_local这个关键字的是C11之后的产物,主要适用的场景是:本线程这个生命周期里面修改和读取,不会与别的线程相互影响。 在C中全局变量和static变量一般都是针对与整个进程里面共享的,一旦声明之后,所有的…

localStorage是什么???

一、什么是localStorage、sessionStorage 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的…

什么是localStorage?

一、什么是localStorage、sessionStorage 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的…

Locale 及Locale.getDefault()

1.什么是Locale? Locale对象表示了一个特定的地理,政治或文化区域。需要使用到Locale执行其任务的操作称为区域设置敏感,并使用Locale为用户定制信息。 例如显示一个数字就是一个区域设置敏感的操作–该数字应根据用户所在国家,…

LocalStorage

目录 1.什么是Web存储? 2.localStorage、sessionStorage、Cookie和Session 3.Storage接口 4.localStorage基本操作 5.storage事件 参考书籍:《JavaScript 权威指南----ECMAScript5HTML5DOMHTML5BOM》编著:张亚飞 1.什么是Web存储&…