【元学习】MER代码实现:Task/Class-IL增量场景下的Meta-Experience Replay详解

论文《Learning to learn without forgetting by maximizing transfer and minimizing interference》中提出了“将经验重放与元学习相结合“的增量学习方法:Meta-Experience Replay (MER)。
这里整理了一下MER的算法流程和代码实现,分别针对任务增量(Task-IL)和类增量(Class-IL)场景下。

论文解析可以戳这里:​​​​​​论文解析:Learning to learn without forgetting by maximizing transfer and minimizing interference

目录

1. 算法基础

1.1 Reservior Sampling (蓄水池采样)

1.2 Experience Replay (ER,经验回放方法)

1.3 Reptile

 2. Meta-Experience Replay 算法

 2.1 MER 算法详解

 2.2 任务增量下的代码注释

 2.3 类增量下的代码注释


1. 算法基础

1.1 Reservior Sampling (蓄水池采样)

Reservior Sampling 是基于经验重放的增量学习方法中常使用的等概率采样方法

(1) 原理

给出一个数据流,这个数据流的长度很大或者未知。并且对该数据流中数据只能访问一次。写出一个随机选择算法,使得数据流中所有数据被选中的概率相等。

(2) 方法

假设需要采样的数量为k。

首先构建一个可容纳k个元素的数据,将序列的前k个元素放入数据。

然后对第j个元素(j>k),以k/j的概率决定该元素是否被留下(替换到数组中,数组中的k个元素被替换的概率相同)。

 (3) 证明

 (4) 算法流程


1.2 Experience Replay (ER,经验回放方法)

(1) 学习目标

核心是保持对已经见过的exemplars的记忆

目标函数:

其中,M 为 memory buffer,current size = M_{size }, maximum size = M_{max}

原理:使用 Reservioe Sampling 更新 buffer,确保在每一个时间步长里,任何 N 个exemplars在 buffer 中被看见的概率都等于 M_{size} /N

 (2) 算法流程

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值