论文部分内容阅读
近些年来,得益于计算力与数据量的大规模提升,深度神经网络在图像分类、目标检测和语音识别等领域取得了超越人类的表现成果。目前许多研究人员与开发者纷纷将深度学习技术这项技术产业化,移动设备、嵌入式系统和众多加速器等一系列硬件设施渐渐成为这一技术落地首选平台。然而,这些平台的计算能力与存储空间十分有限,直接将深度神经网络模型部署到这类资源受限的平台会面临诸多困难。为了解决深度学习存储和计算问题,一个方案则是将模型交给云端处理计算任务,因此,终端设备主要任务是只需要关注数据通信,发送图像和接收结果。然而,该方案不仅依赖于网络稳定性能,同时会导致个人隐私的泄露。因此目前许多研究人员从计算效率和模型压缩两个角度出发,以降低深度学习模型在终端设备上计算与部署的成本过高等问题。而在众多嵌入式处理器中,数字信号处理器DSP的计算能力相对较强,和其他处理器相比,更适合处理深度学习这类计算密集型任务。针对这一研究课题,本文基于嵌入式处理器BWDSP提出了DNN模型高效计算与快速部署等一系列优化策略,并开发出一套深度学习计算库bwDNN和将工作负载从上层描述映射到底层BWDSP硬件平台的编译部署框架BWVM。本文的主要研究成果包括:1.实现并优化了基于BWDSP计算平台的深度学习计算库bwDNN,包括前向计算模块、反向计算模块、数学运算模块和内存管理模块等。实验结果表明,卷积计算与反卷积计算在BWDSP平台其最高计算性能可达到11.07GFLOPS,约为BWDSP平台理论计算性能的86.5%;同时bwDNN计算库在等效负载与资源下,其计算性能是Intel深度学习计算库MKL-DNN的1.96到2.30倍。2.设计了一个基于模型大小与硬件资源共同约束下的模型裁剪策略,该策略对上层深度学习框架Tensorflow描述并构建好的预训练模型进行模型压缩,并综合模型自身大小和目标硬件资源,给出模型中每一层的压缩率,使得压缩后得到的轻量级模型可以在资源受限的BWDSP上高效运行。实验发现,本文提出的模型压缩率和其他已有的几种经验策略相比,在计算裁剪量均减少50%后,本文提出的裁剪策略在CIFAR-10数据集上的正确率要优于统一压缩、浅层策略和深层策略这些基于经验的裁剪规则。3.提出了一个从顶层模型描述到后端硬件的自动化编译部署工具,它是一个后端基于BWDPS处理器的编译部署框架BWVM,该框架包括深度学习框架模型计算图的解析与重构、计算图优化以及目标平台代码生成等步骤。通过实验测试,图优化和代码自动生成等优化措施可以有效提升代码质量,相比bwDNN计算库中手写的卷积代码,BWVM框架生成的代码的硬件资源利用率约提升7.3%,访存开销降低了8.4%。综上,本文通过上述三点内容描述了深度神经网络在DSP嵌入式平台上的部署及离线推断等AI相关任务执行。本文主要研究了深度学习模型的运行、微调与优化,以期快速实现实时推断;同时开展了从上层用户接口、神经网络中间表示、优化和到底层代码生成等软件栈的研究。