Press "Enter" to skip to content

Lottery Ticket Hypothesis在CV,NLP,OOD上的应用

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

用三篇paper稍微普及和解读一下最近Lottery Ticket Hypothesis在CV,NLP,OOD上的应用

 

 

    1. NeurIPS 2020: The Lottery Ticket Hypothesis for Pre-trained BERT Networks (彩票假设用于BERT fine-tune))

 

    1. ICML 2021 Oral: Can Subnetwork Structure be the Key to Out-of-Distribution Generalization? (彩票假设用于OOD泛化)

 

    1. CVPR 2021: The Lottery Tickets Hypothesis for Supervised and Self-supervised Pre-training in Computer Vision Models (彩票假设用于视觉模型预训练)

 

What is Lottery Ticket Hypothesis?
The Lottery Ticket Hypothesis for Pre-trained BERT Network
Can Subnetwork Structure be the Key to Out-of-Distribution Generalization?
The Lottery Tickets Hypothesis for Supervised and Self-supervised Pre-training in Computer Vision Models

What is Lottery Ticket Hypothesis?

 

彩票假设的核心就是如下一句话

 

A randomly-initialized, dense neural network contains a subnetwork that is initialized such that — when trained in isolation — it can match the test accuracy of the original network after training for at most the same number of iterations

 

简单理解一下就是我们就是在找一个子网络,通过修剪他的权重我们可以得到匹配整个网络的性能。所谓的 子网络 就是原网络的一部分权重被设置为0剩下的那些权重。为了识别中奖彩票,该算法在每次迭代中使用由最小值权值的位置得到的掩码对网络进行修剪。其余未修剪的权重组成中奖彩票,可用于下游任务。这个过程可以用几个步骤来描述

 

 

    1. 均匀的初始化一个网络

 

    1. 保存原有的权重

 

    1. 训练网络

 

    1. 确定最小权重的位置,创建一个剪枝掩码(pruning mask)

 

    1. 使用初始权值重新初始化网络,并应用步骤4中的掩码进行修剪

 

 

步骤3-5可以迭代地重复以修剪更高比例的权重,直到我们对大小感到满意(或者直到性能的下降变得明显)。彩票假设表明,在图像识别任务中 网络可以被修剪高达90% 同时保持相对相似的性能。

The Lottery Ticket Hypothesis for Pre-trained BERT Network

 

本文来定义两种不同的子网络

 

 

    1. matching network:一个在 特定任务上 比原网络不差的子网络。

 

    1. universal subnetwork:一个在 多个任务上 比原网络性能都不差的子网络,也就是说有很好的迁移能力。

 

 

本文的目标在于寻找matching和universal subnetwork,最重要的是寻找universal subnetwork。本文的核心贡献在于:

 

 

    1. 本文使用非结构化的剪枝方法,在稀疏度

    1. 的BERT模型之间发现了传统 GLUE 和 SQuAD任务上的matching network。

 

    1. 和以往的工作不同,本文发现上述subnetwork出现在预训练的初始化阶段,而不是经过一段时间训练之后。和以往的工作一样的是,这些子网络比随机剪枝和随机重新初始化的子网络好很多。

 

    1. 在大多数下游任务中,上述的子网络不能迁移到其他任务。也就是说这个稀疏模式是任务特定的。

 

    1. 稀疏度

    1. 的模型使用MLM进行训练可以迁移到其他任务并保持准确度。

 

 

总的来说本文是一个实验性的文章,来看一看他们的实验大概是如何的

 

Setting :本文使用一个BERT模型参数为 ,一个任务特定的分类层参数为 ,模型的输出记作 。每个数据集的训练样本以及一些超参数总结如下:

接下来我们将matching network公式化描述一下。 对一个网络 ,子网络可以记作 ,这里的 是一个剪枝掩码 是逐元素相乘)。记 是针对任务 ,训练到第 步的训练算法(AdamW),这里的网络被训练成了 是BERT预训练得到的参数,记 是评估模型 在任务 上性能的指标。

 

matching subnetwork : 一个子网络被称为matching的,当且仅当我们使用算法 训练 得到的结果不弱于 ,也即

winning ticket : 一个子网络被称为算法 的winning ticket如果他是对于 的matching network而且

 

universal subnetwork : 对于任务 是universal的当他对于每个 在任务特定的配置 下都是matching network。

 

整体学习的算法如下

