从硬件到算法框架,华为AI生态战略解读( 二 )

硬功馆基于Atlas200做了一个边缘计算的网关,并在工业物联网方面做了一系列的网关的产品,其中利用Atlas200的计算能力,实现16路1080P30FPS的视频接入,并支持多种规格的视频编解码,从而满足用户不同的视频处理需求 。

AI生态系统—AI基础服务

Part1:昇腾工具链之模型小型化工具介绍

通常来说,神经网络在通过高精度训练之后的部署过程中,免不了就会碰到一个算力比较小、内存有限,各种资源都很有限的场景 。 这个时候模型压缩或者模型小型化就是一个必要的动作 。 而昇腾模型小型化工具其实就是这样一个自动高效地去优化用户模型的工具,使其能够适应昇腾处理器的达芬奇架构,来帮助用户提升最终的业务性能 。


从硬件到算法框架,华为AI生态战略解读

----从硬件到算法框架 , 华为AI生态战略解读//----

工具功能包含了两大块,一个是模型压缩,一个是模型寻优,压缩是通常说的量化、稀疏、蒸馏,寻优通常包括结构寻优、超算寻优等等 。 这里以量化为例来说明整个工具的整体的架构,整个架构分为左右两块,左边是用户的环境,所谓用户环境就是你现在通常在做训练的环境,在用户环境中的模型小型化工具,可以作为插件或者第三方的工具提供一个模型小型化量化的功能 。

在最终拿到量化以后的Int8模型后,可以通过ATC部署到昇腾处理器上,即把昇腾处理器的Int8能力发挥出来 。 通过ATC的编译或者部署的过程,把量化、反量化融合成一个重量化的优化过程,使得你的业务在昇腾处理器上能达到更好的性能 。

Part2:初识TBE算子开发


从硬件到算法框架,华为AI生态战略解读

----从硬件到算法框架 , 华为AI生态战略解读//----

TBE是华为基于昇腾AI处理器自定义算子的开发工具,是针对自研NPU的一个自定义开发工具 。 主要功能有三个,最基础的就是为需要使用扩展算子的开发者提供便利,比如在将网络去转成达芬奇上运行的一个模型时,中间会遇到我们不知道的算子,这个时候就可以用TBE算子工具来开发 。

针对高级开发者来说还会有两个应用场景,第一个是开发者用自己开发的算子来替代华为已提供的算子,针对不同网络做一些定制的优化 。 第二修改现有算子的逻辑,使其更满足于自己的需求 。


从硬件到算法框架,华为AI生态战略解读

----从硬件到算法框架 , 华为AI生态战略解读//----

那一个完整的算子开发流程是什么样的呢,首先是分析阶段,需要确定分析算子的作用是什么,更适合哪种方式来开发的算子,是采用DSL还是采用TIK 。 在分析之后使用华为提供的开发工具,上面可以创建算子工程,算子工程开发完之后,去实现算子,这里面包括四部分,算子的代码、插件相关的代码、算子实现完之后的验证过程,怎么确保我写的算子功能正确的测试过程 。 在测试完成之后,还需要把算子集成到网络里面,进行网络集成验证的过程 。 总的来说算子开发包括三部分,一部分是算子文件的实现,一部分是单算子的测试验证,最后一部分是网络集成的测试验证 。