全连接神经网络在FPGA上的实现与优化

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:NoNameMan
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着电子电路领域的飞速发展,计算机的计算能力得到了大幅提升,深度学习神经网络再次迎来了飞速发展的浪潮。全连接神经网络能够处理大规模的数据,提取全部的数据特征,实现大规模数据的分类,因此,仍在图像领域有重要应用。全连接神经网络的训练过程计算复杂,计算量大,领域专家往往使用计算能力出众的GPU设备进行训练;而训练成功的神经网络在处理前向过程时,计算相对简单,因此往往采用FPGA搭载神经网络的前向推断过程。虽然FPGA的计算能力难以赶超同时代的GPU加速设备,但其功耗与GPU相比较低,可以计算全连接神经网络的前向过程。本文提出了一套利用OpenCL在FPGA上高效地实现全连接神经网络的方案,并利用商用的全连接神经网络模型,验证了方案的优化效果,为FPGA上利用OpenCL实现神经网络的设计提供了参考。  本文的主要工作和研究成果主要包括:  1.全连接神经网络算法的实现与优化。传统的FPGA开发利用较为复杂的硬件描述语言,为FPGA的广泛应用带来了挑战。而OpenCL定义了完整的框架,开发者可以利用OpenCL提供的框架针对FPGA进行编程,缩短了开发周期。本文首先利用OpenCL,在FPGA上实现了全连接神经网络模型的各计算模块,并分别针对两个计算热点提出了算法实现与优化方案:针对全连接层数据规模大、数据复用率较低、对带宽要求高的计算特点,本文利用合并偏移量的方式规整计算任务、通过分组划分的方式发掘并行性、同时利用数据复用提升了数据使用效率,降低了访存压力;针对较为复杂的激活函数(如Sigmoid函数),本文分析了泰勒级数法、查找表法、分段函数逼近法三种常用的激活函数实现方式,并衡量了FPGA上适宜的方法;针对激活函数的特征,设计了差分查找表的方式实现激活函数,在保证精度的前提下将查找表压缩,节约了系统中的存储空间。  2.针对系统特征,提出系统级的优化方案。为最大化地利用FPGA系统内的各种资源,本文针对算法实现后的基准系统,根据硬件特征,分析了资源占用情况和流水线、访存情况,利用数据重排、单指令多数据、多流水线、半精化等策略进行了系统优化,平衡了系统中的资源占用情况、扩大了电路规模、提升了系统性能。优化后的版本与基准版本相比,得到了2.19x的加速。优化后,系统的主频达到380MHz,RAM占用率达到94%,DSP占用率达到42%。
其他文献
近年来,云计算因其高性能、高可靠、可扩展等特点在海量数据计算中得到了广泛应用。在信息技术飞速发展的条件下,海量数据处理成为计算机科学领域的新挑战。MapReduce作为一
当今大型软件系统的开发活动不可避免的深深植根于宽广的问题上下文(Problem Context)当中,涉及到各种各样的利益相关人员(System Stakeholder),这些人会从自身的视角(Viewpo
在日常的生活和工作中,越来越多的人采用图片来记录生活和工作的点点点滴滴。图片的应用已经显得越来越重要。现在虽然有很多对图像进行加密的算法,但是各种算法仍然存在一定
云计算是一种实现大规模计算的信息处理方式,本质上是利用虚拟化技术、分布式计算技术和网络技术将分散的云基础单元(简称云元)汇聚到一起形成共享资源池,并以按需、弹性和可度量
路径规划技术是目前众多应用技术领域的研究热点,具有重要的科研价值和广阔的应用前景。路径规划技术的核心内容就是规划算法。目前求解路径规划问题的方法主要有A*算法、粒子
随着互联网的普及、软件应用技术和模式的快速发展,软件已呈网络化、平台化和服务化的发展趋势。其中,软件即服务(SaaS)是一种新型的软件服务模式,凭借其按需租用、不需维护
安全关键系统是指系统的失效会造成严重的后果的系统,此类系统在日常生活中随处可见,如配电系统、灾难应对调度系统、人工心肺机和航空交通管制系统等。时序行为作为安全关键系
当前,世界范围内中风已经与冠心病、癌症一起被列为威胁人类健康的三大疾病之一,国内患中风的人数逐年提升。受家庭经济承担能力的限制,大多数中风病人在医院进行初步的康复
大型旋转机械设备中,齿轮箱作为传递动力、改变转速的重要零部件,有着不可替代的作用。齿轮箱一般由多对啮合在一起的齿轮、转轴、轴承、固定基座、箱体等部件构成,这就决定了其结构复杂、装配精度要求高、加工工艺复杂的特点。因此,在复杂、恶劣的工况环境下,齿轮箱易出现故障并影响整个生产线甚至带来大量经济损失,据统计,旋转机械故障中齿轮故障占80%,因此对齿轮箱的运行过程进行状态监测和故障诊断具有极其重要的意义
随着社会对公共安全要求的不断提高,智能视频监控系统因其直观性、智能性和主动性得到了广泛关注,具有重要的研究价值和广阔的应用前景。多目标跟踪作为智能视频监控技术的核心