使用该算法找到的稀疏子网络性能如下

上表中 表示随机剪枝, 表示随即权重, 表示预训练权重随机打乱后的权重。

 

本文最核心的一个实验如下所示

这个表描述了不同task之间进行迁移时的性能变化,比如第一行第二列表示了从MNLI得到的稀疏度为70的子网络在QQP上进行训练得到的性能(89.2)的高分,蓝色表示这是一个winning ticket。

 

Can Subnetwork Structure be the Key to Out-of-Distribution Generalization?

 

本文基于彩票假设,即使我们整体的模型是有偏的(偏向背景,上下文而不是物体本身),这个网络中也存在一些子网络他们是无偏的,可以实现更好的OOD性能。文中提供了模块风险最小化MRM来寻找这些“彩票”。

MRM算法理解起来也并不困难

 

 

    1. 给定数据,完整的网络,子网络的logits ,logit是一个用于产生mask的随机分布,比如网络第 层有

    1. 个参数,那幺

    1. 。该层的mask通过从

    1. 中采样得到,mask

    1. 将完整网络转化为子网络(

    1. =0即忽略第 层的第 个参数)

 

    1. 我们对模型进行初始化然后使用ERM的目标进行训练

    1. 个step。

 

    1. 我们从整个网络中采样子网络,结合交叉熵和稀疏正则化作为损失函数来学习有效的子网结构。

 

    1. 最后只需要简单地只使用所得到的子网中的权值重新进行训练,并将其他权值固定为零。

 

文章最大的亮点就在于MRM和目前主流的研究方向(修改目标函数)是正交的,无论目标函数是什幺,MRM都能找到这幺些泛化能力更强的子网络。

The Lottery Tickets Hypothesis for Supervised and Self-supervised Pre-training in Computer Vision Models

 

在imagenet进行预训练的特征提取器在CV中非常的常见,这种预训练方式对下游的视觉分类任务,few-shot learning以及检测,分割等任务都有很大帮助。最近自监督的预训练模型取得了非常不错的效果。SimCLRv2显示深度和宽度都足够大的模型是预训练和微调成功的重要组成部分,标签越少,越需要大模型。大模型预训练的额外成本可以通过转移到许多下游任务来摊销。然而,这种预先训练过的模型的爆炸式大小甚至可能使微调计算要求很高。本文就提出了这样一个问题:“我们能否在不损害其下游任务迁移性的情况下,大量地削减预训练模型的复杂性”。这和模型压缩看起来好像有点类似,但是其实完全不一样。模型压缩是在模型训练好之后在同一个数据集上进行压缩,而本文的目标和前几篇论文一致,是想找到一个更小的初始化的预训练模型,同时保证他在各个任务上的迁移性。本文和第一篇文章相似度很高,formulation基本一样,我们主要看看本文的setting和得到的一些结论

 

下表是各种预训练模型以及下游任务的setting

下面五点是本文得到的结论

 

 

    1. 对于ImageNet pretraining,simCLR,MoCo三个预训练范式,使用迭代的IMP算法本文识别出了稀疏度达到67.23,59.04以及95.60的matching subnetwork。对于分类,检测,以及分割等任务,本文发现了稀疏度处于73.79到98.2之间的matching subnetwork。

 

    1. 同样对于上面三种预训练范式,稀疏度分别达到67.23,59.04,59.04的subnetwork保持了对分类任务的可迁移性,即在各种分类任务中使用它们作为初始化模型比起原有的预训练模型不会掉点。

 

    1. 对于上面三种预训练范式,稀疏度达到73.79%/48.80%,48.80%/36.00%和73.79%/83.22%的subnetwork,可以无损迁移到检测/分割任务上。

 

    1. 与之前在随机初始化或训练早期发现的matching subnetwork不同,本文表明,那些在预训练初始化时识别的子网络对结构扰动更敏感。此外,不同的预训练方式往往产生不同的掩模结构和扰动敏感性。

 

    1. 大模型兼职得到的subnetwork性能更好。

 

 

总的来说,这项工作为用较小的子网替代大型预训练模型迈出了第一步,从而在不抑制泛化性能的情况下实现更有效的下游任务优化。随着预训练在CV领域变得越来越重要,本文的研究结果阐明了LTH在这个新范式中的相关性。

 

最后,欢迎大家关注github,聚合了OOD,causality,robustness以及optimization的一些阅读笔记

Be First to Comment

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注