提交 1e08258c 编写于 作者: W wangyanfei01

ISSUE=4588791 fix PaddlePaddle name error in doc

git-svn-id: https://svn.baidu.com/idl/trunk/paddle@1416 1ad973e4-5ce8-4261-8a94-b56d1f490c56
上级 d9ea3c27
......@@ -23,7 +23,7 @@ bool型的编译选项
blas相关的编译选项
++++++++++++++++++
Paddle可以使用 `MKL <https://software.intel.com/en-us/intel-mkl>`_ ,
PaddlePaddle可以使用 `MKL <https://software.intel.com/en-us/intel-mkl>`_ ,
`Atlas <http://math-atlas.sourceforge.net/>`_ ,
`OpenBlas <http://www.openblas.net/>`_ 和
`refference Blas <http://www.netlib.org/blas/>`_ ,任意一种cblas实现。
......@@ -52,7 +52,7 @@ cmake编译时会首先在系统路径(/usr/lib\:/usr/local/lib)中寻找这些b
cuda/cudnn相关的编译选项
++++++++++++++++++++++++
Paddle可以使用 cudnn v2之后的任何一个cudnn版本来编译运行。但需要注意的是编译和
PaddlePaddle可以使用 cudnn v2之后的任何一个cudnn版本来编译运行。但需要注意的是编译和
运行使用的cudnn尽量是同一个版本。推荐使用最新版本的cudnn v5.1。
在cmake配置时可以使用 :code:`CUDNN_ROOT` 来配置CUDNN的安装路径。使用的命令也是
......
......@@ -25,7 +25,7 @@ PaddlePaddle提供的Docker镜像版本
同时,不同的稳定版本,会将latest替换成稳定版本的版本号。
Paddle提供的镜像并不包含任何命令运行,想要运行Paddle,您需要进入镜像运行paddle
PaddlePaddle提供的镜像并不包含任何命令运行,想要运行PaddlePaddle,您需要进入镜像运行paddlePaddle
程序或者自定义一个含有启动脚本的image。具体请参考注意事项中的
`使用ssh访问paddle镜像`
......
安装Paddle
安装PaddlePaddle
==========
Paddle提供数个预编译的二进制来进行安装。他们包括Docker镜像,ubuntu的deb安装包等
。欢迎贡献更多的安装包。我们更推荐使用Docker镜像来部署Paddle环境。
PaddlePaddle提供数个预编译的二进制来进行安装。他们包括Docker镜像,ubuntu的deb安装包等
。欢迎贡献更多的安装包。我们更推荐使用Docker镜像来部署PaddlePaddle环境。
.. toctree::
docker_install.rst
......
使用deb包在Ubuntu上安装paddle
使用deb包在Ubuntu上安装PaddlePaddle
=============================
Paddle目前支持ubuntu 14.04版本使用deb包安装。更多的安装包Paddle会在近期提供。
PaddlePaddle目前支持ubuntu 14.04版本使用deb包安装。更多的安装包PaddlePaddle会在近期提供。
欢迎大家贡献各个发行版的安装包(例如,ubuntu,centos,debian,gentoo)。
Paddle的ubuntu安装包分为两个版本,即CPU版本,和GPU版本,他们的下载地址是:
PaddlePaddle的ubuntu安装包分为两个版本,即CPU版本,和GPU版本,他们的下载地址是:
* CPU版本的paddle安装包: TBD
* GPU版本的paddle安装包: TBD
* CPU版本的PaddlePaddle安装包: TBD
* GPU版本的PaddlePaddle安装包: TBD
需要注意的是,目前paddle的安装包只支持
需要注意的是,目前PaddlePaddle的安装包只支持
`AVX <https://en.wikipedia.org/wiki/Advanced_Vector_Extensions>`_
指令集的X86 CPU。如果系统使用不支持 `AVX`_ 指令集的CPU运行Paddle,那么需要从源码
编译Paddle,请参考 `编译文档 <../cmake/index.html>`_ 。
指令集的X86 CPU。如果系统使用不支持 `AVX`_ 指令集的CPU运行PaddlePaddle,那么需要从源码
编译PaddlePaddle,请参考 `编译文档 <../cmake/index.html>`_ 。
用户需要先讲paddle安装包下载到本地,然后执行如下命令即可完成安装。
用户需要先将PaddlePaddle安装包下载到本地,然后执行如下命令即可完成安装。
.. code-block:: shell
dpkg -i paddle-1.0.0-cpu.deb
apt-get install -f
需要注意的是,如果使用GPU版本的paddle,请安装CUDA 7.5 和CUDNN 5到本地环境中,并
需要注意的是,如果使用GPU版本的PaddlePaddle,请安装CUDA 7.5 和CUDNN 5到本地环境中,并
设置好对应的环境变量(LD_LIBRARY_PATH等等)。
命令行参数
==========
安装好的Paddle脚本包括多条命令,他们是
安装好的PaddlePaddle脚本包括多条命令,他们是
* paddle train即为paddle的训练进程。可以使用paddle train完成单机多显卡多线程的训
* paddle train即为PaddlePaddle的训练进程。可以使用paddle train完成单机多显卡多线程的训
练。也可以和paddle pserver组合使用,完成多机训练。
* paddle pserver为paddle的parameter server进程。负责多机训练中的参数聚合工作。
* paddle version可以打印出paddle的版本和编译时信息。
* merge_model 可以将paddle的模型和配置打包成一个文件。方便部署分发。
* dump_config 可以将paddle的训练模型以proto string的格式打印出来
* make_diagram 可以使用graphviz对paddle的网络模型进行绘制,方便调试使用。
* paddle pserver为PaddlePaddle的parameter server进程。负责多机训练中的参数聚合工作。
* paddle version可以打印出PaddlePaddle的版本和编译时信息。
* merge_model 可以将PaddlePaddle的模型和配置打包成一个文件。方便部署分发。
* dump_config 可以将PaddlePaddle的训练模型以proto string的格式打印出来
* make_diagram 可以使用graphviz对PaddlePaddle的网络模型进行绘制,方便调试使用。
更详细的介绍请参考各个命令的命令行参数文档。
......
Paddle的数据提供(DataProvider)介绍
PaddlePaddle的数据提供(DataProvider)介绍
==================================
数据提供(DataProvider,后用DataProvider代替)是Paddle负责提供数据的模块。其作用是将训练数据
数据提供(DataProvider,后用DataProvider代替)是PaddlePaddle负责提供数据的模块。其作用是将训练数据
传入内存或者显存,让神经网络可以进行训练。简单的使用,用户可以使用Python的
:code:`PyDataProvider` 来自定义传数据的过程。如果有更复杂的使用,或者需要更高的效率,
用户也可以在C++端自定义一个 :code:`DataProvider` 。
Paddle需要用户在网络配置(trainer_config.py)中定义使用什么DataProvider,和DataProvider
PaddlePaddle需要用户在网络配置(trainer_config.py)中定义使用什么DataProvider,和DataProvider
的一些参数,训练文件列表(train.list)和测试文件列表(test.list)。
其中,train.list和test.list均为本地的两个文件(推荐直接放置到训练目录,以相对路径引用)。如果
......@@ -14,7 +14,7 @@ test.list不设置,或者设置为None的话,那么在训练过程中,不
参数指定的测试方式,在训练过程中进行测试,从而防止过拟合。
一般情况下,train.list和test.list为纯文本文件,其每一行对应这每一个数据文件。数据文件存放在
本地磁盘中,将文件的绝对路径或相对路径(相对于Paddle程序运行时的路径)的方式写在train.list和
本地磁盘中,将文件的绝对路径或相对路径(相对于PaddlePaddle程序运行时的路径)的方式写在train.list和
test.list中。当然,train.list和test.list也可以放置hdfs文件路径,或者数据库连接地址等等。
用户在DataProvider中需要实现如何访问其中每一个文件。
......
PyDataProvider2的使用
=====================
PyDataProvider是Paddle使用Python提供数据的推荐接口。使用该接口用户可以只关注如何
从文件中读取每一条数据,而不用关心数据如何传输给Paddle,数据如何存储等等。该数据
PyDataProvider是PaddlePaddle使用Python提供数据的推荐接口。使用该接口用户可以只关注如何
从文件中读取每一条数据,而不用关心数据如何传输给PaddlePaddle,数据如何存储等等。该数据
接口使用多线程读取数据,并提供了简单的Cache功能。
......@@ -26,9 +26,9 @@ train.list即为
.. literalinclude:: mnist_provider.py
:linenos:
其中第一行是引入Paddle的PyDataProvider2包。主要函数是process函数。process函数
其中第一行是引入PaddlePaddle的PyDataProvider2包。主要函数是process函数。process函数
具有两个参数,第一个参数是 settings 。这个参数在这个样例里没有使用,具
体可以参考 settings 。第二个参数是filename,这个参数被Paddle进程传入,为
体可以参考 settings 。第二个参数是filename,这个参数被PaddlePaddle进程传入,为
train.list中的一行(即train.list若干数据文件路径的某一个路径)。
:code:`@provider` 是一个Python的 `Decorator <http://www.learnpython.org/en/Decorators>`_
......@@ -41,10 +41,10 @@ train.list中的一行(即train.list若干数据文件路径的某一个路径)
式,请参考 `input_types`_ 的文档。
process函数是实现数据输入的主函数,在这个函数中,实现了打开文本文件,从文本文件中读取
每一行,并将每行转换成和 `input_types`_ 一致的特征,并在23行返回给Paddle进程。需要注意
每一行,并将每行转换成和 `input_types`_ 一致的特征,并在23行返回给PaddlePaddle进程。需要注意
的是, 返回的顺序需要和 `input_types`_ 中定义的顺序一致。
同时,返回数据在Paddle中是仅仅返回一条完整的训练样本,并且使用关键词 :code:`yield` 。
同时,返回数据在PaddlePaddle中是仅仅返回一条完整的训练样本,并且使用关键词 :code:`yield` 。
在PyDataProvider中,可以为一个数据文件返回多条训练样本(就像这个样例一样),只需要在
process函数调用多次 :code:`yield` 即可。 :code:`yield` 是Python的一个关键词,相关的概
念是 :code:`generator` 。使用这个关键词,可以在一个函数里,多次返回变量。
......@@ -56,8 +56,8 @@ process函数调用多次 :code:`yield` 即可。 :code:`yield` 是Python的一
这里说明了训练数据是 'train.list',而没有测试数据。引用的DataProvider是 'mnist_provider'
这个模块中的 'process' 函数。
至此,简单的PyDataProvider样例就说明完毕了。对于用户来说,讲数据发送给Paddle,仅仅需要
知道如何从 **一个文件** 里面读取 **一条** 样本。而Paddle进程帮助用户做了
至此,简单的PyDataProvider样例就说明完毕了。对于用户来说,讲数据发送给PaddlePaddle,仅仅需要
知道如何从 **一个文件** 里面读取 **一条** 样本。而PaddlePaddle进程帮助用户做了
* 将数据组合成Batch训练
* Shuffle训练数据
......@@ -140,7 +140,7 @@ DataProvider创建的时候执行。这个初始化函数具有如下参数:
input_types
+++++++++++
Paddle的数据包括四种主要类型,和三种序列模式。其中,四种数据类型是
PaddlePaddle的数据包括四种主要类型,和三种序列模式。其中,四种数据类型是
* dense_vector 表示稠密的浮点数向量。
* sparse_binary_vector 表示稀疏的零一向量,即大部分值为0,有值的位置只能取1
......@@ -189,7 +189,7 @@ init_hook可以传入一个函数。这个函数在初始化的时候会被调
* file_list 所有文件列表。
* 用户定义的参数使用args在训练配置中设置。
注意,paddle保留添加参数的权力,所以init_hook尽量使用 :code:`**kwargs` , 来接受不使用的
注意,PaddlePaddle保留添加参数的权力,所以init_hook尽量使用 :code:`**kwargs` , 来接受不使用的
函数来保证兼容性。
.. _cache::
......
Paddle的Python预测接口
PaddlePaddle的Python预测接口
==================================
Paddle目前使用Swig对其常用的预测接口进行了封装,使在Python环境下的预测接口更加简单。
PaddlePaddle目前使用Swig对其常用的预测接口进行了封装,使在Python环境下的预测接口更加简单。
在Python环境下预测结果,主要分为以下几个步骤。
* 读入解析训练配置
......@@ -17,8 +17,8 @@ Paddle目前使用Swig对其常用的预测接口进行了封装,使在Python
主要的软件包为py_paddle.swig_paddle,这个软件包文档相对完善。可以使用python的 :code:`help()` 函数查询文档。主要步骤为:
* 在程序开始阶段,使用命令行参数初始化paddle
* 在98行载入paddle的训练文件。读取config
* 在程序开始阶段,使用命令行参数初始化PaddlePaddle
* 在98行载入PaddlePaddle的训练文件。读取config
* 在100行创建神经网络,并在83行载入参数。
* 103行创建一个从工具类,用来转换数据。
- swig_paddle接受的原始数据是C++的Matrix,也就是直接写内存的float数组。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册