小样本学习方法(FSL)演变过程

栏目: IT技术 · 发布时间: 4年前

内容简介:本文作者:Curry原文链接:https://zhuanlan.zhihu.com/p/149983811

点击上方“ 算法猿的成长 “, 关注公众号,选择加“星标“或“置顶”

本文作者:Curry

原文链接:https://zhuanlan.zhihu.com/p/149983811

本文已由原作者授权,不得擅自二次转载

小样本学习一般会简化为 N-way K-shot 问题,如图[1]。其中 N 代表类别数量,K 代表每一类中(支持集)的样本量;

小样本学习方法(FSL)演变过程

图[1] N-way K-shot

解决分类问题,人们想到采用传统监督学习的方式,直接在训练集上进行训练,在测试集上进行测试,如图[2],但神经网络需要优化的参数量是巨大的,在少样本条件下,几乎都会发生过拟合;

小样本学习方法(FSL)演变过程

图[2] 传统监督学习

为了解决上述问题,最先想到的是通过使用迁移学习+Fine-tune 的方式,利用 Base-classes 中的大量数据进行网络训练,得到的 Pre-trained 模型迁移到 Novel-classes 进行 Fine-tune,如图[3]。虽然是 Pre-trained 网络+Fine-tune 微调可以避免部分情况的过拟合问题,但是当数据量很少的时候,仍然存在较大过拟合的风险。

小样本学习方法(FSL)演变过程

图[3] Pre-trained网络+Fine-tune微调

接下来讲的就是小样本学习中极具分量的 Meta-learning 方法,现阶段绝大部分的小样本学习都使用的是 Meta-learning 方法。

Meta-learning,即 learn to learn,翻译成中文是元学习。Meta-learning 共分为Training 和 Testing 两个阶段,Training 阶段的思路如图[4]。简单描述下流程:

1:将训练集采样成 Support set 和 Query set 两部分;

2:基于 Support set 生成一个分类模型 = ( );

3:利用模型对 Query set 进行分类预测生成 predict labels;

4:通过 query labels 和 predict labels 进行 Loss(e.g., cross entropy loss )计算,从而对分类模型 中的参数 θ 进行优化。

小样本学习方法(FSL)演变过程

图[4] Meta-learning Training阶段思路

Testing 阶段的思路如图[5],利用 Training 阶段学来的分类模型 = ( ) 在Novel class 的 Support set 上进行进一步学习,学到的模型对 Novel class 的 Query set 进行预测。

小样本学习方法(FSL)演变过程

图[5] Meta-learning Testing阶段思路

介绍到这里,Meta-learning 的整体流程的流程就介绍完了,如图[6];

现在反过来看,Meta-learning 核心点之一是如何通过少量样本来学习这个 = ( ) 这个分类模型,即图[6]中key部分。在这里引出了 Meta-learning 的两个主要方法:度量学习(Matrix-based Meta-learning)和 MAML(Optimization-based Meta-learning),本文简要介绍了二者的原理以及在处理小样本问题时的优缺点:

小样本学习方法(FSL)演变过程

图[6] Meta-learning整体流程以及key point

首先介绍下度量学习(Metric Learning):度量学习是一种空间映射的方法,其能够学习到一种特征(Embedding)空间,在此空间中,所有的数据都被转换成一个特征向量,并且相似样本的特征向量之间距离小,不相似样本的特征向量之间距离大,从而对数据进行区分。

以经典的原型网络 Prototypical Networks 为例,如图[7]:将 Support set 投影到一个度量空间,且在这个空间中同类样本距离较近,异类样本的距离较远。为了对 Query set 中的 X 进行预测,则将样本 X 投影至这个空间并计算 X 距哪个类别较近,则认为 X 属于哪个类别。

小样本学习方法(FSL)演变过程

图[7]原型网络Prototypical Networks

Meta-learner 这一步采用度量方法的好处是:在生成 = ( ) 这个阶段不需要进行参数优化。

ps:度量方法的思想来自机器学习算法(KNN,K-means,最近邻等算法)。

距离通常使用欧氏距离和 cos 距离,深度度量学习主要的关键点是损失函数的设计。损失函数相关可以参考 https://zhuanlan.zhihu.com/p/82199561,本文不重点介绍。

接下来介绍下 MAML(Model-Agnostic Meta-Learning)方法:与度量学习 = ( ) 使用度量方法构建不同,MAML 采用的是 = − ,( )梯度下降优化方法。如图[8].

小样本学习方法(FSL)演变过程

图[8] MAML参数更新原理

MAML 的优点:

1:与标准的fine-tuning 方法一致

2:Model-agnostic: 适用于各种网络 backbone

缺点:

  • 相比度量学习的投票方式,MAML 需要学习的参数量更多,需要更多的算力;

  • 另外由于这个原因也导致没有办法训练大型网络;

  • 与其说 MAML 是为了解决小样本问题而生的,不如说 MAML 更适用于小样本学习问题。

最后想补充两点自己对元学习的理解:

1:元学习是通过优化 loss 来拟合 query data,使得模型来逐渐适应这种小样本的学习方式;

2:从参数优化的角度来讲,模型学习的是一个通用的初始化参数,使得再遇到新任务时,通过训练可以快速收敛到最优解。

以上内容为个人总结,欢迎大家探讨交流。

可以点击文末阅读原文,跳转到原文中进行留言讨论交流。

欢迎关注我的微信公众号-- 算法猿的成长 ,或者扫描下方的二维码,大家一起交流,学习和进步!

小样本学习方法(FSL)演变过程

如果觉得不错,在看、转发就是对小编的一个支持!


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

重构

重构

Martin Fowler / 熊节 / 人民邮电出版社 / 2010 / 69.00元

重构,一言以蔽之,就是在不改变外部行为的前提下,有条不紊地改善代码。多年前,正是本书原版的出版,使重构终于从编程高手们的小圈子走出,成为众多普通程序员日常开发工作中不可或缺的一部分。本书也因此成为与《设计模式》齐名的经典著作,被译为中、德、俄、日等众多语言,在世界范围内畅销不衰。 本书凝聚了软件开发社区专家多年摸索而获得的宝贵经验,拥有不因时光流逝而磨灭的价值。今天,无论是重构本身,业界对重......一起来看看 《重构》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

html转js在线工具
html转js在线工具

html转js在线工具