用于极致降低CNN训练内存开销的可逆设计
计算机视觉与模式识别
2019-10-25 v1
摘要
训练卷积神经网络(Convolutional Neural Networks, CNN)是一项资源密集型任务,需要专用硬件以高效计算。CNN训练最受限的瓶颈之一,是与存储隐藏层激活值相关的内存开销——这些值在反向传播算法反向传播时计算权重梯度所需。近来,可逆架构被提出,用于降低大型CNN训练的内存开销:在反向传播时由隐藏层输出重建其输入激活值,从而避免在正向传播时于内存中累积这些激活值。本文将此思想推至极致,分析能产生最小训练内存占用的可逆网络设计。我们研究了数值误差在长链可逆操作中的传播并分析其对训练的影响。我们引入逐像素内存开销(pixel-wise memory cost)的概念以刻画模型训练的内存占用,并提出一种新模型架构,能够以每输入像素最小352字节的内存开销高效训练任意深度的神经网络。这类新架构使得在极有限内存上训练大型神经网络成为可能,为在嵌入式设备或非专用硬件上训练神经网络打开了大门。例如,我们展示了在仅1GB内存的低端Nvidia GTX750 GPU上,于67分钟内将我们的模型在CIFAR10数据集上训练至93.3%准确率。
引用
@article{arxiv.1910.11127,
title = {Reversible designs for extreme memory cost reduction of CNN training},
author = {Tristan Hascoet and Quentin Febvre and Yasuo Ariki and Tetsuya Takiguchi},
journal= {arXiv preprint arXiv:1910.11127},
year = {2019}
}