检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
模型精度调优 场景介绍 精度问题诊断 精度问题处理 父主题: 基于AIGC模型的GPU推理业务迁移至昇腾指导
基于ModelArts Standard运行GPU训练作业 在ModelArts Standard上运行GPU训练作业的场景介绍 在ModelArts Standard运行GPU训练作业的准备工作 在ModelArts Standard上运行GPU单机单卡训练作业 在ModelArts
动态shape 在某些推理场景中,模型输入的shape可能是不固定的,因此需要支持用户指定模型的动态shape,并能够在推理中接收多种shape的输入。在CPU上进行模型转换时无需考虑动态shape问题,因为CPU算子支持动态shape;而在Ascend场景上,算子需要指定具体的
模型适配 基于MindSpore Lite的模型转换 动态shape 父主题: GPU推理业务迁移至昇腾的通用指导
Diffusion模型通过MSLite进行转换后,迁移在昇腾设备上运行。 图3 Stable Diffusion模型迁移到Ascend上进行推理 父主题: GPU推理业务迁移至昇腾的通用指导
昇腾性能自动诊断工具使用说明 compare_tools 性能比对工具,将在GPU和NPU采集的Profiling数据进行性能拆解和分类比对,展示算子、通信、内存等类别的性能比对数据。 下载工具源码使用。 性能比对工具 cluster_analyse 集群性能分析工具,采集好的多机Profiling
检查资源分配情况(cpu/mem/gpu/snt9/infiniband)是否符合预期。 通过CloudShell登录到Linux工作页面,检查GPU工作情况: 通过输入“nvidia-smi”命令,查看GPU工作是否异常。 通过输入“nvidia-smi -q -d TEMPERATURE”命令,
PyTorch迁移精度调优 精度问题概述 精度调优总体思路 精度调优前准备工作 msprobe精度分析工具使用指导 父主题: GPU训练业务迁移至昇腾的通用指导
生成的图片fantasy_landscape.png会保存在当前路径下,该图片也可以作为后期精度校验的一个对比。 图2 生成图片 父主题: 基于AIGC模型的GPU推理业务迁移至昇腾指导
日志提示Compile graph failed 问题现象 日志提示:Compile graph failed。 图1 报错提示 原因分析 模型转换时未指定Ascend后端。 处理方法 需要在模型转换阶段指定“--device=Ascend”。 父主题: 常见问题
精度问题诊断 逐个替换模型,检测有问题的模型 该方式主要是通过模型替换,先定位出具体哪个模型引入的误差,进一步诊断具体的模型中哪个算子或者操作导致效果问题,模型替换原理如下图所示。通过设置开关选项(是否使用onnx模型),控制模型推理时,模型使用的是onnx模型或是mindir的模型。
save(traced_model, "traced_bert.pt") 转换关键参数准备 对应的模型转换成MindIR格式,通过后端绑定的编译形式来运行以达到更好的性能(类似静态图的运行模式),所以需要提前准备以下几个重点参数。 输入的inputShape,包含batch信息。 MSLite涉及到编译优化
Megatron-DeepSpeed是一个基于PyTorch的深度学习模型训练框架。它结合了两个强大的工具:Megatron-LM和DeepSpeed,可在具有分布式计算能力的系统上进行训练,并且充分利用了多个GPU和深度学习加速器的并行处理能力。可以高效地训练大规模的语言模型。 M
0 到 1 制作自定义镜像并用于训练(PyTorch+CPU/GPU) 本章节介绍如何从0到1制作镜像,并使用该镜像在ModelArts平台上进行训练。镜像中使用的AI引擎是PyTorch,训练使用的资源是CPU或GPU。 本实践教程仅适用于新版训练作业。 场景描述 本示例使用Linux
场景介绍 本小节通过一个具体问题案例,介绍模型精度调优的过程。 如下图所示,使用MindSpore Lite生成的图像和onnx模型的输出结果有明显的差异,因此需要对MindSpore Lite pipeline进行精度诊断。 图1 结果对比 在MindSpore Lite 2.0
msprobe精度比对 精度比对功能主要针对两类场景的问题: 同一模型,从CPU或GPU移植到NPU中存在精度下降问题,对比NPU芯片中的API计算数值与CPU或GPU芯片中的API计算数值,进行问题定位。 同一模型,进行迭代(模型、框架版本升级或设备硬件升级)时存在的精度下降问
GPU A系列裸金属服务器使用CUDA cudaGetDeviceCount()提示CUDA initializat失败 问题现象 在A系列GPU裸金属服务器上,系统环境是ubuntu20.04+nvidia515+cuda11.7,使用Pytorch2.0时出现如下错误: CUDA
pipeline代码适配 onnx pipeline的主要作用是将onnx模型进行一系列编排,并在onnx Runtime上按照编排顺序执行。因此,需要将转换得到的mindir模型按照相同的逻辑进行编排,并在MindSpore Lite上执行。只需要将原始onnx的pipelin
提供“自动学习白盒化”能力,开放模型参数、自动生成模型,实现模板化开发,提高开发效率 采用自动深度学习技术,通过迁移学习(只通过少量数据生成高质量的模型),多维度下的模型架构自动设计(神经网络搜索和自适应模型调优),和更快、更准的训练参数自动调优自动训练 采用自动机器学习技术,基于
精度调优总体思路 PyTorch大模型训练的精度问题的分析、定位可以参考如下思路: 大模型训练通常使用多机训练,鉴于多机训练复现问题的成本较高,且影响因子较多,建议用户先减少模型层数,使模型能够单机训练,确认单机训练是否也存在精度问题,若存在,则使用下述手段定位精度问题,使得单机精度达标,然后再恢复层数拉起多机训练。