举一隅而以三隅反,MMFewshot 带你走近少样本分类

简介: 随着深度学习的兴起,机器学习算法通过大量的训练数据,在各个领域取得了非常好的性能,但是在数据十分稀缺,或者难以收集时,模型往往无法达到令人满意的性能。为了解决这一问题,少样本学习(Few Shot Learning)通过利用先验知识,使得机器学习算法能够在少量的样本上进行学习。

随着深度学习的兴起,机器学习算法通过大量的训练数据,在各个领域取得了非常好的性能,但是在数据十分稀缺,或者难以收集时,模型往往无法达到令人满意的性能。


为了解决这一问题,少样本学习(Few Shot Learning)通过利用先验知识,使得机器学习算法能够在少量的样本上进行学习。


少样本学习近年来逐渐成为业界和学术界的研究热点,同时它已经从最基础的图像分类任务开始,向不同任务进行扩展。但遗憾的是,业界一直没有通用的算法库,来服务各类少样本任务算法的研究。


今天,OpenMMLab 为填补这一空白隆重推出 MMFewShot !

640.png

(才不是!——)


MMFewShot 对当下流行的基于深度学习的少样本分类与检测算法,提供了统一的训练、推理、评估的算法框架;简洁的用户接口与高效、强大的基准模型,部分实现精度超出官方版本;延续 OpenMMLab 系列的模块化风格,继承了高度灵活 config 功能。


目前,MMFewShot 代码库已经全面开源


首个支持分类与检测的开源少样本算法库



少样本学习由于问题设定的需要,往往会通过随机采样少量数据,来对模型的泛化性进行评估;并且许多算法需要通过多个阶段,或者繁琐的操作,对数据进行交互。这两点给代码复现、借鉴、公平对比都带来了很大的困难。


MMFewShot 则包含了如下特点

8 种少样本分类算法,包括了 Baseline++、MatchingNet、ProtoNet、RelationNet 等;


6种少样本检测算法,包括了 TFA、FSCE、MetaRCNN、AttentionRPN 等;


支持多种数据采样逻辑;


对于少样本分类任务,支持 DistributedDataParallel 进行多卡训练以及Meta Test;


对于少样本检测任务,给出了不同算法在同一设定下统一的评价指标。


强大的基准模型


在 MMFewShot 中,我们复现的部分少样本分类和检测算法,超过官方公布精度。同时我们还对早期的一些少样本检测算法配置进行调整,使得模型远超当时的实现结果


例如,TFA 模型在 VOC Split1 数据集上的 1shot 到 10 shot 的评价结果,均高论文公布结果(*)

640.png

再如,我们复现并调整了 Meta RCNN 的训练策略,从而使得在统一评价的设定下远超当时论文公布的结果(*)

640.png


模块化设计和丰富灵活的配置文件



同 OpenMMLab 其他算法库一样,我们使用统一框架和模块化设计实现了各个算法。


一方面可以尽量实现代码复用,另一方面,方便大家基于此框架实现新的算法。


以下是 MMFewShot 的大致框架

640.png

MMFewShot 由 4 个部分组成,datasets、models、core 和 apis:


datasets 用于数据集加载和预处理,其中包含训练所需的数据集,数据增广的 pipelines 以及负责数据采样的 dataset wrapper 和 dataloader wrapper;


models 是最重要的部分,算法模型在这里实现;


apis 中,我们为模型训练、测试和推理提供一键启动的接口;


core 中实现了用于模型的评估工具和定制的 hooks。


在配置文件方面,得益于 OpenMMLab 强大的且高度灵活的 cfg 模式和注册器机制, MMFewShot 可以做到,不改动代码只编辑配置文件,便可实施消融实验

640.png

相比于计算机视觉领域中常规分类、检测等任务的算法和框架的日臻成熟,在这些任务上进行少样本学习,目前还有许多亟待解决的问题,我们希望 MMFewShot 能够成为该研究领域的基础设施,降低该领域的研究门槛。


文章来源:公众号【OpenMMLab】

2021-11-24 11:58


目录
相关文章
|
6月前
|
数据可视化
R语言生态学进化树推断物种分化历史:分类单元数与时间关系、支系图可视化
R语言生态学进化树推断物种分化历史:分类单元数与时间关系、支系图可视化
R语言生态学进化树推断物种分化历史:分类单元数与时间关系、支系图可视化
|
5月前
|
人工智能
答案抽取正确率达96.88%,xFinder断了大模型作弊的小心思
【6月更文挑战第26天】xFinder模型针对大语言模型(LLMs)的评估难题,提出了强化答案抽取的解决方案,显著提高了准确性至93.42%,超过传统RegEx的74.38%。xFinder设计用于减少模型对特定答案格式的依赖,提升评估可靠性。尽管依赖大量标注数据和需持续优化,该工作为LLM评估提供了新标准[(arxiv.org/abs/2405.11874)]。
38 4
|
6月前
|
资源调度
回归方程优良性评价(原理+实践+代码)
回归方程优良性评价(原理+实践+代码)
回归方程优良性评价(原理+实践+代码)
|
6月前
|
算法 应用服务中间件 图形学
贝叶斯推理导论:如何在‘任何试验之前绝对一无所知’的情况下计算概率
这篇文章探讨了贝叶斯推理的发展历史,从帕斯卡尔和费马的早期工作到托马斯·贝叶斯、皮埃尔-西蒙·拉普拉斯和哈罗德·杰弗里斯的贡献。文章指出,贝叶斯分析经历了从使用均匀先验到发展更为客观的方法,如杰弗里斯先验的过程。它讨论了费雪对逆概率的批评,以及贝叶斯方法在处理不确定性问题上的优势。文章还介绍了如何通过匹配覆盖率来评估先验分布的合理性,并通过几个例子展示了不同先验在二项分布和正态分布问题中的应用。最后,文章提出了贝叶斯分析在统计学中的地位,强调了在缺乏先验知识时建立良好先验的重要性,并讨论了主观性和客观性在统计推理中的角色。
90 1
典型偏差和非典型偏差练习
典型偏差和非典型偏差练习
83 5
|
项目管理
典型偏差和非典型偏差
典型偏差和非典型偏差。
207 2
|
12月前
|
算法 程序员
游戏中的常见概率设计分析
游戏中的常见概率设计分析
|
算法
【项目实践】多人姿态估计实践(代码+权重=一键运行)(二)
【项目实践】多人姿态估计实践(代码+权重=一键运行)(二)
142 0
【项目实践】多人姿态估计实践(代码+权重=一键运行)(二)
|
机器学习/深度学习
差异基因通路富集分析的统计学假设-个人见解分享
本文主要分享了学习 “差异基因通路富集中使用的 超几何检验方法背后意义” 的个人见解
269 0
|
传感器 算法 机器人
【项目实践】多人姿态估计实践(代码+权重=一键运行)(一)
【项目实践】多人姿态估计实践(代码+权重=一键运行)(一)
128 0