没有合适的资源?快使用搜索试试~ 我知道了~
minθλsE(x,t)∈Ds[L(x, t; θ)] + λtE(x,t)∈Dt[L(x, t; θ)],90010使用扩展Kronecker分解的近似曲率进行连续学习0Janghyeon Lee 1 Hyeong Gwon Hong 2 Donggyu Joo 1 Junmo Kim 1,201 韩国科学技术院电气工程学院 2韩国科学技术院人工智能研究生院0{ wkdgus9305, honggudrnjs, jdg105, junmo.kim } @kaist.ac.kr0摘要0我们提出了一种用于包含批归一化(BN)层的神经网络的连续学习的二次惩罚方法。损失函数的Hessian表示二次惩罚函数的曲率,而广泛使用的Kronecker分解近似曲率(K-FAC)用于实际计算神经网络的Hessian。然而,如果存在示例之间的依赖关系(通常由深度网络架构中的BN层引起),则该近似是无效的。我们扩展了K-FAC方法,以考虑示例之间的关系,并在实际假设下正确近似深度神经网络的Hessian。我们还提出了一种权重合并和参数重新参数化的方法,以正确处理BN的统计参数,这在使用BN进行连续学习中起着关键作用,并提出了一种在没有源任务数据的情况下选择超参数的方法。我们的方法在带有BN层的排列MNIST任务和从ImageNet分类任务到细粒度分类任务的顺序学习中,表现优于基准方法,而不需要明确或隐式地使用源任务数据进行超参数选择。01. 引言0在顺序学习场景中,人工神经网络在优化解决当前目标问题时,会对之前学习的任务完全遗忘[6,25]。尽管近年来引入了许多旨在减轻灾难性遗忘的连续学习方法,但由于其不明确的超参数设置或使用过时的网络架构,它们在实际应用中的使用仍然有些受限。具体来说,许多当前的连续学习方法没有解释如何确定超参数,或者通常通过对包括过去任务在内的所有任务进行验证来精心调整超参数,这通常是不可能的。0实际上,即使大多数最先进的深度网络架构在没有批归一化(BN)层的情况下很难训练[29],BN的影响通常也不被考虑,仍然主要使用不需要BN的过时网络架构来评估连续学习方法。由于训练和评估之间的差异以及其统计参数(激活的均值和方差),BN的处理非常棘手。这些统计参数是从训练数据中学习得到的模型参数,但它们不是由梯度下降控制的自由参数;它们只是由数据的分布确定的。特别是在顺序学习场景中,它们容易失控,因为我们处理的是多个不同任务,它们的分布通常不相同。因此,必须仔细讨论和考虑BN的影响。在本文中,我们提出了一种具有Hessian近似的二次惩罚方法,用于包含BN层的神经网络的连续学习。在深入介绍详细方法之前,让我们简要介绍和回顾一下Hessian如何用于连续学习。对于顺序学习,给出一个上界性能的oracle方法之一是多任务学习方法,描述如下优化问题。0(1) 其中D s和D t分别是源训练数据集和目标训练数据集;L是损失函数;λ s和λt是重要的超参数,用于控制每个任务的重要性;θ是向量化模型的参数。由于在顺序学习场景中Ds不可用,我们考虑用仅包含θ而不包含数据x和标签t的函数来近似源任务损失函数。特别地,由于目标任务优化是从源任务解θ�开始的,因此我们可以近似源任务损失函数。0作为初始位置,自然可以对源任务损失函数在 θ = θ �处进行二阶泰勒级数近似;这样做的一个优点是,一阶项消失,因为局部最小值处的梯度为零。g = E(x,t)∈Ds� ∂L(x, t; θ)∂θ����θ=θ∗�,(2)H = E(x,t)∈Ds� ∂2L(x, t; θ)∂θ∂θ����θ=θ∗�,(3)E(x,t)∈Ds[L(x, t; θ)]≃ 12(θ − θ∗)⊤H(θ − θ∗) + g⊤(θ − θ∗) + C= 12(θ − θ∗)⊤H(θ − θ∗) + C(4)minθλtE(x,t)∈Dt[L(x, t; θ)] + 1λs(θ − θ∗)⊤H(θ − θ∗)90020因此,如果我们将源任务损失函数在 θ = θ �处在源数据集上平均的梯度和Hessian矩阵表示为0那么0其中 C 是某个常数。梯度 g 简单地是一个零向量,因为θ �是源任务损失函数的局部最小值。因此,结合方程1和方程4,我们得到以下近似多任务学习目标的连续学习优化问题。0(5) 前一项是目标任务的常规训练损失,后一项是以初始点θ � 为中心,曲率为 H的二次惩罚项。这种多任务学习目标的近似被用于Hessian伪模式反向传播[7],实际上与弹性权重一致性(EWC)[15]和在线结构化Laplace近似(OSLA)[31]相同,只是它们是基于贝叶斯方法的。EWC仅使用Hessian的对角元素,后来在OSLA中,采用了Kronecker分解的块对角Hessian近似,以实现性能的显著提升。然而,在EWC和OSLA中,没有考虑BN的影响,因此只使用了浅层网络进行评估,并通过对整个任务进行验证来找到超参数。我们将我们的贡献分为两部分。在第3节中,为了理论背景,我们证明了当网络具有BN层时,当前的Hessian近似方法是无效的,因为没有考虑BN引起的示例之间的依赖关系,并且我们通过考虑示例之间的相互关系来扩展Hessian近似方法,以便可以有效地近似这种网络的Hessian矩阵。在第4节中,为了实际的连续学习,我们提出了包括如何在BN层中应用所提出的二次惩罚损失、如何处理统计参数以及如何在没有源任务数据的情况下选择超参数的详细方法。02. 相关工作0曲率近似。近年来,已经研究了各种用于Kronecker因子分解曲率的方法。[24]提出了一种有效的方法来近似神经网络中的自然梯度下降,即Kronecker因子近似曲率(K-FAC),它通过将Fisher的块近似为两个更小矩阵的Kronecker积来导出。类似地,[4]提出了一种用于神经网络的二阶优化的高效块对角近似的高斯-牛顿矩阵。[2]开发了一种K-FAC的版本,将K-FAC所需的梯度计算和其他量的计算分布在多台机器上。在[10]中,基于对反向传播导数分布的结构化概率模型,推导出了卷积网络的Fisher矩阵的可行近似,即卷积的Kronecker因子(KFC)。对于循环神经网络,[23]通过对不同时间步长的梯度贡献之间的统计结构进行建模,扩展了K-FAC方法。[8]引入了特征值校正的Kronecker因子分解,这是一种计算可行、准确且可进行廉价部分更新的Fisher的近似分解。03. 曲率近似03.1. 符号表示0任何前馈神经网络中的第l个可学习线性层可以描述为:0h l = W l ¯ a l − 1 , l = 1 , 2 , ∙ ∙ ∙ , L (6)0其中 W l 是一个 C l × ( C l − 1 + 1) 的权重矩阵,¯ a l − 1是一个 ( C l − 1 + 1) × N的激活矩阵,其中附加了一个齐次维度;换句话说,偏置项通过将全1向量附加到 a l − 1 中被吸收到 W l中。整个网络以 x = a 0 作为其 C 0 × N的输入,并产生相应的输出 y,其大小为 C L × N,其中 N是一个小批量的大小。我们将随机小批量样本 ( x, t )中的第n个示例的损失表示为 L n ( x, t ) 或简写为 Ln,以便区分示例索引 n 和小批量样本 ( x, t)。因此,优化目标可以写为 E ( x,t ) [ E n [ L n]]。在本文中,我们将矩阵 A 的 ( i, j ) -th 元素表示为 ( A )i,j,将块矩阵 A 的 ( i, j ) -th 块表示为 { A } i,j。03.2. K-FAC0考虑到所有示例之间的关系,线性层的Hessian矩阵可以表示为以下定理:l′)c,d= E(x,t)�(¯al−1)b,n(¯al′−1)d,n∂2Ln��.(8)Ex [En [(¯al−1)b,n(¯al′−1)d,n]]��,(10)({ ¯A}l,l′)b,d = Ex [En [(¯al−1)b,n(¯al′−1)d,n]] ,(11)Unfortunately, for a network with BN layers, each ex-ample in a mini-batch affects each other, and therefore,̸̸times more; this could be prohibitive for a large mini-batchsize. Hence, we need to take a closer look at and make useof the properties of Equation 7 and BN.For the n-th example, note that the other examples arestatistically indistinguishable if mini-batches are sampleduniformly from the dataset. For example, for any n′ ̸= n,let x′ be the mini-batch obtained by interchanging the n-thand n′-th example indices of x. Then, for any function f,Ex[f((¯al−1)b,n)] = Ex′[f((¯al−1)b,n′)](14)= Ex[f((¯al−1)b,n′)],(15)where the second equality comes from the fact that Ex =Ex′ when all possible mini-batches of the dataset are sam-pled equally likely.Thus, the N 2 summands in Equation 7 can be dividedinto five statistically distinct groups: (i) m = m′ = n, (ii)m = m′ ̸= n, (iii) m = n ̸= m′, (iv) m ̸= n = m′, and (v)n ̸= m ̸= m′ ̸= n. If we apply K-FAC in each of the fivegroups, then we get the following theorem.Theorem 2. (Extended K-FAC) Let π and π′ be permuta-tions of {1, 2, · · · , N}, and assume that mini-batches aresampled equally likely from all possible mini-batches of thedataset. IfE(x,t)�En�(¯al−1)b,π(n)(¯al′−1)d,π′(n)·∂2Ln∂(hl)a,π(n)∂(hl′)c,π′(n)��(16)andEx�En�(¯al−1)b,π(n)(¯al′−1)d,π′(n)��· E(x,t)�En�∂2Ln∂(hl)a,π(n)∂(hl′)c,π′(n)��(17)are the same for any l, l′, a, b, c, d, π, and π′, thenH = ¯A ∗ H′ +1max(N − 1, 1)�N ¯A′ − ¯A�∗ (H′′ − H′),(18)90030定理1.(线性层的Hessian矩阵)0∂ 2 L n0∂ ( W l ) a,b ∂ ( W l ′ ) c,d0= 0m,m ′ (¯ a l − 1 ) b,m (¯ a l ′ − 1 ) d,m ′ ∂ 2 L n0∂ ( h l ) a,m ∂ ( h l ′ ) c,m ′ (7)0证明见附录A.2。0如果一个网络没有任何BN层,则 L n仅依赖于第n个示例,因此:0E ( x,t )0� E n0� ∂ 2 L n0��0� E n0∂ ( h l ) a,n ∂ ( h l ′ ) c,n0由于计算和保存Hessian矩阵的所有元素在实践中是不可行的,因为即使对于一个简单的网络(例如,一个1024×1024的全连接层的Hessian矩阵也需要4TB的内存),K-FAC方法将Hessian矩阵分解为两个相对较小的矩阵[4, 10, 23,24],从而近似了方程8:0∙ E ( x,t )0� E n0� ∂ 2 L n0∂ ( h l ) a,n ∂ ( h l ′ ) c,n0�� . (9)0这个近似假设两个非常不同的变量之间存在很小的相关性,或者它们的联合分布可以很好地近似为多元高斯分布,从而它们的高阶联合累积量将很小[24]。如果我们定义块矩阵H,¯ A和H为:0( { H } l,l ′ ) i,j = E ( x,t )0� E n0� ∂ 2 L n0∂ ( vec ( W l )) i ∂ ( vec ( W l ′ )) j0( {H} l,l ′ ) a,c = E ( x,t )0� E n0� ∂ 2 L n0∂ ( h l ) a,n ∂ ( h l ′ ) c,n0�� , (12)0那么K-FAC的方程9可以简化为一个简单的块矩阵形式[4,24],如下所示:0H ≈ ¯ A � H (13)0其中 * 表示Khatri-Rao乘积。03.3. 扩展K-FAC0∂ ( h l ) a,m ∂ ( h l ′ ) c,m ′ 在一般情况下不为零,即使 m ≠ n 且 m ′ ≠n,方程7中的所有项仍需计算。如果每个项都用K-FAC近似,则需要大量的内存和计算量,约为 N^2。where({ ¯A′}l,l′)b,d = Ex[En[(¯al−1)b,n]En[(¯al′−1)d,n]],(19)({H′}l,l′)a,c = E(x,t)�En��m∂2Ln∂(hl)a,m∂(hl′)c,m��,(20)({H′′}l,l′)a,c = E(x,t)En �m,m′∂2Ln∂(hl)a,m∂(hl′)c,m′ .(21)Proof. See Appendix A.3.We will call Equation 18 the extended K-FAC, or simplyXK-FAC. Note that H = H′ = H′′ for a BN-free case, andhence, XK-FAC is a good generalization of K-FAC (Equa-tion 13). Further, it can be applied with a large mini-batchsize in practice because it requires only twice as much mem-ory and computation as the original K-FAC.If the Hessian is approximated by the Fisher informationmatrix [28] to avoid negative eigenvalues in practice, thenˆH′ and ˆH′′ are used instead of H′ and H′′, where({ ˆH′}l,l′)a,c = E(x,y)�En��m∂Ln∂(hl)a,m∂Ln∂(hl′)c,m��,(22)({ ˆH′′}l,l′)a,c = E(x,y)�En� ��m∂Ln∂(hl)a,m�·��m∂Ln∂(hl′)c,m. (23)¯A∗ ˆH′++ ǫzjn +ǫ,90040。0它们可以从梯度中轻松计算得到,其中期望是在模型的分布上进行的。在这种情况下,通过以下定理可以保证 XK-FAC是半正定的。0定理 3. (XK-FAC 的半正定性)0max ( N − 1 , 1) 。 N ¯ A ′ − ¯ A 。 � ( ˆ H ′′ −ˆ H ′ ) � 0 (24)0证明。请参见附录 A.4。04. 连续学习的方法0尽管 XK-FAC 是其中一个关键要素,但仅凭 XK-FAC无法实现与 BN的连续学习。在这里,我们提出了额外的解决方案,以正确使用 BN 进行连续学习设置,并讨论了超参数选择的问题。04.1. 合并权重和批次重归一化0一个权重矩阵可以以非唯一的方式表示为多个权重矩阵的乘积,并且连续的权重矩阵可以合并为一个矩阵,因此单个网络可以以许多不同的方式进行参数化。如果存在许多等效的参数化方法,那么为了效率起见,采用最简单的形式是很自然的。特别是,如果我们可以将多个层视为单个层,那么它将在计算上更加高效,并且会减小 Hessian的大小。让我们考虑一个具有可学习仿射参数 γ 和 β 的BN 层。首先,对于任何输入 z ,通过观察到0z j¯ 0¯ σ 2 i + � γ i + β i =γ i 。0。0β i − γ i ¯µ i 。0。0(25),我们提出将 BN层的归一化部分和仿射变换部分合并为一个等效的仿射变换层,其数据相关的可学习参数为 ˜ γ 和 ˜ β ,定义如下0˜ γ i = 。0¯ σ 2 i + � , ˜ β i = β i ¯ µ i 。0¯ σ 2 i + � , (26)0其中 ¯ µ i 和 ¯ σ 2 i分别是小批量的均值和方差。如果存在一个前置的线性层,其权重为 w (不包括偏置),那么这个线性层和 BN层也会合并为一个等效的全连接层。因此,我们定义了一个合并的全连接层,其数据相关的合并权重 ˜ w 和合并偏置 ˜b 为0˜ w ij = ij 。0¯ σ 2 i + � , ˜ b i = β ii ¯ µ i 。0¯ σ 2 i + � 。 (27)0然后,将 ˜ w 和 ˜ b 连接起来形成一个合并的权重矩阵 ˜ W。通过这种重新参数化,我们可以考虑惩罚损失 102 (˜ θ − ˜ θ � ) � H (˜ θ − ˜ θ � ) 在合并的参数 ˜ θ = vec( ˜ W ) 上,其中 Hessian H 也是相对于 ˜ θ 取的。由于 ˜W 可以表示任何实矩阵,并且是 w 、 γ 和 β的连续函数,通过适当地移动 w 、 γ 和 β ,˜ W可以在参数空间中的任何方向上移动。因此,我们不会因重新参数化而失去原始网络的任何表示能力。除了效率之外,重新参数化还有其他优点。如果将单个权重矩阵分解为多个矩阵,并且每个因子都受到方程 4的惩罚,那么这些因子将被惩罚以保持接近其自己的原始值。然而,由于分解的非唯一性,它们的原始值个别来说并不重要,只需保持它们的乘积值即可。如果没有重新参数化,每个因子将被不必要地过度惩罚。{H′}l,l′( ˜Wl′ − ˜W ∗l′){ ¯A}⊤l,l′′,(30)Finally, ∂Ls∂ ˜w ands∂˜b are obtained by detaching the homo-geneous dimension from ∂Ls∂ ˜W , and they are propagated to∂Ls∂w , ∂Ls∂γ , ∂Ls∂β , and(32)90050此外,所提出的重新参数化方法在连续学习中扮演着 BN的统计参数 ¯ µ 和 ¯ σ的重要角色,这些参数由数据和前置权重矩阵确定。如果只对自由参数进行惩罚而不对统计参数进行惩罚,那么即使在惩罚损失的全局最小值处,由于统计数据的漂移,惩罚损失也无法完全保持原始网络的性能。因此,有人可能尝试直接对 ¯ µ 和 ¯ σ进行惩罚,但这种方法将失败,因为所有前置权重都会被不必要地惩罚以保持原始统计数据,这与前置权重的惩罚损失极度冲突。除非源任务和目标任务数据的统计数据相同,否则统计参数和权重值无法同时保持其原始值。相反,如果将¯ µ 和 ¯ σ 与自由参数(如 w 、 γ 和 β)合并在一起,那么自由参数可以补偿由于领域变化引起的¯ µ 和 ¯ σ的变化,同时保持合并参数的相似性,而不影响前置权重。使用小批量统计数据会导致 ˜ W 的随机波动,因为 ¯ µ 和¯ σ依赖于小批量采样,这使得惩罚损失即使在局部最小值处也会持续振荡。因此,如果能够消除这种小批量依赖性,惩罚损失将更稳定地收敛;对于这种情况已经有了一个很好的解决方案:批次重归一化(BRN)[13]。BRN在训练模式下使用的是总体统计数据而不是小批量统计数据,同时保留了 BN的好处,通过选择性的梯度传播。因此,通过在我们的框架中采用 BRN,合并参数变为0˜wij = γi0¯σ2i + �ri, ˜bi = βi + γidi - γi¯µ0¯σ2i + �ri, (28)0其中0ri =0�0σ2i + �, di = ¯µi - µi0σ2i + � (29)0被视为常数,以便梯度不通过ri和di传播,其中µi和σ2i是总体统计量。04.2. 惩罚损失的前向/后向传递0当Hessian由Kronecker分解形式[23,31]近似时,可以通过矩阵乘法高效计算惩罚损失的梯度。如果Ls = 1/2 (˜θ - ˜θ*)�H(˜θ -˜θ*)是惩罚损失,则对于XK-FAC,0∂Ls∂˜Wl = 0�0+ {H'' - H'}l,l' (˜Wl' - ˜W*l')�N¯A' - ¯A0max(N - 1, 1)0��0�0因为(A � B)vec(C) =vec(BCA�)。然后行。0Ls = 10�0lvec(˜Wl - ˜W*l)�vec�∂Ls0∂˜Wl0� (31)0通过常规链式法则求∂a。04.3. 阻尼0方程4中的二阶近似只在初始点的局部邻域内是可信的。二次惩罚损失可以防止参数离初始点太远,当使用Hessian的正半定近似,如Fisher信息矩阵[28]或广义高斯-牛顿矩阵[33]时;然而,问题仍然可能是病态的。也就是说,如果Hessian的某个特征值非常接近于零,参数可以沿着相应特征向量的方向移动几乎没有限制,并最终逃离信任区域。在这里,我们重新思考了常用于正则化网络的权重衰减方法。权重衰减损失将参数拉回原点,以便任何单个参数不能轻易支配其他参数,并希望网络能够很好地泛化。然而,在我们的连续学习框架中,权重衰减损失会干扰试图将参数保持在初始点附近的惩罚损失。因此,我们将权重衰减损失的中心从原点改变为初始点θ*。这种修改后的权重衰减等效于向H添加一个阻尼矩阵λI,并实现了在特征值上设置下限λ的效果。04.4. 预处理和后处理0当第一个目标样本通过网络开始连续学习时,数据相关的参数会立即从源任务统计信息变为目标任务统计信息。如果源任务和目标任务不相似,那么在训练开始时,θ˜可能与θ*非常不同,这会导致对源任务损失函数的Hessian近似非常差。为了弥补参数的这种剧烈变化,我们使用以下预处理方法,在每个目标任务的训练开始时重新初始化γ和β。让µ*和σ*是存储在源网络中的源任务总体统计信息,µ和σ是目标任务的统计信息,可以通过将目标样本通过网络以评估模式传递来获得。然后,γ和β被重新初始化为0βi ← β*i + γ*i0σ*2i + �(µi - µ*i), γi ←0�0σ*2i + �γ*i,zjn − µ∗iσ∗2i+ ǫγ∗i + β∗i = zjn − µiσ2i + ǫγi + βi(33)H ← λsH + λtHt.(34)λs =1(35)90060为了使θ在新任务开始时被初始化为θ*,因为0对于任意的 z,在完成当前源任务和目标任务的连续学习之后,这两个任务的并集将成为未来连续学习的新源任务。因此,源任务的Hessian矩阵 H必须通过后处理来更新,以包含当前目标任务的信息。如果我们将当前目标任务损失函数的Hessian矩阵记为 H t,那么根据公式5,很明显04.5. 超参数选择0连续学习方法具有重要的超参数或平衡参数,用于控制每个任务的重要性或任务之间的权衡。选择这些超参数是连续学习中最重要的因素之一,因为它直接影响最终的性能。然而,正如[29]所指出的,许多方法没有解释为什么选择超参数具有特定的值,以及如何在实际情况下选择它们,或者它们在所有任务处理完之后预先使用最佳超参数,这可能会隐含地违反因果关系。在我们的方法中,使用源数据和目标数据来找到重要性超参数 λ s 和 λ t,与优化惩罚损失的大小是一样的,因此它们不应该通过整个任务的验证来选择。根据公式1和5,很明显 λ s 和 λ t直接表示源损失和目标损失的大小。因此,如果每个任务都是同等重要的,那么重要性超参数被设置为0T + 1 ,λ t = 10不需要任何验证,其中 T是模型迄今为止学习的任务数量。如果需要,也可以轻松地为每个任务设置不同的重要性。如果通过对整个任务进行验证找到了每个任务的最佳学习率和阻尼超参数,则源任务数据将被用于设置源任务损失函数的信任区域,因为较小的学习率隐含地限制了参数的移动范围,而阻尼方法则明确地限制了它。因此,对于学习率和阻尼超参数 λ,我们也避免使用源任务数据来找到它们。然而,与重要性超参数不同,没有自然的选择超参数的方法。惩罚方法的一个优点是我们可以始终访问源任务损失函数的近似值,即02 ( θ − θ � ) � H ( θ − θ � ) ,我们提出了一个简单的0启发式方法来利用它。由于我们仍然不知道源任务的准确性,我们的基本思想是在训练过程中自适应地缩放源任务的惩罚损失 λ s L s 和目标任务的损失 λ t L t,使它们收敛到相似的值,并期望源任务和目标任务的准确性下降也是相似的。然而,由于公式4中的常数项不包含在L s 中,因此必须从目标任务的微调中减去一个常数 C t,其中 C t是可以从目标任务的微调中获得的目标损失函数的局部最小值。为了在训练过程中保持 λ s L s 和 λ t ( L t − C t )的相似性,我们引入自适应缩放超参数 α s 和 α t,并最小化 α − 1 s λ s L s + α − 1 t λ t L t ,而不是 λ s Ls + λ t L t 。简言之,α s 和 α t初始化为1,其中一个逐渐增加1,直到 λ s L s 和 λ t ( L t− C t )具有相似的值,然后它们重新初始化为1以重复该过程。具体来说,如果某个区间内 λ s L s 的平均值大于 λ t ( L t −C t ) 的平均值,则 α t 增加1以相对增加 λ s L s 的规模。αt 在每个区间内以这种方式继续增加,直到该区间内 λ s L s的平均值最终小于 λ t ( L t − C t ) 的平均值,然后 α t重新初始化为1。在相反的情况下,α s 代替 α t增加1,并且以相反的方式应用该过程。在使用不同的学习率和阻尼参数进行训练后,具有最佳目标验证准确性的模型被确定为最终模型。由于在训练过程中最小化源损失和目标损失并具有相似的值,我们希望具有最佳目标验证准确性的模型在源任务上也能表现良好。通过利用惩罚损失值,我们可以找到超参数,而无需访问源数据。05. 实验05.1. 排列MNIST0任务和网络架构。作为第一个实验,我们执行了类似于[9,15, 18, 31]的排列MNIST[17]任务。每个任务通过对原始MNIST图像进行固定的随机排列来生成。为了研究BN的影响,我们使用了一个多层感知机(784-128-128-10),在每个ReLU非线性之前插入了一个BN或BRN层。实际上,在这里BN并不是必需的,但即使对于如此浅的网络,在连续学习中不同的BN设置之间存在显著的性能差距,因此我们可以通过这个简单的实验来证明所提出的方法的有效性。超参数。我们强调任何源任务数据都不会明确或隐含地用于超参数选择。对于所有任务,使用相同的学习率调度、优化器和阻尼参数。学习率从0.1开始,每5个epochs除以10,405060708090100010203040504050607080901000102030405090070平均准确率[%]0任务数量0BRN, BRN BN, BRNBN, BN BN,BN(const stats)BRN, BRN(eval) BN,BN(eval) BN,BRN(no merge)0平均准确率[%]0任务数量01e-501e-401e-301e-201e-10图1:排列MNIST顺序学习的平均验证准确率。(a)图例指示了网络架构中使用的BN层或BRN层以及在构建合并权重时如何解释它们的权重。例如,对于橙线(BN,BRN),网络使用BN层,但在构建合并权重时将其解释为BRN层的权重。实线使用XK-FAC,虚线使用K-FAC。(b)图例指示了阻尼超参数λ的值。每个实验重复了四次。0使用带有动量0.9和小批量大小128的SGD优化器优化网络,直到15个epochs,并且阻尼参数λ设置为0.0001,适用于所有任务。此外,我们仅基于当前目标任务的验证集使用早停止,而不是所有任务的验证集。重要性超参数根据公式35设置。BN和BRN。如果BN或BRN层的合并权重按照标准的BN方式(公式27)或BRN方式(公式28)构建,由于¯µ和¯σ的小批量依赖性,使用XK-FAC。在短序列学习中,大约20个任务,BN(图1a中的蓝线)和BRN(图1a中的红线)网络的工作方式相似。然而,随着序列变得非常长,BRN网络比BN网络更能防止遗忘。如果模型已经学习了大量的任务,保持源任务的准确性比解决目标任务更重要。因此,对于非常长的序列,更倾向于使用BRN,因为惩罚损失更加稳定。另一个有趣的发现是,即使在网络架构中使用了BN层,当构建合并权重时,最好将它们的权重解释为BRN层的权重(图1a中的橙线)。对于足够大的小批量大小,可以假设总体统计和小批量统计非常相似,BN和相应的BRN层几乎相同,因此,BRN层的Hessian矩阵仍然可以以更稳定的方式为BN层提供可靠的惩罚损失。此外,我们尝试了其他构建合并权重的方法,以避免示例之间的关系。首先,可以将小批量统计¯µ和¯σ视为常数(图1a中的'conststats')。或者,可以使用在评估模式下使用的统计量µ和σ来获得合并权重,将其视为常数(图1a中的'eval')。然而,如果不考虑示例之间的关系,性能会迅速下降。权重合并的效果。在第4.1节中,我们讨论了为什么使用合并权重更可取,特别是当存在BN的统计参数¯µ和¯σ时。如果我们分别对每个参数w、¯µ、¯σ、γ和β进行惩罚,而不是合并权重˜W,每个惩罚损失将相互冲突以保持统计参数,导致性能显著下降(图1a中的棕线)。阻尼。阻尼超参数λ的效果如图1b所示。对于适度小的λ,阻尼方法可以稍微提高性能。如果λ太大,Hessian矩阵会严重损坏,无法很好地近似源任务的损失函数。我们在实验中简单地将λ设置为典型值0.0001;然而,需要进一步研究确定λ的值或更好的阻尼方法。0统计量µ和σ,这些统计量在评估模式下使用并被视为常数,可以用于获得合并权重,而不是使用小批量统计量(图1a中的'eval')。然而,如果不考虑示例之间的关系,性能会迅速下降。权重合并的效果。在第4.1节中,我们讨论了为什么使用合并权重更可取,特别是当存在BN的统计参数¯µ和¯σ时。如果我们分别对每个参数w、¯µ、¯σ、γ和β进行惩罚,而不是合并权重˜W,每个惩罚损失将相互冲突以保持统计参数,导致性能显著下降(图1a中的棕线)。阻尼。阻尼超参数λ的效果如图1b所示。对于适度小的λ,阻尼方法可以稍微提高性能。如果λ太大,Hessian矩阵会严重损坏,无法很好地近似源任务的损失函数。我们在实验中简单地将λ设置为典型值0.0001;然而,需要进一步研究确定λ的值或更好的阻尼方法。05.2. ImageNet到细粒度分类任务0任务和网络架构。对于深度网络的实验,我们从ImageNet分类任务开始,使用ResNet-50[11]进行多个细粒度分类任务的顺序学习,就像[21,22]中一样。从在ImageNet[32]上预训练的网络开始,连续学习三个细粒度数据集CUBS [34],Stanford Cars [16]和Flowers[26],共有6种不同的顺序。所有数据集都以与[22]相同的方式进行预处理和增强。K-FAC✓50.3770.4985.9888.45XK-FAC✓✓61.1578.9785.9191.84K-FAC✓✓65.3180.0987.3592.14XK-FAC✓✓✓66.5780.3088.0792.5690080方法 活跃BN 有效曲率 自适应αs,αt ImageNet 鸟类 汽车 花卉0固定BN � 29.21 67.05 74.24 74.200固定BN � � 49.57 76.24 84.94 81.300表1:ImageNet到细粒度分类任务的Top-1验证准确率。结果是在三个细粒度数据集的6种可能排序上平均得到的。0超参数。我们在这里也没有使用任何源任务数据来选择超参数。对于所有实验,SGD与动量0.9和小批量大小32优化网络直到100个epochs,λs和λt根据公式35设置。学习率逐渐降低到1e-4,αs和αt每10个迭代更新一次。我们尝试了每种方法的初始学习率{1e-1, 5e-2, 2e-2,1e-2}和阻尼超参数{1e-4, 5e-5, 2e-5,1e-5},并根据第4.5节中描述的方法确定最终模型。对于提出的方法,在构建合并权重时,将ResNet中的BN层视为BRN层。与[13]中一样,BRN中的rmax和dmax初始化为1和0,并逐渐放宽为3和5。卷积网络。为了将提出的方法应用于卷积网络,我们将我们的XK-FAC和KFC[10]结合起来使用。由于KFC仅处理Hessian的对角块部分,所以通过仅考虑l =l'的情况,将惩罚损失的曲率近似为对角块矩阵,如[31]所示。详细信息可以在附录A.5中找到。固定BN基线。一个自然的基线方法是“固定BN”方法。对于固定BN方法,BN的参数γ,β,µ和σ被固定为ImageNet预训练模型的参数,并且在顺序学习过程中不被视为可学习参数。从网络表示能力的角度来看,固定BN参数并不是非常限制性的,因为w仍然是一个自由参数,网络不会失去任何自由度。在这种情况下,K-FAC是一个有效的曲率近似,因为没有示例之间的关系。然而,如表1所示,固定BN基线在源任务和目标任务中表现都不好。具有BN层的原始源任务损失函数的曲率将与相应的固定BN模型的Hessian不同。另一方面,对于目标任务,网络无法利用BN层的优势,例如这种深度网络的优化容易性或更好的泛化性。我们发现网络在学习率为1e-1或5e-2时会发散,因为没有BN层,所以我们只尝试了学习率为{2e-2, 1e-2, 5e-3,2e-3}的固定BN方法。K-FAC基线。另一个基线是“K-FAC”方法,它不固定BN,而是使用一个无效的曲率近似,K-FAC,而不是一个有效的曲率近似,XK-FAC。0对于表1中的K-FAC基线,实验设置和初始网络与XK-FAC方法完全相同,除了Hessian近似,因此所有性能下降都来自于在近似曲率时忽略示例之间的关系。令人注目的是,简单地使用更好的Hessian近似可以提高性能。定量地说,对于初始网络,K-FAC和XK-FAC中所有对角块条目的绝对值的平均值分别为5.65e-7和4.96e-7,K-FAC和XK-FAC之间的差异的平均值为1.19e-7,这是不可忽略的。αs和αt的影响。在第4.5节中,我们提出了一种简单的方法,通过利用惩罚损失值而不使用任何源数据来找到超参数,并引入了特殊的超参数αs和αt来控制源任务惩罚损失和目标任务损失之间的平衡。为了观察αs和αt的影响,我们还进行了αs和αt固定为1的实验。如表1所示,即使
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功