【2023 · CANN训练营第一季】——在华为AI加速型ECS上安装Pytorch和Tensorflow框架

285 阅读2分钟

前言:

        在CANN训练营提供的华为云镜像环境,通过miniconda 安装pytorch和Tensorflow框架。在模型迁移前准备阶段,可以用来在CPU上对模型训练进行验证。

        本文描述了安装过程,更换国内conda源、并分别下载例程,在Pytorch和Tensorflow框架下进行了CPU训练。还介绍了在Pytorch、Tensorflow虚拟环境以及不启动虚拟环境之间切换的方法。

一、概要

参考文档:www.hiascend.com/document/de…  安装Tensorflow

www.hiascend.com/document/de…   安装PyTorch

        训练营镜像已经安装好了CANN环境,只需要安装深度学习框架Tensorflow和Pytorch。为了方便安装和使用两种框架,采取miniconda的方式进行安装,创建两个虚拟环境,分别安装这两个框架。

        安装完成后,系统存在下述四种环境:无Conda环境;Pytorch环境;Tensorflow环境;Base环境。四种环境切换方式如下表所示:

08164da141938f8439c1b0130a5c16d5_7b4c52981ecd5ded83e9e974e7a13b4c46447212.png@942w_195h_progressive.webp 二、安装miniconda

1、下载miniconda

        在官网查找合适的版本,根据昇腾官方建议的python版本,选择3.7的版本进行安装。

408b999bb9cfee696be73b38bf47fb6e_f2cc0098ce1fca22920eee90c125b492308b66c9.png@942w_188h_progressive.webp

mkdir downloads && cd downloads   #创建下载目录

wget repo.anaconda.com/miniconda/M… #下载miniconda

chmod +x Miniconda3-py37_23.1.0-1-Linux-x86_64.sh   #赋执行权限

./Miniconda3-py37_23.1.0-1-Linux-x86_64.sh  #执行安装

按提示操作,默认安装到下述目录:

51d383c00eacd99cfd73d6573ef3a767_bda4781ee18387bb3fb266aa8714cbf86885e205.png@650w_153h_progressive.webp 安装的最后,提示

14f5e33884e2c05d4e37902fabaf1a04_870e54fd9303d4b540edf5d4bd173f14f942d791.png@935w_219h_progressive.webp

        此处选择no,选择yes,登录后会自动运行conda的base环境。等需要使用时,通过

conda activate 进行切换。

e6b1e16402fee636a9b198371b8f887f_848f0be60393b85e36f8ef39929df01c150cd0d1.png@920w_378h_progressive.webp

修改为国内conda源

vim ~/.condarc

#清华源

channels:  

ssl_verify: true

也可以通过下述开关,进行设置

conda config --set auto_activate_base false

三、安装Pytorch 1.8

参考文档:www.hiascend.com/document/de…

1、在miniconda 创建pytorch虚拟环境

创建pytorch1.8

conda create -n pt_1.8 python=3.7.5

切换到虚拟环境

conda activate pt_1.8

2、安装PyTorch环境依赖

conda install pyyaml

conda install wheel

3、安装Pytorch

CPU Only 

conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cpuonly -c pytorch

        安装完成后,用conda list查看,有pytorch表示安装成功。

c3b13582c9bb5f85c94a886d13924dbd_5f4e80cef7f7c100c5a9405a07089d81c2852f15.png@942w_396h_progressive.webp         也可以查看pytorch版本:

7b7e9bb24c135ef97696d7c25c550b37_0d6e783a7b95707547596548bcbb18badee0652d.png@942w_189h_progressive.webp 4、下载pytorch官方例程

地址:github.com/pytorch/exa…

使用git clone命令下载例程。git clone github.com/pytorch/exa…

3696a9384e97f62c2b4239e49367dd82_ab86306ff93d3857f9e285f4e6843c2ed98e83fd.png@942w_189h_progressive.webp 5、跑一个CPU训练

        选择mnist例程,进行cpu训练。

    (1)修改代码

        例程综合考虑了cpu、gpu、mac gpu下的训练,我们这里使用的是cpu训练,需要将gpu、mac gpu关闭,避免因为检查gpu、mac gpu而报错。

        用Visual Studio Code修改训练脚本如下:

018859f4683a1a0063ac559d9cc15bcf_27aff35afc2c9d8fa2db13bd603ab9a0f0f6b385.png@942w_230h_progressive.webp         修改参数,将训练好的模型落盘存储

2c785f470cea37849f39bccb25a39487_64eadc8df638747955dc1d9989a97df4d853ff90.png@942w_69h_progressive.webp     (2)运行训练脚本   python main.py

5a0e268b65a7f99d7483a183aac97850_fa2dc95ed084e6c40f1706e11ee20957d7ba6994.png@942w_453h_progressive.webp         训练完成,模型文件存储到训练脚本目录下。

0f26492e28b11f350ed3b204a8e39624_d19be44b6ee0d19eb05c07ccd966cdb088f06d83.png@942w_39h_progressive.webp 四、安装Tensorflow1.15

1、切换至base,创建tensorflow虚拟环境——conda activate base

40f103119b3e9538e050bcd14e9af399_05b228ba5c703c1f4823adee2957dc33aa0b45b4.png@942w_189h_progressive.webp 2、安装tensorflow 1.15 cpu版本

            conda install tensorflow=1.15.0

95bfc40e4b865b042055f8a4ad988194_e93943ccf9baa4cad58a3b1d25694107e4c27697.png@942w_272h_progressive.webp 3、安装验证

35d3b44782adae2be44d2012f0540040_84cc4cda4fdc03bc5669315fa924a72f140f94a2.png@942w_104h_progressive.webp 4、下载lenet例程

        git clone gitee.com/qmckw/lenet…

        原始代码直接运行会报错:ImportError: cannot import name ‘tutorials’ from ‘tensorflow_core.examples’,需要改一下代码。

a44a8253c9ef60fe42565da0bce7ab36_9ceeb2e140d97f01fb2b2f505ba28b36bb1a5c45.png@942w_300h_progressive.webp         执行训练 python Train.py

b979c9a9a34c5b14aa873e9091d53c47_16ae72f43ae934484b463aa947de7a6d4369c832.png@942w_618h_progressive.webp