基本了解:
昇思MindSpore是一个全场景深度学习框架 ,旨在实现易开发、高效执行、全场景统一部署三大目标。
易开发表现为API友好、调试难度低;
高效执行包括计算效率、数据预处理效率和分布式训练效率;
全场景则指框架同时支持云、边缘以及端侧场景
执行流程:
MindSpore作为全场景AI框架:支持端边云
端 (手机与IOT设备)、边 (基站与路由设备)、**云(**服务器)场景的不同系列硬件,包括昇腾系列产品、英伟达NVIDIA系列产品、Arm系列的高通骁龙、华为麒麟的芯片等系列产品。
上图:
1.MindSpore主体框架 :主要提供神经网络在训练、验证过程中相关的基础API功能,另外还会默认提供自动微分、自动并行等功能
2.MindSpore Data模块 :可以利用该模块进行数据预处理,包括数据采样、数据迭代、数据格式转换等不同的数据操作。
3.MindSpore Insight模块: 在训练的过程会遇到很多调试调优 的问题,因此该模块对loss曲线、算子执行情况、权重参数变量等调试调优相关的数据进行可视化,方便用户在训练过程中进行调试调优。
4.MindSpore Armour模块:为MindSpore提供AI安全机制。AI安全最简单的场景就是从攻防的视角来看。
5. 跟算法开发相关的用户更加贴近,包括存放大量的AI算法模型库ModelZoo ,提供面向不同领域的开发工具套件MindSpore DevKit ,另外还有高阶拓展库MindSpore Extend ,这里面值得一提的就是MindSpore Extend中的科学计算套件MindSciences,MindSpore首次探索将科学计算与深度学习结合,将数值计算与深度学习相结合,通过深度学习来支持电磁仿真、药物分子仿真等等。
6.神经网络模型训练完后,可以导出模型或者加载存放在MindSpore Hub 中已经训练好的模型。接着有MindIR提供端云统一的IR格式,通过统一IR定义了网络的逻辑结构和算子的属性,将MindIR格式的模型文件 与硬件平台解耦,实现一次训练多次部署。因此如图所示,通过IR把模型导出到不同的模块执行推理。
设计理念
- 支持全场景统一部署
- 提供Python编程范式,简化AI编程
- 提供动态图和静态图统一的编码方式
切换成动态图模式
set_context(mode=PYNATIVE_MODE)
切换成静态图模式
设置set_context(mode=GRAPH_MODE)
- 采用AI和科学计算融合编程,使用户聚焦于模型算法的数学原生表达
- 分布式训练原生
例如设置
set_auto_parallel_context(parallel_mode=ParallelMode.AUTO_PARALLEL)
便可自动建立代价模型,为用户选择一种较优的并行模式。
层次结构
MindSpore向用户提供了3个不同层次的API,
从高到低分别为
High-Level Python API #高阶API提供了更好的封装性
Medium-Level Python API #中阶API兼顾灵活及封装,满足不同领域和层次的开发者需求
Low-Level Python API #低阶API提供更好的灵活性
-
High-Level Python API
第一层为高阶API,其在中阶API的基础上又提供了训练推理的管理、混合精度训练、调试调优等高级接口,方便用户控制整网的执行流程和实现神经网络的训练推理及调优。例如用户使用Model接口,指定要训练的神经网络模型和相关的训练设置,对神经网络模型进行训练。
-
Medium-Level Python API
第二层为中阶API,其封装了低阶API,提供网络层、优化器、损失函数等模块,用户可通过中阶API灵活构建神经网络和控制执行流程,快速实现模型算法逻辑。例如用户可调用Cell接口构建神经网络模型和计算逻辑,通过使用Loss模块和Optimizer接口为神经网络模型添加损失函数和优化方式,利用Dataset模块对数据进行处理以供模型的训练和推导使用。
-
Low-Level Python API
第三层为低阶API,主要包括张量定义、基础算子、自动微分等模块,用户可使用低阶API轻松实现张量定义和求导计算。例如用户可通过Tensor接口自定义张量,使用grad接口计算函数在指定处的导数。
华为昇腾AI全栈介绍
昇腾计算 ,是基于昇腾系列处理器构建的全栈AI计算基础设施及应用,包括昇腾Ascend系列芯片、Atlas系列硬件、CANN芯片使能、MindSpore AI框架、ModelArts、MindX应用使能等。
华为Atlas人工智能计算 解决方案,是基于昇腾系列AI处理器,通过模块、板卡、小站、服务器、集群 等丰富的产品形态,打造面向"**端、边、云"**的全场景AI基础设施方案,涵盖数据中心解决方案、智能边缘解决方案,覆盖深度学习领域推理和训练全流程。
- 昇腾应用使能:华为各大产品线基于MindSpore提供的AI平台或服务能力
- MindSpore:支持端、边、云独立的和协同的统一训练和推理框架
- CANN :昇腾芯片使能、驱动层(了解更多)。
- 计算资源:昇腾系列化IP、芯片和服务器
学习笔记~~