前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自“彩票假设”理论被授予2019 ICLR 最佳论文后,该领域又有了哪些新的研究进展?

自“彩票假设”理论被授予2019 ICLR 最佳论文后,该领域又有了哪些新的研究进展?

作者头像
AI科技评论
发布2020-08-20 10:56:51
2.1K0
发布2020-08-20 10:56:51
举报
文章被收录于专栏:AI科技评论AI科技评论

编译 | Mr Bear

编辑 | 陈大鑫

在人们互相交流和信息传递的过程中,「隐喻」的作用极其重要。在1970年之前,当人们提起「桌面」这个单词,联想到的还都是放满了锅碗瓢勺的桌子。但是当天才计算机大师Alan Kay在 Xerox PARC 实验室设计了现代的 GUI 交互界面之后,桌面这个词可能更多的指代的就是配备各种图形化操作系统的电脑桌面了。

近年来,在深度学习领域,人们将一个新的具有广阔前景的研究领域隐喻为「彩票假说」(LTH)。在本文中,我们会深入探讨该假设,并回顾 Frankle 和 Carbin 在 ICLR 2019 上发表的那篇风光无限的最佳论文《THE LOTTERY TICKET HYPOTHESIS: FINDING SPARSE, TRAINABLE NEURAL NETWORKS》

1

深度学习模型剪枝

对过参数化的神经网络进行剪枝是深度学习领域中经久不衰的问题。其中,最常见的方法是将某些特定的权值设置为零,并且在随后的训练过程中冻结它们(不进行训练)。这种思想比较朴素,实现也很简单,只要将权值 W 和一个二元剪枝掩模 M 按对应元素相乘即可。进行这种干预的动机如下:

  • 通过对过参数化的函数进行正则化处理,使剪枝后的模型具有较强的泛化能力。
  • 能够找出原本庞大网络中性能优越的小型子网络(现有存储条件可满足),从而减少模型前向推理时的内存需求。
  • 减少了模型所需的算力、耗电量、存储和延迟等需求,从而使其能够在移动设备部署。

近年来,随着网络模型的深度越来越深,以上三个问题逐渐受到了人们越来越大的关注。一般来说,优秀的网络剪枝算法必须解决以下 4 个基本问题:

问题 1:应该剪掉怎样的连通结构?

非结构化修剪不考虑剪枝的权值之间的任何关系。另一方面,结构化剪枝则是通过去除整个神经元(权值列)、删除卷积神经网络的卷积核或通道等方式对一组权值进行剪枝。尽管非结构化的剪枝方法往往能在保持较高性能的同时剪掉数量更多的权值,但是这种方法并不一定会真正加速在标准硬件上的计算过程。实际上,这里的关键原因在于密集的计算可以很容易被并行化处理;而剪枝后的网络通常过于「分散」,难以实现并行计算。

除了从结构化角度来对剪枝算法进行分类,我们还能够从局部和全局剪枝的角度进行另一种分类。其中,局部剪枝方法会强制从网络的每一层剪掉一定比例的权值参数。而全局剪枝就没有这个要求了,它只需要将整个网络中 s% 的权重参数剪掉即可。

图 2:深度学习网络剪枝要考虑的因素:剪掉哪些部分、如何剪枝、何时剪枝、剪枝频率如何?

问题 2:如何对有待剪枝的权值参数进行排序?

已经有一些研究人员或多或少使用了启发式方法对网络中的某个权值的重要性进行评估。其中常见并且有效的经验是,网络中权重取值较大的连接或者说神经元对网络的表达能力和函数拟合能力更加重要,剪枝算法应该尽量避免剪掉这些权值。尽管这种经验非常实用,但是从直觉上说,这好像和 L2 权值正则化方法的思想有些矛盾。在 L2 正则化方法中,损失函数会对取值很大的权重进行较大的惩罚,避免网络过度依赖于某些权重或者神经元,从而保证模型的泛化能力。这种对于权值处理的矛盾也催生出了相关的技术,这些技术使用基于梯度的方法或者更高阶的曲率信息来学习剪枝掩模。

问题 3:我们应该多久进行一次剪枝?

基于权值的幅值对其重要性进行评估会在很大程度上受到噪声干扰。我们知道,网络剪枝方法可以分为单次剪枝(One-Shot)和迭代式(Iterative)剪枝。单次剪枝会极大地受到噪声的影响,而迭代式剪枝方法则会好很多,因为它在每次迭代之后只会删除掉少量的权重,然后周而复始地进行其他轮的评估和删除,这就能够在一定程度上减少噪声对于整个剪枝过程的影响。通常,每次迭代的剪枝率大概在 20% 左右,总共需要进行 20~30 轮剪枝迭代(最终仅仅保留 1% 未被剪掉的网络权重)。当然,我们可以设计网络来让修剪后保留的权值参数更多一些(即更保守),但是这会增加算法的训练时间。

