Meta learning 元学习李宏毅机器学习

 

Meta learning= learn to learn

机器学过很多任务后,机器变成更厉害的学习者,遇到新的任务的是可以学的更快更好。

e.g机器学过语音、影响分类后,可以对文本分类做得更好。

 

一、区别与联系

1.transfer learning与meta learning的区别:transfer learning的目的是通过taskA去增强taskB,e.g. 用一个NN去解决了城市A的任务,现在用这个NN修改最后基层,解决城市B的任务,

其效果要比单独对城市B用NN效果好。但是meta learning是去学习一个F函数(函数f的函数F),这个基于这个F函数生成fa和fb可以解决城市A和城市B的问题,同样会有单独训练城市A和B的提升。

两种方法的出发角度不一样,前者更偏向于基于A提升B的效果,后者偏向于学得一个函数F,F可以找到不同任务的f去解决,同时也会有提升。提升既是目的也是副产物。

 

2.life-long learning与meta learning的区别:终身学习是用同一个模型去学不同的task,但是元学习是用不同的模型去解决不同的任务。但是通过学习不同的模型提升创造模型的能力。

 

3.machine learning与meta learning:

machine learning:根据资料找到一个函数f的能力

meta learning:根据资料找到函数f的函数F的能力

Meta learning 元学习李宏毅机器学习_第1张图片    &   Meta learning 元学习李宏毅机器学习_第2张图片

 

 

二、训练过程

 

机器学习训练需要Train和Test的数据集即可。

但是元学习需要task集合,每个task里面要有train和Test的数据集。

不同的task可以用不同的loss。

通常和few-shot learning通常一起使用,在 few-shot中task中的 train set 叫 support set ,test set叫query set

 Meta learning 元学习李宏毅机器学习_第3张图片

 

meta learning训练过程

训练得到一个F使得所有训练task的loss和最小,得到F后进行测试。测试需要先用support set进行训练然后用query set进行测试

Meta learning 元学习李宏毅机器学习_第4张图片

 

三、Techniques Today : MAML & Reptle

MAML:前提task的model 都要是一样的。

核心:找到针对所有task最好的初始化  \phi

初始化 \phi 会在不同的task训练过程中更新θ,θhat是每个任务的参数,都依赖于初始化的 \phi 。最小化途中损失函数L可以找到最好的初始化。

Meta learning 元学习李宏毅机器学习_第5张图片Meta learning 元学习李宏毅机器学习_第6张图片

 

MAML和Model pre-training的区别在于损失函数的输入不一样,一个是θ一个是\phi,如上面右图。区别如下图:

我们不在意\phi在training在task是的表现二十重视θ!浅绿色是MAML,深绿色是与训练

 

Meta learning 元学习李宏毅机器学习_第7张图片

 

 

MAML一般只会update参数一次原因如下:

1.速度快

2.可以在测试的时候update很多次

3.一般结合few-shot learning数据非常少,update多了容易过拟合

Meta learning 元学习李宏毅机器学习_第8张图片

 

三、MAML Toy Example

toy example描述:从一个sine函数sample几个点出来,然后进行拟合

Meta learning 元学习李宏毅机器学习_第9张图片

MAML效果必须好

Meta learning 元学习李宏毅机器学习_第10张图片

 

四、MAML数学理论

    灰框里面的公式:

 1.这是更新初始参数,梯度下降,对应更新F的大更新率

 2.L(\phi) 是通过求 θ的loss和得到的

 3.θ是\phi进行过一次update得到的,所以有这个式子。是每个task对应小f的小学习率。对应每个task,task数量为N。

 i是初始化参数的维度,j是task任务数

Meta learning 元学习李宏毅机器学习_第11张图片Meta learning 元学习李宏毅机器学习_第12张图片

 

MAML里面不看下面的二次微分,直接约等于0和1。具体凭什么这么做看论文。

Meta learning 元学习李宏毅机器学习_第13张图片

 

\phi更新过程

Meta learning 元学习李宏毅机器学习_第14张图片

 

五、Reptile

Reptile的\phi更新过程

Meta learning 元学习李宏毅机器学习_第15张图片

pre-train和 MAML& Reptile对比

Meta learning 元学习李宏毅机器学习_第16张图片

 

六、结束

以上研究关于初始化参数\phi,也可以使用强化学习 train新的网络结构,相关内容可以看如下地址

问题:例如MAML优化初始化参数,但是最初始的\phi也是人设置的,可否直接自己搞出来呢?

你可能感兴趣的:(机器学习)