@@ -15,11 +15,15 @@ Executor支持单GPU、多GPU以及CPU运行。
1515参数
1616::::::::::::
1717
18- - **place ** (paddle.CPUPlace()|paddle.CUDAPlace(N)|None) – 该参数表示Executor执行所在的设备,这里的N为GPU对应的ID。当该参数为 `None ` 时,PaddlePaddle会根据其安装版本设置默认的运行设备。当安装的Paddle为CPU版时,默认运行设置会设置成 `CPUPlace() ` ,而当Paddle为GPU版时,默认运行设备会设置成 `CUDAPlace(0) ` 。默认值为None。注意:多卡训练初始化Executor时也只用传入一个Place或None,其他API会处理使用的多卡,见 `多卡使用方式 <https://www.paddlepaddle.org.cn/documentation/docs/zh/guides/01_paddle2.0_introduction/update_cn.html#danjiduokaqidong >`_
18+ - **place ** (paddle.CPUPlace()|paddle.CUDAPlace(N)|None) – 该参数表示Executor执行所在的设备,这里的N为GPU对应的ID。当该参数为 `None ` 时,PaddlePaddle会根据其安装版本设置默认的运行设备。当安装的Paddle为CPU版时,默认运行设置会设置成 `CPUPlace() ` ,而当Paddle为GPU版时,默认运行设备会设置成 `CUDAPlace(0) ` 。默认值为None。
19+
20+
21+ .. note ::
22+ 多卡训练初始化Executor时也只用传入一个Place或None,其他API会处理使用的多卡,见 `多卡使用方式 <https://www.paddlepaddle.org.cn/documentation/docs/zh/guides/01_paddle2.0_introduction/update_cn.html#danjiduokaqidong >`_
1923
2024返回
2125::::::::::::
22- 初始化后的 ``Executor `` 对象
26+ 初始化后的 ``Executor `` 对象。
2327
2428代码示例
2529::::::::::::
@@ -85,7 +89,8 @@ close()
8589关闭执行器。该接口主要用于对于分布式训练,调用该接口后不可以再使用该执行器。该接口会释放在PServers上和目前Trainer有关联的资源。
8690
8791**返回 **
88- 无
92+
93+ 无。
8994
9095**代码示例 **
9196
@@ -118,7 +123,8 @@ run(program=None, feed=None, fetch_list=None, feed_var_name='feed', fetch_var_na
118123 - **use_prune ** (bool) - 该参数表示输入Program是否会被裁剪。如果该参数为True,会根据feed和fetch_list裁剪Program,这意味着对生成fetch_list没有必要的算子和变量会被裁剪掉。默认为False,即算子和变量在运行过程不会被裁剪。注意如果Optimizer.minimize()返回的tuple被作为fetch_list参数,那么use_prune会被重载为True并且Program会被裁剪。
119124
120125**返回 **
121- 返回fetch_list中指定的变量值
126+
127+ 返回fetch_list中指定的变量值。
122128
123129.. note ::
124130 1. 如果是多卡训练,并且feed参数为dict类型,输入数据将被均匀分配到不同的卡上,例如:使用2块GPU训练,输入样本数为3,即[0, 1, 2],经过拆分之后,GPU0上的样本数为1,即[0],GPU1上的样本数为2,即[1, 2]。如果样本数少于设备数,程序会报错,因此运行模型时,应额外注意数据集的最后一个batch的样本数是否少于当前可用的CPU核数或GPU卡数,如果是少于,建议丢弃该batch。
@@ -229,17 +235,18 @@ infer_from_dataset的文档与train_from_dataset几乎完全相同,只是在
229235
230236**参数 **
231237
232- - **program ** (Program|CompiledProgram) – 需要执行的program,如果没有给定那么默认使用default_main_program (未编译的)
233- - **dataset ** (paddle.fluid.Dataset) – 在此函数外创建的数据集,用户应当在调用函数前提供完整定义的数据集。必要时请检查Dataset文件。默认为None
234- - **scope ** (Scope) – 执行这个program的域,用户可以指定不同的域。默认为全局域
235- - **thread ** (int) – 用户想要在这个函数中运行的线程数量。线程的实际数量为min(Dataset.thread_num, thread),如果thread > 0,默认为0
236- - **debug ** (bool) – 是否开启debug模式,默认为False
237- - **fetch_list ** (Tensor List) – 返回变量列表,每个变量都会在预测过程中被打印出来,默认为None
238- - **fetch_info ** (String List) – 每个变量的打印信息,默认为None
239- - **print_period ** (int) – 每两次打印之间间隔的mini-batches的数量,默认为100
238+ - **program ** (Program|CompiledProgram) – 需要执行的program,如果没有给定那么默认使用default_main_program (未编译的)。
239+ - **dataset ** (paddle.fluid.Dataset) – 在此函数外创建的数据集,用户应当在调用函数前提供完整定义的数据集。必要时请检查Dataset文件。默认为None。
240+ - **scope ** (Scope) – 执行这个program的域,用户可以指定不同的域。默认为全局域。
241+ - **thread ** (int) – 用户想要在这个函数中运行的线程数量。线程的实际数量为min(Dataset.thread_num, thread),如果thread > 0,默认为0。
242+ - **debug ** (bool) – 是否开启debug模式,默认为False。
243+ - **fetch_list ** (Tensor List) – 返回变量列表,每个变量都会在预测过程中被打印出来,默认为None。
244+ - **fetch_info ** (String List) – 每个变量的打印信息,默认为None。
245+ - **print_period ** (int) – 每两次打印之间间隔的mini-batches的数量,默认为100。
240246
241247**返回 **
242- None
248+
249+ 无。
243250
244251**代码示例 **
245252
@@ -268,21 +275,23 @@ train_from_dataset(program=None, dataset=None, scope=None, thread=0, debug=False
268275
269276从预定义的数据集中训练。 数据集在paddle.fluid.dataset中定义。 给定程序(或编译程序),train_from_dataset将使用数据集中的所有数据样本。 输入范围可由用户给出。 默认情况下,范围是global_scope()。训练中的线程总数是thread。 训练中使用的线程数将是数据集中threadnum的最小值,同时也是此接口中线程的值。 可以设置debug,以便执行器显示所有算子的运行时间和当前训练任务的吞吐量。
270277
271- 注意:train_from_dataset将销毁每次运行在executor中创建的所有资源。
278+ .. note ::
279+ train_from_dataset将销毁每次运行在executor中创建的所有资源。
272280
273281**参数 **
274282
275- - **program ** (Program|CompiledProgram) – 需要执行的program,如果没有给定那么默认使用default_main_program (未编译的)
276- - **dataset ** (paddle.fluid.Dataset) – 在此函数外创建的数据集,用户应当在调用函数前提供完整定义的数据集。必要时请检查Dataset文件。默认为None
277- - **scope ** (Scope) – 执行这个program的域,用户可以指定不同的域。默认为全局域
278- - **thread ** (int) – 用户想要在这个函数中运行的线程数量。线程的实际数量为min(Dataset.thread_num, thread),如果thread > 0,默认为0
279- - **debug ** (bool) – 是否开启debug模式,默认为False
280- - **fetch_list ** (Tensor List) – 返回变量列表,每个变量都会在训练过程中被打印出来,默认为None
281- - **fetch_info ** (String List) – 每个变量的打印信息,默认为None
282- - **print_period ** (int) – 每两次打印之间间隔的mini-batches的数量,默认为100
283+ - **program ** (Program|CompiledProgram) – 需要执行的program,如果没有给定那么默认使用default_main_program (未编译的)。
284+ - **dataset ** (paddle.fluid.Dataset) – 在此函数外创建的数据集,用户应当在调用函数前提供完整定义的数据集。必要时请检查Dataset文件。默认为None。
285+ - **scope ** (Scope) – 执行这个program的域,用户可以指定不同的域。默认为全局域。
286+ - **thread ** (int) – 用户想要在这个函数中运行的线程数量。线程的实际数量为min(Dataset.thread_num, thread),如果thread > 0,默认为0。
287+ - **debug ** (bool) – 是否开启debug模式,默认为False。
288+ - **fetch_list ** (Tensor List) – 返回变量列表,每个变量都会在训练过程中被打印出来,默认为None。
289+ - **fetch_info ** (String List) – 每个变量的打印信息,默认为None。
290+ - **print_period ** (int) – 每两次打印之间间隔的mini-batches的数量,默认为100。
283291
284292**返回 **
285- None
293+
294+ 无。
286295
287296**代码示例 **
288297
0 commit comments