问题 4:何时执行剪枝步骤?

具体来说,我们可以在「训练前」、「训练中」和「训练后」三个不同的阶段执行剪枝。其中,在训练收敛后进行剪枝的方法通常会降低模型的泛化能力,所以很多工作需要重新对模型再次进行微调。除了训练后的剪枝,训练中的剪枝方法也很常用,这种方法通常是跟正则化、Dropout、强化分布式表征等思想相关联。然而,从头开始训练一个稀疏的网络几乎是不可能的,所以「训练前」剪枝的方法很少被使用。

2 彩票假设(LTH)及其扩展方法

Frankle & Carbin (2019) — The Lottery Ticket Hypothesis: Finding Sparse, Trainable Neural Networks

论文链接:

https://openreview.net/forum?id=rJl-b3RcF7

代码链接:

https://github.com/facebookresearch/open_lth

当前有很多研究已经证实,在不显著降低网络性能的前提条件下,一个训练好的稠密的网络能够被剪枝成一个参数量很小的网络。实际上,人们曾在很长的一段时间内认为,从头开始训练一个稀疏的网络几乎是不可能的。这是为什么呢?其实,较小的子网络确实可以近似一个性能良好的函数,但是它与稠密的网络相比,其学习模式(learning dynamics)有很大的差别。

在 Frankle 和 Carbin 与 2019 年发表的「彩票假设」原始论文中,作者首先解释了可能造成这种现象的原因。他们认为在网络剪枝之后,生成的子网络会被随机初始化。但是,如果我们能在生成裁剪网络之后,将子网络的权重重新初始化为它们的原始权重(在剪枝后已经被掩模屏蔽了),那么在经历较少轮的迭代之后,网络就有可能恢复到它在剪枝之前的性能,甚至可能达到更好的性能。这些性能特别优越的子网络就好比在权值初始化彩票游戏中中奖的幸运儿。彩票假设的具体内容如下:

彩票假设:任何随机初始化的稠密的前馈网络都包含具有如下性质的子网络——在独立进行训练时,初始化后的子网络在至多经过与原始网络相同的迭代次数后,能够达到跟原始网络相近的测试准确率。

那么我们如何才能找到这种「中奖网络」呢?Frankle 和 Carbin 在 2019 的论文中提出了迭代幅值剪枝(IMP,iterative magnitude pruning)方法:首先,对初始的稠密网络进行多轮训练,直到模型收敛。然后,我们确定最小的 s% 个权值,并创建一个二值掩模对这些权值进行剪枝。随后,我们使用之前的初始化权值重新训练稀疏化后的网络。在模型收敛后,我们重复该剪枝过程(屏蔽额外的 s² 的权值),并使用新一轮剪枝后发现的掩模设置初始化权值。我们重复这个过程,直到达到期望的稀疏程度,或者测试准确率显著下降。

图 3:寻找「中奖网络」的过程

如果 IMP 算法成功执行,它就能找到「中奖网络」,即经过迭代式的剪枝过程后留下的子网络。请注意,我们也可能通过简单的单次剪枝方法实现这一目的,但是当执行额外的计算时,我们可以获得更好的结果(详见原始论文的图 4)。如果我们回顾一下前面提到的网络剪枝中普遍存在的问题,那么 IMP 需要满足以下条件:

图 4:IMP 与网络剪枝的核心问题

下图总结了第一篇 LTH 论文的一些关键的实验结论:

图 5:LTH 的关键性结果。

  • B 图:IMP 能够在不进行任何超参数调整的前提下,仅使用较少的迭代次数就能找出性能超越未修剪的稠密网络的稀疏子网络(图 B 中不同颜色的曲线代表不同的被剪掉的权值比例)。其中,中奖彩票的初始化和随机重初始化的最终性能之间的差异被称为「彩票效应」(Lottery Ticket Effect)。
  • 图 C 和图 D:为了能够将原始的实验结果扩展到更加复杂的任务和网络架构中(如 CIFAR-10数据集,VGG19 和 Resnet20 等网络),Frankle 和 Carbin 不得不对学习率进行调整,并且引入「热身」规划机制,让模型在预定义的迭代集合内从 0 退火到最终的学习率上。请注意,根据经验,适合于 ResNet 的学习率远远小于适合于 VGG19 的学习率。

