本文最后更新于:2021年3月20日 晚上

[1]Frankle J, Carbin M. The lottery ticket hypothesis: Finding sparse, trainable neural networks[J]. arXiv preprint arXiv:1803.03635, 2018.

[2]Frankle J, Dziugaite G K, Roy D M, et al. Stabilizing the lottery ticket hypothesis[J]. arXiv preprint arXiv:1903.01611, 2019.

[3]Girish S, Maiya S R, Gupta K, et al. The Lottery Ticket Hypothesis for Object Recognition[J]. arXiv preprint arXiv:2012.04643, 2020.

[4] Chen K, Wang J, Yang S, et al. Optimizing video object detection via a scale-time lattice[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2018: 7814-7823.

1.LTH

本周阅读的前三篇文章都是关于LTH的,LTH是2019年提出的一种模型剪枝方法,可以有效的减少模型参数、同时保证模型的精度。

LTH基于这样一个假设:一个随机初始化的密集神经网络,都包含一个子网络,可以在训练最多相同迭代次数后,与原始网络的精度匹配。

过程:

1.随机初始化一组值,保存下来。开始训练,每次迭代完将参数初始化为上述值,进行剪枝。

(该训练过程与原始一样,只是加了剪枝的过程)

2.在数据集上迭代训练n次,训练哪些参数可以被剪掉 (对权重排序,每次剪掉后$p^{\frac1n}\%$) p是想减掉的百分比。

​ 对想要剪掉的部分加mask置为0,下次迭代不为其赋值。

3.剪好的网络在原始数据集上重新训练。

使用训练好的原始的任务网络,来训练剪枝网络,让剪枝网络来学习哪些参数可以移去。训练完之后,使用mask保证置为0的网络不再被赋值。最后用原始训练集重新训练剪枝过后的网络。

Dense:大多数参数都是非零。Sparse:大多数参数都为0.

可提升速度精度。

每次迭代后权重赋为与第一次相同的值,而不是随机初始化

全连接网络MINIST

在随机初始化、训练一个网络之后进行剪枝,将剩余的连接置为原始的初始化值。

采用原始的逐层剪枝策略:在每一层中移除最低量级的权重。与输出相连的剪枝率是网络其他部分的一半。

迭代剪枝:

在第一个剪枝round,剪得越多精度越高。

LTH_Object Detection

目前大多数视觉识别方法的步骤是:1.在一个非常大的图像分类数据集上预训练一个模型 2.在预训练的模型上增加一个小的任务网络,对特定的任务在一个更小的数据集上联合微调预训练网络。

近些年为了减少深度网络的内存和计算量,目前主要有三种思想:

  1. Weight quantization
  2. Sparsity via regularization
  3. Network pruning

权重量化方法通过用低精度的值替代训练好的网络权重,或者用逐bit的算术操作 来减少memory一个数量级。

正规化方法(如Dropout或LASSO)尝试阻止过度参数化的网络依赖于大量的特征,并鼓励学习稀疏且健壮的预测器。

以上两种方法对于减少权值的数量或内存用量很有效,但是一般会增加错误率。

相比之下,剪枝方法交替使用权重优化和权重删除来解决学习任务。(LTH属于此类)

卷积神经网络是网络结构中计算量最大的部分,预训练是最耗时的部分。

2.Optimizing Video Object Detection via a Scale-Time Lattice

为了平衡精度和效率,此前的方法关注于优化模型结构。本文提出了另一种观点:在scale-time space上重新分配计算。基本思想是稀疏的执行昂贵的检测,通过利用其强相关性,用代价低的网络 跨scale和time传播结果。

本文展示了一个统一的框架,结合了检测、时间传播、在Scale-Time Lattice上跨尺度优化。

给出一段视频,所提出的框架首先基于目标的运动和尺度,自适应的、稀疏的选择关键帧,并在关键帧上应用昂贵的目标检测器,来得到用于传播的有效边界框。之后,这些边界框被传播到中间的非关键帧,并通过更廉价的网络跨尺度优化(由粗到细)。通过仅稀疏调用检测器,该框架显着降低了摊销成本,同时以便宜但非常有效的传播组件保持了竞争性能。

本文贡献:

  1. 所提出的Scale-Time Lattice提供了一个联合的视角和丰富的设计空间。
  2. 在此基础上设计了一个检测框架,实现了更好的速度/精度权衡
  3. 提出了一个更高效的时间传播网络和一个自适应的关键帧选择框架

Scale-Time Lattice

尺度时间格,将基于稀疏图像的检测和密集视频检测结果的构建统一到一个框架。

如图2所示,Scale-Time Lattice被形式化为一个有向非循环图。每个节点表示在一个确定的尺度和时间点的检测结果,每条边表示从一个节点到另一个节点的操作。作者定义了李郎中操作:时间传播、空间优化,分别对应图中的水平和垂直边。特别的,时间传播边(蓝色)在相同的空间尺度的相邻时间点连接节点。空间优化边(绿色)在相同时间点,不同的尺度连接节点。通过这幅图,检测结果将沿着上述的确定路径,从一个节点传播到另一个节点。最终,视频检测结果可以从最下面一行的节点中得到,这些节点的尺度最细,覆盖了每一个时间步长。

Propagation and Refinement Unit(PRU)

image-20210320213253456

PRU的输入是两个关键帧的检测结果,将其转播到中间帧,然后优化输出到下一个尺度。

关键帧选择策略

作者观察到:当目标很小并且移动很快时,时间传播得到的的特征不如单帧基于图像的检测。因此,关键帧的密度应该由传播的难度决定。也就是说,应该在小目标、运动快的目标出现的时候,选择更多的关键帧。