原标题:专栏 | 新手入门?一步一步教你如何安装PaddlePaddle

机器之心发布

来源:百度PaddlePaddle

不久之前,机器之心联合百度推出 PaddlePaddle 专栏,为想要学习这一平台的技术人员推荐相关教程与资源。在解析过 PaddlePaddle 框架之后,从这篇文章开始上手,安装 PaddlePaddle。

目录

环境

Windows 系统的安装

在 Windows 上安装 Docker 容器

在 Windows 上安装 Ubuntu

使用 pip 安装

使用 Docker 安装

从源码编译生成安装包

在本地编译生成安装包

在 Docker 编译生成安装包

编译 Docker 镜像

测试安装环境

最后提示

项目代码

参考资料

环境

系统:Ubuntu 16.0.4(64 位)

处理器:Intel(R) Celeron(R) CPU

内存:8G

Windows 系统的安装

PaddlePaddle 目前还不支持 Windows,如果读者直接在 Windows 上安装 PaddlePaddlePaddle 的话,就会提示没有找到该安装包。如果读者一定要在 Windows 上工作的话,笔者提供两个建议:一、在 Windows 系统上使用 Docker 容器,在 Docker 容器上安装带有 PaddlePaddle 的镜像;二、在 Windows 系统上安装虚拟机,再在虚拟机上安装 Ubuntu。

在 Windows 上安装 Docker 容器

首先下载 Docker 容器的工具包 DockerToolbox,笔者使用这个安装包不仅仅只有 Docker,它还包含了 VirtualBox 虚拟机,使用者工具包我们就不用单独去安装 VirtualBox 虚拟机了,DockerToolbox 的官网下载地址:https://docs.docker.com/toolbox/toolbox_install_windows/

下载之后,就可以直接安装了,双击安装包,开始安装

选择安装路径,笔者使用默认的安装路径

然后安装所依赖的软件,因为笔者之前在电脑上已经安装了 git,所以在这里就不安装了,其他都要勾选

这一步不用修改什么,让程序为我们创建一个桌面快捷键

最后就可以安装了,等待一小段时间即可

到这里就安装完成了

安装完成之后,如果直接启动 Docker 的话,有可能可能会卡在这里,因为还有下载一个 boot2docker.iso 镜像,网速比较慢的话就可能一直卡在这里。所以我们还要镜像下一步操作

Running pre-create checks...

( default) No defaultBoot2Docker ISO found locally, downloading the latest release...

( default) Latest release forgithub.com/boot2docker/boot2docker is v17 .12.1-ce

( default) Downloading C:Users 15696.dockermachinecacheboot2docker.iso fromhttps: //github.com/boot2docker/boot2docker/releases/download/v17.12.1-ce/boot2docker.iso...

在下载 DockerToolbox 的时候,这个工具就已经带有 boot2docker.iso 镜像了。并且存在 DockerToolbox 安装的路径上,笔者的路径是:

C:Program FilesDocker Toolboxboot2docker.iso

我们把这个镜像复制到用户目录.dockermachinecache,如笔者的目录如下:

C:Users 15696.dockermachinecache

复制完成之后,双击桌面快捷方式 Docker Quickstart Terminal,启动 Docker,命令窗口会输出以下信息:

Running pre-create checks...

Creating machine...

( default) Copying C:Users 15696.dockermachinecacheboot2docker.iso to C:Users 15696.dockermachinemachines defaultboot2docker.iso...

( default) Creating VirtualBox VM...

( default) Creating SSH key...

( default) Starting the VM...

( default) Check network to re-create ifneeded...

( default) Windows might ask forthe permission to create a network adapter. Sometimes, such confirmation windowis minimized inthe taskbar.

( default) Found a newhost-only adapter: "VirtualBox Host-Only Ethernet Adapter #3"

( default) Windows might ask forthe permission to configure a network adapter. Sometimes, such confirmation windowis minimized inthe taskbar.

( default) Windows might ask forthe permission to configure a dhcp server. Sometimes, such confirmation windowis minimized inthe taskbar.

( default) Waiting foran IP...

