文章目录
- 前言
- Meta learning应用
- 总结
前言
Meta learning(二)应用方向
Meta learning应用
回顾gradient descen
Θ0(initial的参数)是可以训练的,一个好的初始化参数和普通的是有很大差距的。可以通过一些训练的任务可以找到对初始化有帮助的参数。
学习去初始化有:Model-Agnostic Meta-Learning(MAML);Reptile…
提到好的initialization,会想到self-supervised learning的pre-training,一大堆没有标记的资料用一些proxy tasks训练(比如说bert里面用填空题来训练模型,在影像上可以把影响的一部分盖起来等)。Pre-train的结果是好的initialization,把这些好的initialization用在测试任务上。MAML和self supervised learning的区别在于MAML中有标注资料,而self supervised learning没有标注资料。在self supervised learning之前,是把好多训练资料当做一个任务进行训练,这样同样可以找一组好的initialization把他用在测试任务上,这种把所有放在一起训练的叫做multi-task learning。在做MAML时一般把multi-task learning当做base line。
为什么MAML有用,一个假设是可以让learning algorithm比如gradient descent快速找到每一个任务上好的参数。另一个假设是这个initialize的参数跟每一个任务上最终好的结果已经非常接近,直接gradient descent就可以找到好的结果。
除了初始化的参数可以学,还有optimizer,在update的时候,要决定learning rate等hyperparameter。
也可以训练network架构:network architecture search(NAS)
同样data processing也是可以learn的
是否可以舍弃gradient descent,直接learn有一个network,可以吃训练资料作为输入,输出训练好的network参数,发明新的learning algorithm,目前已经有论文在这个方面。
目前还是把训练好的结果在测试资料上,也可以把整个episode包在一个network里面。
Meta learning的应用
常拿来测试meta learnin技术的任务叫做few-shot image classification,在这里面每个任务(class)都只有几张图片。训练之后就知道测试的图片来自于那个分类。
总结
视频学习地址:https://www.bilibili.com/video/BV13Z4y1P7D7?p=38&vd_source=3a369b537e1d34ff9ba8f8ab23afedec