【华为Ascend众智计划】MindX高性能预训练模型开发流程(持续更新...)

任务步骤

  1. ModelArts训练(ModelArts开发指导 - Wiki - Gitee.com)
  2. 将air/onxx模型转换为om模型(MindX SDK开发指导 - Wiki - Gitee.com)
  3. 基于MxBase进行推理(MxBase推理开发指导 - Wiki - Gitee.com)

ModelArts训练

ModelArts服务器入口:ModelArts服务

ModelArts官方文档(成长地图_AI开发平台ModelArts_华为云 (huaweicloud.com))

MindX 高性能预训练模型适配ModelArts视频指导

1.通过git仓库下载源码及目标数据集
2.运行在ModelArts服务器上输出模型文件
  • 具体实例:参考YOLOv4 Tiny-昇腾社区 (hiascend.com)中的“在ModelArts上应用”章节,完成ModelArts开发

  • 创建适配脚本,主要修改点为文件的拷贝和下载(moxing模块的使用),同时需要保证训练脚本调用MindSpore的export模块导出所需要的模型格式(ONNX/AIR)
    官方文档:开发自定义脚本_AI开发平台ModelArts_AI工程师用户指南_训练管理(New)_选择算法_使用自定义脚本_华为云 (huaweicloud.com)

  1. 创建OBS桶
  2. 创建算法(即从git下载的模型)
  3. 创建训练作业
  4. 导出模型air或onxx文件

MindX SDK

MindX 高性能预训练模型使用SDK推理指导视频

已完成案例(主要增量为infer和modelarts文件夹)

  • Vit

MindX SDK官方文档(建议在之后遇到问题时使用,不建议作为入门)

  • 概览&成长地图_昇腾MindX SDK (2.0.1)_华为云 (huaweicloud.com)

华为官方课程:(不推荐,和上方的视频教程内容基本一致)

  • MindX SDK四步快速入门_在线课程_华为云培训中心_云计算培训-华为云 (huaweicloud.com)
1.使用ATC脚本进行离线模型转换
  • ATC工具使用指南
    简介_昇腾CANN社区版(20.1)_推理场景_开发辅助工具指南_ATC工具使用指南_华为云 (huaweicloud.com)

    如果初始数据为已处理好的数据,代码中无任何数据预处理部分,则不用调用AIPP进行数据预处理

2.基础插件和插件开发(已有插件满足不了推理需求时才需要开发插件)
  • 插件开发文档
    插件开发步骤_昇腾MindX SDK (2.0.1)_mxManufacture 用户指南_深入开发_插件开发介绍_华为云 (huaweicloud.com)
3.流程编排(主要根据eval.py的数据逻辑进行流程编排)
  • 流程编排指导文档
    流程编排介绍_昇腾MindX SDK (2.0.1)_mxManufacture 用户指南_基础开发_华为云 (huaweicloud.com)
4.推理流程运行

直接输入tensor进入模型推理的样例

MxBase推理应用开发

MxBase推理开发指导 - Wiki - Gitee.com

本质上与SDK开发一样,使用C++代码进行数据的预处理和后处理,按照给定接口实现即可,可参考样例进行实现

你可能感兴趣的:(华为,深度学习)