提交 25a3d761 编写于 作者: W Wang,Jeff

Follow the standard of leaving one empty line at the beginning of the list block.

上级 13c251df
...@@ -4,12 +4,15 @@ ...@@ -4,12 +4,15 @@
### 输入/输出数据类型 ### 输入/输出数据类型
在C-API中,按照基本数据类型在PaddlePaddle内部的定义和实现,输入数据可分为: 在C-API中,按照基本数据类型在PaddlePaddle内部的定义和实现,输入数据可分为:
1. 一维整型数组 1. 一维整型数组
1. 二维浮点型矩阵 1. 二维浮点型矩阵
- 稠密矩阵 - 稠密矩阵
- 稀疏矩阵 - 稀疏矩阵
说明: 说明:
1. 一维数组**仅支持整型值** 1. 一维数组**仅支持整型值**
- 常用于自然语言处理任务,例如:表示词语在词典中的序号; - 常用于自然语言处理任务,例如:表示词语在词典中的序号;
- 分类任务中类别标签; - 分类任务中类别标签;
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
</p> </p>
- 准备预测模型 - 准备预测模型
1. 只将神经网络结构进行序列化。 1. 只将神经网络结构进行序列化。
- 只对神经网络结构进行序列化,加载模型需同时指定:网络结构的序列化结果和模型参数存储目录。 - 只对神经网络结构进行序列化,加载模型需同时指定:网络结构的序列化结果和模型参数存储目录。
1. 将网络结构定义和训练结束存储下来的模型参数文件(多个)合并入一个文件。 1. 将网络结构定义和训练结束存储下来的模型参数文件(多个)合并入一个文件。
...@@ -18,6 +19,7 @@ ...@@ -18,6 +19,7 @@
- 预测时只需加载一个文件便于发布。 - 预测时只需加载一个文件便于发布。
- **注意**:以上两种方式只需选择其一即可。 - **注意**:以上两种方式只需选择其一即可。
- 调用 C-API 开发预测序 - 调用 C-API 开发预测序
1. 初始化PaddlePaddle运行环境。 1. 初始化PaddlePaddle运行环境。
1. 加载预测模型。 1. 加载预测模型。
1. 创建神经网络输入,组织输入数据。 1. 创建神经网络输入,组织输入数据。
...@@ -90,6 +92,7 @@ ...@@ -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. 调用[`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. 使用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. 如果使用`merge model`方式将神经网络结构和训练好的参数序列化到一个文件,请参考此[示例](https://github.com/PaddlePaddle/Mobile/blob/develop/Demo/linux/paddle_image_recognizer.cpp#L59)。
1. 通过灵活使用以上两个接口,加载模型可其它多种方式,例如也可在程序运行过程中再加载另外一个模型。 1. 通过灵活使用以上两个接口,加载模型可其它多种方式,例如也可在程序运行过程中再加载另外一个模型。
...@@ -106,6 +109,7 @@ C-API支持的所有输入数据类型和他们的组织方式,请参考“输 ...@@ -106,6 +109,7 @@ C-API支持的所有输入数据类型和他们的组织方式,请参考“输
这篇文档的之后部分会使用`argument`来特指PaddlePaddle C-API中神经网络的一个输入/输出,使用`paddle_matrix`**特指**`argument`中用于存储数据的`Matrix`类的对象。 这篇文档的之后部分会使用`argument`来特指PaddlePaddle C-API中神经网络的一个输入/输出,使用`paddle_matrix`**特指**`argument`中用于存储数据的`Matrix`类的对象。
在组织神经网络输入,获取输出时,需要思考完成以下工作: 在组织神经网络输入,获取输出时,需要思考完成以下工作:
1. 为每一个输入/输出创建`argument` 1. 为每一个输入/输出创建`argument`
1. 为每一个`argument`创建`paddle_matrix`来存储数据; 1. 为每一个`argument`创建`paddle_matrix`来存储数据;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册