ir是什么,ir是什么软件

ir是什么,ir是什么软件 目前越来越多的硬件为AI算法提供加速优化支持。通常,AI硬件可以通过降低工作负载、提升峰值性能、提升计算效率等方法来提供加速优化。降低工作负载剪枝神经网络有较大的冗余性。细粒度神经网络剪枝

目前越来越多的硬件为AI算法提供加速优化支持。通常,AI硬件可以通过降低工作负载、提升峰值性能、提升计算效率等方法来提供加速优化。

降低工作负载

剪枝神经网络有较大的冗余性。细粒度神经网络剪枝是一种解决方法,因为其发现神经网络的权重参数里有很多值接近0,而去掉这些权重并不会降低神经网络的性能。但是在Han等人的工作里,经过剪枝的模型是稀疏化的,这会带来许多不规则的稀疏计算。这样的计算模式在很多硬件上无法获得显著的计算加速效果。所以,后续的很多工作开始“结构化剪枝”。在结构化剪枝里,被去除的权重都是结构化的子集,比如整个卷积核。使用这种方式得到的模型虽然压缩比小于细粒度剪枝,但是其仍然有着规则的计算模式,在各种硬件平台上都能得到提速。后续有很多工作的点在提升结构化剪枝的性能上:有工作如何设计层内的重要性指标,即给定本层压缩率的情况下选择除掉哪些卷积核;有工作如何设计正则化项,通过在训练过程中对权重加入合适的正则化得到剪枝模型;还有工作将剪枝比例的确定问题看作搜索问题,使用搜索算法搜索每层的压缩比例;还有不少工作试图把硬件的延时或能量模型引入剪枝过程。

AI加速器优化方法探讨

神经网络架构搜索

最近,神经网络架构搜索(Neural Architecture Search,NAS)领域得到了很多,其最初目标是减少人为设计在架构设计中的比重,而用自动搜索的方式找到适合所针对任务的神经网络架构。为了加速NAS算法的搜索过程,很多工作改进搜索策略的采样效率和评估策略的评估效率。针对更高效的硬件推理,有不少工作在框架上进行了扩展,比如在搜索目标上考虑硬件开销,在搜索空间中加入新的设计维度(操作类型、拓扑连接、宽度、深度、卷积核大小等),联合硬件参数的搜索等。加入了宽度的神经网络架构搜索可以看作模型设计和结构化剪枝两个阶段进行了统一,也可以看作是剪枝算法的一种扩展。事实上,也有工作将神经网络搜索的一些方法应用在剪枝问题上。

提升峰值性能

量化:不少研究者开始如何降低神经网络推理和训练过程中数据的表示位宽,我们这里简要介绍针对推理过程的量化研究的发展。最开始,神经网络的计算大多使用32比特浮点数,而实际上,神经网络的权重参数、激活值并不需要这么大的表示精度和位宽。由于浮点计算单元相对定点计算单元的开销较大,人们希望用低位宽的定点数进行定点运算来完成神经网络的推理过程。按照量化算法应用的时间阶段来区分,量化算法可以分为训练后量化(post-training quantization)和考虑量化的训练过程(quantization-aware training)两大类。训练后量化策略在一个预训练的模型上进行分析,选择合适的位宽、截断数、量化中心等,得到量化后的模型。为了提升量化后模型的准确率,考虑量化的训练过程调整权重适应“量化噪声”。不同研究者采用的量化格式不同,可分为均匀量化和非均匀量化,其中非均匀量化由于运算更复杂,使用较少。在均匀量化格式中,早期算法使用无偏置(bias)的量化格式,且量化过程中不引入放大系数(scaling factors),而是使用2的幂次作为表示范围。

计算单元优化:计算单元优化的最主要方法是降低计算单元的比特位宽,这也是与软件层的定点量化方法相匹配的硬件设计。降低比特位宽可以显著降低硬件资源的开销,从而在相同硬件资源的限制下获得更高的峰值性能。以32比特浮点和8比特定点在Xilinx XCKU060 FPGA上的实现为例,8比特定点的乘法器和加法器的硬件逻辑资源开销分别降低至32比特浮点的1/10和1/50。在使用数字信号处理器(DSP)的情况下,一个32比特浮点的乘加器需要2个DSP、800个查找表和1284个寄存器,而一个8比特定点的乘加器只需要1个DSP。

循环展开策略:神经网络的卷积层和全连接层分别占据了大部分的计算量和存储量,其中全连接层可以视为卷积核大小为1×1的卷积层。卷积层通常可以用一个6层循环表示,这6层循环的维度分别是:输入的宽和高,输入和输出通道,以及卷积核的宽和高。为了提高AI加速器的计算并行度,我们可以将某几个循环展开并在硬件上将一定数量的迭代过程并行化。硬件上的并行迭代次数称为循环展开系数(loop unroll parameter),不恰当的循环展开系数会导致严重的系统利用率不足。以一个单层循环为例,假设循环的次数为M且循环展开系数为m,则硬件资源的利用率被限制为m/M[M/m]。如果M无法被m整除,那么利用率将会低于100%。对于一个神经网络层,总的硬件资源利用率是每一个循环的利用率的乘积。对于CNN来说,不同层的循环维度差异很大。以ResNet为例,通道数量在3~2048之间,特征图大小在224×224到7×7之间,卷积核大小在7×7到1×1之间。除了利用率低下的问题之外,循环展开还会影响数据通路和片上存储架构的设计,因此循环展开策略是AI加速器设计的关键特征。目前还没有一种万能的循环展开系数适用于所有的神经网络模型。主流的解决方案是针对每一个神经网络模型进行设计空间探索以获取最优循环展开系数。由于FPGA具备动态重配置的特性,可以基于寻优后的循环展开系数设计硬件参数,从而生成新的硬件架构以部署特定的神经网络模型。对于基于指令集架构的AI加速器,软件编译器会基于硬件设计参数来指导循环展开系数的优化,以提升AI系统的计算效率。

