CANN训练营新手模型开发学习笔记
模型相比应用的课程有些吃力,需要额外补充些知识。
为了让计算机掌握人类理解的知识,需要构筑一个由简单概念组成的多层连接网络来定义复杂对象,计算机通过对这个网络的迭代计算与训练后,可以掌握这个对象的特征,一般称这种方法为深度学习(DeepLearning,DL)
昇腾AI 全栈可以分成四个大部分:
AI框架层:端、边、云独立协同的统一训练和推理框架
芯片使能层:计算加速库、芯片算子库和高度自动化的算子开发工具。CANN
华为公司面向计算机视觉、自然语言处理、推荐系统、类机器人等领域量身打造了基于“达芬奇(DaVinci)架构”的昇腾(Ascend)AI 处理器,开启了智能之旅。为提升用户开发效率和释放昇腾AI 处理器澎湃算力,同步推出针对AI 场景的异构计算架构CANN(Compute Architecture for Neural Networks),CANN 通过提供多层次的编程接口,以全场景、低门槛、高性能的优势,支持用户快速构建基于Ascend 平台的AI 应用和业务。
昇腾AI 异构计算架构(Compute Architecture for Neural Networks,CANN)被抽象成五层架构
除了昇思MindSpore 外,TensorFlow 等其他深度学习框架下的模型并不能直接在昇腾910 AI 处理器上训练,为了使其充分利用昇腾910AI处理器的澎湃算力来提升训练性能,我们需要借助异构计算架构CANN 的Plugin适配层转换,使转换后的模型能够高效运行在昇腾910AI处理器上。
值得庆幸的是,目前,CANN 已经能够支持多种主流AI 框架,包括昇思MindSpore、TensorFlow、PyTorch、飞浆、ONNX 等,并且开发者只需要非常少的改动,即可快速搞定算法移植,大大减少切换平台的代价。