Meta Learning(元学习)详解
Posted 啊~小 l i
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Meta Learning(元学习)详解相关的知识,希望对你有一定的参考价值。
元学习
概述
- 元学习(Meta Learing)的提出是针对传统神经网络 模型的泛化性能不足、对信种类任务适应性较差的特点。主要表现为通过少量的计算和新训练数即可用于模型上实现和海量数据一样的识别准确度。
- 元学习中“元”的概念:即一个泛化性能较强的初始化网络加上对新任务的快速适应学习能力。
- 设计目的设计一种机器学习模型,这种模型使用少量的数据样本就能快速学习新的概念或者既能经过不同任务的训练之后,元学习模型就能很好的适应和泛化到一个新的任务——“Learning to Learn”
基本概念
基本分类
元学习大致可以分为五个较为独立的方向:
1. 基于度量学习的放法
2. 基于泛化性较强的初始化的方法
3. 基于优化器
4. 基于额外外部存储
5. 基于数据增强的方法
- 基于度量学习的放法
最大程度上抽取任务样本内含特征,使用特征对比的方式判定样本的种类归属 - 基于优化器
针对传统神经网络模型迭代速度慢、易过拟合的特征,提出将梯度下降过程替代为单独的神经网络模型,使用单独神经网络对梯度进行更准确、迅速的更新,以达到快速适应的目的。 - 基于数据增强的方法
通过为小样本任务增加额外的样本来解决元学习中数据缺乏的问题,该类模型有更好的通用性,可以与其他元年学习方法进行结合,提高这些方法的性
基本流程
基本概念
支持集(Support Set):类似训练集,包含N个分类标签,每个标签有K张图片
查询集(Query Set):类似测试集,包含Q张未分类图片
**在训练阶段:**从P(T)的训练数据集上采样一个小样本T_train,模型在此训练基础上对网络参数进行少量几次优化,接着在训练任务上优化后的模型结合验证数据集中的任务T_val,得到损失函数,并通过例如Adam、SGD、SVGD等优化器对该损失函数进行最小化。
**测试阶段:**当训练结束后,为参与训练的测试数据集D_test中生成一些测试任务T_test,使用这些测试任务对已经训练好的网络再进行优化后的模型检验测试数据上的效果。
在训练数据集和验证数据集上的大泛化性能较强的初始化网络参数,在测试时进行少量几次梯度下降操作,以达到“学习任务”的目的。
模型结构
结构与深度学习类似,通常从逻辑上分为特征提取部分(Feature extractor)以及分类部分(Classifier layers)。特征提取部分使用主流深度网络,由卷积层组成,用于从数据中进行特征提取,将信息高度抽象,部分模型已经将学习的先验知识作为特征的一部分进入模型参与训练。分类部分通常带有非线性的激活函数的全连接层组成,个别元学习模型特征提取过程还包括从训练任务中随机采样,的那总体上训练特征提取与主流深度学习相同,军事哦通过深层玩咯对输入信息降维,提取出更高层特征信息。
以上是关于Meta Learning(元学习)详解的主要内容,如果未能解决你的问题,请参考以下文章
MAML:Model-Agnostic Meta-Learning
8.7 Meta learning元学习全面理解MAMLReptile
Meta-learning原来有这么多用途,一文汇总元学习在5个问题中的应用