卷积神经网络的FPGA加速

FPGA开发圈 2021-12-15 12:03

卷积神经网络(CNN)已被证明对复杂的图像识别问题非常有效。本白皮书讨论了如何使用BittWare公司的FPGA加速器产品对这些网络进行加速,使用英特尔OpenCL软件开发工具包进行编程。然后,本文介绍了如何通过降低计算精度来显著提高图像分类的性能。每降低一次精度,FPGA加速器就可以每秒处理越来越多的图像。



Caffe整合


Caffe是一个以表达、速度和模块化为宗旨的深度学习框架。它是由伯克利视觉和学习中心以及社区贡献者开发的。


Caffe框架使用一个XML接口来描述特定CNN所需的不同处理层。通过实现不同的层的组合,用户能够根据他们的要求快速创建一个新的网络拓扑结构。


这些层中最常用的是。

  • 卷积。卷积层用一组可学习的过滤器对输入图像进行卷积,每个过滤器在输出图像中产生一个特征图。

  • 池化。Max-pooling将输入图像划分为一组不重叠的矩形,对于每个子区域,输出最大值。

  • Rectified-Linear: Given an input value x, The ReLU layer computes the output as x if x > 0 and negative_slope * x if x <= 0.

  • InnerProduct/Fully Connected。图像被视为单一的矢量,每个点都对新的输出矢量的每个点有贡献。


通过将这4层移植到FPGA上,绝大多数的前向处理网络都可以使用Caffe框架在FPGA上实现。

图1:典型的CNN-卷积神经网络的实例说明


AlexNet是一个众所周知且使用广泛的网络,有免费的训练数据集和基准。本文讨论了针对AlexNet CNN的FPGA实现,然而这里使用的方法也同样适用于其他网络。

图2:AlexNet CNN - 卷积神经网络


图2说明了AlexNet CNN所需的不同网络层。其中有5个卷积层和3个全连接层。这些层占据了该网络99%以上的处理时间。不同的卷积层有3种不同的过滤器尺寸:11×11、5×5和3×3。为不同的卷积层创建不同的优化层将是低效的。这是因为每个层的计算时间取决于应用的过滤器的数量和输入图像的大小。由于处理的输入和输出特征的数量不同,每个层的计算时间也不同。然而,每个卷积需要不同数量的层和不同数量的像素来处理。通过增加应用于更多计算密集层的资源,可以平衡每一层在相同时间内完成。因此,有可能创建一个流水线进程,在任何时候都可以有几个图像在飞行,最大限度地提高所用逻辑的效率。也就是说,大多数处理元素在大多数时间内都很忙。

表1:ImageNet层的计算要求


表1显示了Imagenet网络的每一层所需的计算量。从该表可以看出,5×5卷积层比其他层需要更多的计算。因此,这一层需要更多的FPGA的处理逻辑,以便与其他层保持平衡。


内积层有一个n对n的映射,要求每次乘加都有一个唯一的系数。内积层通常需要的计算量比卷积层少得多,因此对逻辑的并行化要求较低。在这种情况下,将内积层移到主机CPU上是有意义的,让FPGA专注于卷积层。



FPGA逻辑区域


FPGA器件有两个处理 区域,DSP和ALU逻辑。DSP逻辑是用于乘法或乘法加法运算的专用逻辑。这是因为使用ALU逻辑进行浮点大(18×18位)的乘法运算成本很高。鉴于DSP操作中乘法的普遍性,FPGA供应商为此提供了专用逻辑。英特尔更进一步,允许重新配置DSP逻辑以执行浮动指针操作。为了提高CNN处理的性能,有必要增加FPGA中实现的乘法数量。一种方法是降低位精度。



位精度


大多数CNN的实现都使用浮点精度进行不同层的计算。对于CPU或GPGPU的实现,这不是一个问题,因为浮点IP是芯片结构的一个固定部分。对于FPGA来说,逻辑元素是不固定的。英特尔的Arria 10和Stratix 10器件有嵌入式浮动DSP块,也可以作为定点乘法使用。每个DSP组件实际上可以作为两个分离的18×19位乘法使用。通过使用18位固定逻辑进行卷积,与单精度浮点相比,可用运算器的数量增加了一倍。

图3:Arria 10浮点DSP配置


如果需要降低精度的浮点处理,可以使用半精度。这需要从FPGA结构中获得额外的逻辑,但是假设较低的位精度仍然足够的话,可以使浮点计算的数量增加一倍。


