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

2020-06-29 11:28:25爱云资讯

一项新的研究发现,人工智能若要发挥出全部的潜能,工业界和政府部门都要促进“AI 生态系统的形成“

目前中国人工智能正处于由局域智能向全域智能转变的阶段。现阶段,在大家都沉浸在 AI 的研究和突破中时,却鲜有企业能注意到构建人工智能生态系统的重要性。然而生态系统才是决定 AI 是否可以成功赋能行业、产业的关键因素。

那么,什么是人工智能的生态系统呢?

目前中国 AI 生态系统包括了大型互联网公司以及新兴 AI 垂直公司。从整个产业链来看,AI 行业可大体分为芯片和硬件、AI 基础服务和算法框架、技术层以及应用层。当然,构建人工智能生态系统从来都不是单靠一个企业的力量就可以完成的,需要靠 AI 相关的企业间的共同合作、需要集合业内的一线开发者以及业内专家的力量才能实现破局。

基于此,华为于 6 月 20 日在杭州举办了 DevRun 开发者沙龙 - 昇腾学院技术开放日,在为大家全面解读华为昇腾 AI 生态系统的同时,也邀请行业各界的开发者和合作企业一起来进行 AI 生态系统的共建,让 AI 更好的去赋能行业和产业。

AI 生态系统—硬件部分

Part1:马太能源:基于 Atlas200 的电力输电线路智慧监测系统

输电线路的智能是解决当前运检工作挑战和矛盾的最终手段,输电线路智能化包括在线监测与预警,智能巡检、状态评估和检修这四个部分。但由于输电线路规模增长快,且巡检人员数量短缺的问题,进一步加大了人工巡检的压力。

华为 Atlas 人工智能解决方案可全面助力智能巡检和智慧线路的开发,华为 Atlas 的产品也可以应用在很多电力系统产品当中,比较典型的就是智慧线路精灵和通道可视化系列产品,利用华为的 Atlas 200 低功耗、高性能的特点,进行机械人脸识别、目标识别等一系列智能识别,助力智慧线路的开发。

这里以智慧线路精灵中的观冰精灵为例,上图是在现场拍摄的一些产品在现场运行的照片,可以看到照片都非常清晰,利用 Atlas 200 AI 加速模块的超低功耗和极致性能的优势实时计算冰的厚度和形状,冰的厚度一旦达到预警线,或者覆冰不均时,监控中心就会进行报警并采取必要的措施,保障输电的安全。

Part2:基于 Atlas200 工业边缘计算网关的硬件实践

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

AI 生态系统—AI 基础服务

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

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

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

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

Part2:初识 TBE 算子开发

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

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

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

华为针对算子开发提供了一站式的算子开发环境 Mindstudio,大家可以在昇腾社区进行试用。在算法开发的板块里面还提供了论坛,供大家提问,同时还有算子开发的一些相关的课程,入门课程跟高阶课程都有,感兴趣的可以去看看。

AI 生态系统—算法框架

Part1:基于全场景 AI 计算框架 MindSpore 进行模型开发实践

MindSpore 是一个支持端边云独立的或者按需协同进行开发的分布式架构,在华为的 AI 架构中属于计算框架层。MindSpore 主要是提供一个全场景统一的 API,开发者们可以使用 MindSpore 来构建自己的网络。

MindSpore 的亮点有自动微分、自动并行,自动调优等,助力开发者更加便捷的开发。这三个功能主要是为了增强 MindSpore 的应用性,让开发者使用 MindSpore 进行模型开发时可减少大量工作量。除此之外,MindSpore 的图 / 算子编译加速以及神经网络的并行执行都使模型训练更加高效。

MindSpore 已于 3 月开源,诸多特性正不断增强,如差分隐私、二阶优化、PyTorch 一键转化等等,如果想要了解更多可以登录 MindSpore 官网,官网上有很多详细讲解的视频,感兴趣的朋友可自行去学习。

写在最后

华为自 18 年发布昇腾系列产品正式宣布入局 AI,到现在昇腾 AI 生态系统初步成型,华为在这短短两年内就能在 AI 领域闯出自己的一片领域着实令人惊叹。目前来看 AI 行业还没有一个开发生态形成绝对主导之势,按照目前华为的发展趋势来看,相信假以时日,华为构建的 AI 生态一定会从众多生态中脱颖而出!

相关文章
热门文章
头条文章
重点文章
推荐文章
热点文章
关于我们|联系我们|免责声明|会展频道
冀ICP备2022007386号-1 冀公网安备 13108202000871号 爱云资讯 Copyright©2018-2023