卷积神经网络的软硬件协同加速技术.docx

卷积神经网络的软硬件协同加速技术.docx

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

卷积神经网络的软硬件协同加速技术

?

?

李欣瑶刘飞阳文鹏程李鹏

摘要:面向构建智能化航空电子系统的需求,提升有人机/无人机智能化作战水平,设计并实现卷积神经网络CNN的软硬件协同加速技术,以解决目标识别、辅助决策、自主规划等复杂问题。针对算法模型的庞大参数量与嵌入式环境有限存储资源的冲突问题,采用模型结构优化及量化算法压缩网络规模。针对复杂浮点运算与计算资源紧缺的冲突问题,基于VerilogHDL设计卷积、池化两种加速算子,采用流水线+全并行方式,以达到计算加速的目的。通过软件优化设计与硬件加速运算的协同作用,实现卷积神经网络的推理过程加速。以YOLOv3及YOLOv3-Tiny两種典型CNN为例进行加速,并在XilinxZCU102FPGA评估板上进行验证。结果表明,加速后的模型与原模型对比,参数量可压缩3/4左右,YOLOv3的推理速度提升近65倍,YOLOv3-Tiny提升23倍左右。

关键词:智能计算;硬件加速;目标检测;模型压缩;FPGA

中图分类号:TJ760;TP18?文献标识码:A?文章编号:1673-5048(2021)03-0099-06

0引?言

随着人工智能算法模型结构的快速更迭,神经网络正逐步被应用于解决智慧医疗、自动驾驶等多种复杂智能问题。在航空领域,有人机与无人机的空战过程均朝着智能化的方向发展[1],目标识别跟踪、辅助决策、自主规划等复杂任务均可依赖神经网络完成。但机载嵌入式环境对功耗、实时性都有着严格的制约,且存储、计算资源都较为紧缺,如何将神经网络模型部署于资源受限的嵌入式环境成为亟待解决的问题。

本文面向智能化航空电子系统的需求,设计并实现一种面向卷积神经网络(ConvolutionalNeuralNetwork,CNN)的软硬件协同加速方法。针对庞大网络模型参数量与有限存储资源的冲突问题,以及大量复杂浮点运算与计算资源紧缺的冲突问题,从软硬件两方面对网络模型进行了优化与加速,解决了基于CAFFE(ConvolutionalArchitectureforFastFeatureEmbedding)框架的网络结构优化问题、模型参数量化问题以及神经网络加速算子的构建问题,以YOLOv3及YOLOv3-Tiny两种用于目标检测的典型CNN网络为例进行加速,并在XilinxZCU102FPGA评估板上进行验证。

1国内外研究现状

一个完整的深度学习框架通常包含训练与推理两个主要部分,本文所针对的主要是推理部分的优化与加速。

在软件加速方面,分解卷积核使得参数量大幅减少的SqueezeNet模型[2]、逐个通道进行卷积后将结果串联以减少计算量的MobileNet模型[3]、采用残差网络思想并在不影响精度的情况下降低分辨率的ShuffleNet模型[4]、更改卷积运算流程以提高网络效率的Xception模型[5]等轻量化模型被相继提出并不断优化。除轻量化模型以外,剪枝、奇异值分解、哈弗曼编码等轻量化技术亦得到广泛采用,该类方法的核心思想均为压缩网络模型大小,以减少计算量和降低计算复杂度,虽然会损失网络模型的部分精度,但模型推理速度会得到大幅度提升。目前,在众多轻量化算法中,量化算法具有较为突出的表现。

深度神经网络的训练阶段普遍采用float32(简称FP32)的数据格式,量化算法即采用较低精度的数据格式(如float16和int8,简称FP16和INT8)代替高精度的数据格式[6]。此外,二值化(所有权重的值取+1或-1)[7]和三值化(将所有权重的值量化为[-α,0,+α]三个数之一,其中α为可训练的参数)[8]也是常用的量化方法。

在硬件加速方面,目前主流采用GPU,ASIC与FPGA三种智能计算架构进行深度神经网络模型加速[9]。其中,高性能GPU主要应用于神经网络训练阶段,对环境和库的依赖性较大,国内技术积累较弱,难以实现技术自主可控;ASIC是为特定需求而专门定制优化开发的架构,灵活性较差,缺乏统一的软硬件开发环境,开发周期长且造价极高;FPGA是可编程的半定制芯片,具有高灵活性、低延时特性,开发难点在于硬件逻辑实现复杂。目前,面向智能化航空电子系统多应用需求的智能计算加速技术多处于预研阶段,考虑后期的移植、再开发等工作,相对来说FPGA架构更适用于航空领域的智能计算加速。

2面向CNN的软硬件协同加速方法

卷积神经网络在处理复杂智能问题时具有巨大的优势,但机载嵌入式环境的存储、计算资源均受限,为满足航空电子系统智能化场景感知的应用需求,本文设计了一种面向CNN的软硬件协同加速方法,如图1所示。

软硬件协同设计方法是针对系统开发中软硬件设计的相互作用关系而提出的[10]。由于在机载嵌入式环境中,存储资源与计算资源均较

您可能关注的文档

文档评论(0)

136****6482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档