上述结论告诉我们什么呢?首先,IMP 算法能够找到一个有利于当前任务的子结构,而且子网络的权值初始化需要通过特殊的学习模式获得。此外,成功的训练并不一定需要过参数化——过参数化可能只能通过排列组合提供一些可用的子网络选项,而这些排列组合是会造成组合爆炸效应的。当前已经有很多后续的工作尝试尝试揭示「中奖网络」与普通网络定性的区别背后的潜在机制。

Frankle et al. (2019) — Stabilizing the Lottery Ticket Hypothesis

论文链接:https://arxiv.org/abs/1903.01611

代码链接:https://github.com/facebookresearch/open_lth

原始的「彩票假设」论文存在的局限性之一是:该研究仅仅局限于小规模的任务,比如 MNIST 和 CIFAR-10。那为了能够将 LTH 扩展到其它更加复杂的任务上,Frankle 和 Carbin 不得不调整学习率的变化策略。

Liu 等人https://arxiv.org/pdf/1810.05270.pdf和Gale 等人(https://arxiv.org/pdf/1902.09574.pdf))

分别发现,如果我们不调整学习率的话,所训练出来的小网络性能会很差,无法达到和原始的网络相近的性能。既然如此,如果我们将「中奖彩票」的限制放宽松,将会如何呢?

