深度神经网络可解释压缩算法的研究
【摘要】:在过去几年里,深度学习一直是人工智能取得成功的基础,但是巨大的计算复杂度和庞大的存储需求使得它们在实时应用中部署成为一个巨大的挑战,特别是在资源有限的设备上。因此,如何利用压缩和加速技术将模型应用于实际场景中成为了一个研究热点。目前大多数的神经网络压缩方法可解释性较弱,本文选择了可解释方法沙普利值和注意力机制作为压缩依据,并基于卷积神经网络展开研究,主要完成了以下工作:首先基于卷积神经网络模型压缩的理论基础上,提出了一种为剪枝过程赋予了较强的可解释性的CNN剪枝方法,且生成的模型不需要特殊的软件或硬件加速器,可同时实现减小模型尺寸、减少运行时内存占用、减少计算操作次数和增强模型可解释性。它以大网络作为输入模型,但在训练过程中会根据沙普利值去识别和修剪不重要的通道,从而产生紧凑的模型。本文在两种常用的图像分类数据集CIFAR-10和CIFAR-100上,通过VGGNet-19、Dense Net-40和Res Net-101等多个CNN模型,证明了此方法的有效性。对于VGGNet,可解释结构化剪枝使模型尺寸减少20倍,计算操作减少5倍,识别精度仅损失了2.75%。其次提出了一种新的知识蒸馏方法来提升剪枝后模型的精度,即自注意力知识蒸馏,该方法可以使模型从自身中学习,并获得实质性的改进,而不需要任何额外的监督或标签。具体来说,从训练到合理水平的模型中提取的注意力图将对丰富的上下文信息进行编码。有价值的上下文信息可以作为一种“免费”的监督形式,通过在网络内部执行自上而下和逐层的注意力蒸馏来进行进一步的表示学习。自注意力知识蒸馏可以很容易地整合到任何前馈卷积神经网络中,并且不会增加推理时间。本文在数据集CIFAR-10和CIFAR-100上使用经过可解释结构化剪枝后的VGGNet-19、Denes Net-40和Res Net-101进行了验证,通过使用此方法,剪枝后的模型在模型大小和计算操作数减小较多的前提下,达到了与原始模型相当的精度。结果表明,自注意力知识蒸馏可以普遍改善不同网络中不同层次的注意力图。