【论文阅读】2019_Contiual learning with hypernetwork
1. 超网络简介
本文是使用超网络来实现继续学习(CL)的,超网络(hypernetwork)是谷歌在16年提出的一种网络,普通的网络是直接输出是我们想要的结果,而超网路的输出是另一个主网络B的权重,主网络B加载超网络学习到的权重之后,就能输出我们想要的结果了。通常超级网络的权重数是小于网络B的权重数量的,这就是体现了超网络的优点,约束了搜索权重的空间。
hypernetwork 这篇文章中使用超网络实现了 LSTM 和 CNN 网络的权重学习。动态超网络为循环网络生成权重,静态超网络为卷积网络生成权重。
超网络链接(谷歌的论文):hypernework: https://arxiv.org/abs/1609.09106
2. 论文的总体介绍
论文链接:使用超网络实现继续学习:https://arxiv.org/abs/1906.00695
论文的动机:使用超网络的思想来实现CL
论文的方案:
本文提出了一个任务条件超网络( task-conditioned hypernetworks),用于给给定任务id的主网络(主网络)B生成权重。
论文的贡献:
- 拓宽了超网络的应用领域,即使用超网络实现了CL。
- 基于超网络的CL方案不仅在标准CL基准上达到了最佳,而且在长序列任务学习上也表现很好(其他算法都没有在长序列实验上进行测试)
3. 相关的介绍
3.1. 一些数学符号
x ( t , i ) {x}^{(t,i)} x(t,i):第 t t t 个任务的第 i i i 个输入数据;
y ( t , i ) {y}^{(t,i)} y(t,i):第 t t t 个任务的第 i i i 个输入数据对应的标签;
X ( t ) = { x ( t , i ) } i = 1 n t {X}^{(t)}=\{x^{(t, i)}\}_{i=1}^{n_{t}} X(t)={
x(t,i)}i=1nt:第 t t t 个任务的输入数据是一个集合,由输入数据组成;
Y ( t ) = { y ( t , i ) } i = 1 n t {Y}^{(t)}=\{y^{(t, i)}\}_{i=1}^{n_{t}} Y(t)={
y(t,i)}i=1nt:第 t t t 个任务的标签数据是一个集合;
X ( t ) {X}^{(t)} X(t):第 t t t 个任务的所有输入数据;
Y ( t ) {Y}^{(t)} Y(t):第 t t t 个任务的输入数据对应的数据标签;
n t ≡ ∣ X ( t ) ∣ n_{t} \equiv\left|{X}^{(t)}\right| nt≡∣∣X(t)∣∣:第 t t t 个任务的数据的个数;
( X ( t ) , Y ( t ) ) ({X}^{(t)}, {Y}^{(t)}) (X(t),Y(t)):第 i i i 任务提供的所有数据,即输入数据和输入数据对应的标签。
Y ^ ( t ) \hat{Y}^{(t)} Y^(t):使用模型(网络) f t r g t ( ⋅ , Θ ( t − 1 ) ) f_{trgt}(\cdot, \Theta^{(t-1)}) ftrgt(⋅,Θ(t−1)) 计算出的合成标签(synthetic targets);
Θ ( t − 1 ) \Theta(t-1) Θ(t−1) 或 Θ t r g t ( t − 1 ) \Theta_{trgt}(t-1) Θ