提升计算效率

软件编译优化:面向神经网络的软件编译器主要以深度学习框架的神经网络模型作为输入,如Caffe和TensorFlow等。编译过程的不同阶段都需要进行编译优化,而编译过程通常可划分为五个层次:前端、中间表示(IR)、高层级优化、低层级优化、后端。前端将不同深度学习框架的神经网络模型的高级规范表示转换为特定于编译器的中间表示。这些中间表示通常采用有向非循环图的形式,其中每个节点表示一个计算操作,每个边表示操作之间的数据依赖性。因此,可以在这些中间表示上使用面向图的高层级优化方法来融合操作并优化数据布局。除了高层次中间表示,在编译器的优化过程中还采用了多种扩展的中间表示。神经网络的工作负载可以分解为张量运算(例如矩阵-向量和矩阵-矩阵乘法)。而低层级优化方法主要用于优化调度各种张量运算的执行顺序,以增强数据局部性并充分利用硬件平台的并行性。在软件编译阶段有数百个低级优化步骤可供选择和使用,而软件编译的优化问题主要在于决定使用何种优化方法以及如何选择最优的参数(例如循环展开、切分和交换参数,融合策略和矢量化)。最后,后端负责将编译优化的完整实现映射到AI加速器可解析的指令。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/62036.html

(0)

相关推荐

  • 小米11pro价格最新消息(小米11pro价格和参数)

    小米11,百科小米11pro价格最新消息(小米11pro价格和参数)小米11pro是一款小米旗下即将要发布的5g手机,这款小米11pro手机的参数配置都已经在网上曝光,那么这款小米11pro手机的价格到底怎么样呢?接下来

    电商 2021年11月16日
  • 110相关知识(做整形美容费用)

    110相关知识(做整形美容费用)作为2019成都医美月的参与者,为了让求美者更多了解医美,正确选择适合自己的医美项目,7月30日,成都市宜兴医美医院举办了“皮肤与注射美容知识详解”专题沙龙讲座。成都宜兴微整形科谢文院..

    营销 2021年8月24日
  • 梦幻手游一个满级阵法多少人民币,梦幻手游满修多少银币

    梦幻手游阵法满级需要多少银币梦幻西游手游阵法升级指南,一级到满需多少钱?阵法价格:梦幻西游手游阵法升级指南一级到满需多少钱梦幻西游手游阵法升级指南一级到满需多少钱 商城每本1级阵法的价格为30W银币。 一级阵法升二级阵: 阵。梦幻西游手游满级阵法需要多久与银币消耗?下面的情况是在全部使用同名阵法书提升阵法的,如果是用不同名的阵法来升级的话,需要的人民币可就不只是1593元了。 因为每天限购20本同名阵法书,所以借助上述。梦幻西游手游满级阵法加多少评分?梦幻西游手游满级阵法加500评分。 梦幻西游手游满级阵法加500评分。梦幻西游手游五级虎阵要多少银币1.阵法升级所需经验及银币根据梦幻精灵所给出

    阅读 2022年7月3日
  • 方舟制革厂镰刀龙鞍几级解锁,方舟手游制革厂几级解锁

    方舟手游皮革厂多少级解锁老鹰方舟手游老鹰鞍怎么快速得?购买皮革厂,从里面买鞍就行 购买皮革厂,从里面买鞍就行方舟生存进化手机版制革厂怎么买?方舟生存进化手游的皮革厂可以在背包中最左侧的方舟图标里使用琥珀购买 方舟生存进化手游的皮革厂可以在背包中最左侧的方舟图标里使用琥珀购买方舟生存进化手机版镰刀龙鞍在皮革厂叫什么名字?龙鞍的皮革厂是方舟的副产品,叫方皮。 龙鞍的皮革厂是方舟的副产品,叫方皮。历史上有什么著名的“一语成谶”的故事?历史上有许多许多巧合,后世之人为了某些目的,有的附会,有的编造,于是便有了无数“一语成谶”的故事。 “一语成谶”是一个成语,意思是有时候一句无心的不好 受。

    阅读 2022年7月6日
  • 什么是双方犯规(篮球场上的“双方犯规”你知道怎么判罚吗?)

    什么是双方犯规(篮球场上的“双方犯规”你知道怎么判罚吗?)  以前在学校的时候,遇见两个同一队队员无球跑动撞一起,被吹了双方犯规,小编看完也表示笑蒙了,不知道是因为裁判员紧张,看见身体接触就响哨了,还是确实没看清楚。关于

    生活 2021年3月20日
  • 马超父亲让谁杀了,三国马超是被谁杀的

    历史上马超怎么死的?马超是被谁杀的?网友提问:历史上马超怎么死的?马超是被谁杀的?优质回答:马超,字孟起,他是伏波将军马援之后,马腾长子。历史上的马超少年成名,骁勇善战,尤其是在建安十三年(208年),他的父亲马腾及两个

    攻略 2021年12月6日