论文部分内容阅读
作为深度神经网络在图像分类和识别领域应用最为广泛的模型,卷积神经网络在图像识别、图像分类和自然语言处理等领域都表现出来优异的性能。随着模型参数的增加和网络规模的扩大,时间上的消耗和资源的大量占用限制了卷积神经网络在资源有限的平台上的部署。本文主要从软件层面和硬件层面上围绕卷积神经网络的加速与优化进行研究,并设计实验进行验证。具体工作如下:首先,论文以经典的手写字符识别网络LeNet-5为例,介绍了卷积神经网络的基本结构,并分析了各个网络层的计算过程。根据对基本结构和训练过程的分析,本文分别从过拟合的控制、激活函数的选择、权重初始化的方式、训练数据的预处理以及网络参数的选取这几个方面给出了卷积神经网络模型的优化方法。在软件层面上,本文设计了两种模型压缩和加速的方案,并结合网络优化方法提升模型性能。其中方案一是对传统的权值剪枝进行改进,从裁剪全连接层的参数和神经元入手,并结合融合分支的思想,实现模型的进一步加速。改进的权值剪枝将稠密的网络结构转变为稀疏结构,参数量减少的同时实现模型大小的压缩和加速,此外,本文采用的概率剪枝的思想,相比于传统的决定性剪枝,减小了错误修剪的比例。方案二是基于深度可分离卷积的思想,从改进卷积层的结构入手,将标准的卷积操作分离为深度卷积和点卷积,同时也结合了融合分支的思想,实现模型的进一步加速。该方案通过减少卷积层的参数量和计算量实现了模型的压缩和加速。实验证明模型压缩的大小取决于被改进的卷积层的规模。越多的卷积层被执行分离操作,在模型上的压缩和加速效果就越明显。最后,本文通过实验研究了针对方案一和方案二加速后模型的网络优化方案,通过调整网络参数来实现准确率的提升,用来补偿模型压缩和模型加速带来的精度损失。在硬件层面上,本文选用FPGA作为卷积神经网络的硬件加速平台,通过FPGA大量的可编程逻辑资源高度发掘卷积神经网络的并行性,实现LeNet-5模型在前向预测过程上的加速。此外,本文采用HLS高层次综合工具,快速的进行FPGA加速器的设计和开发,并结合流水线优化、存储优化、循环展开优化等优化方法,实现预测过程的进一步加速。实验基于MNIST手写数字数据集进行验证,实验结果证明本文设计的FPGA加速器相比于软件执行,在达到相同准确率的同时,实现了三倍速度的提升。