在 Frankle 等人的后续工作(https://arxiv.org/abs/1903.01611)中,他们尝试通过将权值重新设置为经过了较少的 k 轮训练之后得到的权值,而不是网络的初始化权值,从而鲁棒地获得剪枝后的子网络。换而言之,我们在剪枝后不将权值「回放」到第 0 轮迭代时的情况,而是将权值回放到第 k 轮迭代时情况。该工作的形式化定义和图解如下所示:

图 6:带回放机制的彩票假设

由于我们没有对网络进行彻底的训练,只是进行了前 k 步的训练,所以我们找到的这个初始化策略就不能再被叫做「中奖彩票」,它只能算作是一个「接近中奖的彩票」(Matching Ticket)。

图 7:带回放机制的 IMP

这种做法的一些关键性结论如下图所示:执行 IMP 算法时,将剪枝后的网络权重回放为 k>0 的某次迭代后的值是很有效的。它能在仍旧获得和原始网络相近的测试性能的同时,剪掉高达 85% 的权值参数。当算法将 k 设置为500时(如图 8 A 所示),该结论在 CIFAR-10 数据集和 ResNet-20 模型上也成立;当算法将 k 设置为 6 时,该结论也适用于 ImageNet数据集 和 ResNet-50。此时,我们并不需要使用学习率的「热身」操作。

图 8:LTH 关键结论的放缩结果

Renda et al. (2020) — Comparing Rewinding and Fine-tuning in Neural Network Pruning

论文链接:https://arxiv.org/abs/2003.0238

代码链接:https://github.com/lottery-ticket/rewinding-iclr20-public

至此,我们已经讨论过 IMP 是否能够找出一种性能与「中奖网络」相近的网络初始化状态。但是和其它剪枝算法相比,IMP 的剪枝算法流程有何异同呢?在 Renda 等人于 2020 年发表的论文「Comparing Rewinding and Fine-tuning in Neural Network Pruning」(https://arxiv.org/abs/2003.02389)中,他们比较了三种不同的剪枝过程:

1、调优:在剪枝过程结束之后,算法对剩余的权重使用较小的学习率继续进行学习,从而得到最终的权重取值。一般来说,这个较小的学习率也是稠密的原始网络最终的学习率。

2、权值回放:该方法与 Frankle 等人在论文「Stabilizing the Lottery Ticket Hypothesis」中使用的方法对应。在剪枝之后,剩余的神经元权值被重置为第 k 次随机梯度下降迭代后的权值。此后,算法以第 k 次迭代时的权值为起点,使用某种学习率调整策略重新训练权值。此时,权值和学习率的调整策略都会被重置。

3、学习率回放:该方法并未回放权值或将学习率调整策略设置为初始状态,学习率回放使用的是最终未剪枝的权值,并且只将学习率调成策略调整到第 k 轮迭代的状态。

Renda 等人在论文「Comparing Rewinding and Fine-tuning in Neural Network Pruning」中对比了上述三种方法在准确率、搜索成本和参数效率三个方面的优劣,并且回答了下面的几个问题:

  • 假设我们可以用无限的算力进行搜索,上述三种模型约简方法最终的准确率和参数效率(剪枝前后的压缩比)的表现和差异将如何?
  • 给定固定的用于搜索的算力预算时,上述三种模型约简方法最终的准确率和参数效率的表现和差异将如何?

为了回答上面的问题,作者使用 ResNet 34、ResNet 50、ResNet 56 网络在 GNMT 自然语言处理对比基准上进行了实验,并得到如下的结论:

  • 在算力无限和给定固定算力预算的实验中,使用权值回放并重新训练的性能都明显优于简单的微调并再训练的方法。在结构化和非结构化剪枝的对比实验中,该结论也成立。
  • 学习率回放方法的性能优于权值回放方法。此外,虽然权值回放法在 k=0 时可能效果不好,但将学习率回放到训练过程开始的状态往往是有效的。
  • 在准确率、压缩比和搜索成本效率方面,权值回放 LTH 网络是目前性能最优的对初始网络进行剪枝的模型。

在经过了大规模的实验后,研究人员提出了许多有关深度学习的实验性结论,但问题是:对于我们理解这些高度非线性的系统(深度神经网络)来说,这些结论究竟有什么含义?

3 剖析彩票假设:鲁棒性与学习模式

Zhou et al. (2019) — Deconstructing lottery tickets: Zeros, signs, and the supermask

论文链接:

https://papers.nips.cc/paper/8618-deconstructing-lottery-tickets-zeros-signs-and-the-supermask.pdf

代码链接:

https://github.com/lottery-ticket/rewinding-iclr20-public

决定某个初始网络是否为「中奖网络」的主要因素是什么?也许,这些因素包括:掩模屏蔽的标准(权值的大小)、回放未被屏蔽的权值的方法,以及将权值设置为零并冻结它们的掩模。但是,如果我们改变以上三种因素其中的一个,结果将如何呢?较大的权重会有什么样的影响?使用其它回放策略是否还能够找到中奖网络呢?为什么要把权值设置为零?Zhou 等人在论文「Deconstructing lottery tickets: Zeros, signs, and the supermask」中从以下三个方面对这些问题展开了研究:

  • 对比不同的选择被屏蔽权值的打分方式:保留那些最小的训练后权值;保留初始化时最大或者最小的权值,或者在权值空间中幅值变化最大或最小的权重。
  • 分析如果不将权值回放到初始状态,是否仍然会得到中奖网络:Zhou 等人对比了随机重初始化、重新打乱保留的权值,以及恒定初始化等情况。
  • 将被掩模屏蔽的值固定为初始化的值,而不是将它们设定为 0。

通过大量的实验,作者得出了以下结论:

  1. 那些成比例地保留剩余权值与初始状态之间距离的评分标准,会得到与保留「最大权值」的标准相同的性能。
  2. 只要在执行回放时将权值的符号保持为初始权值的符号,就可以获得和执行经典的 IMP 方法时获得的相同的中奖网络(请注意:该结论在 Frankle 于 2020 年发表的论文「The Early Phase of Neural Network Training 」中无法复现)。
  3. 将权值屏蔽为 0 是很重要的。

基于以上结论,作者猜想,利用一些具有先验设定的掩模也可以成为一种训练形式:它只是加速了权值变化的过程,而这些权值其实在优化过程中已经逐渐趋向于 0。有趣的是,使用应用于随机初始化的网络的 IMP 方法获得的掩模(并且没有进行任何额外的训练)所能达到的性能,远远优于随机的掩模,或者随机初始化的网络。所以,我们可以将其看做是一种「超级掩模」,它能够编码一种强归纳偏置。这个发现很让人激动,也许我们可以根本不训练网络权值,只需要找到正确的掩模就能获得很好的模型性能。Zhou 等人在论文「Deconstructing lottery tickets: Zeros, signs, and the supermask」中说明,我们甚至可以通过使掩模可微或使用类似于强化学习的损失函数学习性能优越的掩模。这种思路令人不禁想起 Gaier 和 Ha 于 2019 年发表的「Weight Agnostic Neural Networks」。其中,一个学习到的掩模可以被看做一种连接模式,它对解的正则性进行了编码。通过对权值进行多次采样,从而评价某个掩模,我们实际上使该掩模对于采样的权值具有很强的鲁棒性。

Frankle et al. (2020a) — Linear Mode Connectivity & the Lottery Ticket Hypothesis

Paper | Code

论文链接:https://arxiv.org/abs/1912.05671

代码链接:https://github.com/facebookresearch/open_lth

当我们训练一个神经网络时,往往会对数据的批次进行随机的排序。每个批次会被用来针对网络参数估计损失的梯度。在完整地遍历一次数据集(即一个 epoch)后,这些批次会被打乱重组,然后我们进行下一轮的迭代。我们可以将批次的序列视为噪声的来源,我们可能会在此时将这些噪声带入到训练过程中。由于这个原因,我们得到的最终权值可能差别很大。但是,理想状态下,我们网络的训练过程应该对于这样的噪声十分鲁棒。更正式地说,我们可以考虑某种权值初始化方式,此时我们使用两种不同的批次顺序进行训练,从而得到两组不同的训练后的权值。Frankle 等人在论文「Linear Mode Connectivity and the Lottery Ticket Hypothesis」中提出了以下问题:如果我们在这两种通过不同的数据顺序得到的最终的权值设定之间平滑地插值(凸组合),那么验证/测试的准确率将会如何?

图 9:线性模式连通性。

当我们在两个最终的权值之间进行插值时,如果误差没有显著增加,那么我们则认为网络是稳定的。此外,我们可以使用某种共享的数据顺序对初始权值进行 k 轮迭代训练,在之后根据两种独立的数据顺序再分别进行训练。那么 k 设置为多少时会使网络变得稳定呢?如图 10 所示,这是 k=T 时的情况,但之前的情况呢?实验结果证明,这与我们为了与中奖网络相近的初始化而必须回放的迭代次数有关。

图 10:不同实验设定下的线性模式连通性。

图 A:此时没有中奖网络,只需要观察何时网络对于使用不同数据顺序时的插值变得稳定。对于 LeNet 而言,在初始时就已经达到了这种状态。对于 ResNet-20 而言,只有在较后期的训练时才会达到这种稳定性。这令人不禁想起了回放的迭代。

图 B:根据迭代的幅度进行剪枝可以获得稳定性。但是,只有同时使用回放到 k=0 时的学习率调整策略才能实现这种效果。

图 C:图中显示了参数化的 3 个阶段,我们通过剪掉越来越多的权值参数一步步经历这 3 个阶段(重点关注蓝色曲线):

  • 阶段 1:网络严重过参数化,以致于随机剪枝也能得到很好的效果。
  • 阶段 2:随着我们剪掉了越来越多的权值参数,只有 IMP 得到了效果不错的稳定网络。
  • 阶段 3:在剩下的权值十分稀疏时,尽管 IMP 仍然会得到稳定的网络,但是其它网络的性能较中奖网络就有较大差距了。

该工作演示了如何利用中奖网络解释学习模式的性质。下面一篇论文则从更加细粒度的层面上分析了不同的学习阶段。

Frankle et al. (2020b) — The Early Phase of Neural Network Training

论文链接:

https://openreview.net/forum?id=Hkl1iRNFwS

代码链接:https://github.com/facebookresearch/open_lth

至此,我们已经看到,只有在训练迭代次数较少时,我们才能同时获得对于数据顺序的鲁棒性以及与中奖网络相当的性能。接下来,一个更为普遍的问题是:这些与中奖网络相近的网络的初始化有多鲁棒?为了不失去这种优异的模型性能,我们能对初始化进行多少调整和干扰?它是如何随 k 变化的?

为了研究产生鲁棒性的条件,Frankle等人在 CIFAR-10 上使用 ResNet-20 进行了排列实验。实验方案如下:使用带回放机制的 IMP 产生与中奖网络性能相近的网络。然后,对该网络进行扰动并训练直到收敛。实验中用到的排列设定包括:

将权值的符号和/或幅值设为第 0 轮或第 k 轮迭代的状态(见图 11A),在网络高度稀疏的情况下,使用任何的权值符号和幅值的排列(即初始化状态)都会产生性能下降的情况。然而,在网络较为稠密的情况下,通过 IMP 得到的网络似乎对于符号的变化更加鲁棒。当我们将权值回放到 k=2000 时的状况时,也能得到性质相同的网络。

将第 k 轮的权值与结构化的网络子成分(见图 11B)进行排列。此类方法包含交换全局的网络权值(层与层之间)、局部的权值(层内),以及交换给定的卷积核内的权值。与中奖网络性能相近的网络并非对于所有的排列方案都体现出较高的鲁棒性,其性能会下降到回放到 k=0 轮时的水平上。另一方面,在如图 11C 所示的情况下,我们通过仅仅交换符号相同的权值限制排列的影响。此时,在任意的稀疏度下,网络对于卷积核内的权值交换都是鲁棒的。

向与中奖网络性能相近的网络中加入高斯噪声(见图 11D):为了保证加入规模适当的噪声,Frankle 等人计算了一个层级别的由特顶层的初始化分布产生的归一化标准差。对于扰动后的彩票网络的最终性能而言,有效的标准差的大小有很大的影响。扰动越大意味着性能越差。

图 11E 展示了使用不同自监督损失预训练的稠密/稀疏网络:从 k=500 到 k=2000 之前的网络性能并没有太大的变化。这说明除了简单的权值分布属性和符号之外,还存在其它的影响因素。相反,在实际的训练过程中出现了神奇的现象。因此,Frankle 等人提出了这样的问题:早期的网络调整是否依赖于条件标签分布中的信息,或者无监督表示学习是否足够?在使用随机标签时,进行较少轮次的训练,与回放到第 0 轮的权值相比,确实会缩小网络与中奖网络之间的差距。但是,进行更长时间的预训练最终会降低网络的性能。最终,预训练(非中奖网络)的稀疏网络并不足以克服「错误的」剪枝掩模带来的损害。

图 11:训练初期的结果

总而言之,以上实验说明了我们很难不使用回放机制,这是由于出现于中奖网络相近的初始化情况似乎非常重要。自监督预训练似乎提供了一种潜在的避免进行回放的方法。在下图中,Frankle 等人总结了对于在 CIFAR-10 数据集上使用 ResNet-20 进行训练的早期学习模式的理解:

图 12:神经网络训练初期的情况

4 使用较少的计算量发现中奖网络

尽管 Jonathan Frankle 最初的工作提供了一种经验上的存在性证明,但是找出中奖网络仍然是困难的,且计算开销很大。IMP 需要对越来越稀疏的网络重复地进行训练,然而并不是所有研究人员都有条件开展这种研究。自然而然地,研究人员试图在使用较少的计算量的情况下,找出中奖网络。下面,我们将介绍近期提出的两份试图实现这一目标的工作:

You et al. (2020) — Drawing Early-Bird Tickets: Towards more efficient training of deep networks

论文链接:https://arxiv.org/abs/1909.11957

代码链接:https://github.com/RICE-EIC/Early-Bird-Tickets

You 等人通过一种开销较低的训练方式找到了训练早期的中奖网络(因此该网络被称为「早鸟彩票」),这种训练方式融合了早期停止、低精度与大学习率。他们认为,这是神经网络优化过程的二阶段特性造成的:

  • 鲁棒的第一阶段:学习较低频/大奇异值的成分。
  • 第二阶段:学习较高频/小奇异值的成分。

通过只关注识别连接模式,可以在阶段 1 中识别出「早鸟中奖网络」。与标准 LTH 工作的主要区别在于,You 等人(https://arxiv.org/abs/1909.11957)基于批归一化的缩放因子对整个卷积通道进行剪枝。此外,在单次训练运行中迭代地执行剪枝。

通过实验,作者观察到,剪枝掩模在第一轮训练中会发生显著的改变(即「早出现」),但是似乎随后会很快收敛(详见图 13 左侧)。

图 13:掩模的收敛与「早鸟」算法。

因此,他们断定「早出现」的假设是正确的,并制定了合适的检测算法:为了检测「早出现」,他们提出了一种掩模距离度量,计算两个连续的剪枝迭代的两个剪枝掩模之间的 Hamming 距离。如果距离小于某个阈值,他们会停止剪枝。然后,可以直接对得到的「早鸟中奖网络」重新进行训练,从而恢复性能。

Tanaka et al. (2020) — Pruning neural networks without any data by iteratively conserving synaptic flow

论文链接:https://arxiv.org/abs/2006.05467

代码链接:

https://github.com/ganguli-lab/Synaptic-Flow

尽管 You 等人

(https://arxiv.org/abs/1909.11957)

研究了是否有可能减少所需的计算量,但他们仍然需要使用数据训练模型。然而,Tanaka 等人(https://arxiv.org/abs/2006.05467)研究了一个更激进的问题:在不进行训练、没有任何数据的情况下,我们能得到中奖网络吗?他们认为,在初始阶段进行剪枝的最大挑战是层坍塌(layer collapse)的问题——过早剪掉整个层会使架构变得不可训练(因为梯度流被截断了)。

我们不妨想想将一系列全连接层堆叠起来的多层感知机。通过在每一层中保留一个权值,我们可以避免发生层坍塌,这对应于理论上可以得到的最大压缩比。通过不发生层坍塌现象的剪枝算法可以达到的不需要折叠的压缩水平称为「临界压缩」。理想情况下,我们希望这二者相等。受到流网络的启发,Tanaka 等人(https://arxiv.org/abs/2006.05467)定义了种基于梯度的度量方法,并将其称为「突触显著性」。从某种程度上说,这种度量与层级别的相关性传播有关,它可以度量某种形式的贡献。接着,论文作者从微观神经元和宏观网络层面上证明了两个显著性守恒定律。作者说明,为了充分压缩,基于梯度的方法将完全删除大的层(如果对模型评估一次)。那么,为什么我们不会在 IMP 的训练中遇到层坍塌问题呢?Tanaka 等人(https://arxiv.org/abs/2006.05467)表明,这是由于梯度下降导致层级别的守恒,以及小的学习率进行迭代式的剪枝。因此,任何想要获得最大临界压缩的全局剪枝算法都必须保证两点:(1)赋予层级别的守恒正的得分(2)在剪枝后迭代式地重新评估得分。

图 14:模型性能与突触流算法。

基于以上观测结果,作者定义了一种迭代式的过程,它可以生成一个在初始化的网络中维持突触强度流的掩模(如图 14 所示)。最重要的是,该过程完全与数据无关,仅仅需要随机初始化。它们可以在 CIFAR-10/100 和 Tiny ImageNet 数据集上获得比其它「在初始阶段剪枝」的对比基线更好的性能。

5 在不同的数据集、优化器和域上,彩票网络是否能泛化?

Morcos et al. (2019) — One ticket to win them all: Generalizing lottery ticket initializations across datasets and optimizers

论文链接:https://arxiv.org/abs/1906.02773

代码链接:https://github.com/varungohil/Generalizing-Lottery-Tickets

有一个关键的问题是:与中奖网络性能相近的网络会不会过拟合呢?对于子网络初始化问题而言,过拟合意味着什么呢?通常而言,我们使用特定的数据集(例如,MNIST、CIFAR-10、ImageNet),特定的优化器(SGD、Adam、RMSprop),针对于特定的邻域(视觉)和任务(物体分类)生成中奖网络。当我们改变其中任意一项因素时,那么之前的中奖网络就不一定会仍然具有最佳的性能了。

因此,Morcos 等人

(https://arxiv.org/abs/1906.02773)

提出了以下问题:我们是否能找到某一个视觉数据集(如 ImageNet)上与中奖网络性能相当的网络,并将其迁移到另一个视觉数据集(如 CIFAR-100)上?此时,关键的问题在于,当我们在新数据集上对与中奖网络性能相当的网络进行训练后,彩票网络效应是否仍然成立。该过程如下所示:

  1. 在一个源数据集上使用 IMP 找到一个中奖网络。
  2. 在一个新的目标数据集上,通过训练源数据集上获得的中奖网络至收敛,对其进行再次的评估。

此时,你可能会问:输入/输出的不同尺寸有何影响呢?由于我们操作的是图像,那么在我们考虑的网络中,第一层应该是一个卷积层,我们并不需要对第一个隐层做任何的变换。在网络中。网络从卷积层向全连接(FC)层过渡时,为了保证无论通道的尺寸(不同的数据集该参数不同)如何,FC 层的维度都可以正常工作,Mocos 等人(https://arxiv.org/abs/1906.02773)

使用了全局平均池化。最后的重点是,我们要在迁移过程中剔除掉中奖网络的最后一层,转而使用随机初始化的层。这是因为,不同的数据集有不同类型的目标分类数。该过程与传统的迁移学习并不相同,这是因为我们并没有迁移表征(训练好的权值)而是迁移了初始化状态以在独立的数据集上找出来的剪枝掩模。Morco 等人在论文「One ticket to win them all: generalizing lottery ticket initializations across datasets and optimizers

」中得出了以下结论:

  • 图 A 与图 B:将在一个小的源数据集上得到的 VGG-19 的中奖网络迁移到 ImageNet 上取得了很好的效果,但是其性能要弱于直接在目标数据集(ImageNet)上得到的中奖网络。另一方面,利用一个比目标数据集更大的数据集得到的中奖网络,甚至要比使用目标数据集得到的中奖网络有更好的性能。
  • 图 C 与图 D:在 ResNet-50 上的情况与在 VGG-19 上的情况大致相同。但是我们可以看到,在 ResNet-50 上,其性能在剪枝程度更小时就已经开始下降了(性能下降地更快)。

图 15:在不同的数据集上迁移中奖网络。

最后,Morcos 等人也研究了使用某种优化器得到的中奖网络是否能迁移到使用另一种优化器的场景下。对于 VGG-19 网络而言,如果我们仔细对学习率进行调整,是可以实现这一目标的。同样地,这也说明中奖网络编码了对于不同的数据和优化过程具有不变性的归纳偏置。

图 16:在不同的优化器之间迁移中奖网络。

以上结果说明,中奖网络很有可能可以作为一种通用的归纳偏置。我们可以想象在一个非常大的数据集上,通过大量的计算,找到一个鲁棒的与中奖网络性能相当的网络。此后,这种通用的中奖网络可以灵活地作为大多数松散的领域相关任务的初始化器。因此,与对权值初始化进行元学习的想法相类似,中奖网络可以在权值初始化空间中执行一种平摊搜索(amortized search)。

Yu et al. (2019) — Playing the lottery with rewards and multiple languages: lottery tickets in RL and NLP

论文链接:https://openreview.net/forum?id=S1xnXRVFwH

至此,我们已经研究了计算机视觉任务中的子网络初始化问题。那么,对于其它并不是基于交叉熵损失的领域又将如何呢?Yu 等人

(https://openreview.net/forum?id=S1xnXRVFwH)

将相关研究扩展到了语言模型(基于 LSTM 的模型和 Transformer 模型)以及强化学习(「演员-评论家」方法)的环境中。这与之前视觉领域的工作有以下不同之处:(1)除了卷积核和 FC 层之外,我们还需要剪掉其它类型的层(循环层、嵌入层、注意力模块)。(2)我们在差异很大的损失平面上进行训练(例如,非静态的演员-评论家损失)。(3)强化学习网络通常比大型视觉网络具有的参数少得多(特别是对于连续控制而言),这可能使其更难在高度稀疏的情况下进行剪枝。

图 17:语言模型和强化学习领域的中奖网络。

简而言之,对于语言和强化学习任务来说,存在显著优于随机子网络的稀疏初始化方法。最有趣的是,作者发现,这种方法可以在保持良好性能的前提下,剪掉 Transformer 模型 2/3 的权值。后期的回放和迭代式剪枝同样非常关键。此外,嵌入层似乎过参数化了。因此,它们主要使用了 IMP。另一方面,对于强化学习任务来说,对于所有作者考虑的游戏而言,性能良好的剪枝程度有很大差异。这表明,对于某些任务而言,标准的基于 CNN 的演员-评论家网络拥有的参数过多。这很可能是由许多游戏组成的强化学习对比基准测试的特性,这些游戏都是在相同的架构设置下学习的。

6 开放性的研究问题

对于优化、初始化、表达能力、迁移能力、稀疏化/过参数化的作用等研究课题而言,彩票假说开启了许多不同的研究视角。目前,令人激动的是,还有很多问题有待解决,例如:

  • 能够找到中奖网络的高效初始化方案应该是怎样的?元学习是否可以在可计算的条件下找到这样的彩票网络?是否可以形式化定义能够利用中奖网络的优化算法?连通性和权值初始化的影响是否能够解耦?我们是否可以将找到中奖网络看做一种归纳偏置?
  • 使用一半训练数据预训练的权值进行初始化的网络,与使用完整的数据集训练的最终网络有泛化能力的差距(https://arxiv.org/abs/1910.08475)。换句话说,使用数据的子集进行预训练,比从随机初始化状态开始训练的网络性能更差。中奖彩票网络是否能解决这种热启动问题?沿着Morcos 等人在论文「One ticket to win them all: generalizing lottery ticket initializations across datasets and optimizers」中的思路,可以对该问题进行很好的扩展。
  • 不同领域(视觉、语言、强化学习)和不同任务(分类、回归等)上的中奖网络有何不同?这些差异是损失平面的性质吗?我们能否直接从它们的掩模中提取出相应的规律?

总而言之,有待探究的问题还很多,还有很多的中奖彩票网络有待发掘。

via:https://towardsdatascience.com/the-lottery-ticket-hypothesis-a-survey-d1f0f62f8884

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI科技评论 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2 彩票假设(LTH)及其扩展方法
  • 3 剖析彩票假设:鲁棒性与学习模式
    • Zhou et al. (2019) — Deconstructing lottery tickets: Zeros, signs, and the supermask
      • Frankle et al. (2020a) — Linear Mode Connectivity & the Lottery Ticket Hypothesis
        • Frankle et al. (2020b) — The Early Phase of Neural Network Training
        • 4 使用较少的计算量发现中奖网络
          • You et al. (2020) — Drawing Early-Bird Tickets: Towards more efficient training of deep networks
            • Tanaka et al. (2020) — Pruning neural networks without any data by iteratively conserving synaptic flow
            • 5 在不同的数据集、优化器和域上,彩票网络是否能泛化?
              • Morcos et al. (2019) — One ticket to win them all: Generalizing lottery ticket initializations across datasets and optimizers
                • Yu et al. (2019) — Playing the lottery with rewards and multiple languages: lottery tickets in RL and NLP
                • 6 开放性的研究问题
                相关产品与服务
                NLP 服务
                NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档