本白皮书中描述的管道方法的关键优势之一是能够在管道的不同阶段改变精度。因此,资源只在必要时使用,提高了设计的效率。


根据CNN的应用容限,位精度还可以进一步降低。如果乘法的位宽可以减少到10位或更少,(20位输出),那么乘法可以只用FPGA ALU逻辑有效地执行。与仅仅使用FPGA DSP逻辑相比,这可以使乘法的数量增加一倍。一些网络可能可以容忍更低的位精度。如果有必要,FPGA可以处理所有低至一位的精度。


对于AlexNet使用的CNN层,我们确定10比特的系数数据是一个简单的固定点实现所能获得的最小缩减量,同时保持相对于单精度浮点操作的误差小于1%。

图4:Arria 10固定点DSP配置



CNN卷积层


使用滑动窗口技术,有可能创建对内存带宽要求极低的卷积核。


图5说明了数据是如何被缓存在FPGA存储器中的,允许每个像素被多次重复使用。数据重复使用的数量与卷积核的大小成正比。


由于每个输入层都会影响CNN卷积层中的所有输出层,因此有可能同时处理多个输入层。这将增加加载层所需的外部存储器带宽。为了减轻这种增加,所有的数据,除了系数,都存储在FPGA设备的本地M20K存储器中。器件上的片上存储器的数量限制了可以实现的CNN层的数量。

图5:3×3卷积的滑动窗口


图6:OpenCL全局内存带宽(AlexNet)


根据M20K的可用资源量,并不总是能够在单个FPGA上安装一个完整的网络。在这种情况下,多个FPGA可以使用高速串行互连进行串联。这使得网络管道可以被扩展,直到有足够的资源可用。这种方法的一个关键优势是它不依赖批处理来最大限度地提高性能,因此延迟非常低,这对延迟关键应用非常重要。


平衡各层之间的时间,使之相同,需要调整所实施的平行输入层的数量和平行处理的像素数量。


大多数CNN特征将适合于单个M20K存储器,由于在FPGA结构中嵌入了数千个M20K,可用于并行卷积特征的总存储器带宽是10兆兆字节/秒。

图7:Arria 10 GX1150 / Stratix 10 GX2800资源


图8:在多个FPGA上扩展一个CNN网络


图9:Alexnet的5×5卷积层的资源


图9列出了Alexnet的5×5卷积层与48个并行内核所需的资源,在Intel Arria10 FPGA上的单精度和16位定点版本。这些数字包括OpenCL板逻辑,但说明了低精度对资源的好处。


全连接层


全连接层的处理需要每个元素都有唯一的系数,因此随着平行度的增加,很快就会出现内存限制。与卷积层保持同步所需的并行量将很快使FPGA的片外存储器饱和,因此建议对输入层的阶段进行分批或修剪。


由于内积层的元素数量较少,批处理所需的存储量与卷积层所需的存储量相比也很小。批处理层允许每个批处理层使用相同的系数,从而减少了外部内存带宽。


修剪的作用是研究输入数据并忽略低于阈值的数值。由于全连接层被放置在CNN网络的后期阶段,许多可能的特征已经被消除了。因此,剪枝可以大大减少所需的工作量。



资源


该网络的关键资源驱动因素是可用于存储每层输出的片上M20K存储器的数量。这一点是恒定的,与实现的并行量无关。将网络扩展到多个FPGA上会增加可用的M20K存储器的总量,因此可以处理CNN的深度。



总结


FPGA结构独特的灵活性允许将逻辑精度调整到特定网络设计所需的最小值。通过限制CNN计算的位精度,每秒可以处理的图像数量可以大大增加,提高了性能并降低了功率。


FPGA实现的非批处理方法允许物体识别的单帧延迟,对于低延迟至关重要的情况是理想的。例如,物体回避。


对AlexNet使用这种方法(第1层为单精度,然后对其余各层使用16位固定),使用单个Arria 10 FPGA可以在大约1.2毫秒内处理每个图像,或者使用两个串联的FPGA可以在0.58毫秒内完成。


免责声明:本文转载自:Bittware,转载此文目的在于传播相关技术知识,版权归原作者所有,如涉及侵权,请联系小编删除(联系邮箱:service@eetrend.com )。

公众号商务合作联系

关注我们

