前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学习让机器学会学习-Meta Learning课程笔记-2

学习让机器学会学习-Meta Learning课程笔记-2

作者头像
百川AI
发布2021-10-19 17:07:27
3020
发布2021-10-19 17:07:27
举报
文章被收录于专栏:我还不懂对话我还不懂对话

来源于李宏毅老师机器学习课程,笔记是其中meta learning部分,few-shot learning学习也可以观看此部分课程。

课程主页:http://t.cn/Exykrk9 video: http://t.cn/ExykrkC

bilibili:https://www.bilibili.com/video/BV1Gb411n7dE?p=32

Gradient Descent as LSTM

上一次讲到通过学习初始化参数的meta learning方法,那么是否有更多的方法呢?

20201009152830
20201009152830

每一次的update的,会很像RNN的time step,每一步训练都会更新参数,那么RNN是否可以用于meta learning呢?

image-20201009173240813
image-20201009173240813

那么RNN和lstm的原理是什么样的呢,这里先做了一些介绍,其实看图就让人回忆起来了。

详细原理可以参考:RNN及其变种LSTM/GRU/SRU

image-20201009173250889
image-20201009173250889

LSTM由于加入了cell单元,相对于RNN会有更长期的记忆。具体原理下面会进行回顾

image-20201009173308289
image-20201009173308289

首先是输入向量z, 以及三个门(输入门、遗忘门、输出门)计算公式。

image-20201009173319624
image-20201009173319624

然后图中是lstm的输出: c t , h t , y t c^t,h^t, y^t ct,ht,yt的计算公式。

image-20201009173340579
image-20201009173340579

然后每一次都反复每个time step的步骤,就是LSTM的计算过程。 那么和meta learning会有什么关系呢?

image-20201009173350945
image-20201009173350945

梯度下降过程中,每个time step会通过梯度来更新参数 θ \theta θ,和LSTM中c很相似,那么LSTM中c是否也可以用 θ \theta θ来代替呢? 如图,将遗忘门 z f z^f zf置为全1的矩阵,将输入门 z i z^i zi所有元素置为meta learn的学习率。

image-20201009173357809
image-20201009173357809

实际过程中,当前time step的输入还可以引入更多东西(图中other),可以是当前参数 θ t − 1 \theta^{t-1} θt−1的loss等。 同时, z f , z i z^f,z^i zf,zi是固定的,能否通过学习得到呢?即:

  • z i z^i zi:自动学习给出适合当前的学习率。
  • z f z^f zf自动学习出做多少weight decay。 z f z^f zf是将之前的参数缩小,和weight decay一样的作用。
image-20201009173412060
image-20201009173412060

图上面是一般的lstm结构,下面是gradient descent中的lstm,对于初始参数 θ 0 \theta^0 θ0,训练集中mini batch输入可以获得其梯度,然后更新参数的过程为: θ t = z f ⊙ θ t − 1 + z i ⊙ − ∇ θ l \theta^{t}=z^{f} \odot \theta^{t-1}+z^{i} \odot^{-\nabla_{\theta} l} θt=zf⊙θt−1+zi⊙−∇θ​l 同时每次的batch不一样,并且参数不一样,对应的梯度 − ∇ θ l -\nabla_{\theta} l −∇θ​l也是不一样的(这里符号上没有做区别)。 图中就是一个训练数据集的三次参数update的过程,然后这个是“lstm”网络的前馈过程,然后使用训练数据,计算获得损失 l ( θ 3 ) l(\theta^3) l(θ3),然后使用梯度更新“lstm”参数来使得损失最小。(这里有点套娃)

image-20201009173418864
image-20201009173418864

由于参数 θ \theta θ的数量巨大,不能直接输入“lstm”,所有会将所有维度的参数都复用一个“lstm”的cell。

image-20201009173423925
image-20201009173423925
image-20201009173436971
image-20201009173436971
image-20201009173446693
image-20201009173446693
image-20201009173453021
image-20201009173453021

Metric-based Approach

image-20201009173502324
image-20201009173502324
image-20201009173509751
image-20201009173509751
image-20201009174044199
image-20201009174044199
image-20201009174052076
image-20201009174052076
image-20201009174102910
image-20201009174102910
image-20201009174108500
image-20201009174108500
image-20201009174116976
image-20201009174116976
image-20201009174124006
image-20201009174124006
image-20201009174135383
image-20201009174135383
image-20201009174144170
image-20201009174144170
image-20201009174153053
image-20201009174153053
image-20201009174205940
image-20201009174205940
image-20201009174212053
image-20201009174212053
image-20201009174217496
image-20201009174217496
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-10-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Gradient Descent as LSTM
  • Metric-based Approach
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档