From 90bee17ab65720eeb757e4c1103187da22158036 Mon Sep 17 00:00:00 2001 From: yuyang18 Date: Wed, 27 Jun 2018 11:29:41 +0800 Subject: [PATCH] Follow comments --- source/user_guides/howto/training/save_load_variables.rst | 8 ++++---- source/user_guides/howto/training/single_node.rst | 8 ++++---- source/user_guides/howto/training/test_while_training.rst | 6 ++++-- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/source/user_guides/howto/training/save_load_variables.rst b/source/user_guides/howto/training/save_load_variables.rst index 8d2844010..2be0146a2 100644 --- a/source/user_guides/howto/training/save_load_variables.rst +++ b/source/user_guides/howto/training/save_load_variables.rst @@ -43,7 +43,7 @@ ========================== 如果我们保存模型的目的是用于对新样本的预测,那么只保存模型参数就足够了。我们可以使用 -:code:`fluid.io.save_params` 接口来进行模型参数的保存。 +:ref:`api_fluid_io_save_params` 接口来进行模型参数的保存。 例如: @@ -66,7 +66,7 @@ 在训练过程中,我们可能希望在一些节点上将当前的训练状态保存下来, 以便在将来需要的时候恢复训练环境继续进行训练。这一般被称作“checkpoint”。 -想要保存checkpoint,可以使用 :code:`fluid.io.save_checkpoint` 接口。 +想要保存checkpoint,可以使用 :ref:`api_fluid_io_save_checkpoint` 接口。 例如: @@ -98,7 +98,7 @@ 如何载入模型变量 ################ -与模型变量的保存相对应,我们提供了两套API来分别进行模型的参数和checkpoint的载入。 +与模型变量的保存相对应,我们提供了两套API来分别载入模型的参数和载入模型的checkpoint。 载入模型用于对新样本的预测 ========================== @@ -152,7 +152,7 @@ 上面的例子中,通过调用 :code:`fluid.io.save_checkpoint` 函数,PaddlePaddle Fluid会对 :code:`prog` 中的所有模型变量进行扫描,根据内置规则自动筛选出需要加载的变量, -并尝试从 :code:`path` 之中读取加载它们。 +并尝试从 :code:`path` 之中加载它们。 参数 :code:`serial` 用来标记具体要加载的checkpoint的版本号。在保存checkpoint的时候, 一个checkpoint会被保存在一个子目录中,并在目录名上体现出自己的版本号。 diff --git a/source/user_guides/howto/training/single_node.rst b/source/user_guides/howto/training/single_node.rst index 0851969ee..23a865892 100644 --- a/source/user_guides/howto/training/single_node.rst +++ b/source/user_guides/howto/training/single_node.rst @@ -45,9 +45,9 @@ 用户配置完模型后,参数初始化操作会被写入到\ :code:`fluid.default_startup_program()` 中。使用 :ref:`api_fluid_Executor` 运行 -这一程序,即可在全局 :ref:`api_fluid_Scope` 中随机初始化参数。例如: +这一程序,即可在全局 :ref:`api_fluid_global_scope` 中随机初始化参数。例如: -.. code-blocks:: python +.. code-block:: python exe = fluid.Executor(fluid.CUDAPlace(0)) exe.run(program=fluid.default_startup_program()) @@ -84,7 +84,7 @@ 1. feed的数据格式,请参考文章 :ref:`user_guide_feed_data_to_executor`。 2. :code:`Executor.run` 的返回值是 :code:`fetch_list=[...]` 的variable值。被fetch\ 的Variable必须是persistable的。 :code:`fetch_list` 可以传入Variable的列表,\ - 也可以传入Varialbe的名字列表。当只Fetch一个对象时,返回值是一个元素。否则,\ + 也可以传入Variable的名字列表。当只fetch一个对象时,返回值是一个元素。否则,\ 返回一个列表。 3. 如果需要取回的数据包含序列信息,可以设置 :code:`exe.run(return_numpy=False, ...)` 直接返回 :ref:`api_guide_lod_tensor` @@ -105,7 +105,7 @@ 这里有几点注意事项: 1. :code:`ParallelExecutor` 的构造函数需要指明要执行的 :ref:`api_fluid_Program` , - 并在执行过程中不能修改。 + 并在执行过程中不能修改。默认值是 :ref:`api_fluid_default_main_program` 。 2. :code:`ParallelExecutor` 需要明确指定是否使用 CUDA 显卡进行训练。在显卡训练\ 模式下会占用全部显卡。用户可以配置 `CUDA_VISIBLE_DEVICES `_ 来修改占用\ 的显卡。 diff --git a/source/user_guides/howto/training/test_while_training.rst b/source/user_guides/howto/training/test_while_training.rst index 1c6f48b46..665aa52ec 100644 --- a/source/user_guides/howto/training/test_while_training.rst +++ b/source/user_guides/howto/training/test_while_training.rst @@ -8,7 +8,9 @@ 1. 评价测试不进行反向传播,不优化更新参数。 2. 评价测试执行的操作可以不同。 + * 例如 BatchNorm 操作,在训练和测试时执行不同的算法。 + * 评价模型与训练相比可以是完全不同的模型。 生成测试 :ref:`api_fluid_Program` @@ -18,7 +20,7 @@ ======================================================================= :code:`Program.clone()` 方法可以复制出新的 :ref:`api_fluid_Program` 。 通过设置 -:code:`Program.clone(for_test=True)` 复制出用于测试的操作。简单的使用方法如下: +:code:`Program.clone(for_test=True)` 复制含有用于测试的操作Program。简单的使用方法如下: .. code-block:: python @@ -46,7 +48,7 @@ 分别配置训练 :ref:`api_fluid_Program` 和测试 :ref:`api_fluid_Program` ===================================================================== -如果训练程序和测试程序相差较大时,用户也可以完全通过定义两个不同的 +如果训练程序和测试程序相差较大时,用户也可以通过完全定义两个不同的 :ref:`api_fluid_Program`,分别进行训练和测试。在PaddlePaddle Fluid中,\ 所有的参数都有名字。如果两个不同的操作,甚至两个不同的网络使用了同样名字的参数,\ 那么他们的值和内存空间都是共享的。 -- GitLab