最后看到 Docker 的 logo 就表示成功安装 Docker 容器了

## .

## ## ## ==

## ## ## ## ## ===

/"""""""""""""""""___/===

~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~

______ o __/

__/

___________/

docker is configured to use the defaultmachine withIP 192.168.99.100

For help getting started, check out the docs at https: //docs.docker.com

Start interactive shell

15696@ɵ MINGW64 ~

$

到这就可以使用 Docker 来安装 PaddlePaddle 了,具体请看本文章中关于 Docker 使用 PaddlePaddle 部分

在 Windows 上安装 Ubuntu

在 Windows 上在 Ubuntu 就要先安装虚拟机,虚拟机有很多,笔者使用的是开源的 VirtualBox 虚拟机,VirtualBox 的官网:https://www.virtualbox.org/

安装完成 VirtualBox 虚拟机之后,进入到 VirtualBox 虚拟机中点击新建,创建一个系统

选择分配的内存,我这里只是分配了 2G,如果正式使用 PaddlePaddle 训练模型,这远远不够,读者可以根据需求分配内存

创建一个虚拟硬盘

选择默认的 VDI 硬盘文件类型

这里最好是选择动态分配硬盘,这样虚拟机会根据实际占用的空间大小使用电脑本身的磁盘大小,这样会减少电脑空间的占用率的。如果是固定大小,那么创建的虚拟机的虚拟硬盘一开始就是用户设置的大小了。

这里就是选择虚拟硬盘大小的,最后分配 20G 以上,笔者分配 30G,应该够用。

然后选择刚才创建的 Ubuntu 系统,点击设置,这系统中取消勾选软驱,然后点击存储,选择 Ubuntu 镜像,笔者使用的是 64 位 Ubuntu 16.04 桌面版的镜像

最后就可以启动安装 Ubuntu 了。选择我们创建的 Ubuntu 系统,点击启动,进入到开始安装界面,为了方便使用,笔者选择中文版的

为了安装之后不用在安装和更新应用,笔者勾选了安装 Ubuntu 时下载更新,这样在安装的时候就已经更新应用了

然后是选安装的硬盘,因为我们使用的自己创建的整一个硬盘,所以我们可以直接选择青春整个硬盘并安装 Ubuntu,这里就不用考虑分区和挂载问题了

选择所在的位置,这没什么要求的,笔者随便选择一个城市

然后是选择键盘的布局,通常的键盘布局都是英语(美国)

创建 Ubuntu 的用户名称和密码

最后就是安装了,这个安装过程可能有点久,耐心等待

安装完成之后就可以在 Windows 系统上使用 Ubuntu 系统了,我们再使用 Ubuntu 来学习和使用 PaddlePaddle 做深度学习了。最好安装完成之后,把在存储中设置的 Ubuntu 镜像移除

在本篇文章之后部分都是在 Ubuntu 上操作,我们都可以使用 Ubuntu 这虚拟机来完成。

如果读者使用的是 Windows 10,可以使用 Windows 系统自带的 Linux 子系统,安装教程可以看我之前的文章 Windows10 安装 Linux 子系统。

使用 pip 安装

如果你还没有在 pip 命令的话,首先要安装 pip,要确保安装的 pip 版本是大于 9.0.0 的,否则可能无法安装 paddlepaddle。

安装 pip 命令如下:

sudo apt install python-pip

安装之后,还有看一下 pip 的的版本 pip --version,如果版本低于 9.0.0,那要先升级 pip,先要下载一个升级文件,命令如下:

wget https: //bootstrap.pypa.io/get-pip.py

下载完成之后,可以使用这个文件安装最新的 pip 了

python get-pip.py

安装 pip 就可以动手安装 paddlepaddle 了。如果权限不够,请在 root 下执行命令

pip install paddlepaddle

现在就测试看看 paddlepaddle 有没有,在 python 的命令终端中试着导入 paddlepaddle 包:

importpaddle.v2 aspaddle

如果没有报错的话就证明 paddlepaddle 安装成功了。

使用 Docker 安装

为什么要使用 Docker 安装 paddlepaddle 呢,Docker 是完全使用沙箱机制的一个容器,在这个容器安装的环境是不会影响到本身系统的环境的。通俗来说,它就是一个虚拟机,但是它本身的性能开销很小。在使用 Docker 安装 paddlepaddle 前,首先要安装 Docker,通过下面的命令就可以安装了:

sudo apt-get install docker

安装完成之后,可以使用 docker --version 查看 Docker 的版本,如果有显示,就证明安装成功了。可以使用 docker images 查看已经安装的镜像。

一切都没有问题之后,就可以用 Docker 安装 paddlepaddle 了,命令如下:

docker pull docker.paddlepaddlehub.com/paddle

在这里不得不说的是,这个安装过程非常久,也许是笔者的带宽太小了。安装完成后,可以再使用 docker images 命令查看安装的镜像,应该可以 看到类似这样一个镜像,名字和 TAG 会相同,其他信息一般不同

docker.paddlepaddlehub.com/paddle latest 2b1ae16d846e 27hours ago 1.338GB

从源码编译生成安装包

我们的硬件环境都有很大的不同,官方给出的 pip 安装包不一定是符合我们的需求,比如笔者的电脑是不支持 AVX 指令集的,在官方中没找到这个的安装包(也行现在已经有了),所以我们要根据自己的需求来打包一个自己的安装包。

在本地编译生成安装包

1. 安装依赖环境

在一切开始之前,先要安装好依赖环境,下面表格是官方给出的依赖环境

1.1 安装 GCC

一般现在的 Ubuntu 都是高于个版本了,可以使用 gcc --version 查看安装的版本。比如笔者的是 4.8.4,如果你的是版本是低于 4.8.2 的就要更新一下了

sudo apt-get install gcc -4.9

1.2 安装 CMake

先要从官网下 CMake 源码

wget https: //cmake.org/files/v3.8/cmake-3.8.0.tar.gz

解压源码

tar -zxvf cmake -3.8.0.tar.gz

依次执行下面的代码

# 进入解压后的目录

cd cmake -3.8.0

# 执行当前目录的 bootstrap 程序

./bootstrap

# make 一下

make

# 开始安装

sudo make install

查看是否安装成功,cmake --version,如果正常显示版本,那已经安装成功了。

1.3 安装 pip

关于安装 pip9.0.0 以上的版本,在上面的使用 pip 安装部分已经讲了,这里就不在熬述了

1.4 安装 numpy

安装 numpy 很简单,一条命令就够了

sudo apt-get install python-numpy

顺便多说一点,matplotlib 这个包也经常用到,顺便安装一下

sudo apt-get install python-matplotlib

1.5 安装 SWIG

执行下面代码安装 SWIG,安装成功之后,使用 swig -version 检查安装结果

sudo apt-get install -y git curl gfortran make build-essential automake swig libboost-all-dev

1.6 安装 Go

官方说可选择,那看情况吧,如果像安装安装吧,笔者顺便安装了,就一条代码的事情,老规则 go version

sudo apt-get install golang

到这里,依赖环境就已经安装好了,准备安装 paddlepaddle。

2. 首先要在 GitHub 上获取 paddlepaddle 源码

git clone https: //github.com/PaddlePaddle/Paddle.git

3. 然后输以下命令

# 进入刚下载的 Paddle 里面

cd Paddle

# 创建一个 build 文件夹

mkdir build

# 进入 build 文件夹里

cd build

# 这就要选好你的需求了,比如笔者没有使用 GPU,不支持 AVX,为了节省空间,我把测试关闭了,这样会少很多空间。最后不要少了..

cmake .. -DWITH_GPU=OFF -DWITH_AVX=OFF -DWITH_TESTING=OFF

# 最后 make,生成你想要的安装包,这个可能很久, 一定要有耐心

make

经过长久的 make 之后,终于生成了我们想要的安装包,它的路径在 Paddle/build/python/dist 下,比如笔者在该目录下有这个安装包 paddlepaddle-0.11.0-cp27-cp27mu-linux_x86_64.whl,你的命名可能不是这个。之后就可以安装了,使用 pip 安装:

# 请切入到该目录

cd build/python/dist/

# 每个人的安装包名字可能不一样。如果权限不够,请在 root 下执行命令

pip install paddlepaddle -0.11.0-cp27-cp27mu-linux_x86_64.whl

这个我们就已经安装了 paddlepaddle,现在就测试看看 paddlepaddle 有没有安装成功了,在 python 的命令终端中试着导入 paddlepaddle 包:

importpaddle.v2 aspaddle

如果没有报错的话就证明 paddlepaddle 安装成功了。

在 Docker 编译生成安装包

使用 Docker 就轻松很多了,有多轻松,看一下便知 。

1. 首先要在 GitHub 上获取 paddlepaddle 源码

git clone https: //github.com/PaddlePaddle/Paddle.git

2. 切入到项目的根目录下

cd Paddle

3. 生成安装包

下面一行代码,提醒一下,这个过程非常长,一定要有耐心,顺便把编译测试关了,减少空间

docker run -it -v $PWD: /paddle -e "WITH_GPU=OFF" -e "WITH_AVX=OFF" -e "-DWITH_TESTING=OFF" docker.paddlepaddlehub.com/paddle:latest-dev bash -x /paddle/paddle/s/docker/build.sh

同样会在 Paddle/build/python/dist 下生成一个安装包,这对比在本地生成的安装包,是不是要简单很多,没错这就是 Docker 强大之处,所有的依赖环境都帮我们安装好了,现在只要安装这个安装包就行了:

# 请切入到该目录

cd build/python/dist/

# 每个人的安装包名字可能不一样。如果权限不够,请在 root 下执行命令

pip install paddlepaddle -0.11.0-cp27-cp27mu-linux_x86_64.whl

同样我们要测试看看 paddlepaddle 有没有安装成功了,在 python 的命令终端中试着导入 paddlepaddle 包:

importpaddle.v2 aspaddle

如果没有报错的话就证明 paddlepaddle 安装成功了。

编译 Docker 镜像

如果你比较喜欢使用 Docker 来运行你的 paddlepaddle 代码,但是有没有你想要的镜像,这是就要自己来制作一个 Docker 镜像了,比如笔者的电脑是不支持 AVX 指令集的,还只有 CPU,那么我就要一个不用 AVX 指令集和使用 CPU 训练的镜像。好吧,我们开始吧

1. 我们要从 GitHub 下载源码:

git clone https: //github.com/PaddlePaddle/Paddle.git

2. 安装开发工具到 Docker image 里

# 切入到 Paddle 目录下

cd Paddle

# 下载依赖环境并创建镜像,别少了最后的.

docker build -t paddle:dev .

有可能它不能够命名为 paddle:dev,我们可以对他从重新命名,ID 要是你镜像的 ID

# docker tag

例如:docker tag 1e835127cf33 paddle:dev

3. 编译

# 这个编译要很久的,请耐心等待

docker run --rm -e WITH_GPU=OFF -e WITH_AVX=OFF -v $PWD: /paddle paddle:dev

安装完成之后,使用 docker images 查看刚才安装的镜像。

测试安装环境

我们就使用官方给出的一个例子,来测试我们安装 paddlepaddle 真的安装成功了

1. 创建一个记事本,命名为 housing.py,并输入以下代码:

importpaddle.v2 aspaddle

# Initialize PaddlePaddle.

paddle.init(use_gpu=False, trainer_count= 1)

# Configure the neural network.

x = paddle.layer.data(name= 'x', type=paddle.data_type.dense_vector( 13))

y_predict = paddle.layer.fc(input=x, size= 1, act=paddle.activation.Linear())

# Infer using provided test data.

probs = paddle.infer(

output_layer=y_predict,

parameters=paddle.dataset.uci_housing.model(),

input=[item foritem inpaddle.dataset.uci_housing.test()()])

fori inxrange(len(probs)):

print 'Predicted price: ${:,.2f}'.format(probs[i][ 0] * 1000)

2. 执行一下该代码

在本地执行代码请输入下面的命令

python housing.py

在 Docker 上执行代码的请输入下面的代码

docker run -v $PWD: /work -w /work -p 8899: 8899docker.paddlepaddle.org/paddle python housing.py

-v 命令是把本地目录挂载到 docker 镜像的目录上,-w 设置该目录为工作目录,-p 设置端口号,使用到的镜像是在使用 Docker 安装部分安装的镜像 docker.paddlepaddle.org/paddle

3. 终端会输出下面类似的日志

I0116 08: 40: 12.0040961Util.cpp: 166] commandline: --use_gpu=False --trainer_count= 1

Cache file /root/.cache/paddle/dataset/fit_a_line.tar/fit_a_line.tar not found, downloading https: //github.com/PaddlePaddle/book/raw/develop/01.fit_a_line/fit_a_line.tar

[==================================================]

Cache file /root/.cache/paddle/dataset/uci_housing/housing.data not found, downloading https: //archive.ics.uci.edu/ml/machine-learning-databases/housing/housing.data

[==================================================]

Predicted price: $ 12, 316.63

Predicted price: $ 13, 830.34

Predicted price: $ 11, 499.34

Predicted price: $ 17, 395.05

Predicted price: $ 13, 317.67

Predicted price: $ 16, 834.08

Predicted price: $ 16, 632.04

如果没有成功运行该代码,报错信息如下,说明安装的 paddlepaddle 版本过低,请安装高版本的 paddlepaddle

I0116 13: 53: 48.95713615297Util.cpp: 166] commandline: --use_gpu=False --trainer_count= 1

Traceback (most recent call last):

File "housing.py", line 13, in< module>

parameters=paddle.dataset.uci_housing.model(),

AttributeError: 'module'object has no attribute 'model'

最后提示

有很多学习者会出现明明安装完成 PaddlePaddle 了,但是在 PaddlePaddle 的时候,在初始化 PaddlePaddle 这一行代码出错

paddle.init(use_gpu=False, trainer_count= 1)

这个多数是读者的电脑不支持 AVX 指令集,而在 PaddlePaddle 的时候,安装的是支持 AVX 指令集的版本,所以导致在初始化 PaddlePaddle 的时候报错。所以在安装或者编译 PaddlePaddle 安装包时,要根据读者电脑本身的情况,选择是否支持 AVX 指令集。查看电脑是否支持 AVX 指令集,可以在终端输入以下命令,输出 Yes 表示支持,输出 No 表示不支持。

ifcat /proc/cpuinfo | grep -i avx; then echo Yes; elseecho No; fi

项目代码

GitHub 地址:https://github.com/yeyupiaoling/LearnPaddle

参考资料

http://paddlepaddle.org/

https://pip.pypa.io/en/stable/

http://www.runoob.com/

http://www.linuxidc.com/Linux/2016-12/138489.htm

https://www.jianshu.com/p/c6264cd5f5c7

本文为机器之心专栏,转载请联系本公众号获得授权。返回搜狐,查看更多

责任编辑:

paddlepaddle测试安装_专栏 | 新手入门?一步一步教你如何安装PaddlePaddle相关推荐

  1. dt测试软件的学习心得,无线网络优化dt测试心得_适合新手入门,高手进阶_5年项目经验实战经验.docx...

    无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 路测中不常见的问题和个人心得 1.深井子镇投诉测试报告 ...

  2. csi python 摄像头 树莓派_【新手入门】树莓派Raspberry学习笔记4 摄像头安装+配置+简单使用...

    树莓派Raspberry Pi3B+学习笔记4 今日达成: ①摄像头安装+配置+简单使用 ②树莓派上python编程初尝试 这份笔记里主要讲的是摄像头的安装+配置+简单使用. 一.摄像头和树莓派连接+ ...

  3. worknc的后处理如何安装_UG NX后处理安装方法(新手入门)

    大家好,我是星辉.每天分享UG知识.实用技巧.需要学习资料的可以聊天发送"学习资料" 今天教你如何把下载的UG后处理安装到UG软件上使用,首先我们下载得到UG后处理. 通常有三种格 ...

  4. 一分钟学会看k线图_新手入门:资深炒股高手教你一分钟学会看k线图

    原标题:新手入门:资深炒股高手教你一分钟学会看k线图 新手入门:资深炒股高手教你一分钟学会看k线图 在技术分析中,强调量是价的先行指标,没有量的配合,价格的变动是虚的.不真实的.有一个专门描述成交的指 ...

  5. ENVI5.3 安装教程,新手入门(超详细)附安装包和常见问题

    ENVI是一个完整的遥感图像处理平台,广泛应用于科研.环境保护.气象.农业.林业.地球科学.遥感工程.水利.海洋等领域.目前ENVI已成为遥感影像处理的必备软件,包含辐射定标.大气校正.镶嵌裁剪.分类 ...

  6. 【新手入门】树莓派Raspberry学习笔记4 摄像头安装+配置+简单使用

    树莓派Raspberry Pi3B+学习笔记4 今日达成: ①摄像头安装+配置+简单使用 ②树莓派上python编程初尝试 这份笔记里主要讲的是摄像头的安装+配置+简单使用. 一.摄像头和树莓派连接+ ...

  7. 上位机plc编程入门_【新手入门】西门子PLC编程入门学习

    一.S7-200PLC 的硬件结构及系统构成.安装与接线学习 1.学习什么内容?重点学习什么内容? (1)PLC的硬件结构 (2)PLC的系统构成及CPU和模块参数 (3)PLC的选型,安装及接线(重 ...

  8. ise 时钟约束_「新手入门」ISE工程升级到Vivado及板级信号调试技术

    由于疫情,大家最近都只能在家中进行学习.同时实验室的研一同学也在通过Teamviewer进行培训项目的实际操作.这次把两位同学的研究成果给大家分享一下,老司机们可以重温一下当年自己新手时的情景,新司机 ...

  9. 新手入门python的注意事项_【新手入门Python语言的方法】

    2018年编程语言榜,Python位居榜首,很多学员对这门表示有着强烈的兴趣. 中公优教育小编这次就来谈谈Python入门方法. 下面直接进入今天的主题: 学编程,python算是一个不错的选择.因为 ...

最新文章

  1. 3ds max 变形器使用
  2. 注意啦!10 个你需要了解的 Linux 网络和监控命令
  3. 大型数据中心蓄电池规划与应用中的痛点及展望
  4. JQuery判断数组中是否包含某个元素$.inArray(js, arr);
  5. html文字斜体变成正体,$$中的字母如何由斜体变成正体?
  6. linux history操作的路径,绝对路径和相对路径,目录命令(cd,mkdir,rm,history)
  7. jbpm 5 安装教程
  8. Android中视图重绘的方法
  9. java 与 .net socket_java.net.ServerSocket和java.net.Socket
  10. 中国百亿富人达315位:马云身价超3千亿,每小时净赚超上市公司高管年薪
  11. ICANN总裁Fadi Chehadé:IPv6峰会全面推动了IPv6在中国的发展与产业落地
  12. java super.参数,Java super和this的对比及使用
  13. 千万不要攻击中国网站!传奇美国黑客凯文·米特尼克的警告
  14. 商标变更的流程介绍有哪些
  15. OPPOX9007_官方线刷包_救砖包_解账户锁
  16. Excel.Application组件使用方法 matlab可以参考使用
  17. text pad java_Textpad的安装和配置
  18. Unity制作多选题
  19. Ghost高级教程——克隆备份
  20. 同浏览器 不同窗口 共享session 解决

热门文章

  1. java毕业设计项目选题基于SSM+JSP+MYSQL+H-UI 实现的校园食堂点餐|订餐系统
  2. cmd命令如何cd指定路径
  3. 开题报告中拟解决的主要问题怎么写?
  4. python datetime 时间加一秒,一分钟
  5. Lua入门(1) 编译环境、变量类型与三种结构的实现
  6. 项目管理之项目集管理
  7. 大数据分析:结合 Hadoop或 Elastic MapReduce使用 Hunk
  8. 初中数学503个必考知识点_干货丨初中数学必考的21个知识点
  9. 深入浅出kafka原理-5-kafka同步副本ISR高低水位HW
  10. 剑指 Offer 10- I. 斐波那契数列