【李宏毅2020 ML/DL】P97-98 More about Meta Learning
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的、自己不知道的东西。
本节内容综述
- 本节课由助教
陈建成
讲解。 - 本节 Outline 见小细节。
- 首先是 What is meta learning? 。
- 接下来是 Why meta learning? 。
- How and what to do with meta learning? 是本节课的主要内容。首先讲了一个很有趣的现象:元学习的作者普遍会把其方法缩写成某种动物的名字。
- 讨论了 What can we “meta learn”? 。
- 接着是 What can we meta learn
on
? 。讨论元学习的常见数据集。 - 之后,则可以开始讨论元学习的类别,并介绍其做法。
- 最后,介绍了与 meta-learning 相关的技术。
文章目录
- 本节内容综述
- 小细节
- Outline
- What is meta learning?
- Why meta learning?
- Motivations for meta learning?
- (Interesting Names of) Models / Techniques
- What can we "meta learn"?
- What can we meta learn on? Datasets
- Categories
- Black-box
- Optimization / Gradient based
- MAML
- Meta-SGD
- How to train your MAML?
- Different meta-parameters
- iMAML
- R2-D2: closed form solvers
- Base-box v.s. Gradient based
- Metric-based / non-parametric
- Siamese network
- Prototypical network
- Matching network
- Relation network
- IMP (Infinite Mixture Prototypes)
- Problem of metric-based
- Hybrid
- LEO (Latent Embedding Optimization)
- Bayesian meta-learning
- Related machine learning topics
小细节
Outline
- What is meta learning?
- Why meta learning?
- How and what to do with meta learning?
- Categories
- Datasets
- Models
- Related machine learning topics
What is meta learning?
所谓 meta
就是 sth about sth
。
meta learning 就是 learning about learning
,也就是 learn to learn。
图示如上。
Why meta learning?
Motivations for meta learning?
- too many tasks to learn, to learn more efficiently: learning to learn.
- Faster learning methods (
adaptation
) - Better
hyper-parameters
/ learningalgorithms
- Related to:
- transfer learning
- domain adaptation
- multi-task learning
- life-long learning
- Too little data, to fit more accurately (few-shot learning, better learner, fit more quickly)
- Traditional supervised may not work
此外,老师的频道如上。(看来我还差一些…
(Interesting Names of) Models / Techniques
如上,元学习的模型都用动物命名。SNAIL 是基于注意力的模型。
具体不讲解,有需要则自行阅读。
What can we “meta learn”?
- Model Parameters (suitable for Few-shot framework)
- `Initializations
Embeddings
/ Representations /Metrics
- Optimizers
- Reinforcement learning (
Policies
/ other settings)
- Hyperparapmeters (e.g. AutoML): beyond the scope of today, but can be viewed as kind of meta learning
- Hyperparameters search ((training) settings)
- Network architectures → Network architecture search (NAS), related to: evolutional strategy, genetic algorithm…
- Others
Algorithm
itself (literally, not a network)- …(More in DLHLP)
What can we meta learn on? Datasets
如上,可以用在语言字体识别上。
此外,还可以用在图片上。
Categories
如上,可以分为:
- 黑箱 RNN;
- 优化器、初始参数;
- 学出一个比较标准;
- 还有一些混合方法。
Black-box
其原理如上,我们得到ϕi\phi_iϕi可以理解为一种分布。其实还可以理解为一种 auto-encoder 。
如上,其基本思想就是,用 LSTM 硬训练一发。
Optimization / Gradient based
这是最为经典的一类方法,包括 MAML 与 Reptile 等。
MAML
对 MAML 的概述如上。
Meta-SGD
但是 MAML 存在一些问题,比如其学习率对于不同任务是相同的。但学习率往往很重要。
因此,为 MAML 增加一个 meta 参数,即让学习率匹配参数。
但是学习率数量与参数一样多,这很没有效率。因此,提出 How to train your MAML?
How to train your MAML?
这篇文章指出了 MAML 的五个问题,如上。
针对上述五个问题,作者都提出了解决方案。
Different meta-parameters
此外,还有两篇文章,对 MAML 的架构改动较大。
iMAML
如上,中间的图是传统的 MAML ,只用了一阶的方向。而其方向向量叠加起来,与真正的 MAML 偏差是较大的。
因此,作者提出了一个假设(如上图抛物线,即二次项):Can we do better? Consider the following…
如上图,如果 meta 参数 θ\thetaθ 能够对一群 task (如图中的几条线),有一定的学习到;此时 θ\thetaθ 应该会有这些 ϕi\phi_iϕi 中的共通点。此时,θ\thetaθ 不应该跑太远。
因此,我们加一个正则,并且进行推导,发现可以近似成 θ\thetaθ 的微分最终只与最终的 ϕi\phi_iϕi 有关。
其表现还不错。
R2-D2: closed form solvers
如上,其中 ρ\rhoρ 表示那个正则器 R.R. 中的参数。正则器中进行了数学推导,其中进行的是一些线性代数运算。
Base-box v.s. Gradient based
如上,其实二者区别并不是很大。都是把训练任务的信息存储起来。
Metric-based / non-parametric
如上,我们在这种方法中,放其构建 F ,而直接把训练数据与测试数据输入到大的黑箱中,直接进行比较,输出标签。
如上,用 training data 来对类别做 embedding ,然后讲训练数据与之进行临近的比较。
Siamese network
如上,我们训练的目标为:一样标签的够近,不一样的够远,就可以了。
Prototypical network
如上,分别设定不同的 CNN ,抽取特征。
Matching network
而 Matching network 则为了找到其之间的关系,用双向 LSTM 存储他们之间的关系。
Relation network
Relation network 的思路类似上文,只不过是通过一个网络去算其分数。
以上是李老师讲过的四种方法。
IMP (Infinite Mixture Prototypes)
如上,使用了贝叶斯的方法,为了追求更准的分类,增加一些类别。
Problem of metric-based
- When the K in N-way K-shot large → difficult to scale
- Limited to classification (only learning to compare)
Hybrid
最后讲一下融合模型。
LEO (Latent Embedding Optimization)
如上,我们的在 inner 训练时(训练元学习的能力时),讲数据集投影到一个较小维度的空间中,这个空间对应着网络参数的空间。
Bayesian meta-learning
如上,我们的目标本来是想区分“笑”与“不笑”,但是机器却学到了“带不带帽子”这个特点。
因此,提出了一系列方法如上。
Related machine learning topics
在 RL 中,我们卡在了“交互”、“数据量”少上。因此,与元学习结合很有必要。
【李宏毅2020 ML/DL】P97-98 More about Meta Learning相关推荐
- 【李宏毅2020 ML/DL】P118 RL - Model-based, Meta, Multi-agent, Alpha
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 关于强化学习,我专门花半年时间学习实践过,因此这里笔记只记录李老师的 outline .我的强化学习资源仓库: ...
- 【李宏毅2020 ML/DL】P1 introduction
[李宏毅2020 ML/DL]P1 introduction 本节主要介绍了 DL 的15个作业 英文大意 Regression: 回归分析 Classification: 分类 RNN: 循环神经网 ...
- 【李宏毅2020 ML/DL】P86-87 More about Domain Adaptation
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 本节内容综述 本节课由助教 Chao Brian 讲解. 首先讲解些领域适配的基础内容,包括名词.定义等. 接 ...
- 【李宏毅2020 ML/DL】P59 Unsupervised Learning - Auto-encoder
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-note ...
- 【李宏毅2020 ML/DL】P58 Unsupervised Learning - Neighbor Embedding | LLE, t-SNE
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-note ...
- 【李宏毅2020 ML/DL】P15 Why Deep-
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐): https://github.com/Sakura-gh/ML-not ...
- 【李宏毅2020 ML/DL】P14 Tips for training DNN | 激活函数、Maxout、正则、剪枝 Dropout
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐): https://github.com/Sakura-gh/ML-not ...
- 李宏毅svm_李宏毅2020 ML/DL补充Structured Learning Structured SVM
李宏毅2020 ML/DL补充Structured Learning Structured SVM [李宏毅2020 ML/DL]补充:Structured Learning: Structured ...
- 【李宏毅2020 ML/DL】P88-96 Meta Learning – MAML | Reptile
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 本节内容综述 元学习就是 Learn to learn ,让机器变成 a better learner .Me ...
最新文章
- python如何开发小软件-Python程序员,如何快速开发一个小程序
- S5PV210开发 -- 交叉编译器
- PHP中错误处理集合
- 标准库类型String
- jquery每次动态加载dom,绑定事件会多一次,
- 用积分来衡量博客的成绩
- 百度前端学院-基础学院-第二课
- 工作队列 ( workqueue )
- 微信小程序公测了!教你第一时间注册微信小程序
- 颜宁谈为何选择深圳:一拍即合!我麻溜地向普林斯顿递了辞职申请
- java酒店管理系统毕业论文
- 将CS5463存放的数据转换成float类型
- 计组实验-CPU设计-指令添加
- 星计划--Python内置对象之旅(3)(列表)
- 工作中的十大棘手难题
- delphi mysql 删除_Delphi如何清空日志文件
- 【历史上的今天】11 月 11 日:腾讯成立;信息论先驱出生;阿德曼提出 DNA 计算
- Spyder 运行时kernels启动报错
- ABR算法研究综述 | A Survey on Bitrate Adaptation Schemes for Streaming Media Over HTTP(IEEE COMST‘18)阅读笔记
- 中学计算机教师人生职业规划,初中教师个人职业发展规划
热门文章
- shell中变量的引用(两种方式:$变量名,${变量名})。
- 呉服屋 2011/03/24早会文章
- 关于VBA中【按钮的改名】 和 【函数名字的改变】
- 【Yarn】工作机制及任务提交流程
- 【Python-2.7】列表与元组
- 为什么接口在设计时所有的方法一般都要抛异常?
- eslint 验证vue文件 报错 unexpected token =解决方法
- 我得到 http 响应,但 response.getEntity().getContent() 显示空指针异常
- 找不到元数据文件“ .dll”
- jmap 文件解析_jvm系列:dump文件深度分析