FPGA开发圈 这里介绍、交流、有关FPGA开发资料(文档下载,技术解答等),提升FPGA应用能力。
评论
  • 更多生命体征指标风靡的背后都只有一个原因:更多人将健康排在人生第一顺位!“AGEs,也就是晚期糖基化终末产物,英文名Advanced Glycation End-products,是存在于我们体内的一种代谢产物” 艾迈斯欧司朗亚太区健康监测高级市场经理王亚琴说道,“相信业内的朋友都会有关注,最近该指标的热度很高,它可以用来评估人的生活方式是否健康。”据悉,AGEs是可穿戴健康监测领域的一个“萌新”指标,近来备受关注。如果站在学术角度来理解它,那么AGEs是在非酶促条件下,蛋白质、氨基酸
    艾迈斯欧司朗 2025-02-27 14:50 400浏览
  •           近日受某专业机构邀请,参加了官方举办的《广东省科技创新条例》宣讲会。在与会之前,作为一名技术工作者一直认为技术的法例都是保密和侵权方面的,而潜意识中感觉法律有束缚创新工作的进行可能。通过一个上午学习新法,对广东省的科技创新有了新的认识。广东是改革的前沿阵地,是科技创新的沃土,企业是创新的主要个体。《广东省科技创新条例》是广东省为促进科技创新、推动高质量发展而制定的地方性法规,主要内容包括: 总则:明确立法目
    广州铁金刚 2025-02-28 10:14 103浏览
  • RGB灯光无法同步?细致的动态光效设定反而成为产品客诉来源!随着科技的进步和消费者需求变化,电脑接口设备单一功能性已无法满足市场需求,因此在产品上增加「动态光效」的形式便应运而生,藉此吸引消费者目光。这种RGB灯光效果,不仅能增强电脑周边产品的视觉吸引力,还能为用户提供个性化的体验,展现独特自我风格。如今,笔记本电脑、键盘、鼠标、鼠标垫、耳机、显示器等多种电脑接口设备多数已配备动态光效。这些设备的灯光效果会随着音乐节奏、游戏情节或使用者的设置而变化。想象一个画面,当一名游戏玩家,按下电源开关,整
    百佳泰测试实验室 2025-02-27 14:15 137浏览
  • 振动样品磁强计是一种用于测量材料磁性的精密仪器,广泛应用于科研、工业检测等领域。然而,其测量准确度会受到多种因素的影响,下面我们将逐一分析这些因素。一、温度因素温度是影响振动样品磁强计测量准确度的重要因素之一。随着温度的变化,材料的磁性也会发生变化,从而影响测量结果的准确性。因此,在进行磁性测量时,应确保恒温环境,以减少温度波动对测量结果的影响。二、样品制备样品的制备过程同样会影响振动样品磁强计的测量准确度。样品的形状、尺寸和表面处理等因素都会对测量结果产生影响。为了确保测量准确度,应严格按照规
    锦正茂科技 2025-02-28 14:05 134浏览
  • 在物联网领域中,无线射频技术作为设备间通信的核心手段,已深度渗透工业自动化、智慧城市及智能家居等多元场景。然而,随着物联网设备接入规模的不断扩大,如何降低运维成本,提升通信数据的传输速度和响应时间,实现更广泛、更稳定的覆盖已成为当前亟待解决的系统性难题。SoC无线收发模块-RFM25A12在此背景下,华普微创新推出了一款高性能、远距离与高性价比的Sub-GHz无线SoC收发模块RFM25A12,旨在提升射频性能以满足行业中日益增长与复杂的设备互联需求。值得一提的是,RFM25A12还支持Wi-S
    华普微HOPERF 2025-02-28 09:06 143浏览
  • 一、VSM的基本原理震动样品磁强计(Vibrating Sample Magnetometer,简称VSM)是一种灵敏且高效的磁性测量仪器。其基本工作原理是利用震动样品在探测线圈中引起的变化磁场来产生感应电压,这个感应电压与样品的磁矩成正比。因此,通过测量这个感应电压,我们就能够精确地确定样品的磁矩。在VSM中,被测量的样品通常被固定在一个震动头上,并以一定的频率和振幅震动。这种震动在探测线圈中引起了变化的磁通量,从而产生了一个交流电信号。这个信号的幅度和样品的磁矩有着直接的关系。因此,通过仔细
    锦正茂科技 2025-02-28 13:30 100浏览
  • 应用趋势与客户需求,AI PC的未来展望随着人工智能(AI)技术的日益成熟,AI PC(人工智能个人电脑)逐渐成为消费者和企业工作中的重要工具。这类产品集成了最新的AI处理器,如NPU、CPU和GPU,并具备许多智能化功能,为用户带来更高效且直观的操作体验。AI PC的目标是提升工作和日常生活的效率,通过深度学习与自然语言处理等技术,实现更流畅的多任务处理、实时翻译、语音助手、图像生成等功能,满足现代用户对生产力和娱乐的双重需求。随着各行各业对数字转型需求的增长,AI PC也开始在各个领域中显示
    百佳泰测试实验室 2025-02-27 14:08 255浏览
  • 1,微软下载免费Visual Studio Code2,安装C/C++插件,如果无法直接点击下载, 可以选择手动install from VSIX:ms-vscode.cpptools-1.23.6@win32-x64.vsix3,安装C/C++编译器MniGW (MinGW在 Windows 环境下提供类似于 Unix/Linux 环境下的开发工具,使开发者能够轻松地在 Windows 上编写和编译 C、C++ 等程序.)4,C/C++插件扩展设置中添加Include Path 5,
    黎查 2025-02-28 14:39 140浏览
  • Matter 协议,原名 CHIP(Connected Home over IP),是由苹果、谷歌、亚马逊和三星等科技巨头联合ZigBee联盟(现连接标准联盟CSA)共同推出的一套基于IP协议的智能家居连接标准,旨在打破智能家居设备之间的 “语言障碍”,实现真正的互联互通。然而,目标与现实之间总有落差,前期阶段的Matter 协议由于设备支持类型有限、设备生态协同滞后以及设备通信协议割裂等原因,并未能彻底消除智能家居中的“设备孤岛”现象,但随着2025年的到来,这些现象都将得到完美的解决。近期,
    华普微HOPERF 2025-02-27 10:32 214浏览
  •         近日,广电计量在聚焦离子束(FIB)领域编写的专业著作《聚焦离子束:失效分析》正式出版,填补了国内聚焦离子束领域实践性专业书籍的空白,为该领域的技术发展与知识传播提供了重要助力。         随着芯片技术不断发展,芯片的集成度越来越高,结构也日益复杂。这使得传统的失效分析方法面临巨大挑战。FIB技术的出现,为芯片失效分析带来了新的解决方案。它能够在纳米尺度上对芯片进行精确加工和分析。当芯
    广电计量 2025-02-28 09:15 116浏览
  • 构建巨量的驾驶场景时,测试ADAS和AD系统面临着巨大挑战,如传统的实验设计(Design of Experiments, DoE)方法难以有效覆盖识别驾驶边缘场景案例,但这些边缘案例恰恰是进一步提升自动驾驶系统性能的关键。一、传统解决方案:静态DoE标准的DoE方案旨在系统性地探索场景的参数空间,从而确保能够实现完全的测试覆盖范围。但在边缘案例,比如暴露在潜在安全风险的场景或是ADAS系统性能极限场景时,DoE方案通常会失效,让我们看一些常见的DoE方案:1、网格搜索法(Grid)实现原理:将
    康谋 2025-02-27 10:00 252浏览
  • 在2024年的科技征程中,具身智能的发展已成为全球关注的焦点。从实验室到现实应用,这一领域正以前所未有的速度推进,改写着人类与机器的互动边界。这一年,我们见证了具身智能技术的突破与变革,它不仅落地各行各业,带来新的机遇,更在深刻影响着我们的生活方式和思维方式。随着相关技术的飞速发展,具身智能不再仅仅是一个技术概念,更像是一把神奇的钥匙。身后的众多行业,无论愿意与否,都像是被卷入一场伟大变革浪潮中的船只,注定要被这股汹涌的力量重塑航向。01为什么是具身智能?为什么在中国?最近,中国具身智能行业的进
    艾迈斯欧司朗 2025-02-28 15:45 221浏览
  • 美国加州CEC能效跟DOE能效有什么区别?CEC/DOE是什么关系?美国加州CEC能效跟DOE能效有什么区别?CEC/DOE是什么关系?‌美国加州CEC能效认证与美国DOE能效认证在多个方面存在显著差异‌。认证范围和适用地区‌CEC能效认证‌:仅适用于在加利福尼亚州销售的电器产品。CEC认证的范围包括制冷设备、房间空调、中央空调、便携式空调、加热器、热水器、游泳池加热器、卫浴配件、光源、应急灯具、交通信号模块、灯具、洗碗机、洗衣机、干衣机、烹饪器具、电机和压缩机、变压器、外置电源、消费类电子设备
    张工nx808593 2025-02-27 18:04 120浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