diff --git a/doc/build_and_install/build_from_source_cn.rst b/doc/build_and_install/build_from_source_cn.rst index cb766c3838133740892928b587edcf3843b7abce..115b92a33888abf1e1be400e1abbb58b632a2976 100644 --- a/doc/build_and_install/build_from_source_cn.rst +++ b/doc/build_and_install/build_from_source_cn.rst @@ -9,7 +9,7 @@ 为了编译PaddlePaddle,我们需要 1. 一台电脑,可以装的是 Linux, Windows 或者 MacOS 操作系统 -1. Docker +2. Docker 不需要依赖其他任何软件了。即便是 Python 和 GCC 都不需要,因为我们会把所有编译工具都安装进一个 Docker 镜像里。 diff --git a/doc/build_and_install/build_from_source_en.rst b/doc/build_and_install/build_from_source_en.rst index 556cbfdf087c340a7f7a1760f92325ab87eeea89..8fef9e7347e8d924026999bfda985381750c6b51 100644 --- a/doc/build_and_install/build_from_source_en.rst +++ b/doc/build_and_install/build_from_source_en.rst @@ -9,7 +9,7 @@ Requirements To build PaddlePaddle, you need 1. A computer -- Linux, Windows, MacOS. -1. Docker. +2. Docker. Nothing else. Not even Python and GCC, because you can install all build tools into a Docker image. We run all the tools by running this image. diff --git a/doc/dev/contribute_to_paddle_cn.md b/doc/dev/contribute_to_paddle_cn.md index 3e0bf7b3973079a2063d33b6be4fe8a9dc5c07bb..d8bf093e09b53b302225739fa67146adc7976e4b 100644 --- a/doc/dev/contribute_to_paddle_cn.md +++ b/doc/dev/contribute_to_paddle_cn.md @@ -222,6 +222,7 @@ upstream ## 提交代码的一些约定 为了使评审人在评审代码时更好地专注于代码本身,请您每次提交代码时,遵守以下约定: + 1. 请保证Travis-CI 中单元测试能顺利通过。如果没过,说明提交的代码存在问题,评审人一般不做评审。 2. 提交PUll Request前: - 请注意commit的数量: @@ -231,6 +232,7 @@ upstream 3. 如果解决了某个Issue的问题,请在该PUll Request的**第一个**评论框中加上:`fix #issue_number`,这样当该PUll Request被合并后,会自动关闭对应的Issue。关键词包括:close, closes, closed, fix, fixes, fixed, resolve, resolves, resolved,请选择合适的词汇。详细可参考[Closing issues via commit messages](https://help.github.com/articles/closing-issues-via-commit-messages)。 此外,在回复评审人意见时,请您遵守以下约定: + 1. 评审人的每个意见都必须回复(这是开源社区的基本礼貌,别人帮了忙,应该说谢谢): - 对评审意见同意且按其修改完的,给个简单的`Done`即可; - 对评审意见不同意的,请给出您自己的反驳理由。 diff --git a/doc/howto/capi/organization_of_the_inputs_cn.md b/doc/howto/capi/organization_of_the_inputs_cn.md index a889ae4ffab7be02468b4a5ac5a18e3cc77803c9..343526c213110cb9c6abaf9a12b3d634ad3fabe9 100644 --- a/doc/howto/capi/organization_of_the_inputs_cn.md +++ b/doc/howto/capi/organization_of_the_inputs_cn.md @@ -4,12 +4,15 @@ ### 输入/输出数据类型 在C-API中,按照基本数据类型在PaddlePaddle内部的定义和实现,输入数据可分为: + 1. 一维整型数组 1. 二维浮点型矩阵 + - 稠密矩阵 - 稀疏矩阵 说明: + 1. 一维数组**仅支持整型值**; - 常用于自然语言处理任务,例如:表示词语在词典中的序号; - 分类任务中类别标签; @@ -274,6 +277,7 @@ PaddlePaddle中一个计算层的输出数据组织方式和输入数据组织 如果是一个序列输入/输出由 `sequence start positions` 来记录输入/输出的序列信息。 于是,在组织神经网络输入时,需要思考完成以下工作: + 1. 为每一个输入/输出创建`argument`。 - C-API 中操作`argument`的接口请查看[argument.h](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/capi/arguments.h)。 1. 为每一个`argument`创建`paddle_matrix`或者`paddle_ivector`来存储数据。 diff --git a/doc/howto/capi/workflow_of_capi_cn.md b/doc/howto/capi/workflow_of_capi_cn.md index 1ccc72eefbc730b2eab2d51f5b04e50728b735d7..1968c1099ac5734cd68b437f2f7aa428d7b5265e 100644 --- a/doc/howto/capi/workflow_of_capi_cn.md +++ b/doc/howto/capi/workflow_of_capi_cn.md @@ -11,6 +11,7 @@

- 准备预测模型 + 1. 只将神经网络结构进行序列化。 - 只对神经网络结构进行序列化,加载模型需同时指定:网络结构的序列化结果和模型参数存储目录。 1. 将网络结构定义和训练结束存储下来的模型参数文件(多个)合并入一个文件。 @@ -18,6 +19,7 @@ - 预测时只需加载一个文件便于发布。 - **注意**:以上两种方式只需选择其一即可。 - 调用 C-API 开发预测序 + 1. 初始化PaddlePaddle运行环境。 1. 加载预测模型。 1. 创建神经网络输入,组织输入数据。 @@ -90,6 +92,7 @@ 1. 调用[`paddle_gradient_machine_create_shared_param`](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/capi/gradient_machine.h#L88)接口,与其它`gradient machine`的共享已经加载的预测模型。这种情况多出现在使用多线程预测时,通过多个线程共享同一个模型来减少内存开销。可参考[此示例](https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/capi/examples/model_inference/multi_thread/main.c)。 - 注意事项 + 1. 使用PaddlePaddle V2 API训练,模型中所有可学习参数会被存为一个压缩文件,需要手动进行解压,将它们放在同一目录中,C-API不会直接加载 V2 API 存储的压缩文件。 1. 如果使用`merge model`方式将神经网络结构和训练好的参数序列化到一个文件,请参考此[示例](https://github.com/PaddlePaddle/Mobile/blob/develop/Demo/linux/paddle_image_recognizer.cpp#L59)。 1. 通过灵活使用以上两个接口,加载模型可其它多种方式,例如也可在程序运行过程中再加载另外一个模型。 @@ -106,6 +109,7 @@ C-API支持的所有输入数据类型和他们的组织方式,请参考“输 这篇文档的之后部分会使用`argument`来特指PaddlePaddle C-API中神经网络的一个输入/输出,使用`paddle_matrix`**特指**`argument`中用于存储数据的`Matrix`类的对象。 在组织神经网络输入,获取输出时,需要思考完成以下工作: + 1. 为每一个输入/输出创建`argument`; 1. 为每一个`argument`创建`paddle_matrix`来存储数据;