本章学习目标
- 了解异构计算架构CANN在神经网络训练中发挥的主要作用。
- 掌握如何基于CANN将TensorFlow模型迁移到晟腾AI处理器上。
- 掌握如何在晟腾AI处理器上进行模型训练,感受晟腾AI的极致性能。
- 掌握如何查看训练日志和训练结果,具备基本的问题定界、定位能力。
AI模型开发基础知识入门
具备Python编程经验
示例代码、联系涉及Python语言的如下基础知识,建议在学习前先学习这部分的内容:
- 使用位置和关键字参数定义和调用函数
- 字典、列表、集合(创建、访问、和迭代)
- for循环,for具有多个迭代器遍历的循环(例如,for a,b in [(1,2),(3,4)])
- if/else条件块和条件表达式
- 字符串格式(例如,‘%.2f’ % 3.14)
- 变量、赋值、基本数据类型(int、float、bool、str等)
了解深度学习和神经网络
为了让计算机掌握人类理解的知识,需要构建一个由简单概念组成的多层链接网络来点定义复杂对象,计算机通过对这个网络的迭代计算与训练后,可以掌握这个对象的特征,一般称这种方法为深度学习(Deeplearning,DL)。
互联网的发展产生了庞大的数据量,为深度学习的发展提供了更大的机会,也让人工智能成为当今的热点,而深度神经网络成了热点中的热点。深度学习经过一系列的发展之后,展现出巨大的应用价值,不断受到工业界、学术界的密切关注。深度学习在图像、语言、自然语言处理、大数据特征提取和广告点击率预估方面取得明细进展。
关于深度学习的基本原理、基本概念等介绍,可以点击
了解TensorFlow AI框架
本课程用于将基于TensorFlow的PythonAPI开发的训练脚本,将模型迁移到晟腾AI处理器Soc上执行训练,因此需要了解TensorFlow框架。具体可以参考
了解基于CANN的模型开发流程
晟腾910 AI处理器是华为在2019年发布的人工智能(AI)专用的神经网络处理器。当前业界大多数训练脚本基于TensorFlow的Python API开发,默认运行在CPI/GPU/TPU上,为了使其能够利用晟腾910 AI 处理器的澎湃算力执行训练,提升训练性能,我们需要基于CANN对TensorFlow模型进行适配和训练,以下是就与CANN的模型开发流程:LINK
了解遇到问题如何求助
模型调试和调优过程中,不知道该怎么解决,或者有优化建议需要反馈,可以借助以下渠道:
- 在华为方集中组织培训的场景下,可求助培训或对应课程的接口人。
- 开发者自学的场景下:
TensorFlow模型迁移详解
为什么要做模型迁移
目前人工智能领域内,AI算法模型搭建方面的技艺已经是炉火纯青,市面上用于AI模型搭建的深度学习框架,处理华为开源的昇思MindSpore,还有Google的TensorFlow、Facebook的Pytorch、Caffe等。
除了昇思MindSpore外,TensorFlow等其他深度学习框架下的模型并不能直接在晟腾910 AI处理器上训练,为了使其充分利用晟腾910 AI处理器的澎湃算力来提升训练性