基于HLS的XNOR神经网络的FPGA实现研究

来源 :西安电子科技大学 | 被引量 : 0次 | 上传用户:echo_seaman
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
卷积神经网络算法近年来得到快速发展,使目标检测、图像分类等技术得到广泛应用。随着卷积神经网络层数不断加深,在提高准确率的同时极大增加了网络参数量和计算量,严重影响图像分类等技术在嵌入式平台的使用。为解决上述问题,本文采用轻量化XNOR网络的设计思想,对网络中的输入特征图和权重进行二值化处理,压缩了网络模型存储空间,便于神经网络在嵌入式硬件平台上部署实现。由于FPGA具备低功耗、低延时等特点,适合二值卷积运算。本文采用高级综合(HLS)工具,针对优化后的XNOR网络设计专用FPGA加速器,并在不损失网络分类准确率的前提下,使该网络在FPGA上高效运行。本文的主要工作和贡献如下:(1)通过对XNOR网络结构分析,进行了优化设计。首先根据卷积与归一化层的相关性,去除卷积层中的偏置项,节省了数据存储空间和计算资源。其次对数据填充策略进行分析,若采用二值中的+1或者-1进行填充,在一定情况下会发生特征消失。为避免该情况发生,本文探索了两种填充模式,分别为奇偶填充和边缘扩充的方式,经过实验测试和分析最终采用边缘扩充。为了提高XNOR网络精度,减少特征信息损失,在卷积层之间引入残差结构。针对原始激活方式,引入二次项,在一定程度上解决了梯度消失问题。融合上述方法,最终构建了一个轻量级网络,并使用Tensor Flow平台对网络进行训练,在CIFAR-10数据集上达到85%的分类准确率,证明了网络设计的有效性。(2)通过对优化后的XNOR网络结构分析,将硬件整体结构分为三个模块,分别是数据缓存模块、控制器模块和计算模块,并在FPGA平台上完成整体部署实现。在模块设计中本文主要围绕数据访问优化和计算优化两条主线展开。在数据存储方面,对数据分块和数据复用的方式进行分析,根据网络参数量选择了合适的数据缓存模块。在提高计算吞吐率方面,分别进行了粗粒度和细粒度流水的探索。在卷积层中,对部分二值卷积和全二值卷积分别进行设计,将计算单元排列为二维矩阵的形式,并使用流式输入和专用寄存器设计,减少在计算过程中的数据等待,同时最大化复用卷积核移动过程中产生的数据重叠。在归一化层中使用移位代替乘法运算。在池化层中,通过池化树的形式,完成一个池化块的结果输出。在网络层之间,加入层间缓存模块,通过乒乓操作,实现层间流水。最终设计架构通过HLS实现,相比于CPU,有近30倍的速度提升。
其他文献
学位
PCI-Express是一种串行高速计算机扩展总线的标准,简称PCIe。PCIe总线广泛应用于个人电脑、手机乃至工作站、服务器中。如今随着存储技术的高速发展以及存储数据量的急剧膨胀,基于PCIe总线的固态硬盘渐渐展露头角,以其优越性在SSD领域取得了有利地位,特别是用于数据中心和服务器中的企业级SSD更是需要更大带宽和频率的产品来保证其数据速率。而PCIe4.0在带宽和频率的极大提升使得该接口会成
分布式文件共享平台作为分布式网络最流行的应用之一,正处于成熟发展和广泛部署的时期。平台用户间共享带宽、上传资源和存储数据,为彼此带来优质的资源和高速的下载体验。然而部分用户只享受优质资源和高速下载,却不进行上传和分享,即搭便车(free riding)行为。搭便车行为会影响其他用户的共享积极性,当搭便车用户达到一定数量时平台将无法继续运营。现有的解决方案是利用激励机制鼓励共享带宽和上传资源的用户,
学位
学位
学位
学位
交替方向乘子法(Alternating Direction Method of Multipliers,ADMM)是一种适合求解分布式凸优化问题的有效方法,它结合了增广拉格朗日函数和对偶上升法,可广泛应用于机器学习、压缩感知、信号处理等大数据处理领域。ADMM算法及其变化形式求解凸优化问题在收敛性能等方面有很多普遍性的研究成果,但是对于求解非凸优化问题的相关理论结果不具有一般性。然而在实际的应用中
学位
随着通信技术的飞速发展,各类电子设备对天线设计的要求越来越严格,而天线测量技术也成为了天线设计中重要的环节之一。现代天线测量技术主要分为近场测量,远场测量和紧缩场测量等三种,而近场测量技术又分为两大类。主流的技术采用平面波谱展开待测天线和探头天线的近场,并采用快速傅立叶变换算法算出待测天线的远场,从而实现天线的近远场变换。另一种技术就是本文讨论的等效源重构方法,它不需要考虑可信角的问题,可以得到天