没有合适的资源?快使用搜索试试~ 我知道了~
基于梯度的元学习的师生策略及其在多个任务上的应用
65770一种对基于梯度的元学习的懒惰方法0Muhammad Abdullah Jamal † Liqiang Wang † Boqing Gong �0† 中佛罗里达大学 � 谷歌0摘要0基于梯度的元学习首先通过内循环训练任务特定的模型,然后通过循环反向传播元梯度来更新元模型。为了避免高阶梯度,现有的方法要么采取少量的内部步骤,要么近似处理元更新,以适应元模型和任务模型位于相同空间的情况。为了实现更通用的元学习问题的长期内部视野,我们提出了一种直观的师生策略。关键思想是使用一个学生网络充分探索任务特定模型的搜索空间,然后由一个教师的“跳跃”来探索学生所探索的区域。教师不仅得到了一个高质量的模型,还为元梯度定义了一个轻量级的计算图。我们的方法是通用的;在三个任务(少样本学习、长尾对象识别和对抗性黑盒攻击)上应用于四个元学习算法时表现良好。01. 引言0人类可以通过利用先前的知识和经验,快速学习新任务所需的技能。为了赋予机器学习者这种智能水平,元学习研究如何利用过去的学习经验更高效地学习新任务[48]。一个标志性的实验设计为元学习者提供了各种少样本学习任务(元训练),然后要求它解决以前未见过但与之相关的少样本学习任务(元测试)。这个设计强调了“学会学习”,因为少样本的训练示例对于学习者在任何单独的任务上达到高准确度是不足够的。最近的元学习方法专注于深度神经网络。有些方法将递归神经网络作为模型的更新规则[36,2]。有些方法在任务之间传递注意力机制[30,49]。基于梯度的元学习近来在开创性工作[14]的推动下获得了动力。它是模型无关的元学习(MAML),通过从少量训练示例中使用全局模型初始化,元学习者可以快速得到任务特定的模型。在其核心,MAML是一个双层优化问题[10]。0上层搜索最佳的全局初始化,下层优化个体模型,它们都共享相同的初始化,用于从任务分布中采样的特定任务。这个问题很难解决。[14]提出了一种“贪婪”算法,它由两个循环组成。内循环通过使用任务的训练示例对任务特定的模型进行k步更新,从而构建一个可微的计算图。外循环通过计算图反向传播元梯度来更新共同的初始化。这种方法是“贪婪”的,因为内部步骤的数量通常很小(例如,k=1)。外循环在内循环充分探索其搜索空间之前就采取行动。这种“贪婪”算法是由于实际约束,通过内循环反向传播元梯度会产生高阶导数、大内存占用和梯度消失或爆炸的风险。出于同样的原因,一些相关工作也采用了贪婪策略,例如元攻击[13]和学习重新加权示例[38]。为此,自然而然地出现了两个问题。一个不那么贪婪的基于梯度的元学习者(例如,k>10个内部步骤)是否能够获得更好的性能?如何使其不那么贪婪?一些一阶算法[14, 32,15]已经对上述第一个问题给出了肯定的答案。[35]通过对内循环进行正则化提出了一个不那么“贪婪”的MAML。然而,它们高度定制,因为元模型和任务模型位于相同的空间,无法解决其他元学习问题,例如后面描述的长尾分类。为了回答更一般的元学习场景的问题,我们通过引入一个前瞻优化器[55]到内循环中提供了一些初步结果。它可以被看作是一个师生方案。我们使用一个学生神经网络充分探索给定任务的搜索空间(通过大量k次更新),然后教师网络向学生访问的区域“跳跃”。结果,教师网络不仅得到了一个高性能的模型,还为外循环定义了一个非常轻量级的计算图。与传统的“贪婪”元学习框架(如MAML[14]、元攻击[13]、学习重新加权示例[38]等)相比,教师是“懒惰”的。它发送一个学生θ∗ ← arg minθET ∼PT ,Dval∼T LTDval(φ∗(θ))subject to φ∗(θ) ← argminφ(θ,tr) LTDtr(φ).(1)MMAML(θ, Dtr) := {φ0 ← θ} ∪ {φj | φj ← φj−1−α∇φLTDtr(φj−1), j = 1, 2, · · · , k}(2)65780为了优化一个任务,我们的方法在许多步骤中进行优化,并在此之后仅移动一次。我们的方法改进了基于梯度的元学习框架,而不是单个算法。因此,我们在不同的方法和任务上进行了评估,包括用于少样本学习的MAML和Reptile [ 32],用于长尾分类的两组分加权算法 [ 20 ],以及元攻击 [ 13]。广泛的结果对上述第一个问题给出了肯定的答案:内部循环中的长期探索可以提高元学习器的性能。我们期望我们的方法以及令人信服的实验结果能够促进未来解决上述第二个问题的工作。02. 相关工作 元学习是机器学习中一个长期存在的子领域 [ 40, 45 , 31 ]。早期的方法通过训练元学习器来更新模型的参数[ 4 , 5 , 41]。这在优化神经网络方面得到了广泛研究,其中一类元学习方法学习了一个优化器 [ 36 , 26 , 2]。一个专门的神经网络将梯度作为输入,并输出一个学习者的更新规则。除了更新规则,[ 36 ]还学习了少样本学习的权重初始化。最后,还有一些方法 [29 , 52 ]用于训练通用优化器,可以广泛应用于不同的神经网络和数据集。在少样本学习的背景下,另一类元学习方法涉及基于度量学习的方法 [ 49 , 43 , 30 , 22 , 33],它们学习了一个度量空间,以提高不同的少样本学习任务。其目标是找到两个样本之间的相似性,而不考虑它们的类别,使用某种距离度量来计算相似性,以便在测试阶段使用相似性函数对未见过的类别进行分类。这条线上的一些最新研究包括匹配网络 [ 49 ],它使用余弦相似性,原型网络 [43 ],它使用欧氏距离计算相似性,关系网络 [ 44],它使用关系模块作为相似性函数,岭回归 [ 6 ]和图神经网络 [ 39]。最近,基于梯度的元学习获得了动力,提出了各种方法。其中最著名的方法可能是MAML [ 14],其目标是学习网络的权重初始化,以便它可以快速适应未见过的任务。已经有一些扩展来改进MAML。Meta-SGD [27 ] 学习了学习率和权重初始化。引入了正则化技术 [ 54 ,21 ] 来缓解MAML的过拟合问题。[ 34 ]通过学习曲率在内部循环中对梯度进行预处理。尽管MAML很受欢迎,但由于计算高阶导数,它仍然计算成本高昂且消耗大量内存。作者表明,忽略梯度的一阶近似方法在实践中仍然有效。0内循环的元优化算法与原始的MAML表现相当。另一种一阶元学习方法是Reptile [ 32],它将内部和外部优化步骤解耦。iMAML [ 35]通过使用基于共轭梯度的算法来提供元梯度的近似解决方案,其低级优化与Meta-MinibatchProx [ 56]类似。其思想是在内部循环中添加 ℓ 2正则化器,使更新的参数接近初始参数。类似于iMAML,[28 , 3 ]分别提供了优化超参数和模拟器参数的近似解决方案。03. “贪婪”梯度元学习0我们首先从“搜索空间刻画”的角度回顾了基于梯度的元学习。符号表示。让 P T 表示任务分布。对于从分布 T � P T中抽取的每个任务,我们有一个训练集 D tr 和一个验证集 Dval,两者都以 { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ∙ ∙ ∙ }的形式存在,其中 x m 和 y m分别是输入和标签。我们通过在训练集上最小化经验损失 LT D tr ( φ )来学习任务的预测模型,同时使用验证集来选择超参数(例如,提前停止),其中 φ收集模型的所有可训练参数。类似地,我们用 L T D val ( φ)表示在验证集上计算的损失。元学习作为“空间刻画”。元学习不仅关注于单个任务,而是采用全局视角,并引入一个由 θ 参数化的元模型,可以提高从任务分布 P T中抽取的所有个体任务的学习效率。其基本思想是从训练集D tr 和元模型 θ 中导出一个任务特定模型 φ,即 φ ∈ M (θ, D tr )。我们将 M ( θ, D tr ) 称为任务特定模型 φ的“刻蚀”搜索空间,其中“刻蚀”函数在 [ 49 , 30 ]中实现为一个注意力模块,在 [ 17 , 18 ]中实现为一个条件神经过程,在 [ 14 , 34 , 27 , 32 ]中实现为一个基于梯度的更新规则,在 [ 35 , 56 ]中实现为一个正则化优化问题。最优的元模型 θ �应该能够在期望中产生最佳的任务特定模型。0可以从一些任务中估计出最优的元模型 θ �,然后使用它来“切割”新任务模型的搜索空间 M ( θ � , Dtr ) 。基于梯度的元学习。一个值得注意的元学习方法是MAML [ 14],它使用基于梯度的更新规则来“切割”任务特定模型的搜索空间,θ ← θ − βET ∼PT ,Dval∼T ∇θLTDval(φk(θ)),(3)MLAZY(θ, Dtr) := γθ + (1 − γ)Rk−b+1,··· ,k(4)Rk−b+1,··· ,k := αk−b+1φk−b+1 + αk−b65790其中元模型 θ 成为任务特定模型 φ 0的初始化,其他候选模型 φ 1 , ∙ ∙ ∙ , φ k通过梯度下降获得,而 α > 0 是学习率。将其代入方程(1 ), φ k ∈ M MAML ( θ, D tr )自然是下层优化问题的解,而 MAML通过元梯度下降解决上层优化问题,0其中 β 是学习率,而 φ k ( θ ) 表示对元模型 θ的依赖。元梯度必须通过公式( 2)中的更新链进行反向传播,该链必须很短(例如, k = 1),以避免大内存占用、高阶导数和梯度消失或爆炸的风险。我们称 MAML 是“贪婪”的,因为它在对元模型 θ进行元梯度下降之前,运行了足够的更新来对任务特定模型φ进行下降。随着越来越多的工作采用基于梯度的“搜索空间切割”方法用于任务特定模型[ 27 , 35 , 34 , 16 , 53],它们也采用了贪婪算法。放松贪婪策略可能有益于不止一个高阶元学习方法。04. 基于梯度的元学习的“懒惰”方法0在本节中,我们描述了一种“懒惰”的元学习方法,它可以轻松应用于不同的基于梯度的元学习算法。我们首先将一般方法描述为对 MAML的改进,然后为少样本学习、长尾分类和元攻击进行定制。04.1. 一般方法0给定一个元模型 θ,我们通过一个师生方案来“切割”任务特定模型 φ ∈ M( θ, D tr )的搜索空间。关键思想是让学生利用任务特定模型的训练集充分探索搜索空间,而不用担心更新链的长度,因为老师会检查学生探索的区域,然后进行一步“跳跃”。因此,可以通过老师的“跳跃”反向传播元梯度来更新元模型,而不是学生的更新链(忽略链条从元模型开始的事实)。图 1展示了主要思想。一个探索性的学生的行为与 MAML中基于梯度的更新完全相同,只是它通过大量的步骤( k >10 )探索可行空间,从而得到任务特定模型 φ ∈ MMAML ( θ, D tr ) 的 k + 1 个检查点。从第 3节可以清楚地看出,我们不能通过探索性学生生成的长链 φ0 , ∙ ∙ ∙ , φ k 来反向传播元梯度。0一个懒惰的老师坐在初始化的位置 φ 0 = θ,直到学生停止。然后它向学生探索的区域跳跃。老师实际上为任务特定模型 φ 定义了另一个“切割搜索空间”,0其中 γ ∈ [0 , 1] 。区域 R k − b +1 , ∙∙∙ ,k是学生访问的最后 b 个检查点的凸包:0∙ ∙ ∙ + α k φ k ,(5)0其中系数 { α } 是非负的,它们的和等于1,即 α k − b +1 +∙ ∙ ∙ + α k = 1。最后的 b个检查点比前几个检查点更有可能覆盖高质量的任务特定模型 φ。我们将尝试 b = 3 和 b = 1。在这个“懒惰”空间 MLAZY ( θ, D tr ) 中的任何任务特定模型 φ 都由超参数 γ 和α k − b +1 , ∙ ∙ ∙ , α k确定,我们通过网格搜索来最小化验证损失 L T D val ( φ)。这与元SGD [27]类似,它使用验证数据来搜索学习率。用ˆ γθ +(1 − ˆ γ ) ˆ φ表示通过网格搜索得到的任务特定模型。值得注意的是,它距离元模型 θ只有一步之遥,因此计算元梯度更容易。具体而言,元模型θ 的元梯度下降变为 θ ← θ − β E T � P T , D val �T � θ L TD val (ˆ γθ +(1 − ˆ γ )ˆ φ ),当 k > 1 时,这显然比公式(3) 中的梯度更容易处理。0算法1 “懒惰”元学习需求:任务分布 P T 需求:学习率 η, β确保:元模型 θ01: 随机初始化元模型 θ 2: 当未完成时循环3: 采样一批任务 {T i � P T }04: 对于所有 {T i } 做05: 为 T i 采样数据 D tr 和 D val07: 对于 j = 1, 2, ∙ ∙ ∙ , k 做 //学生08: φ i,j ← φ i,j − 1 − η � φ L T i D tr ( φ i,j − 1 )09: 结束循环010: 网格搜索 M LAZY ( θ, D tr ) 使得 L T i D val 在 ˆ γ i θ+ (1 − ˆ γ i ) ˆ φ i //老师时最小011: φ i ( θ ) ← ˆ γ i θ + (1 − ˆ γ i ) ˆ φ i //老师013: θ ← θ − β � θ �0i L T i D val (φ i ( θ ))014: 结束循环0算法1详细介绍了我们的“懒惰”方法。在外部循环中,我们采样一批任务 {T i } (第65800�20�30�0MAML01 �0�20�30�0隐式MAML0计算 任务特定参数01 �0�20�30�0“懒惰”MAML01 �0i L T i D val ( φ i ( θ )),MAML [14]通过内部更新进行微分,隐式MAML[35]近似局部曲率,而我们通过“懒惰”老师的一步“跳跃”进行微分。在老师的“跳跃”之前,探索性学生可能会进行多次内部更新。03,或 L3) 并使用它们对元模型 θ 进行梯度更新(L13)。所有任务特定模型 { φ i, 0 } 都初始化为当前元模型θ (L6)。对于每个任务 T i ,学生首先对任务特定模型 φ i进行 k 步梯度下降(L8),然后老师根据学生访问的检查点从初始元模型 θ进行“跳跃” (L10-11)。0备注。我们的“懒惰”老师受到前瞻优化器的激励[55]。由于元学习设置的原因,它们有一些关键的区别。我们通过元模型初始化多个任务特定模型。此外,我们通过验证集动态选择“跳跃”率γ。最后,验证数据使我们能够利用学生访问的检查点周围的区域,而不仅仅是一个检查点。0与Reptile一样,我们的方法允许内部循环对任务特定模型进行多次更新。此外,我们与Reptile共享相同的更新规则,在多步探索结束时应用该规则。然而,我们将该规则应用于任务特定模型,而Reptile基本上使用它来更新元模型。与Reptile不同,我们使用元梯度来更新元模型。这个差异是微妙而重要的,使得我们可以直接将我们的方法应用于长尾分类的两组分权重算法(以及其他类似元的算法),但不清楚如何将其应用于Reptile。0我们与最近提出的隐式梯度(iMAML)[35]有相同的目标,即使MAML变得不那么“贪婪”。iMAML将公式(1)中的低级问题改为ℓ2正则化问题,这为元梯度提供了一个解析表达式。但计算成本很高,必须用共轭梯度算法来近似计算。ℓ2正则化也无法捕捉元模型和任务特定模型之间的结构关系。04.2. Few-Shot Learning, Long-TailedClassification, and Meta-Attack0由于“懒惰”教师不改变基于梯度的元学习的最内层循环,而是“跳过”任务特定模型 φ的更新链,我们可以将其应用于不同的算法。我们在few-shot学习、长尾分类和元攻击上进行评估,其中基于元学习的方法已经取得了最先进的结果。本文中的few-shot学习涉及一个N-way-K-shot分类问题。为了针对这个问题定制算法1,我们随机选择N个类别作为每个任务Ti,然后从每个类别中选择K+1个带有标签的样本,其中K个分配给训练集Dtr,一个分配给验证集Dval。此外,我们通过使用任务特定模型在验证集上的分类准确率来选择超参数γi,而不是使用L10算法中的损失。few-shot学习中存在一个有趣的“陷阱”,即通过记忆化进行过拟合[53]。从分布PT中抽取的任务{Ti}应该是独立同分布的,但在以下情况下它们可能是相关的。假设存在所有类别的全局顺序。如果我们在每个任务中保持这个顺序中的N个类别,元模型可能通过记忆化解决这些任务的函数来过拟合在元训练期间看到的任务,并且无法推广到新的任务。因此,每次为任务抽样时随机洗牌N个类别是很重要的(例如,在一个两类分类任务中,“狗”和“猫”分别被标记为0和1,但在另一个两类任务中它们被洗牌为1和0)。我们将通过实验证明,即使没有类别洗牌,我们的方法也不容易过拟合,这可能的原因是我们使用更长的更新链(φ0,∙∙∙,φk,k>10)来学习解决各个任务的函数,使它们更难以记忆。长尾分类作为一个不可避免的挑战出现,因为目标识别朝着大规模、细粒度的类别发展[47,51],这些类别通常呈长尾分布。为了提升不常见的类别,[20]提出通过两个组分来加权每个训练样本,一个固定组分wy用于平衡不同的类别[11],一个可训练组分εi。我们通过“懒惰”教师改进了他们的学习方法,如算法2所述。它交替优化每个样本的权重εi(使用平衡的验证集)和识别网络θ(使用长尾训练集),与元学习的精神相同(对比算法1和算法2中的L5-12)。我们在L6中插入了一个“懒惰”教师模型,让它在L12中“跳跃”,然后通过“跳跃”反向传播相对于每个样本权重εi的梯度。hot5.1.1MAML vs. “Lazy” MAML for many-way few-shot learning65810随着物体识别朝着大规模、细粒度的类别发展[47,51],这往往呈现出长尾分布,因此长尾分类作为一个不可避免的挑战出现。为了提升不常见的类别,[20]提出通过两个组分来加权每个训练样本,一个固定组分wy用于平衡不同的类别[11],一个可训练组分εi。我们通过“懒惰”教师改进了他们的学习方法,如算法2所述。它交替优化每个样本的权重εi(使用平衡的验证集)和识别网络θ(使用长尾训练集),与元学习的精神相同(对比算法1和算法2中的L5-12)。我们在L6中插入了一个“懒惰”教师模型,让它在L12中“跳跃”,然后通过“跳跃”反向传播相对于每个样本权重εi的梯度。0算法2:长尾识别的“懒惰”两组分加权 要求:一个类别频率呈长尾分布的训练集Dtr,一个平衡的验证集 Dval0要求:使用[11]估计的类别权重{wy} 要求:学习率η、τ,预训练步数t1,微调步数t201: 使用标准的交叉熵损失函数训练一个由参数 θ参数化的识别网络,训练 t1 步02: 对于t = t1 + 1, ∙ ∙ ∙, t1 + t2,从训练集Dtr中抽取一个小批量B04: 设置ϵi = 0,�i ∈ B,并记ϵ i ∈ B}05: 0i ∈ B (wyi + ϵi)Li(θ) // Li是第i个输入的交叉熵06: 更新˜θ(ϵ) ← θ − η�θLB(θ, ϵ) // 依赖于ϵ的“懒惰”教师07: 通过设置φ0 ← ˜θ(ϵ)来初始化学生模型08: 对于 j = 1, 2, ..., k 做09: 通过梯度下降更新学生模型φj ← φj−1 − η�φLB(φj−1,ϵ)010: 结束循环011: 网格搜索γ,使得教师的“跳跃”,γ˜θ(ϵ)+(1−γ)φk,在Dval上能够产生高准确率012: 更新 ϵ ← ϵ − τ�ϵLDval(γ˜θ(ϵ)+(1−γ)φk)013: 计算LB(θ, ϵ)(参见第5行)并更新θ ← θ − η�θLB(θ, ϵ)014: 结束循环0Meta-attack[13]是一种对深度神经网络进行查询高效黑盒攻击的算法。最近的研究表明,通过向良性输入添加非常小的扰动,可以操纵图像识别网络的预测。然而,如果网络的架构和权重是未知的(黑盒),需要对网络进行大量查询才能找到有效的对抗性示例。为了提高查询效率,[13]提出了从许多白盒神经网络中学习元模型,然后将其推广到黑盒攻击的方法。他们使用与算法1相同的元学习框架来训练这个元模型。因此,0通过我们的“懒惰”教师,改进他们的内部循环是很直接的;我们将详细的算法推迟到补充材料中。05. 实验0我们通过将“懒惰”的长期元学习方法应用于不同的算法,并应用于少样本学习、长尾识别和元攻击等应用,来评估这种方法。05.1. 少样本学习0我们使用四个数据集进行少样本学习的实验:Omniglot[24],MiniImageNet [50],TieriImageNet[37]和CIFAR-FS [6]。实验协议和实现细节主要遵循MAML[14]和Reptile [32]。更多细节请参阅补充材料。0表1.我们的方法应用于MAML和Reptile在MiniImageNet上的五分类少样本分类(准确率±95%置信区间,共2000次运行)0方法MiniImageNet0MAML [14] 48.70 ± 1.84 63.11 ± 0.92 “Lazy”MAML (b = 1) 48.26 ± 1.78 64.13 ± 1.90 “Lazy”MAML (b = 3) 48.17 ± 1.84 63.73 ± 1.100Reptile [32] 49.97 ± 0.32 65.99 ± 0.58 “Lazy”Reptile (b = 1) 51.50 ± 1.00 67.22 ± 0.97 “Lazy”Reptile (b = 3) 52.67 ± 1.01 68.77 ± 0.980我们的方法允许长期内部更新,并涉及最近几个检查点的凸包。在表1中,我们首先使用最后的b = 3和b =1个检查点进行实验。我们使用两种代表性的元学习算法进行测试:MAML(参见算法1)和Reptile(用算法1中的第130i (θ −φi(θ)))。网格搜索的间隔为0.05(L10),学习率γ的搜索范围为0.75到0.95。表1显示,b = 3和b =1之间没有显著差异,因此我们将在剩余的实验中使用b =1。此外,“懒惰”变体改进了普通的Reptile,但对于MAML来说没有改进,可能是因为五分类一/五样本学习对于MAML来说太简单,无法利用长期内部更新。接下来,我们将研究更复杂的多分类少样本学习任务。0我们转向TieriImageNet数据集,因为MiniImageNet的元测试集中只有20个类别。图2的左侧显示了MAML,FOMAML和“懒惰”的MAML在N路五样本学习中的结果,其中N变化为1020304050607026.8±0.370.7±1.769.6±1.736.1±0.431.9±0.428.0±0.325.9±0.317.7±0.219.7±0.267.4±1.834.5±0.417.8±0.2767880828486889040455055606570758048.26±1.7848.70±1.8463.11±0.9264.13±1.966.18±0.774.8±0.7667.13±0.7878.54±0.7658205路 20路 30路 50路0平均准确率(%)0MAML FOMAML我们的(MAML)0MAML TAML我们的(MAML)0平均准确率(%)081.51±0.6082.30±0.63086.35±1.80图2.左:TieriImageNet上N路五样本分类的平均准确率(%)。右:Omniglot上20路一样本非独立同分布[53]分类任务的平均准确率(%)。0{5, 20, 30, 50},学生分别运行k = 10, 15, 20,20个内部步骤。“懒惰”的变体在五路分类中与MAML相当,并且在20路,30路和50路五样本分类中优于MAML和FOMAML。这一趋势表明,多路少样本学习问题需要更多的内部更新到任务特定模型,从而放大了“懒惰”的教师的好处。05.1.2多样本分类0图3显示了MAML和“懒惰”的MAML在MiniImageNet上五路K样本学习中的结果。我们在K = {1, 5, 20,50}上变化,并让学生分别运行k = 10, 15, 15,20个步骤。在1-shot和5-shot设置下,我们的方法与MAML相当,但在20-shot和50-shot分类中明显优于MAML。这一趋势表明,更多的训练数据需要更多的探索步骤来获得任务特定模型的好处,从而放大了我们引入MAML的师生方案的好处。01-shot 5-shot 20-shot 50-shot0平均准确率(%)0MAML我们的(MAML)0图3.在MiniImageNet上五路K样本分类的平均准确率(%)。05.1.3“懒惰”的MAML比MAML更不容易通过记忆过拟合0图2的右侧显示了Omniglot上一些20路一样本分类结果,当我们从非独立同分布的任务中学习时,即通过保持所有训练类别的全局顺序。这个全局顺序为0元学习方法;它们可能会记住元训练任务的顺序,并无法推广到元测试任务[53]。我们可以看到,“懒惰”的教师大大提高了MAML的性能,并且优于TAML[21],这表明它不容易通过记忆过拟合。一个合理的原因是,探索性学生所采取的k =15步骤使其比MAML或TAML中的一步更新更难记忆。05.1.4五路少样本学习0我们将我们的方法与最先进的元学习方法在四个数据集上进行了五路少样本学习问题的比较。结果在MiniImageNet和TieriImageNet上的表2中显示。对于我们自己的方法,我们研究了元模型的MAML风格更新(我们的(MAML),算法1中的L13)和Reptile风格的更新(我们的(Reptile),用θ← θ − β � i (θ − φ i(θ))替换算法1中的L13)用于MiniImageNet和TieriImageNet。测试数据的批归一化比仅使用训练数据的归一化提高了约2%,我们报告了两种情况的结果。可以看出,我们的结果优于或与竞争方法相当。总的来说,我们的师生方案在5-shot设置上的改进比1-shot设置更显著,验证了第5.1.1节中的趋势,即更多的训练数据可以更好地利用我们方法中的探索性学生。此外,我们的(Reptile)优于我们的(MAML),可能有两个原因。一是我们的(Reptile)在元训练期间对于k-shot学习问题使用了每类训练示例的k个以上的训练示例,遵循Reptile[32]的实验设置。另一个原因是我们的(MAML)中的二阶梯度使训练过程比Reptile不稳定。我们假设许多shot设置对这两个因素都不太敏感。事实上,我们通过使用我们的(Reptile)进行了另一个五路50-shot学习实验来验证了这个假设,结果为MiniImageNet上的76.17±0.32%,低于我们的(MAML)的78.54±0.70%。65830表2. 在MiniImageNet和TieriImageNet上的五分类few-shot分类准确率(%)。±表示在2000个任务上计算的95%置信区间。0方法 BN w/ Mini-ImageNet TieredImageNet0测试 1-shot 5-shot 1-shot 5-shot0MAML [14] - 46.21 ± 1.76 61.12 ± 1.01 49.60 ± 1.83 66.58 ± 1.78 MAML [14] - 48.70 ± 1.8463.11 ± 0.92 51.67 ± 1.81 69.60 ± 1.73 Meta-Curvature [34] - 48.83 ± 1.80 62.63 ± 0.93 50.30± 1.99 66.14 ± 0.95 iMAML [35] - 49.30 ± 1.88 63.47 ± 0.90 51.51 ± 1.80 69.92 ± 1.70我们的(MAML) - 48.26 ± 1.78 64.13 ± 1.90 51.03 ± 1.70 70.67 ± 1.720FOMAML [14] - 45.53 ± 1.58 61.02 ± 1.12 48.01 ± 1.74 64.07 ± 1.72 Reptile [32] - 47.07 ±0.26 62.74 ± 0.37 49.12 ± 0.43 65.99 ± 0.42 Meta-MinibatchProx [56] - 47.81 ± 1.00 63.18 ±1.00 49.97 ± 0.93 66.60 ± 0.91 我们的(Reptile) - 48.14 ± 0.94 64.64 ± 0.92 51.15 ± 0.9568.84 ± 0.900FOMAML [14] - 48.07 ± 1.75 63.15 ± 0.91 50.12 ± 1.82 67.43 ± 1.80 Reptile [32] - 49.97 ±0.32 65.99 ± 0.58 51.34 ± 0.4 68.73 ± 0.40 Meta-MinibatchProx [56] - 50.08 ± 1.00 66.28 ±0.98 53.71 ± 1.04 69.78 ± 0.95 我们的(Reptile) - 51.50 ± 1.00 67.22 ± 0.97 54.41 ± 1.0072.21 ± 0.940表3. 在Omniglot和CIFAR-FS上的五分类few-shot分类准确率(%)。±表示在1000个任务上计算的95%置信区间。0方法 BN w/ Omniglot CIFAR-FS0测试 1-shot 5-shot 1-shot 5-shot0MAML [14] - 98.70 ± 0.40 99.90 ± 0.10 56.50 ± 1.90 70.50 ± 0.90 iMAML [35] -99.16 ± 0.35 99.67 ± 0.12 - -0Reptile [32] - 95.39 ± 0.09 98.90 ± 0.10 53.12 ± 1.34 69.40 ± 1.30 我们的(Reptile)- 95.44 ± 0.57 98.92 ± 0.29 54.64 ± 1.30 70.56 ± 1.200FOMAML [14] - 98.30 ± 0.50 99.20 ± 0.20 55.6 ± 1.88 69.52 ± 0.91 Reptile [32] -97.68 ± 0.04 99.48 ± 0.06 57.50 ± 0.45 71.88 ± 0.42 我们的(Reptile) - 98.20 ±0.38 99.70 ± 0.16 59.36 ± 1.44 74.90 ± 1.280在Omniglot和CIFAR-FS上的结果见表3。由于计算成本较低,我们只报告了我们的(Reptile)结果。可以看出,我们的结果优于或与其他竞争方法相媲美。在附录A中,我们展示了更多few-shot学习的结果。A.5节研究了在TieriImageNet上采用Reptile风格更新的“懒惰”方法进行N-way-five-shot学习。A.4节通过计算内存成本进一步比较了MAML和“懒惰”MAML。05.2. 长尾分类0按照[11]和[20]中的实验设置,我们使用CIFAR-LT-100数据集[11]来比较我们的算法2与几种长尾识别方法。[11]根据不同的幂律分布从CIFAR-100[23]中删除训练样本,创建了多个长尾数据集。在每个版本中,我们计算一个不平衡因子,作为头类和尾类大小之间的比率。0尾类。我们在算法2的最内层循环中运行k =5步。表4显示了不同不平衡因素下的测试错误率(%)。我们可以看到,在所有不平衡因素下,我们的师生方案提升了原始的两组件加权方法[20]。结果尤其有趣的是,尽管算法2并不是一个元学习方法,但由于两个嵌套的优化循环,它与基于梯度的元学习共享相同的框架。此外,与其他竞争方法相比,我们的结果为长尾目标识别建立了一个新的最先进水平。05.3. 元攻击0我们在MNIST [25]和CIFAR-10[23]上评估了“懒惰”元攻击。我们遵循[13]的实验设置和所有训练细节,包括用于生成输入图像梯度的网络架构,攻击模型,元攻击模型以及用于两个数据集的评估指标。65840表4. 在不同不平衡设置下,CIFAR-LT-100上ResNet-32的测试top-1错误率(%)。0方法 ↓ 不平衡因子 → 200 100 50 200标准交叉熵训练 65.16 61.68 56.15 48.86 类平衡交叉熵训练[11] 64.3061.44 55.45 48.47 类平衡微调[12] 61.78 58.17 53.60 47.89学习重新加权[38] 67.00 61.10 56.83 49.25 元权重[42] 63.38 58.39 54.3446.960两组分加权[20] 60.69 56.65 51.47 44.38 懒惰两组分加权(我们的)58.6753.46 48.24 43.680表5. MNIST和CIFAR10上的非目标对抗攻击结果。我们使用更少的查询次数,实现了与其他方法相当的成功率和平均 ℓ 2 扭曲。0数据集 / 目标模型 方法 成功率 平均 ℓ 2 平均查询0MNIST / Net40Zoo [8] 1.00 1.61 21,760 决策边界[1] 1.00 1.85 13,630Opt-attack [9] 1.00 1.85 12,925 AutoZoom [46] 1.00 1.862,412 Bandits [19] 0.73 1.99 3,7710元攻击[13] 1.00 1.77 749 懒惰元攻击(我们的)1.00 1.65 5660CIFAR10 / Resnet180Zoo [8] 1.00 0.30 8,192 决策边界[1] 1.00 0.30 17,010Opt-attack [9] 1.00 0.33 20,407 AutoZoom [46] 1.00 0.283,112 Bandits [19] 0.91 0.33 4,491 FW-black [7] 1.00 0.435,0210元攻击[13] 0.94 0.34 1,583 懒惰元攻击(我们的)0.98 0.451,0610数据集,只是举几个例子。内部和外部循环的学习率都是0.01。我们让学生在MNIST和CIFAR-10中的最内层循环中运行k = 8和k =10步。表5显示了非目标攻击的结果,即一旦攻击将识别网络的预测改变为任何错误的类别,就认为攻击成功。附录B包括有针对性攻击的结果。除了原始的元攻击[13],表5还列出了几种现有的黑盒攻击方法进行比较。我们可以看到,元攻击和我们的“懒惰”元攻击的成功率与其他黑盒攻击方法相当。倒数第二列是攻击者对输入进行的平均 ℓ 2扭曲,数值越低越好。最右边的列是攻击者对识别网络进行的查询次数,数值越低越好。“懒惰”元攻击能够以更少的查询次数实现与其他方法相当的成功率和 ℓ 2扭曲率。元攻击及其“懒惰”版本在查询效率方面明显优于其他方法。0表明元攻击模型从已知的白盒神经网络到未知的黑盒网络的泛化能力。06. 结论0我们提出了一种教师-学生方案,用于基于梯度的元学习算法,使其能够在内部更新任务特定模型时运行更多步骤,同时免受梯度消失或梯度爆炸的风险。学生在多个步骤中探索任务特定模型的可行空间,而“懒惰”的教师则向学生探索的区域迈出一步“飞跃”。因此,教师定义了一个轻量级的计算图,同时利用学生充分探索的检查点。这种方法是通用的;我们将其应用于不同的问题,包括少样本学习、长尾识别和元攻击以及各种元学习方法。实验证实了基于梯度的元学习中长期内部更新的好处。65850参考文献0[1]
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- AA4MM开源软件:多建模与模拟耦合工具介绍
- Swagger实时生成器的探索与应用
- Swagger UI:Trunkit API 文档生成与交互指南
- 粉红色留言表单网页模板,简洁美观的HTML模板下载
- OWIN中间件集成BioID OAuth 2.0客户端指南
- 响应式黑色博客CSS模板及前端源码介绍
- Eclipse下使用AVR Dragon调试Arduino Uno ATmega328P项目
- UrlPerf-开源:简明性能测试器
- ConEmuPack 190623:Windows下的Linux Terminator式分屏工具
- 安卓系统工具:易语言开发的卸载预装软件工具更新
- Node.js 示例库:概念证明、测试与演示
- Wi-Fi红外发射器:NodeMCU版Alexa控制与实时反馈
- 易语言实现高效大文件字符串替换方法
- MATLAB光学仿真分析:波的干涉现象深入研究
- stdError中间件:简化服务器错误处理的工具
- Ruby环境下的Dynamiq客户端使用指南
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功