paddlepaddle框架小白入门级指南

6423

paddlepaddle框架小白入门级指南

引言

一.准备工作

1.jupyter notebook

2.pycharm及GPU配置

3.pip,numpy,matplotlib安装

二.paddle安装排雷

1.安装时注意

2. paddle安装后导入到PyCharm,设置解释器

三.从python到paddle,paddle框架优势利用

引言

作为一名初步进入深度学习领域的小白来说,复杂的命令行操作,一些看不懂的专业英语术语,满篇的英文接口与方法,经常让人感到烦恼甚至劝退。然而,作为国产的深度学习框架工具,飞桨提供了一个完全国产化的平台,功能强大而且丰富。本文为刚刚接触paddle框架的小白排雷,顺便阐述飞桨框架的一些使用技巧,防止新手因为信息量过于庞大或者不善于查找资料而烦恼

一.准备工作

1.jupyter notebook

在ai studio中,paddle框架的学习是结合jupyter notebook一起使用的,因而为了使用简便,建议预先安装jupyter notebook(有pytorch和anaconda使用经历的大佬们电脑中一般已经有了,可以先查看一下)

2.pycharm及GPU配置

对于安装有GPU或者使用的笔记本电脑显卡为NVIDIA的用户,推荐安装pycharm以便获取更快速的代码运行速度(虽然飞桨官方有算力卡,提供CPU和GPU服务,但是以后总会在自己电脑上跑的呀)。GPU的环境下运行速度显著快于CPU,更改使用环境参考代码:with fluid.dygraph.guard(place),在place赋值时可供选择

use_gpu = True

place = fluid.CUDAPlace(0) if use_gpu else fluid.CPUPlace()

其中0代表0号GPU卡,一般配置有GPU的电脑都是4卡,查找卡的名称及使用情况,请使用命令行输入: 启动多GPU的训练,还需要在命令行中设置一些参数变量。打开终端,运行如下命令:

$ python -m paddle.distributed.launch --selected_gpus=0,1,2,3 --log_dir ./mylog train_multi_gpu.py

paddle.distributed.launch:启动分布式运行。 selected_gpus:设置使用的GPU的序号(需要是多GPU卡的机器,通过命令watch nvidia-smi查看GPU的序号)。 log_dir:存放训练的log,若不设置,每个GPU上的训练信息都会打印到屏幕。 train_multi_gpu.py:多GPU训练的程序,包含修改过的train_multi_gpu()函数。 注意,使用GPU训练时代码和CPU有三处差异:以mnist数据集的训练过程为例,在修改过的train_multi_gpu()函数中:

#GPU训练过程:

def train_multi_gpu():

##修改1-从环境变量获取使用GPU的序号

place = fluid.CUDAPlace(fluid.dygraph.parallel.Env().dev_id)

with fluid.dygraph.guard(place):

##修改2-对原模型做并行化预处理

strategy = fluid.dygraph.parallel.prepare_context()

model = MNIST()

model = fluid.dygraph.parallel.DataParallel(model, strategy)

model.train()

# 调用加载数据的函数

train_loader = load_data('train')

##修改3-多GPU数据读取,必须确保每个进程读取的数据是不同的

train_loader = fluid.contrib.reader.distributed_batch_reader(train_loader)

optimizer = fluid.optimizer.SGDOptimizer(learning_rate=0.01, parameter_