关注上方“深度学习技术前沿”,选择“星标公众号”,
资源干货,第一时间送达!
此前,我们刚刚报道了旷视科技在3月25日开源深度学习框架 MegEngine ,3 月 28 日,华为的全栈全场景 AI 计算框架 MindSpore 也终于正式开源了。
今年的华为开发者大会 HDC 2020 上,除了昇腾、鲲鹏等自研芯片硬件平台之外,最令人期待的就是深度学习框架 MindSpore 的开源了。
MindSpore是一款支持端边云全场景的深度学习训练推理框架,MindSpore当前主要应用于计算机视觉、自然语言处理等AI领域,能够为数据科学家和算法工程师提供设计友好、运行高效的开发体验,同时解决了昇腾AI处理器原生支持及软硬件协同优化的问题。作为一款「全场景 AI 框架」,MindSpore 是华为人工智能解决方案的重要组成部分,与 TensorFlow、PyTorch、PaddlePaddle 等流行深度学习框架对标,旨在大幅度降低 AI 应用开发门槛,让人工智能无处不在。
它的战略意义在于构筑面向全球的人工智能开源社区,推动人工智能软硬件应用生态繁荣发展。
![](https://i-blog.csdnimg.cn/blog_migrate/eb9642ca22a0b86f61fd798629bfc491.png)
三大创新能力:新编程范式,执行模式和协作方式
今天发布的 MindSpore 首个开源版本为 0.1.0-alpha 版,主要由自动微分、自动并行、数据处理等功能构成。华为表示,MindSpore 具备开发算法即代码、运行高效、部署态灵活的特点,其核心分为三层:从下往上分别是后端运行时、计算图引擎及前端表示层。
MindSpore的核心特性
自动微分
当前主流的深度学习框架主要有三种自动微分技术:网络在编译时转换为静态数据流图(TensorFlow),在静态图上做自动微分;以记录操作符重载的方式,动态生成数据流图(PyTorch),在动态图上自动微分。
而 MindSpore 采用基于源码转换的通用自动微分:以即时编译(JIT)的方式在中间表达(编译过程中程序的表达形式)上做自动微分变换,支持while/if/for等复杂的控制流结构、支持高阶函数和闭包等灵活的函数式编程方式。
自动并行
MindSpore自动并行能够用串行算法代码,自动实现分布式并行训练,并且保持高性能。分布式并行训练的范式有数据并行和模型并行,以及由这两种范式组合出来的混合并行。
MindSpore自动并行采用了一种全新的分布式并行训练模式,融合了数据并行、模型并行和混合并行。
高效数据处理
MindSpore中的MindData负责完成训练过程中数据的pipeline处理,包括数据加载、数据增强、导入训练,并提供简单易用的编程接口和覆盖CV/NLP等全场景的丰富数据处理能力。MindData提供c_transforms模块和py_transforms模块,来进行数据增强,用户也可以自定义算子来做数据增强。
高效图执行引擎
MindSpore的图处理操作,纵向看总共分为三层,分别是执行控制层、业务功能层、数据管理层。横向展开分析,可细分为六大步骤,分别是图准备、图拆分、图优化、图编译、图加载和图执行。通过上述图操作,MindSpore图引擎可以将前端下发的图转换为一种可以在昇腾硬件上高效运行的图模式。
深度优化的模型集市
MindSpore计划2020年Q4提供超过30+的深度优化模型,可供开发者直接使用。
此外,MindSpore还提供了可视化工具,可以对单次训练可视化以及多次训练的模型溯源,帮助开发者快速发现模型训练过程的问题。
传送门
MindSpore开源社区:https://www.mindspore.cn
MindSpore代码托管:https://gitee.com/mindspore
???? 更多精彩咨讯,长按识别,即可关注