diff --git a/doc/fluid/api_cn/backward_cn/append_backward_cn.rst b/doc/fluid/api_cn/backward_cn/append_backward_cn.rst index 069b29cfde6fa97588e3d6d0959752d88ef033d3..1019bab98b6e6a667c97f5f6bf926b5026023fac 100644 --- a/doc/fluid/api_cn/backward_cn/append_backward_cn.rst +++ b/doc/fluid/api_cn/backward_cn/append_backward_cn.rst @@ -1,69 +1,71 @@ -.. _cn_api_fluid_backward_append_backward: - -append_backward -------------------------------- - -.. py:function:: paddle.fluid.backward.append_backward(loss, parameter_list=None, no_grad_set=None, callbacks=None) - -该接口将向主程序(``main_program``)追加反向部分 。 - -完整的神经网络训练由前向和反向传播组成。但是当我们配置网络时,我们只需要指定其前向部分。 -该接口使用链式法则,能够根据前向部分自动生成反向部分。 - -在大多数情况下,用户无需手动调用此接口,它将由优化器(``Optimizer``)的 ``minimize`` 函数自动调用。 - -参数: - - **loss** ( :ref:`api_guide_Variable` ) - 网络的损失变量。 - - **parameter_list** (list [Variable|str],可选)- 指定优化器需要更新的参数或参数名称列表。如果为 ``None`` ,则将更新所有参数。默认值为 ``None``。 - - **no_grad_set** (set [Variable|str],可选)- 在 `block0` ( :ref:`api_guide_Block` ) 中要忽略梯度的 :ref:`api_guide_Variable` 的名字的集合。所有的 :ref:`api_guide_Block` 中带有 ``stop_gradient = True`` 的所有 :ref:`api_guide_Variable` 的名字都会被自动添加到此集合中。如果该参数不为 ``None``,则会将该参数集合的内容添加到默认的集合中。默认值为 ``None``。 - - **callbacks** (list [callable object],可选)- 回调函数列表。用于在反向传播构建中执行一些自定义作业。每次将新的梯度OP添加到程序中时,将调用其中的所有可调用对象。可调用对象必须有两个输入参数: :ref:`api_guide_Block` 和 ``context`` 。 :ref:`api_guide_Block` 是将被添加到新梯度算子的块。 ``context`` 是一个映射,其键是梯度 :ref:`api_guide_Variable` 名,值是对应的原始 :ref:`api_guide_Variable` 。除此之外, ``context`` 还有另一个特殊的键值对:键是字符串 ``__ current_op_desc__`` ,值是刚刚触发可调用对象的梯度OP的 ``op_desc`` 。默认值为 ``None``。 - -返回: 参数及其梯度 :ref:`api_guide_Variable` 的元组的列表。元组的第一个值为参数,第二个值为该参数的梯度 :ref:`api_guide_Variable` 。 - -返回类型: list[( :ref:`api_guide_Variable` , :ref:`api_guide_Variable` )] - -抛出: - - ``AssertionError`` - 如果 loss 不是 :ref:`api_guide_Variable` 的实例。 - -**示例代码** - -.. code-block:: python - - import paddle.fluid as fluid - - x = fluid.data(name='x', shape=[None, 13], dtype='int64') - y = fluid.data(name='y', shape=[None, 1], dtype='float32') - x_emb = fluid.embedding(x, size=[100, 256]) - y_predict = fluid.layers.fc(input=x_emb, size=1, act=None, name='my_fc') - loss = fluid.layers.square_error_cost(input=y_predict, label=y) - avg_loss = fluid.layers.mean(loss) - - # 获取main_program中所有weight参数, 不包括bias. - all_weights = [param for param in fluid.default_main_program().block(0).all_parameters() if 'w_' in param.name] - all_weights_name = [w.name for w in all_weights] - - # 若parameter_list为默认值(None), 则返回包含所有param_grad的list - p_g_list1 = fluid.backward.append_backward(loss=avg_loss) - # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD), (my_fc.b_0, my_fc.b_0@GRAD)] - - # 返回与传入parameter_list对应的param_grad的list, 传入的parameter_list可以是 param(Variable类型)的list - p_g_list2 = fluid.backward.append_backward(loss=avg_loss, parameter_list=all_weights) - # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD)] - - # 传入的parameter_list也可以是值为param.name(str类型)的list - p_g_list3 = fluid.backward.append_backward(loss=avg_loss, parameter_list=all_weights_name) - # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD)] - - # no_grad_set可以是set[Variables]类型,表示梯度将在这些Variables处截断 - p_g_list4 = fluid.backward.append_backward(loss=avg_loss, no_grad_set=set([x_emb])) - # output: [(my_fc.w_0, my_fc.w_0@GRAD), (my_fc.b_0, my_fc.b_0@GRAD)] - - # no_grad_set也可以是set[Variable.names]类型。当参数Variable是在layers内部创建,且不方便显式地指定时,可以使用set[Variable.names] - p_g_list5 = fluid.backward.append_backward(loss=avg_loss, no_grad_set=set(['my_fc.b_0'])) - # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD)] - - # 返回为[], 因为所有的param_grad均被传入的no_grad_set过滤掉了 - p_g_list6 = fluid.backward.append_backward(loss=avg_loss, parameter_list=all_weights, no_grad_set=set(all_weights)) - - - +.. _cn_api_fluid_backward_append_backward: + +append_backward +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.backward.append_backward(loss, parameter_list=None, no_grad_set=None, callbacks=None) + +该接口将向主程序(``main_program``)追加反向部分 。 + +完整的神经网络训练由前向和反向传播组成。但是当我们配置网络时,我们只需要指定其前向部分。 +该接口使用链式法则,能够根据前向部分自动生成反向部分。 + +在大多数情况下,用户无需手动调用此接口,它将由优化器(``Optimizer``)的 ``minimize`` 函数自动调用。 + +参数: + - **loss** ( :ref:`api_guide_Variable` ) - 网络的损失变量。 + - **parameter_list** (list [Variable|str],可选)- 指定优化器需要更新的参数或参数名称列表。如果为 ``None`` ,则将更新所有参数。默认值为 ``None``。 + - **no_grad_set** (set [Variable|str],可选)- 在 `block0` ( :ref:`api_guide_Block` ) 中要忽略梯度的 :ref:`api_guide_Variable` 的名字的集合。所有的 :ref:`api_guide_Block` 中带有 ``stop_gradient = True`` 的所有 :ref:`api_guide_Variable` 的名字都会被自动添加到此集合中。如果该参数不为 ``None``,则会将该参数集合的内容添加到默认的集合中。默认值为 ``None``。 + - **callbacks** (list [callable object],可选)- 回调函数列表。用于在反向传播构建中执行一些自定义作业。每次将新的梯度OP添加到程序中时,将调用其中的所有可调用对象。可调用对象必须有两个输入参数: :ref:`api_guide_Block` 和 ``context`` 。 :ref:`api_guide_Block` 是将被添加到新梯度算子的块。 ``context`` 是一个映射,其键是梯度 :ref:`api_guide_Variable` 名,值是对应的原始 :ref:`api_guide_Variable` 。除此之外, ``context`` 还有另一个特殊的键值对:键是字符串 ``__ current_op_desc__`` ,值是刚刚触发可调用对象的梯度OP的 ``op_desc`` 。默认值为 ``None``。 + +返回: 参数及其梯度 :ref:`api_guide_Variable` 的元组的列表。元组的第一个值为参数,第二个值为该参数的梯度 :ref:`api_guide_Variable` 。 + +返回类型: list[( :ref:`api_guide_Variable` , :ref:`api_guide_Variable` )] + +抛出: + - ``AssertionError`` - 如果 loss 不是 :ref:`api_guide_Variable` 的实例。 + +**示例代码** + +.. code-block:: python + + import paddle.fluid as fluid + + x = fluid.data(name='x', shape=[None, 13], dtype='int64') + y = fluid.data(name='y', shape=[None, 1], dtype='float32') + x_emb = fluid.embedding(x, size=[100, 256]) + y_predict = fluid.layers.fc(input=x_emb, size=1, act=None, name='my_fc') + loss = fluid.layers.square_error_cost(input=y_predict, label=y) + avg_loss = fluid.layers.mean(loss) + + # 获取main_program中所有weight参数, 不包括bias. + all_weights = [param for param in fluid.default_main_program().block(0).all_parameters() if 'w_' in param.name] + all_weights_name = [w.name for w in all_weights] + + # 若parameter_list为默认值(None), 则返回包含所有param_grad的list + p_g_list1 = fluid.backward.append_backward(loss=avg_loss) + # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD), (my_fc.b_0, my_fc.b_0@GRAD)] + + # 返回与传入parameter_list对应的param_grad的list, 传入的parameter_list可以是 param(Variable类型)的list + p_g_list2 = fluid.backward.append_backward(loss=avg_loss, parameter_list=all_weights) + # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD)] + + # 传入的parameter_list也可以是值为param.name(str类型)的list + p_g_list3 = fluid.backward.append_backward(loss=avg_loss, parameter_list=all_weights_name) + # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD)] + + # no_grad_set可以是set[Variables]类型,表示梯度将在这些Variables处截断 + p_g_list4 = fluid.backward.append_backward(loss=avg_loss, no_grad_set=set([x_emb])) + # output: [(my_fc.w_0, my_fc.w_0@GRAD), (my_fc.b_0, my_fc.b_0@GRAD)] + + # no_grad_set也可以是set[Variable.names]类型。当参数Variable是在layers内部创建,且不方便显式地指定时,可以使用set[Variable.names] + p_g_list5 = fluid.backward.append_backward(loss=avg_loss, no_grad_set=set(['my_fc.b_0'])) + # output: [(embedding_0.w_0, embedding_0.w_0@GRAD), (my_fc.w_0, my_fc.w_0@GRAD)] + + # 返回为[], 因为所有的param_grad均被传入的no_grad_set过滤掉了 + p_g_list6 = fluid.backward.append_backward(loss=avg_loss, parameter_list=all_weights, no_grad_set=set(all_weights)) + + + diff --git a/doc/fluid/api_cn/backward_cn/gradients_cn.rst b/doc/fluid/api_cn/backward_cn/gradients_cn.rst index 27d1a99fa3775e36acc45f8efd3b78178741f1f8..5bb45f2074c9202798033d9813cdcaccdc6f2244 100644 --- a/doc/fluid/api_cn/backward_cn/gradients_cn.rst +++ b/doc/fluid/api_cn/backward_cn/gradients_cn.rst @@ -1,34 +1,36 @@ -.. _cn_api_fluid_backward_gradients: - -gradients -------------------------------- - -.. py:function:: paddle.fluid.backward.gradients(targets, inputs, target_gradients=None, no_grad_set=None) - -将目标梯度反向传播到输入。 - -参数: - - **targets** (Variable|list[Variable]) – 目标变量 - - **inputs** (Variable|list[Variable]) – 输入变量 - - **target_gradients** (Variable|list[Variable],可选) – 目标的梯度变量,应与目标变量形状相同;如果设置为None,则以1初始化所有梯度变量 - - **no_grad_set** (set[Variable|str],可选) – 在 `block0` ( :ref:`api_guide_Block` ) 中要忽略梯度的 :ref:`api_guide_Variable` 的名字的集合。所有的 :ref:`api_guide_Block` 中带有 ``stop_gradient = True`` 的所有 :ref:`api_guide_Variable` 的名字都会被自动添加到此集合中。如果该参数不为 ``None``,则会将该参数集合的内容添加到默认的集合中。默认值为 ``None``。 - - -返回:数组,包含与输入对应的梯度。如果一个输入不影响目标函数,则对应的梯度变量为None - -返回类型:(list[Variable]) - -**示例代码** - -.. code-block:: python - - import paddle.fluid as fluid - - x = fluid.data(name='x', shape=[None,2,8,8], dtype='float32') - x.stop_gradient=False - y = fluid.layers.conv2d(x, 4, 1, bias_attr=False) - y = fluid.layers.relu(y) - y = fluid.layers.conv2d(y, 4, 1, bias_attr=False) - y = fluid.layers.relu(y) - z = fluid.gradients([y], x) +.. _cn_api_fluid_backward_gradients: + +gradients +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.backward.gradients(targets, inputs, target_gradients=None, no_grad_set=None) + +将目标梯度反向传播到输入。 + +参数: + - **targets** (Variable|list[Variable]) – 目标变量 + - **inputs** (Variable|list[Variable]) – 输入变量 + - **target_gradients** (Variable|list[Variable],可选) – 目标的梯度变量,应与目标变量形状相同;如果设置为None,则以1初始化所有梯度变量 + - **no_grad_set** (set[Variable|str],可选) – 在 `block0` ( :ref:`api_guide_Block` ) 中要忽略梯度的 :ref:`api_guide_Variable` 的名字的集合。所有的 :ref:`api_guide_Block` 中带有 ``stop_gradient = True`` 的所有 :ref:`api_guide_Variable` 的名字都会被自动添加到此集合中。如果该参数不为 ``None``,则会将该参数集合的内容添加到默认的集合中。默认值为 ``None``。 + + +返回:数组,包含与输入对应的梯度。如果一个输入不影响目标函数,则对应的梯度变量为None + +返回类型:(list[Variable]) + +**示例代码** + +.. code-block:: python + + import paddle.fluid as fluid + + x = fluid.data(name='x', shape=[None,2,8,8], dtype='float32') + x.stop_gradient=False + y = fluid.layers.conv2d(x, 4, 1, bias_attr=False) + y = fluid.layers.relu(y) + y = fluid.layers.conv2d(y, 4, 1, bias_attr=False) + y = fluid.layers.relu(y) + z = fluid.gradients([y], x) print(z) \ No newline at end of file diff --git a/doc/fluid/api_cn/clip_cn/set_gradient_clip_cn.rst b/doc/fluid/api_cn/clip_cn/set_gradient_clip_cn.rst index 4a0838e2bba59d38b3ddd32696f606ae8e068498..f27853f781f873d188be77ac57e90a9f6352e297 100644 --- a/doc/fluid/api_cn/clip_cn/set_gradient_clip_cn.rst +++ b/doc/fluid/api_cn/clip_cn/set_gradient_clip_cn.rst @@ -3,6 +3,8 @@ set_gradient_clip ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.clip.set_gradient_clip(clip, param_list=None, program=None) 给指定参数做梯度裁剪。 diff --git a/doc/fluid/api_cn/dygraph_cn/BackwardStrategy_cn.rst b/doc/fluid/api_cn/dygraph_cn/BackwardStrategy_cn.rst index 27ff5470b24d3c62bd8d5eb5856e9ba80f1cdab0..5e8fc9945d206ac7936a48c7a8ad53517f2889b2 100644 --- a/doc/fluid/api_cn/dygraph_cn/BackwardStrategy_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/BackwardStrategy_cn.rst @@ -3,6 +3,8 @@ BackwardStrategy ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.BackwardStrategy **注意:该API只在动态图下生效** diff --git a/doc/fluid/api_cn/dygraph_cn/CosineDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/CosineDecay_cn.rst index 12956040f931d8299c4d7530f01d5cabdeefb3ed..321f7d607e73bc9a65b506471d72dd0bf261f6f6 100644 --- a/doc/fluid/api_cn/dygraph_cn/CosineDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/CosineDecay_cn.rst @@ -3,6 +3,8 @@ CosineDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.CosineDecay(learning_rate, step_each_epoch, epochs, begin=0, step=1, dtype='float32') 该接口提供按余弦函数衰减学习率的功能。 diff --git a/doc/fluid/api_cn/dygraph_cn/ExponentialDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/ExponentialDecay_cn.rst index bded6599257c7d35a6b92fbff6417589e12a0ea9..0bb670041b2595a4b3fa74565990e66fd696bff4 100644 --- a/doc/fluid/api_cn/dygraph_cn/ExponentialDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/ExponentialDecay_cn.rst @@ -3,6 +3,8 @@ ExponentialDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.ExponentialDecay(learning_rate, decay_steps, decay_rate, staircase=False, begin=0, step=1, dtype=’float32‘) 该接口提供一种学习率按指数函数衰减的功能。 diff --git a/doc/fluid/api_cn/dygraph_cn/FC_cn.rst b/doc/fluid/api_cn/dygraph_cn/FC_cn.rst index c825e4ace3ca96eca8a679c9fa09a226e9d26a41..f767629be9079941119c6b55cfbe2ef91eaf2cec 100644 --- a/doc/fluid/api_cn/dygraph_cn/FC_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/FC_cn.rst @@ -3,6 +3,8 @@ FC ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.FC(name_scope, size, num_flatten_dims=1, param_attr=None, bias_attr=None, act=None, is_test=False, dtype='float32') diff --git a/doc/fluid/api_cn/dygraph_cn/InverseTimeDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/InverseTimeDecay_cn.rst index d073ac65c2cf38576e612bef184245e771f6a4f4..70bf0b9c37ce9fcb7f20ea448c20fb03f1a2dbe8 100644 --- a/doc/fluid/api_cn/dygraph_cn/InverseTimeDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/InverseTimeDecay_cn.rst @@ -3,6 +3,8 @@ InverseTimeDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.InverseTimeDecay(learning_rate, decay_steps, decay_rate, staircase=False, begin=0, step=1, dtype='float32') 该接口提供反时限学习率衰减的功能。 diff --git a/doc/fluid/api_cn/dygraph_cn/NaturalExpDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/NaturalExpDecay_cn.rst index 9bb542c877e8ee6d679919f7d60db574480b40b5..b2ad39a8a3f566becda4e8ddf6db206ed89a4da0 100644 --- a/doc/fluid/api_cn/dygraph_cn/NaturalExpDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/NaturalExpDecay_cn.rst @@ -3,6 +3,8 @@ NaturalExpDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.NaturalExpDecay(learning_rate, decay_steps, decay_rate, staircase=False, begin=0, step=1, dtype='float32') 该接口提供按自然指数衰减学习率的功能。 diff --git a/doc/fluid/api_cn/dygraph_cn/NoamDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/NoamDecay_cn.rst index 0e21a3b005af6df1d04a89e077df3e85ad482d49..1b58aefb9ce6788bdeca195cc3479647a56da846 100644 --- a/doc/fluid/api_cn/dygraph_cn/NoamDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/NoamDecay_cn.rst @@ -3,6 +3,8 @@ NoamDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.NoamDecay(d_model, warmup_steps, begin=1, step=1, dtype='float32') 该接口提供Noam衰减学习率的功能。 diff --git a/doc/fluid/api_cn/dygraph_cn/PiecewiseDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/PiecewiseDecay_cn.rst index e55c6b37384009e5d37a6cb8e49a328ff5f2eb35..74478aabded2640d36e461cfe7075bc4435dc137 100644 --- a/doc/fluid/api_cn/dygraph_cn/PiecewiseDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/PiecewiseDecay_cn.rst @@ -3,6 +3,8 @@ PiecewiseDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.PiecewiseDecay(boundaries, values, begin, step=1, dtype='float32') 该接口提供对初始学习率进行分段(piecewise)常数衰减的功能。 diff --git a/doc/fluid/api_cn/dygraph_cn/PolynomialDecay_cn.rst b/doc/fluid/api_cn/dygraph_cn/PolynomialDecay_cn.rst index af8337670427ed8620ec1626ed983dfbd31a9d4b..0a2a989688719208d6d783918fb8e441448185b8 100644 --- a/doc/fluid/api_cn/dygraph_cn/PolynomialDecay_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/PolynomialDecay_cn.rst @@ -3,6 +3,8 @@ PolynomialDecay ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.PolynomialDecay(learning_rate, decay_steps, end_learning_rate=0.0001, power=1.0, cycle=False, begin=0, step=1, dtype='float32') 该接口提供学习率按多项式衰减的功能。通过多项式衰减函数,使得学习率值逐步从初始的 ``learning_rate``,衰减到 ``end_learning_rate`` 。 diff --git a/doc/fluid/api_cn/dygraph_cn/TracedLayer_cn.rst b/doc/fluid/api_cn/dygraph_cn/TracedLayer_cn.rst index b29be66c751f7333204f44833ea4e61a68524e96..cb014477f5bbc3fac89e774a391214d45ae3434a 100644 --- a/doc/fluid/api_cn/dygraph_cn/TracedLayer_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/TracedLayer_cn.rst @@ -3,6 +3,8 @@ TracedLayer ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:class:: paddle.fluid.dygraph.TracedLayer(program, parameters, feed_names, fetch_names) TracedLayer用于将前向动态图模型转换为静态图模型,主要用于将动态图保存后做在线C++预测。除此以外,用户也可使用转换后的静态图模型在Python端做预测,通常比原先的动态图性能更好。 diff --git a/doc/fluid/api_cn/dygraph_cn/guard_cn.rst b/doc/fluid/api_cn/dygraph_cn/guard_cn.rst index 83df5154590542a76160b18a28183fd109d23dcd..96f3e32dec7595d10ce8a1d13fc7366c575b6ffa 100644 --- a/doc/fluid/api_cn/dygraph_cn/guard_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/guard_cn.rst @@ -3,6 +3,8 @@ guard ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:function:: paddle.fluid.dygraph.guard(place=None) 通过with语句创建一个dygraph运行的context,执行context代码。 diff --git a/doc/fluid/api_cn/dygraph_cn/load_dygraph_cn.rst b/doc/fluid/api_cn/dygraph_cn/load_dygraph_cn.rst index bdc9d54fa45c8d6479ef819bc323e161e002a0a1..3219e2d0490d0f7714d6fb7d2cda1103aa0f6b9c 100644 --- a/doc/fluid/api_cn/dygraph_cn/load_dygraph_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/load_dygraph_cn.rst @@ -3,6 +3,8 @@ load_dygraph ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:function:: paddle.fluid.dygraph.load_dygraph(model_path) 该接口尝试从磁盘中加载参数或优化器的 ``dict`` 。 diff --git a/doc/fluid/api_cn/dygraph_cn/save_dygraph_cn.rst b/doc/fluid/api_cn/dygraph_cn/save_dygraph_cn.rst index d09eebe43bac5d5e312df22a169bbde1f02ed4f7..cc28502a29d542127f03d23be3ee2cf8ad9fd6e0 100644 --- a/doc/fluid/api_cn/dygraph_cn/save_dygraph_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/save_dygraph_cn.rst @@ -3,6 +3,8 @@ save_dygraph ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:function:: paddle.fluid.dygraph.save_dygraph(state_dict, model_path) 该接口将传入的参数或优化器的 ``dict`` 保存到磁盘上。 diff --git a/doc/fluid/api_cn/dygraph_cn/to_variable_cn.rst b/doc/fluid/api_cn/dygraph_cn/to_variable_cn.rst index 788fed25e432f4f8d3fbac8dfcdc8a71ffb43535..60bb44397abd23986fdaa191316c5e2857847ac4 100644 --- a/doc/fluid/api_cn/dygraph_cn/to_variable_cn.rst +++ b/doc/fluid/api_cn/dygraph_cn/to_variable_cn.rst @@ -3,6 +3,8 @@ to_variable ------------------------------- +**注意:该API仅支持【动态图】模式** + .. py:function:: paddle.fluid.dygraph.to_variable(value, name=None, zero_copy=None) 该函数实现从numpy\.ndarray对象或者Variable对象创建一个 ``Variable`` 类型的对象。 diff --git a/doc/fluid/api_cn/executor_cn/Executor_cn.rst b/doc/fluid/api_cn/executor_cn/Executor_cn.rst index a8b5e6668b8a5e3918a453f22b7d714771509f05..f879d28d0aac0a6a14c3cda9494771d15198b5b1 100644 --- a/doc/fluid/api_cn/executor_cn/Executor_cn.rst +++ b/doc/fluid/api_cn/executor_cn/Executor_cn.rst @@ -3,6 +3,8 @@ Executor ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.executor.Executor (place) Executor支持单GPU、多GPU以及CPU运行。在Executor构造时,需要传入设备。 diff --git a/doc/fluid/api_cn/executor_cn/global_scope_cn.rst b/doc/fluid/api_cn/executor_cn/global_scope_cn.rst index bba47c819a3a8d5ff446af4f218b2962fa2f1071..1c7aec0a19a37676e77aefebd0781f2649ddf5e6 100644 --- a/doc/fluid/api_cn/executor_cn/global_scope_cn.rst +++ b/doc/fluid/api_cn/executor_cn/global_scope_cn.rst @@ -3,6 +3,8 @@ global_scope ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.global_scope() 获取全局/默认作用域实例。很多API使用默认 ``global_scope`` ,例如 ``Executor.run`` 等。 diff --git a/doc/fluid/api_cn/executor_cn/scope_guard_cn.rst b/doc/fluid/api_cn/executor_cn/scope_guard_cn.rst index 80a4e76469a051759938fea86dd8d0d501d1e40f..ced17a622b58e1179653400e8e690e9f3ffb26d7 100644 --- a/doc/fluid/api_cn/executor_cn/scope_guard_cn.rst +++ b/doc/fluid/api_cn/executor_cn/scope_guard_cn.rst @@ -3,6 +3,8 @@ scope_guard ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.executor.scope_guard (scope) diff --git a/doc/fluid/api_cn/fluid_cn/BuildStrategy_cn.rst b/doc/fluid/api_cn/fluid_cn/BuildStrategy_cn.rst index fcf24dbac7a408038f5b97fceff8424064649beb..98cb0e800f79a1c25f3d92248d3a26de2191de8d 100644 --- a/doc/fluid/api_cn/fluid_cn/BuildStrategy_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/BuildStrategy_cn.rst @@ -3,6 +3,8 @@ BuildStrategy ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.BuildStrategy ``BuildStrategy`` 使用户更方便地控制[ ``ParallelExecutor`` ](../fluid_cn.html\#parallelexecutor)中计算图的建造方法,可通过设置 ``ParallelExecutor`` 中的 ``BuildStrategy`` 成员来实现此功能。 diff --git a/doc/fluid/api_cn/fluid_cn/CompiledProgram_cn.rst b/doc/fluid/api_cn/fluid_cn/CompiledProgram_cn.rst index c240d3e7d3a8aa970c80e63a5fa63257ed9f466e..f9ec0995503393891741794489233c88df3f4d24 100644 --- a/doc/fluid/api_cn/fluid_cn/CompiledProgram_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/CompiledProgram_cn.rst @@ -3,6 +3,8 @@ CompiledProgram ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.CompiledProgram(program_or_graph, build_strategy=None) CompiledProgram根据 `build_strategy` 的配置将输入的Program或Graph进行转换和优化,例如:计算图中算子融合、计算图执行过程中开启内存/显存优化等,关于build_strategy更多信息。请参阅 ``fluid.BuildStrategy`` 。 diff --git a/doc/fluid/api_cn/fluid_cn/DataFeedDesc_cn.rst b/doc/fluid/api_cn/fluid_cn/DataFeedDesc_cn.rst index 300a5303f200c40822504a2cdb0e05248431f6f2..18f2ef957e98cfb9270509eadd9bc2b47c823a5f 100644 --- a/doc/fluid/api_cn/fluid_cn/DataFeedDesc_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/DataFeedDesc_cn.rst @@ -3,6 +3,8 @@ DataFeedDesc ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.DataFeedDesc(proto_file) 描述训练数据的格式。输入是一个文件路径名,其内容是protobuf message。 diff --git a/doc/fluid/api_cn/fluid_cn/DataFeeder_cn.rst b/doc/fluid/api_cn/fluid_cn/DataFeeder_cn.rst index 9ba577a5908d1ded7549d9c19ed4cb517753e323..944974858402570fef9d3c4a6e795fac1ea3ab8f 100644 --- a/doc/fluid/api_cn/fluid_cn/DataFeeder_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/DataFeeder_cn.rst @@ -3,6 +3,8 @@ DataFeeder ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.DataFeeder(feed_list, place, program=None) diff --git a/doc/fluid/api_cn/fluid_cn/ExecutionStrategy_cn.rst b/doc/fluid/api_cn/fluid_cn/ExecutionStrategy_cn.rst index 108f81210f20e810bd32cabe395efc76e336f310..4d6cc28fa05d6a14f74650d6078a98ba06fb9d5c 100644 --- a/doc/fluid/api_cn/fluid_cn/ExecutionStrategy_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/ExecutionStrategy_cn.rst @@ -3,6 +3,8 @@ ExecutionStrategy ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.ExecutionStrategy 通过设置 ``ExecutionStrategy`` 中的选项,用户可以对执行器的执行配置进行调整,比如设置执行器中线程池的大小等。 diff --git a/doc/fluid/api_cn/fluid_cn/Executor_cn.rst b/doc/fluid/api_cn/fluid_cn/Executor_cn.rst index 628625e0b0db8922590ee948b3455c1330f449cd..d668825c5b716f46affec5db405301379a90cf5e 100644 --- a/doc/fluid/api_cn/fluid_cn/Executor_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/Executor_cn.rst @@ -4,6 +4,8 @@ Executor ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.Executor (place) Executor支持单GPU、多GPU以及CPU运行。在Executor构造时,需要传入设备。 diff --git a/doc/fluid/api_cn/fluid_cn/ParallelExecutor_cn.rst b/doc/fluid/api_cn/fluid_cn/ParallelExecutor_cn.rst index ed30dbe9060f53931909f646c918002a708e8a83..1d2f405a8ebf818fc68879efffa4fc44a177c076 100644 --- a/doc/fluid/api_cn/fluid_cn/ParallelExecutor_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/ParallelExecutor_cn.rst @@ -3,6 +3,8 @@ ParallelExecutor ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.ParallelExecutor(use_cuda, loss_name=None, main_program=None, share_vars_from=None, exec_strategy=None, build_strategy=None, num_trainers=1, trainer_id=0, scope=None) ``ParallelExecutor`` 是 ``Executor`` 的一个升级版本,可以支持基于数据并行的多节点模型训练和测试。如果采用数据并行模式, ``ParallelExecutor`` 在构造时会将参数分发到不同的节点上,并将输入的 ``Program`` 拷贝到不同的节点,在执行过程中,各个节点独立运行模型,将模型反向计算得到的参数梯度在多个节点之间进行聚合,之后各个节点独立的进行参数的更新。如果使用GPU运行模型,即 ``use_cuda=True`` ,节点指代GPU, ``ParallelExecutor`` 将自动获取在当前机器上可用的GPU资源,用户也可以通过在环境变量设置可用的GPU资源,例如:希望使用GPU0、GPU1计算,export CUDA_VISIBLEDEVICES=0,1;如果在CPU上进行操作,即 ``use_cuda=False`` ,节点指代CPU,**注意:此时需要用户在环境变量中手动添加 CPU_NUM ,并将该值设置为CPU设备的个数,例如:export CPU_NUM=4,如果没有设置该环境变量,执行器会在环境变量中添加该变量,并将其值设为1**。 diff --git a/doc/fluid/api_cn/fluid_cn/WeightNormParamAttr_cn.rst b/doc/fluid/api_cn/fluid_cn/WeightNormParamAttr_cn.rst index aaa8d3d1bdb5dad079b026158b14013ce5e4c060..88946bb7ae93ddbd01da63fc16769f53d16a8023 100644 --- a/doc/fluid/api_cn/fluid_cn/WeightNormParamAttr_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/WeightNormParamAttr_cn.rst @@ -3,6 +3,8 @@ WeightNormParamAttr ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.WeightNormParamAttr(dim=None, name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False) diff --git a/doc/fluid/api_cn/fluid_cn/create_random_int_lodtensor_cn.rst b/doc/fluid/api_cn/fluid_cn/create_random_int_lodtensor_cn.rst index 31929215d565474b59a3289ecc2be448071d66f2..ee3999183571ef62e41aaa97f0734434e22628f1 100644 --- a/doc/fluid/api_cn/fluid_cn/create_random_int_lodtensor_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/create_random_int_lodtensor_cn.rst @@ -4,6 +4,8 @@ create_random_int_lodtensor ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.create_random_int_lodtensor(recursive_seq_lens, base_shape, place, low, high) 创建一个包含随机整数的LoDTensor。 diff --git a/doc/fluid/api_cn/fluid_cn/data_cn.rst b/doc/fluid/api_cn/fluid_cn/data_cn.rst index 55ee29199ed83bbc0e81b8fa03b4291bcba272b0..67f99be46b3645dccff53a734b8d506c7092d989 100644 --- a/doc/fluid/api_cn/fluid_cn/data_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/data_cn.rst @@ -3,6 +3,8 @@ data ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.data(name, shape, dtype='float32', lod_level=0) 该OP会在全局block中创建变量(Variable),该全局变量可被计算图中的算子(operator)访问。该变量可作为占位符用于数据输入。例如用执行器(Executor)feed数据进该变量 diff --git a/doc/fluid/api_cn/fluid_cn/embedding_cn.rst b/doc/fluid/api_cn/fluid_cn/embedding_cn.rst index f2359a010548564b38891fb76343bab96d29a496..d8d5f0c356bc087f1bea6d64e8515ebe985adc51 100644 --- a/doc/fluid/api_cn/fluid_cn/embedding_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/embedding_cn.rst @@ -3,6 +3,8 @@ embedding ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.embedding(input, size, is_sparse=False, is_distributed=False, padding_idx=None, param_attr=None, dtype='float32') 该OP根据input中的id信息从embedding矩阵中查询对应embedding信息,函数会根据输入的size (vocab_size, emb_size)和dtype自动构造一个二维embedding矩阵。 diff --git a/doc/fluid/api_cn/fluid_cn/global_scope_cn.rst b/doc/fluid/api_cn/fluid_cn/global_scope_cn.rst index ef83d1fa4139cd5aabd75c16edf87a0c945c8f67..7f649449c9eb386df7929b72f118b032f23fe6e0 100644 --- a/doc/fluid/api_cn/fluid_cn/global_scope_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/global_scope_cn.rst @@ -3,6 +3,8 @@ global_scope ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.global_scope() 获取全局/默认作用域实例。很多API使用默认 ``global_scope`` ,例如 ``Executor.run`` 等。 diff --git a/doc/fluid/api_cn/fluid_cn/gradients_cn.rst b/doc/fluid/api_cn/fluid_cn/gradients_cn.rst index 28a8526bdd5c863ae45b47b1e15628306f613e78..7e2e7d4fd635de3332aea4f293951567dd66c79c 100644 --- a/doc/fluid/api_cn/fluid_cn/gradients_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/gradients_cn.rst @@ -3,6 +3,8 @@ gradients ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.gradients(targets, inputs, target_gradients=None, no_grad_set=None) 将目标梯度反向传播到输入。 diff --git a/doc/fluid/api_cn/fluid_cn/memory_optimize_cn.rst b/doc/fluid/api_cn/fluid_cn/memory_optimize_cn.rst index 130911c57641a1c9e7b13c0a4a13fe82a11a1f69..4b987db2c809c97859bdcc2c10cc5784489552e6 100644 --- a/doc/fluid/api_cn/fluid_cn/memory_optimize_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/memory_optimize_cn.rst @@ -3,6 +3,8 @@ memory_optimize ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.memory_optimize(input_program, skip_opt_set=None, print_log=False, level=0, skip_grads=True) **从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略** diff --git a/doc/fluid/api_cn/fluid_cn/name_scope_cn.rst b/doc/fluid/api_cn/fluid_cn/name_scope_cn.rst index 55bba4784a982592852fa10581d1de986281be44..7f7be417930571c326a6be93b8a051caa3266cef 100644 --- a/doc/fluid/api_cn/fluid_cn/name_scope_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/name_scope_cn.rst @@ -3,6 +3,8 @@ name_scope ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.name_scope(prefix=None) diff --git a/doc/fluid/api_cn/fluid_cn/program_guard_cn.rst b/doc/fluid/api_cn/fluid_cn/program_guard_cn.rst index fd7023fd366fa901c8bf6fbe9a0e6d6513af4369..83c53aeab3e1791ca5f99fa1db623a24e465acdd 100644 --- a/doc/fluid/api_cn/fluid_cn/program_guard_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/program_guard_cn.rst @@ -3,6 +3,8 @@ program_guard ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.program_guard(main_program, startup_program=None) 该接口应配合使用python的 ``with`` 语句来将 ``with`` block 里的算子和变量添加进指定的全局主程序(main program)和启动程序(startup program)。 diff --git a/doc/fluid/api_cn/fluid_cn/release_memory_cn.rst b/doc/fluid/api_cn/fluid_cn/release_memory_cn.rst index 227a7804019a812869559569ef3a7ca7a719955f..253401270e141585cb874aa5d02a2470c530ec3c 100644 --- a/doc/fluid/api_cn/fluid_cn/release_memory_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/release_memory_cn.rst @@ -3,6 +3,8 @@ release_memory ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.release_memory(input_program, skip_opt_set=None) **从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略** diff --git a/doc/fluid/api_cn/fluid_cn/scope_guard_cn.rst b/doc/fluid/api_cn/fluid_cn/scope_guard_cn.rst index 9cfd866238cfe47e78e7fb864268c5c50a679148..2bbbe08642c4303c4399db5f1c34aab9904e3280 100644 --- a/doc/fluid/api_cn/fluid_cn/scope_guard_cn.rst +++ b/doc/fluid/api_cn/fluid_cn/scope_guard_cn.rst @@ -3,6 +3,8 @@ scope_guard ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.scope_guard(scope) diff --git a/doc/fluid/api_cn/io_cn/load_cn.rst b/doc/fluid/api_cn/io_cn/load_cn.rst index c7c13518d4b953ed0a3d70fdbbd5159388f5bb8c..0b6071b29d528ba8c4e485376c8a3d3d891c1d66 100644 --- a/doc/fluid/api_cn/io_cn/load_cn.rst +++ b/doc/fluid/api_cn/io_cn/load_cn.rst @@ -3,6 +3,8 @@ load ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.io.load(program, model_path) 该接口从Program中过滤出参数和优化器信息,然后从文件中获取相应的值。 diff --git a/doc/fluid/api_cn/io_cn/load_inference_model_cn.rst b/doc/fluid/api_cn/io_cn/load_inference_model_cn.rst index 559f85e12d8723498b46196596dce03e710359b2..6e053d3b80d9b12ab8e42e6df81f851fff326a5d 100644 --- a/doc/fluid/api_cn/io_cn/load_inference_model_cn.rst +++ b/doc/fluid/api_cn/io_cn/load_inference_model_cn.rst @@ -1,75 +1,77 @@ -.. _cn_api_fluid_io_load_inference_model: - -load_inference_model -------------------------------- - -.. py:function:: paddle.fluid.io.load_inference_model(dirname, executor, model_filename=None, params_filename=None, pserver_endpoints=None) - -从指定文件路径中加载预测模型(Inference Model),即调用该接口可获得模型结构(Inference Program)和模型参数。若只想加载预训练后的模型参数,请使用 :ref:`cn_api_fluid_io_load_params` 接口。更多细节请参考 :ref:`api_guide_model_save_reader` 。 - -参数: - - **dirname** (str) – 待加载模型的存储路径。 - - **executor** (Executor) – 运行 Inference Model 的 ``executor`` ,详见 :ref:`api_guide_executor` 。 - - **model_filename** (str,可选) – 存储Inference Program结构的文件名称。如果设置为None,则使用 ``__model__`` 作为默认的文件名。默认值为None。 - - **params_filename** (str,可选) – 存储所有模型参数的文件名称。当且仅当所有模型参数被保存在一个单独的二进制文件中,它才需要被指定。如果模型参数是存储在各自分离的文件中,设置它的值为None。默认值为None。 - - **pserver_endpoints** (list,可选) – 只有在分布式预测时才需要用到。当训练过程中使用分布式查找表(distributed lookup table)时, 预测时需要指定pserver_endpoints的值。它是 pserver endpoints 的列表,默认值为None。 - -返回:该接口返回一个包含三个元素的列表(program,feed_target_names, fetch_targets)。它们的含义描述如下: - - **program** (Program)– ``Program`` (详见 :ref:`api_guide_Program` )类的实例。此处它被用于预测,因此可被称为Inference Program。 - - **feed_target_names** (list)– 字符串列表,包含着Inference Program预测时所需提供数据的所有变量名称(即所有输入变量的名称)。 - - **fetch_targets** (list)– ``Variable`` (详见 :ref:`api_guide_Program` )类型列表,包含着模型的所有输出变量。通过这些输出变量即可得到模型的预测结果。 - -**返回类型:** 列表(list) - -抛出异常: - - ``ValueError`` – 如果接口参数 ``dirname`` 指向一个不存在的文件路径,则抛出异常。 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - import numpy as np - - # 构建模型 - main_prog = fluid.Program() - startup_prog = fluid.Program() - with fluid.program_guard(main_prog, startup_prog): - data = fluid.layers.data(name="img", shape=[64, 784], append_batch_size=False) - w = fluid.layers.create_parameter(shape=[784, 200], dtype='float32') - b = fluid.layers.create_parameter(shape=[200], dtype='float32') - hidden_w = fluid.layers.matmul(x=data, y=w) - hidden_b = fluid.layers.elementwise_add(hidden_w, b) - place = fluid.CPUPlace() - exe = fluid.Executor(place) - exe.run(startup_prog) - - # 保存预测模型 - path = "./infer_model" - fluid.io.save_inference_model(dirname=path, feeded_var_names=['img'],target_vars=[hidden_b], executor=exe, main_program=main_prog) - - # 示例一: 不需要指定分布式查找表的模型加载示例,即训练时未用到distributed lookup table。 - [inference_program, feed_target_names, fetch_targets] = (fluid.io.load_inference_model(dirname=path, executor=exe)) - tensor_img = np.array(np.random.random((1, 64, 784)), dtype=np.float32) - results = exe.run(inference_program, - feed={feed_target_names[0]: tensor_img}, - fetch_list=fetch_targets) - - # 示例二: 若训练时使用了distributed lookup table,则模型加载时需要通过endpoints参数指定pserver服务器结点列表。 - # pserver服务器结点列表主要用于分布式查找表进行ID查找时使用。下面的["127.0.0.1:2023","127.0.0.1:2024"]仅为一个样例。 - endpoints = ["127.0.0.1:2023","127.0.0.1:2024"] - [dist_inference_program, dist_feed_target_names, dist_fetch_targets] = ( - fluid.io.load_inference_model(dirname=path, - executor=exe, - pserver_endpoints=endpoints)) - - # 在上述示例中,inference program 被保存在“ ./infer_model/__model__”文件内, - # 参数保存在“./infer_mode ”单独的若干文件内。 - # 加载 inference program 后, executor可使用 fetch_targets 和 feed_target_names 执行Program,并得到预测结果。 - - - - - - - +.. _cn_api_fluid_io_load_inference_model: + +load_inference_model +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.load_inference_model(dirname, executor, model_filename=None, params_filename=None, pserver_endpoints=None) + +从指定文件路径中加载预测模型(Inference Model),即调用该接口可获得模型结构(Inference Program)和模型参数。若只想加载预训练后的模型参数,请使用 :ref:`cn_api_fluid_io_load_params` 接口。更多细节请参考 :ref:`api_guide_model_save_reader` 。 + +参数: + - **dirname** (str) – 待加载模型的存储路径。 + - **executor** (Executor) – 运行 Inference Model 的 ``executor`` ,详见 :ref:`api_guide_executor` 。 + - **model_filename** (str,可选) – 存储Inference Program结构的文件名称。如果设置为None,则使用 ``__model__`` 作为默认的文件名。默认值为None。 + - **params_filename** (str,可选) – 存储所有模型参数的文件名称。当且仅当所有模型参数被保存在一个单独的二进制文件中,它才需要被指定。如果模型参数是存储在各自分离的文件中,设置它的值为None。默认值为None。 + - **pserver_endpoints** (list,可选) – 只有在分布式预测时才需要用到。当训练过程中使用分布式查找表(distributed lookup table)时, 预测时需要指定pserver_endpoints的值。它是 pserver endpoints 的列表,默认值为None。 + +返回:该接口返回一个包含三个元素的列表(program,feed_target_names, fetch_targets)。它们的含义描述如下: + - **program** (Program)– ``Program`` (详见 :ref:`api_guide_Program` )类的实例。此处它被用于预测,因此可被称为Inference Program。 + - **feed_target_names** (list)– 字符串列表,包含着Inference Program预测时所需提供数据的所有变量名称(即所有输入变量的名称)。 + - **fetch_targets** (list)– ``Variable`` (详见 :ref:`api_guide_Program` )类型列表,包含着模型的所有输出变量。通过这些输出变量即可得到模型的预测结果。 + +**返回类型:** 列表(list) + +抛出异常: + - ``ValueError`` – 如果接口参数 ``dirname`` 指向一个不存在的文件路径,则抛出异常。 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + import numpy as np + + # 构建模型 + main_prog = fluid.Program() + startup_prog = fluid.Program() + with fluid.program_guard(main_prog, startup_prog): + data = fluid.layers.data(name="img", shape=[64, 784], append_batch_size=False) + w = fluid.layers.create_parameter(shape=[784, 200], dtype='float32') + b = fluid.layers.create_parameter(shape=[200], dtype='float32') + hidden_w = fluid.layers.matmul(x=data, y=w) + hidden_b = fluid.layers.elementwise_add(hidden_w, b) + place = fluid.CPUPlace() + exe = fluid.Executor(place) + exe.run(startup_prog) + + # 保存预测模型 + path = "./infer_model" + fluid.io.save_inference_model(dirname=path, feeded_var_names=['img'],target_vars=[hidden_b], executor=exe, main_program=main_prog) + + # 示例一: 不需要指定分布式查找表的模型加载示例,即训练时未用到distributed lookup table。 + [inference_program, feed_target_names, fetch_targets] = (fluid.io.load_inference_model(dirname=path, executor=exe)) + tensor_img = np.array(np.random.random((1, 64, 784)), dtype=np.float32) + results = exe.run(inference_program, + feed={feed_target_names[0]: tensor_img}, + fetch_list=fetch_targets) + + # 示例二: 若训练时使用了distributed lookup table,则模型加载时需要通过endpoints参数指定pserver服务器结点列表。 + # pserver服务器结点列表主要用于分布式查找表进行ID查找时使用。下面的["127.0.0.1:2023","127.0.0.1:2024"]仅为一个样例。 + endpoints = ["127.0.0.1:2023","127.0.0.1:2024"] + [dist_inference_program, dist_feed_target_names, dist_fetch_targets] = ( + fluid.io.load_inference_model(dirname=path, + executor=exe, + pserver_endpoints=endpoints)) + + # 在上述示例中,inference program 被保存在“ ./infer_model/__model__”文件内, + # 参数保存在“./infer_mode ”单独的若干文件内。 + # 加载 inference program 后, executor可使用 fetch_targets 和 feed_target_names 执行Program,并得到预测结果。 + + + + + + + diff --git a/doc/fluid/api_cn/io_cn/load_params_cn.rst b/doc/fluid/api_cn/io_cn/load_params_cn.rst index 6a2b38c30241b08b8d1dbb6344e6ab9401051e73..4c178a482a72b8e6b9907fc8fb87a4ca5a977672 100644 --- a/doc/fluid/api_cn/io_cn/load_params_cn.rst +++ b/doc/fluid/api_cn/io_cn/load_params_cn.rst @@ -1,41 +1,43 @@ -.. _cn_api_fluid_io_load_params: - -load_params -------------------------------- - -.. py:function:: paddle.fluid.io.load_params(executor, dirname, main_program=None, filename=None) - -该接口从指定的 ``main_program`` 中筛选出所有模型参数变量,并根据目录 ``dirname`` 或 ``filename`` 提供的参数文件对这些模型参数进行赋值。 - -使用 ``dirname`` 指定模型参数的存储路径。若模型参数变量以分离文件的形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None;若所有模型参数存储在一个单独的二进制文件中,则使用 ``filename`` 来指明这个二进制文件。 - -注意: - - 有些变量不是参数,如学习率、全局训练步数(global step)等,但它们之于训练却是必要的。因此,调用 :ref:`cn_api_fluid_io_save_params` 和 :ref:`cn_api_fluid_io_load_params` 来保存和加载参数对于断点训练是不够的,这种情况下可以使用 :ref:`cn_api_fluid_io_save_persistables` 和 :ref:`cn_api_fluid_io_load_persistables` 来保存和加载训练过程的检查点(checkpoint)。 - - 若希望同时加载预训练后的模型结构和模型参数以用于预测过程,则可使用 :ref:`cn_api_fluid_io_load_inference_model` 接口。更多细节请参考 :ref:`api_guide_model_save_reader` 。 - -参数: - - **executor** (Executor) – 加载模型参数的 ``executor`` (详见 :ref:`api_guide_executor` ) 。 - - **dirname** (str) – 模型参数的存储路径。 - - **main_program** (Program,可选) – 筛选模型参数变量所依据的 ``Program`` (详见 :ref:`api_guide_Program` )。若为None, 则使用全局默认的 ``default_main_program`` 。默认值为None。 - - **filename** (str,可选) – 若模型参数是以若干文件形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None。反之,需要通过 ``filename`` 来指明单一模型参数存储文件的名称。 默认值为None。 - -**返回:** 无 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - - exe = fluid.Executor(fluid.CPUPlace()) - param_path = "./my_paddle_model" - prog = fluid.default_main_program() - fluid.io.load_params(executor=exe, dirname=param_path, - main_program=None) - - - - - - - +.. _cn_api_fluid_io_load_params: + +load_params +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.load_params(executor, dirname, main_program=None, filename=None) + +该接口从指定的 ``main_program`` 中筛选出所有模型参数变量,并根据目录 ``dirname`` 或 ``filename`` 提供的参数文件对这些模型参数进行赋值。 + +使用 ``dirname`` 指定模型参数的存储路径。若模型参数变量以分离文件的形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None;若所有模型参数存储在一个单独的二进制文件中,则使用 ``filename`` 来指明这个二进制文件。 + +注意: + - 有些变量不是参数,如学习率、全局训练步数(global step)等,但它们之于训练却是必要的。因此,调用 :ref:`cn_api_fluid_io_save_params` 和 :ref:`cn_api_fluid_io_load_params` 来保存和加载参数对于断点训练是不够的,这种情况下可以使用 :ref:`cn_api_fluid_io_save_persistables` 和 :ref:`cn_api_fluid_io_load_persistables` 来保存和加载训练过程的检查点(checkpoint)。 + - 若希望同时加载预训练后的模型结构和模型参数以用于预测过程,则可使用 :ref:`cn_api_fluid_io_load_inference_model` 接口。更多细节请参考 :ref:`api_guide_model_save_reader` 。 + +参数: + - **executor** (Executor) – 加载模型参数的 ``executor`` (详见 :ref:`api_guide_executor` ) 。 + - **dirname** (str) – 模型参数的存储路径。 + - **main_program** (Program,可选) – 筛选模型参数变量所依据的 ``Program`` (详见 :ref:`api_guide_Program` )。若为None, 则使用全局默认的 ``default_main_program`` 。默认值为None。 + - **filename** (str,可选) – 若模型参数是以若干文件形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None。反之,需要通过 ``filename`` 来指明单一模型参数存储文件的名称。 默认值为None。 + +**返回:** 无 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + + exe = fluid.Executor(fluid.CPUPlace()) + param_path = "./my_paddle_model" + prog = fluid.default_main_program() + fluid.io.load_params(executor=exe, dirname=param_path, + main_program=None) + + + + + + + diff --git a/doc/fluid/api_cn/io_cn/load_persistables_cn.rst b/doc/fluid/api_cn/io_cn/load_persistables_cn.rst index 7a8e83cacdbe4318dc8363e3f77a07821345ac70..2d9def84ed16d6ce3940dab624cfb59450224f5e 100644 --- a/doc/fluid/api_cn/io_cn/load_persistables_cn.rst +++ b/doc/fluid/api_cn/io_cn/load_persistables_cn.rst @@ -1,37 +1,39 @@ -.. _cn_api_fluid_io_load_persistables: - -load_persistables -------------------------------- - -.. py:function:: paddle.fluid.io.load_persistables(executor, dirname, main_program=None, filename=None) - -该接口从给定的 ``main_program`` 中取出所有 ``persistable==True`` 的变量(即持久性变量,详见 :ref:`api_guide_model_save_reader` ),并根据目录 ``dirname`` 或 ``filename`` 提供的参数文件对这些持久性变量进行赋值。 - -使用 ``dirname`` 指定持久性变量的存储路径。若持久性变量以分离文件的形式保存在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None;若所有持久性变量保存在一个单独的二进制文件中,则使用 ``filename`` 来指明这个二进制文件。 - -参数: - - **executor** (Executor) – 加载持久性变量的 ``executor`` (详见 :ref:`api_guide_executor` ) 。 - - **dirname** (str) – 持久性变量的存储路径。 - - **main_program** (Program,可选) – 筛选模型中持久性变量所依据的 ``Program`` (详见 :ref:`api_guide_Program` )。若为None, 则使用全局默认的 ``default_main_program`` 。默认值为None。 - - **filename** (str,可选) – 若模型中的持久性变量是以若干文件形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None。反之,需要通过 ``filename`` 来指明单一模型持久性变量存储文件的名称。 默认值为None。 - -**返回:** 无 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - - exe = fluid.Executor(fluid.CPUPlace()) - param_path = "./my_paddle_model" - prog = fluid.default_main_program() - fluid.io.load_persistables(executor=exe, dirname=param_path, - main_program=None) - - - - - - - +.. _cn_api_fluid_io_load_persistables: + +load_persistables +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.load_persistables(executor, dirname, main_program=None, filename=None) + +该接口从给定的 ``main_program`` 中取出所有 ``persistable==True`` 的变量(即持久性变量,详见 :ref:`api_guide_model_save_reader` ),并根据目录 ``dirname`` 或 ``filename`` 提供的参数文件对这些持久性变量进行赋值。 + +使用 ``dirname`` 指定持久性变量的存储路径。若持久性变量以分离文件的形式保存在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None;若所有持久性变量保存在一个单独的二进制文件中,则使用 ``filename`` 来指明这个二进制文件。 + +参数: + - **executor** (Executor) – 加载持久性变量的 ``executor`` (详见 :ref:`api_guide_executor` ) 。 + - **dirname** (str) – 持久性变量的存储路径。 + - **main_program** (Program,可选) – 筛选模型中持久性变量所依据的 ``Program`` (详见 :ref:`api_guide_Program` )。若为None, 则使用全局默认的 ``default_main_program`` 。默认值为None。 + - **filename** (str,可选) – 若模型中的持久性变量是以若干文件形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None。反之,需要通过 ``filename`` 来指明单一模型持久性变量存储文件的名称。 默认值为None。 + +**返回:** 无 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + + exe = fluid.Executor(fluid.CPUPlace()) + param_path = "./my_paddle_model" + prog = fluid.default_main_program() + fluid.io.load_persistables(executor=exe, dirname=param_path, + main_program=None) + + + + + + + diff --git a/doc/fluid/api_cn/io_cn/save_cn.rst b/doc/fluid/api_cn/io_cn/save_cn.rst index ad8d733f877fc3e937745799edf5c996d13a9890..638c911d9c74a4395b21446ae3dcc282f254857a 100644 --- a/doc/fluid/api_cn/io_cn/save_cn.rst +++ b/doc/fluid/api_cn/io_cn/save_cn.rst @@ -3,6 +3,8 @@ save ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.io.save(program, model_path) 该接口将传入的参数、优化器信息和网络描述保存到 ``model_path`` 。 diff --git a/doc/fluid/api_cn/io_cn/save_inference_model_cn.rst b/doc/fluid/api_cn/io_cn/save_inference_model_cn.rst index 41279449fd0253184ed6647c98be22a96dd1ce8c..966a05a79c93660f0999dcc5cda2b53569b3c512 100644 --- a/doc/fluid/api_cn/io_cn/save_inference_model_cn.rst +++ b/doc/fluid/api_cn/io_cn/save_inference_model_cn.rst @@ -1,67 +1,69 @@ -.. _cn_api_fluid_io_save_inference_model: - -save_inference_model -------------------------------- - -.. py:function:: paddle.fluid.io.save_inference_model(dirname, feeded_var_names, target_vars, executor, main_program=None, model_filename=None, params_filename=None, export_for_deployment=True, program_only=False) - -修剪指定的 ``main_program`` 以构建一个专门用于预测的 ``Inference Program`` ( ``Program`` 含义详见 :ref:`api_guide_Program` )。 所得到的 ``Inference Program`` 及其对应的所有相关参数均被保存到 ``dirname`` 指定的目录中。若只想保存训练后的模型参数,请使用 :ref:`cn_api_fluid_io_save_params` 接口。更多细节请参考 :ref:`api_guide_model_save_reader` 。 - -**注意:dirname用于指定保存预测模型结构和参数的目录。若需要将模型参数保存在指定目录的若干文件中,请设置params_filename的值为None; 若需要将所有模型参数保存在一个单独的二进制文件中,请使用params_filename来指定该二进制文件的名称。** - -参数: - - **dirname** (str) – 指定保存预测模型结构和参数的文件目录。 - - **feeded_var_names** (list[str]) – 字符串列表,包含着Inference Program预测时所需提供数据的所有变量名称(即所有输入变量的名称)。 - - **target_vars** (list[Variable]) – ``Variable`` (详见 :ref:`api_guide_Program` )类型列表,包含着模型的所有输出变量。通过这些输出变量即可得到模型的预测结果。 - - **executor** (Executor) – 用于保存预测模型的 ``executor`` ,详见 :ref:`api_guide_executor` 。 - - **main_program** (Program,可选) – 通过该参数指定的 ``main_program`` 可构建一个专门用于预测的 ``Inference Program`` 。 若为None, 则使用全局默认的 ``_main_program_`` 。默认值为None。 - - **model_filename** (str,可选) – 保存预测模型结构 ``Inference Program`` 的文件名称。若设置为None,则使用 ``__model__`` 作为默认的文件名。 - - **params_filename** (str,可选) – 保存预测模型所有相关参数的文件名称。若设置为None,则模型参数被保存在单独的文件中。 - - **export_for_deployment** (bool,可选) – 若为True,则 ``main_program`` 指定的Program将被修改为只支持直接预测部署的Program。否则,将存储更多的信息,方便优化和再训练。目前只支持设置为True,且默认值为True。 - - **program_only** (bool,可选) – 若为True,则只保存预测模型的网络结构,而不保存预测模型的网络参数。默认值为False。 - - -**返回:** 用于获取模型预测结果的所有输出变量的名称列表。 - -**返回类型:** 列表(list) - -抛出异常: - - ``ValueError`` – 若 ``feed_var_names`` 不是字符串列表,则抛出异常。 - - ``ValueError`` – 若 ``target_vars`` 不是 ``Variable`` 类型列表,则抛出异常。 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - - path = "./infer_model" - - # 用户定义网络,此处以softmax回归为例 - image = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32') - label = fluid.layers.data(name='label', shape=[1], dtype='int64') - feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace()) - predict = fluid.layers.fc(input=image, size=10, act='softmax') - - loss = fluid.layers.cross_entropy(input=predict, label=label) - avg_loss = fluid.layers.mean(loss) - - exe = fluid.Executor(fluid.CPUPlace()) - exe.run(fluid.default_startup_program()) - - # 数据输入及训练过程 - - # 保存预测模型。注意,用于预测的模型网络结构不需要保存标签和损失。 - fluid.io.save_inference_model(dirname=path, feeded_var_names=['img'], target_vars=[predict], executor=exe) - - # 在这个示例中,save_inference_mode接口将根据网络的输入结点(img)和输出结点(predict)修剪默认的主程序(_main_program_)。 - # 修剪得到的Inference Program将被保存在 “./infer_model/__model__”文件中, - # 模型参数将被保存在“./infer_model/”文件夹下以各自名称命名的单独文件中。 - - - - - - - - +.. _cn_api_fluid_io_save_inference_model: + +save_inference_model +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.save_inference_model(dirname, feeded_var_names, target_vars, executor, main_program=None, model_filename=None, params_filename=None, export_for_deployment=True, program_only=False) + +修剪指定的 ``main_program`` 以构建一个专门用于预测的 ``Inference Program`` ( ``Program`` 含义详见 :ref:`api_guide_Program` )。 所得到的 ``Inference Program`` 及其对应的所有相关参数均被保存到 ``dirname`` 指定的目录中。若只想保存训练后的模型参数,请使用 :ref:`cn_api_fluid_io_save_params` 接口。更多细节请参考 :ref:`api_guide_model_save_reader` 。 + +**注意:dirname用于指定保存预测模型结构和参数的目录。若需要将模型参数保存在指定目录的若干文件中,请设置params_filename的值为None; 若需要将所有模型参数保存在一个单独的二进制文件中,请使用params_filename来指定该二进制文件的名称。** + +参数: + - **dirname** (str) – 指定保存预测模型结构和参数的文件目录。 + - **feeded_var_names** (list[str]) – 字符串列表,包含着Inference Program预测时所需提供数据的所有变量名称(即所有输入变量的名称)。 + - **target_vars** (list[Variable]) – ``Variable`` (详见 :ref:`api_guide_Program` )类型列表,包含着模型的所有输出变量。通过这些输出变量即可得到模型的预测结果。 + - **executor** (Executor) – 用于保存预测模型的 ``executor`` ,详见 :ref:`api_guide_executor` 。 + - **main_program** (Program,可选) – 通过该参数指定的 ``main_program`` 可构建一个专门用于预测的 ``Inference Program`` 。 若为None, 则使用全局默认的 ``_main_program_`` 。默认值为None。 + - **model_filename** (str,可选) – 保存预测模型结构 ``Inference Program`` 的文件名称。若设置为None,则使用 ``__model__`` 作为默认的文件名。 + - **params_filename** (str,可选) – 保存预测模型所有相关参数的文件名称。若设置为None,则模型参数被保存在单独的文件中。 + - **export_for_deployment** (bool,可选) – 若为True,则 ``main_program`` 指定的Program将被修改为只支持直接预测部署的Program。否则,将存储更多的信息,方便优化和再训练。目前只支持设置为True,且默认值为True。 + - **program_only** (bool,可选) – 若为True,则只保存预测模型的网络结构,而不保存预测模型的网络参数。默认值为False。 + + +**返回:** 用于获取模型预测结果的所有输出变量的名称列表。 + +**返回类型:** 列表(list) + +抛出异常: + - ``ValueError`` – 若 ``feed_var_names`` 不是字符串列表,则抛出异常。 + - ``ValueError`` – 若 ``target_vars`` 不是 ``Variable`` 类型列表,则抛出异常。 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + + path = "./infer_model" + + # 用户定义网络,此处以softmax回归为例 + image = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32') + label = fluid.layers.data(name='label', shape=[1], dtype='int64') + feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace()) + predict = fluid.layers.fc(input=image, size=10, act='softmax') + + loss = fluid.layers.cross_entropy(input=predict, label=label) + avg_loss = fluid.layers.mean(loss) + + exe = fluid.Executor(fluid.CPUPlace()) + exe.run(fluid.default_startup_program()) + + # 数据输入及训练过程 + + # 保存预测模型。注意,用于预测的模型网络结构不需要保存标签和损失。 + fluid.io.save_inference_model(dirname=path, feeded_var_names=['img'], target_vars=[predict], executor=exe) + + # 在这个示例中,save_inference_mode接口将根据网络的输入结点(img)和输出结点(predict)修剪默认的主程序(_main_program_)。 + # 修剪得到的Inference Program将被保存在 “./infer_model/__model__”文件中, + # 模型参数将被保存在“./infer_model/”文件夹下以各自名称命名的单独文件中。 + + + + + + + + diff --git a/doc/fluid/api_cn/io_cn/save_params_cn.rst b/doc/fluid/api_cn/io_cn/save_params_cn.rst index 2ecf7947cc63f8b147c3b518efc97e4f988e3f03..8353acdda6ba9c1cb6c67c5ff0479e93519b40bd 100644 --- a/doc/fluid/api_cn/io_cn/save_params_cn.rst +++ b/doc/fluid/api_cn/io_cn/save_params_cn.rst @@ -1,43 +1,45 @@ -.. _cn_api_fluid_io_save_params: - -save_params -------------------------------- - -.. py:function:: paddle.fluid.io.save_params(executor, dirname, main_program=None, filename=None) - -该OP从 ``main_program`` 中取出所有参数,然后将它们保存到 ``dirname`` 目录下或名为 ``filename`` 的文件中。 - -``dirname`` 用于指定保存参数的目标路径。若想将参数保存到多个独立文件中,设置 ``filename=None`` ; 若想将所有参数保存在单个文件中,请设置 ``filename`` 来指定该文件的名称。 - -注意: - - 有些变量不是参数,如学习率,全局训练步数(global step)等,但它们对于训练却是必要的。因此,调用 :ref:`cn_api_fluid_io_save_params` 和 :ref:`cn_api_fluid_io_load_params` 来保存和加载参数对于断点训练是不够的,这种情况下可以使用 :ref:`cn_api_fluid_io_save_persistables` 和 :ref:`cn_api_fluid_io_load_persistables` 来保存和加载训练过程中的检查点(checkpoint)。 - - 如果您想要储存您的模型用于预测,请使用 :ref:`cn_api_fluid_io_save_inference_model` 。更多细节请参考 :ref:`api_guide_model_save_reader` - -参数: - - **executor** (Executor) – 用于保存参数的 ``executor`` ,详见 :ref:`api_guide_executor` 。 - - **dirname** (str) – 指定保存参数的文件目录。 - - **main_program** (Program,可选) – 需要保存参数的Program( ``Program`` 含义详见 :ref:`api_guide_Program` )。如果为None,则使用default_main_Program 。默认值为None。 - - **filename** (str,可选) – 保存参数的文件名称。若需要将参数保存到多个独立的文件中,请设置 ``filename=None`` 。默认值为None。 - -返回: 无 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - - params_path = "./my_paddle_model" - image = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32') - label = fluid.layers.data(name='label', shape=[1], dtype='int64') - feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace()) - predict = fluid.layers.fc(input=image, size=10, act='softmax') - - loss = fluid.layers.cross_entropy(input=predict, label=label) - avg_loss = fluid.layers.mean(loss) - - exe = fluid.Executor(fluid.CPUPlace()) - exe.run(fluid.default_startup_program()) - fluid.io.save_params(executor=exe, dirname=params_path) - # 网络中fc层的参数weight和bias将会分别存储在"./my_paddle_model"路径下。 - +.. _cn_api_fluid_io_save_params: + +save_params +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.save_params(executor, dirname, main_program=None, filename=None) + +该OP从 ``main_program`` 中取出所有参数,然后将它们保存到 ``dirname`` 目录下或名为 ``filename`` 的文件中。 + +``dirname`` 用于指定保存参数的目标路径。若想将参数保存到多个独立文件中,设置 ``filename=None`` ; 若想将所有参数保存在单个文件中,请设置 ``filename`` 来指定该文件的名称。 + +注意: + - 有些变量不是参数,如学习率,全局训练步数(global step)等,但它们对于训练却是必要的。因此,调用 :ref:`cn_api_fluid_io_save_params` 和 :ref:`cn_api_fluid_io_load_params` 来保存和加载参数对于断点训练是不够的,这种情况下可以使用 :ref:`cn_api_fluid_io_save_persistables` 和 :ref:`cn_api_fluid_io_load_persistables` 来保存和加载训练过程中的检查点(checkpoint)。 + - 如果您想要储存您的模型用于预测,请使用 :ref:`cn_api_fluid_io_save_inference_model` 。更多细节请参考 :ref:`api_guide_model_save_reader` + +参数: + - **executor** (Executor) – 用于保存参数的 ``executor`` ,详见 :ref:`api_guide_executor` 。 + - **dirname** (str) – 指定保存参数的文件目录。 + - **main_program** (Program,可选) – 需要保存参数的Program( ``Program`` 含义详见 :ref:`api_guide_Program` )。如果为None,则使用default_main_Program 。默认值为None。 + - **filename** (str,可选) – 保存参数的文件名称。若需要将参数保存到多个独立的文件中,请设置 ``filename=None`` 。默认值为None。 + +返回: 无 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + + params_path = "./my_paddle_model" + image = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32') + label = fluid.layers.data(name='label', shape=[1], dtype='int64') + feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace()) + predict = fluid.layers.fc(input=image, size=10, act='softmax') + + loss = fluid.layers.cross_entropy(input=predict, label=label) + avg_loss = fluid.layers.mean(loss) + + exe = fluid.Executor(fluid.CPUPlace()) + exe.run(fluid.default_startup_program()) + fluid.io.save_params(executor=exe, dirname=params_path) + # 网络中fc层的参数weight和bias将会分别存储在"./my_paddle_model"路径下。 + diff --git a/doc/fluid/api_cn/io_cn/save_persistables_cn.rst b/doc/fluid/api_cn/io_cn/save_persistables_cn.rst index b1c854b6760b673514a420ab018f6efd1d7df03c..b832914d9a8914988c7f60c4839de65fc9ab9f84 100644 --- a/doc/fluid/api_cn/io_cn/save_persistables_cn.rst +++ b/doc/fluid/api_cn/io_cn/save_persistables_cn.rst @@ -1,46 +1,48 @@ -.. _cn_api_fluid_io_save_persistables: - -save_persistables -------------------------------- - -.. py:function:: paddle.fluid.io.save_persistables(executor, dirname, main_program=None, filename=None) - -该OP从给定 ``main_program`` 中取出所有持久性变量(详见 :ref:`api_guide_model_save_reader` ),然后将它们保存到目录 ``dirname`` 中或 ``filename`` 指定的文件中。 - -``dirname`` 用于指定保存持久性变量的目录。如果想将持久性变量保存到指定目录的若干文件中,请设置 ``filename=None`` ; 若想将所有持久性变量保存在同一个文件中,请设置 ``filename`` 来指定文件的名称。 - -参数: - - **executor** (Executor) – 用于保存持久性变量的 ``executor`` ,详见 :ref:`api_guide_executor` 。 - - **dirname** (str) – 用于储存持久性变量的文件目录。 - - **main_program** (Program,可选) – 需要保存持久性变量的Program( ``Program`` 含义详见 :ref:`api_guide_Program` )。如果为None,则使用default_main_Program 。默认值为None。 - - **filename** (str,可选) – 保存持久性变量的文件名称。若想分开保存变量,设置 ``filename=None`` 。 默认值为None。 - -返回: 无 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - - dir_path = "./my_paddle_model" - file_name = "persistables" - image = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32') - label = fluid.layers.data(name='label', shape=[1], dtype='int64') - feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace()) - predict = fluid.layers.fc(input=image, size=10, act='softmax') - - loss = fluid.layers.cross_entropy(input=predict, label=label) - avg_loss = fluid.layers.mean(loss) - - exe = fluid.Executor(fluid.CPUPlace()) - exe.run(fluid.default_startup_program()) - fluid.io.save_persistables(executor=exe, dirname=dir_path, filename=file_name) - # 网络中fc层中的持久性变量weight和bia将会保存在路径“./my_paddle_model”下名为"persistables"的文件中。 - - - - - - - +.. _cn_api_fluid_io_save_persistables: + +save_persistables +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.save_persistables(executor, dirname, main_program=None, filename=None) + +该OP从给定 ``main_program`` 中取出所有持久性变量(详见 :ref:`api_guide_model_save_reader` ),然后将它们保存到目录 ``dirname`` 中或 ``filename`` 指定的文件中。 + +``dirname`` 用于指定保存持久性变量的目录。如果想将持久性变量保存到指定目录的若干文件中,请设置 ``filename=None`` ; 若想将所有持久性变量保存在同一个文件中,请设置 ``filename`` 来指定文件的名称。 + +参数: + - **executor** (Executor) – 用于保存持久性变量的 ``executor`` ,详见 :ref:`api_guide_executor` 。 + - **dirname** (str) – 用于储存持久性变量的文件目录。 + - **main_program** (Program,可选) – 需要保存持久性变量的Program( ``Program`` 含义详见 :ref:`api_guide_Program` )。如果为None,则使用default_main_Program 。默认值为None。 + - **filename** (str,可选) – 保存持久性变量的文件名称。若想分开保存变量,设置 ``filename=None`` 。 默认值为None。 + +返回: 无 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + + dir_path = "./my_paddle_model" + file_name = "persistables" + image = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32') + label = fluid.layers.data(name='label', shape=[1], dtype='int64') + feeder = fluid.DataFeeder(feed_list=[image, label], place=fluid.CPUPlace()) + predict = fluid.layers.fc(input=image, size=10, act='softmax') + + loss = fluid.layers.cross_entropy(input=predict, label=label) + avg_loss = fluid.layers.mean(loss) + + exe = fluid.Executor(fluid.CPUPlace()) + exe.run(fluid.default_startup_program()) + fluid.io.save_persistables(executor=exe, dirname=dir_path, filename=file_name) + # 网络中fc层中的持久性变量weight和bia将会保存在路径“./my_paddle_model”下名为"persistables"的文件中。 + + + + + + + diff --git a/doc/fluid/api_cn/io_cn/save_vars_cn.rst b/doc/fluid/api_cn/io_cn/save_vars_cn.rst index cfc665aa2daf05d0340ec57da0a488f7ac29fd36..325c21628a89df83ef222a34afcf65f75736b815 100644 --- a/doc/fluid/api_cn/io_cn/save_vars_cn.rst +++ b/doc/fluid/api_cn/io_cn/save_vars_cn.rst @@ -1,62 +1,64 @@ -.. _cn_api_fluid_io_save_vars: - -save_vars -------------------------------- - -.. py:function:: paddle.fluid.io.save_vars(executor, dirname, main_program=None, vars=None, predicate=None, filename=None) - -该接口将 ``Program`` 的变量保存到文件中。 - -通过 ``vars`` 指定需要保存的变量,或者通过 ``predicate`` 筛选需要保存的变量, ``vars`` 和 ``predicate`` 不能同时为None。 - -参数: - - **executor** (Executor)- 运行的执行器,执行器的介绍请参考 :ref:`api_guide_model_save_reader` 。 - - **dirname** (str)- 保存变量的目录路径。 - - **main_program** (Program,可选)- 需要保存变量的 ``Program`` , ``Program`` 的介绍请参考 :ref:`api_guide_Program` 。如果 ``main_program`` 为None,则使用默认的主程序。默认值为None。 - - **vars** (list [Variable],可选)- 通过该列表指定需要保存的变量。默认值为None。 - - **predicate** (function,可选)- 通过该函数筛选 :math:`predicate(variable)== True` 的变量进行保存。如果通过 ``vars`` 指定了需要保存的变量,则该参数无效。默认值为None。 - - **filename** (str,可选)- 保存所有变量的文件。如果设置为None,所有变量会按照变量名称单独保存成文件;如果设置为非None,所有变量会保存成一个文件名为该设置值的文件。默认值为None。 - -返回:无 - -抛出异常: - - ``TypeError`` - 如果main_program不是Program的实例,也不是None。 - -**代码示例** - -.. code-block:: python - - import paddle.fluid as fluid - main_prog = fluid.Program() - startup_prog = fluid.Program() - with fluid.program_guard(main_prog, startup_prog): - data = fluid.layers.data(name="img", shape=[64, 784], append_batch_size=False) - w = fluid.layers.create_parameter(shape=[784, 200], dtype='float32', name='fc_w') - b = fluid.layers.create_parameter(shape=[200], dtype='float32', name='fc_b') - hidden_w = fluid.layers.matmul(x=data, y=w) - hidden_b = fluid.layers.elementwise_add(hidden_w, b) - place = fluid.CPUPlace() - exe = fluid.Executor(place) - exe.run(startup_prog) - - # 示例一:用vars来指定变量。 - var_list = [w, b] - path = "./my_paddle_vars" - fluid.io.save_vars(executor=exe, dirname=path, vars=var_list, - filename="vars_file") - # w, b 将被保存,使用同一文件名“var_file”,保存在路径“./my_paddle_vars”下。 - - # 示例二:通过predicate筛选变量。 - def name_has_fc(var): - res = "fc" in var.name - return res - - param_path = "./my_paddle_model" - fluid.io.save_vars(executor=exe, dirname=param_path, main_program=main_prog, vars=None, predicate = name_has_fc) - # 将main_program中名中包含“fc”的的所有变量保存。 - # 变量将分开保存。 - - - - - +.. _cn_api_fluid_io_save_vars: + +save_vars +------------------------------- + +**注意:该API仅支持【静态图】模式** + +.. py:function:: paddle.fluid.io.save_vars(executor, dirname, main_program=None, vars=None, predicate=None, filename=None) + +该接口将 ``Program`` 的变量保存到文件中。 + +通过 ``vars`` 指定需要保存的变量,或者通过 ``predicate`` 筛选需要保存的变量, ``vars`` 和 ``predicate`` 不能同时为None。 + +参数: + - **executor** (Executor)- 运行的执行器,执行器的介绍请参考 :ref:`api_guide_model_save_reader` 。 + - **dirname** (str)- 保存变量的目录路径。 + - **main_program** (Program,可选)- 需要保存变量的 ``Program`` , ``Program`` 的介绍请参考 :ref:`api_guide_Program` 。如果 ``main_program`` 为None,则使用默认的主程序。默认值为None。 + - **vars** (list [Variable],可选)- 通过该列表指定需要保存的变量。默认值为None。 + - **predicate** (function,可选)- 通过该函数筛选 :math:`predicate(variable)== True` 的变量进行保存。如果通过 ``vars`` 指定了需要保存的变量,则该参数无效。默认值为None。 + - **filename** (str,可选)- 保存所有变量的文件。如果设置为None,所有变量会按照变量名称单独保存成文件;如果设置为非None,所有变量会保存成一个文件名为该设置值的文件。默认值为None。 + +返回:无 + +抛出异常: + - ``TypeError`` - 如果main_program不是Program的实例,也不是None。 + +**代码示例** + +.. code-block:: python + + import paddle.fluid as fluid + main_prog = fluid.Program() + startup_prog = fluid.Program() + with fluid.program_guard(main_prog, startup_prog): + data = fluid.layers.data(name="img", shape=[64, 784], append_batch_size=False) + w = fluid.layers.create_parameter(shape=[784, 200], dtype='float32', name='fc_w') + b = fluid.layers.create_parameter(shape=[200], dtype='float32', name='fc_b') + hidden_w = fluid.layers.matmul(x=data, y=w) + hidden_b = fluid.layers.elementwise_add(hidden_w, b) + place = fluid.CPUPlace() + exe = fluid.Executor(place) + exe.run(startup_prog) + + # 示例一:用vars来指定变量。 + var_list = [w, b] + path = "./my_paddle_vars" + fluid.io.save_vars(executor=exe, dirname=path, vars=var_list, + filename="vars_file") + # w, b 将被保存,使用同一文件名“var_file”,保存在路径“./my_paddle_vars”下。 + + # 示例二:通过predicate筛选变量。 + def name_has_fc(var): + res = "fc" in var.name + return res + + param_path = "./my_paddle_model" + fluid.io.save_vars(executor=exe, dirname=param_path, main_program=main_prog, vars=None, predicate = name_has_fc) + # 将main_program中名中包含“fc”的的所有变量保存。 + # 变量将分开保存。 + + + + + diff --git a/doc/fluid/api_cn/layers_cn/BeamSearchDecoder_cn.rst b/doc/fluid/api_cn/layers_cn/BeamSearchDecoder_cn.rst index 43c9dd6cf7e5f5e7554000f9ba77c5e39f53e2f1..45c372bc2d13ad6a17ffde72d07d7bfc00087e34 100644 --- a/doc/fluid/api_cn/layers_cn/BeamSearchDecoder_cn.rst +++ b/doc/fluid/api_cn/layers_cn/BeamSearchDecoder_cn.rst @@ -4,6 +4,8 @@ BeamSearchDecoder ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.BeamSearchDecoder(cell, start_token, end_token, beam_size, embedding_fn=None, output_fn=None) 带beam search解码策略的解码器。该接口包装一个cell来计算概率,然后执行一个beam search步骤计算得分,并为每个解码步骤选择候选输出。更多详细信息请参阅 `Beam search `_ diff --git a/doc/fluid/api_cn/layers_cn/Decoder_cn.rst b/doc/fluid/api_cn/layers_cn/Decoder_cn.rst index feb0c4452c864ef27d74aa8cb8fd0c2335b40ad7..893119253f16ceb445cdbcac726a054a8e5e8ad3 100644 --- a/doc/fluid/api_cn/layers_cn/Decoder_cn.rst +++ b/doc/fluid/api_cn/layers_cn/Decoder_cn.rst @@ -4,6 +4,8 @@ Decoder ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.Decoder() diff --git a/doc/fluid/api_cn/layers_cn/DynamicRNN_cn.rst b/doc/fluid/api_cn/layers_cn/DynamicRNN_cn.rst index 3752001df065cb3ca8f1f1538d87d6274617800b..50f6f41880b7473dad630765958ecb0f368a7127 100644 --- a/doc/fluid/api_cn/layers_cn/DynamicRNN_cn.rst +++ b/doc/fluid/api_cn/layers_cn/DynamicRNN_cn.rst @@ -3,6 +3,8 @@ DynamicRNN =================== +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.DynamicRNN(name=None) **注意:该类型的输入仅支持LoDTensor,如果您需要处理的输入数据是Tensor类型, diff --git a/doc/fluid/api_cn/layers_cn/GRUCell_cn.rst b/doc/fluid/api_cn/layers_cn/GRUCell_cn.rst index f00800cc4dd4992fe9a62556b9678c319a5def0d..3acb79d737531d6f2648081c25336d636e119611 100644 --- a/doc/fluid/api_cn/layers_cn/GRUCell_cn.rst +++ b/doc/fluid/api_cn/layers_cn/GRUCell_cn.rst @@ -3,6 +3,8 @@ GRUCell ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.GRUCell(hidden_size, param_attr=None, bias_attr=None, gate_activation=None, activation=None, dtype="float32", name="GRUCell") 门控循环单元(Gated Recurrent Unit)。通过对 :code:`fluid.contrib.layers.rnn_impl.BasicGRUUnit` 包装,来让它可以应用于RNNCell。 diff --git a/doc/fluid/api_cn/layers_cn/IfElse_cn.rst b/doc/fluid/api_cn/layers_cn/IfElse_cn.rst index a00f2795bbe6eac4a9b9d7c3e763f30c76d567d4..35b41973feec2bb98004dc6e91ef3f1aba8b3052 100644 --- a/doc/fluid/api_cn/layers_cn/IfElse_cn.rst +++ b/doc/fluid/api_cn/layers_cn/IfElse_cn.rst @@ -3,6 +3,8 @@ IfElse ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.IfElse(cond, name=None) 该类用于实现IfElse分支控制功能, IfElse包含两个Block,true_block,false_block,IfElse会将满足True或False条件的数据分别放入不同的block运行。 diff --git a/doc/fluid/api_cn/layers_cn/LSTMCell_cn.rst b/doc/fluid/api_cn/layers_cn/LSTMCell_cn.rst index 324bf4a19eb907c1f0b4e7a164d649d07bac5cd4..09d21492757c836fe1e4799e586e6b6d7001a204 100644 --- a/doc/fluid/api_cn/layers_cn/LSTMCell_cn.rst +++ b/doc/fluid/api_cn/layers_cn/LSTMCell_cn.rst @@ -4,6 +4,8 @@ LSTMCell ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.LSTMCell(hidden_size, param_attr=None, bias_attr=None, gate_activation=None, activation=None, forget_bias=1.0, dtype="float32", name="LSTMCell") 长短期记忆单元(Long-Short Term Memory)。通过对 :code:`fluid.contrib.layers.rnn_impl.BasicLSTMUnit` 包装,来让它可以应用于RNNCell。 diff --git a/doc/fluid/api_cn/layers_cn/Print_cn.rst b/doc/fluid/api_cn/layers_cn/Print_cn.rst index b055328db5337f684c8784dffcbe65ff427c204b..1851dd7145a80cb06d4d37f5098d891e5fe39718 100644 --- a/doc/fluid/api_cn/layers_cn/Print_cn.rst +++ b/doc/fluid/api_cn/layers_cn/Print_cn.rst @@ -3,6 +3,8 @@ Print ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.Print(input, first_n=-1, message=None, summarize=20, print_tensor_name=True, print_tensor_type=True, print_tensor_shape=True, print_tensor_lod=True, print_phase='both') **Print操作命令** diff --git a/doc/fluid/api_cn/layers_cn/RNNCell_cn.rst b/doc/fluid/api_cn/layers_cn/RNNCell_cn.rst index 2cb3900eb278fec4949bad822a73ed37b10501d0..d00a275f949673afa1392a1d5631fdef45451be6 100644 --- a/doc/fluid/api_cn/layers_cn/RNNCell_cn.rst +++ b/doc/fluid/api_cn/layers_cn/RNNCell_cn.rst @@ -4,6 +4,8 @@ RNNCell ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.RNNCell(name=None) RNNCell是抽象的基类,代表将输入和状态映射到输出和新状态的计算,主要用于RNN。 diff --git a/doc/fluid/api_cn/layers_cn/StaticRNN_cn.rst b/doc/fluid/api_cn/layers_cn/StaticRNN_cn.rst index 52437e554889b36f9aabe8626f76e7804ddf2172..af5a5c488f02bd66f5df533b2bdaa429cad7a422 100644 --- a/doc/fluid/api_cn/layers_cn/StaticRNN_cn.rst +++ b/doc/fluid/api_cn/layers_cn/StaticRNN_cn.rst @@ -3,6 +3,8 @@ StaticRNN ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.StaticRNN(name=None) 该OP用来处理一批序列数据,其中每个样本序列的长度必须相等。StaticRNN将序列按照时间步长展开,用户需要定义每个时间步中的处理逻辑。 diff --git a/doc/fluid/api_cn/layers_cn/Switch_cn.rst b/doc/fluid/api_cn/layers_cn/Switch_cn.rst index c0e830e78fd031cc0c5f1c0bd54d4f6ccdc41820..67e2ea544fefe2b814e91628b226f45779c6a4c0 100644 --- a/doc/fluid/api_cn/layers_cn/Switch_cn.rst +++ b/doc/fluid/api_cn/layers_cn/Switch_cn.rst @@ -3,6 +3,8 @@ Switch ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.Switch (name=None) 该类用于实现Switch分支控制功能。Switch分支包含多个case分支和一个default分支,Switch控制流会依次检查各case分支条件是否满足,并仅执行第一个满足条件的case分支后面的语句。若不存在满足条件的case分支,则仅执行default分支后面的语句。 diff --git a/doc/fluid/api_cn/layers_cn/While_cn.rst b/doc/fluid/api_cn/layers_cn/While_cn.rst index b51721a4a6f28bd61bd9fb0c504adaa99e9c57f8..74d4da040a40c77ce90d519ca2157c31f23de7b9 100644 --- a/doc/fluid/api_cn/layers_cn/While_cn.rst +++ b/doc/fluid/api_cn/layers_cn/While_cn.rst @@ -3,6 +3,8 @@ While ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.layers.While (cond, is_test=False, name=None) diff --git a/doc/fluid/api_cn/layers_cn/autoincreased_step_counter_cn.rst b/doc/fluid/api_cn/layers_cn/autoincreased_step_counter_cn.rst index c2f6129ff4d61728fe3c305ee65b9d4171512363..e3e4768a01166a45f58d41eb6d53e1a3ad689e34 100644 --- a/doc/fluid/api_cn/layers_cn/autoincreased_step_counter_cn.rst +++ b/doc/fluid/api_cn/layers_cn/autoincreased_step_counter_cn.rst @@ -3,6 +3,8 @@ autoincreased_step_counter ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.autoincreased_step_counter(counter_name=None, begin=1, step=1) 创建一个自增变量,每个迭代累加一次,默认首次返回值为 1,默认累加步长为 1。 diff --git a/doc/fluid/api_cn/layers_cn/batch_norm_cn.rst b/doc/fluid/api_cn/layers_cn/batch_norm_cn.rst index 005078863daaed175ba54a46915b43eda9459c4e..3d4699eb690296220eba86d07d5f5c0ca46e8087 100644 --- a/doc/fluid/api_cn/layers_cn/batch_norm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/batch_norm_cn.rst @@ -3,6 +3,8 @@ batch_norm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.batch_norm(input, act=None, is_test=False, momentum=0.9, epsilon=1e-05, param_attr=None, bias_attr=None, data_layout='NCHW', in_place=False, name=None, moving_mean_name=None, moving_variance_name=None, do_model_average_for_mean_and_var=False, use_global_stats=False) 批正则化层(Batch Normalization Layer) diff --git a/doc/fluid/api_cn/layers_cn/bilinear_tensor_product_cn.rst b/doc/fluid/api_cn/layers_cn/bilinear_tensor_product_cn.rst index 8bc86633074548e3b63be1ae549a402a5ec8bb2e..2bf7ce633952f7647e6b8960d5f24e2c44a30e41 100644 --- a/doc/fluid/api_cn/layers_cn/bilinear_tensor_product_cn.rst +++ b/doc/fluid/api_cn/layers_cn/bilinear_tensor_product_cn.rst @@ -3,6 +3,8 @@ bilinear_tensor_product ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.bilinear_tensor_product(x, y, size, act=None, name=None, param_attr=None, bias_attr=None) 该层对两个输入执行双线性张量积。 diff --git a/doc/fluid/api_cn/layers_cn/case_cn.rst b/doc/fluid/api_cn/layers_cn/case_cn.rst index dd2aef937305fb1af6eb92b7c964694c030fc15f..cc9892af93819912eccac2cffd70574967d1ab7e 100644 --- a/doc/fluid/api_cn/layers_cn/case_cn.rst +++ b/doc/fluid/api_cn/layers_cn/case_cn.rst @@ -3,6 +3,8 @@ case ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.case(pred_fn_pairs, default=None, name=None) 该OP的运行方式类似于python的if-elif-elif-else。 diff --git a/doc/fluid/api_cn/layers_cn/center_loss_cn.rst b/doc/fluid/api_cn/layers_cn/center_loss_cn.rst index bc396f9f8c9e6acddfcbba4eb74d9bd6904433de..3b4a349fe7436048bf5065338bfc37c003fae19e 100644 --- a/doc/fluid/api_cn/layers_cn/center_loss_cn.rst +++ b/doc/fluid/api_cn/layers_cn/center_loss_cn.rst @@ -3,6 +3,8 @@ center_loss ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.center_loss(input, label, num_classes, alpha, param_attr, update_center=True) 该OP接收一个来自于最后一个隐藏层的输出和目标标签作为输入,返回损失值。为每一个类别提供一个类别中心,计算mini-batch中每个样本与对应类别中心的距离的平均值作为center loss。 diff --git a/doc/fluid/api_cn/layers_cn/cond_cn.rst b/doc/fluid/api_cn/layers_cn/cond_cn.rst index 901a1a14bb25c5e7c773fe9dedf067a664e4d01a..bdca5f2025f9da79678bdf8586d8f59b4a3e59b0 100644 --- a/doc/fluid/api_cn/layers_cn/cond_cn.rst +++ b/doc/fluid/api_cn/layers_cn/cond_cn.rst @@ -3,6 +3,8 @@ cond ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.cond(pred, true_fn=None, false_fn=None, name=None) 如果 ``pred`` 是 ``True`` ,该API返回 ``true_fn()`` ,否则返回 ``false_fn()`` 。 diff --git a/doc/fluid/api_cn/layers_cn/conv2d_cn.rst b/doc/fluid/api_cn/layers_cn/conv2d_cn.rst index 935c5b1690961e516b6523c51e95ee034e59008c..fb5bcd097e69e16ea166cc7c131641835473c09f 100644 --- a/doc/fluid/api_cn/layers_cn/conv2d_cn.rst +++ b/doc/fluid/api_cn/layers_cn/conv2d_cn.rst @@ -3,6 +3,8 @@ conv2d ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.conv2d(input, num_filters, filter_size, stride=1, padding=0, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, name=None, data_format="NCHW") 该OP是二维卷积层(convolution2D layer),根据输入、滤波器、步长(stride)、填充(padding)、膨胀比例(dilations)一组参数计算输出特征层大小。输入和输出是NCHW或NHWC格式,其中N是批尺寸,C是通道数,H是特征高度,W是特征宽度。滤波器是MCHW格式,M是输出图像通道数,C是输入图像通道数,H是滤波器高度,W是滤波器宽度。如果组数(groups)大于1,C等于输入图像通道数除以组数的结果。详情请参考UFLDL's : `卷积 `_ 。如果bias_attr不为False,卷积计算会添加偏置项。如果指定了激活函数类型,相应的激活函数会作用在最终结果上。 diff --git a/doc/fluid/api_cn/layers_cn/conv2d_transpose_cn.rst b/doc/fluid/api_cn/layers_cn/conv2d_transpose_cn.rst index 014d47ff31a5a950aa2d173ec402ace75cd909db..cefc7b688eb7943c127b87f0ccc5efd0c07f9b40 100644 --- a/doc/fluid/api_cn/layers_cn/conv2d_transpose_cn.rst +++ b/doc/fluid/api_cn/layers_cn/conv2d_transpose_cn.rst @@ -3,6 +3,8 @@ conv2d_transpose ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.conv2d_transpose(input, num_filters, output_size=None, filter_size=None, padding=0, stride=1, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, name=None, data_format='NCHW') 二维转置卷积层(Convlution2D transpose layer) diff --git a/doc/fluid/api_cn/layers_cn/conv3d_cn.rst b/doc/fluid/api_cn/layers_cn/conv3d_cn.rst index 8cfed9c9237340c35f36b70210b37695098c41e8..0462892a9c7f3e025f2a18aa1895074faa7bacfa 100644 --- a/doc/fluid/api_cn/layers_cn/conv3d_cn.rst +++ b/doc/fluid/api_cn/layers_cn/conv3d_cn.rst @@ -3,6 +3,8 @@ conv3d ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.conv3d(input, num_filters, filter_size, stride=1, padding=0, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, name=None, data_format="NCDHW") 该OP是三维卷积层(convolution3D layer),根据输入、滤波器、步长(stride)、填充(padding)、膨胀比例(dilations)一组参数计算得到输出特征层大小。输入和输出是NCDHW或NDWHC格式,其中N是批尺寸,C是通道数,D是特征层深度,H是特征层高度,W是特征层宽度。三维卷积(Convlution3D)和二维卷积(Convlution2D)相似,但多了一维深度信息(depth)。如果bias_attr不为False,卷积计算会添加偏置项。如果指定了激活函数类型,相应的激活函数会作用在最终结果上。 diff --git a/doc/fluid/api_cn/layers_cn/conv3d_transpose_cn.rst b/doc/fluid/api_cn/layers_cn/conv3d_transpose_cn.rst index 3e98244ec28e90aa3d43f819907edb8656cec53e..9832db8a8618dba95d2e90a1616b7b8e9b2e820b 100644 --- a/doc/fluid/api_cn/layers_cn/conv3d_transpose_cn.rst +++ b/doc/fluid/api_cn/layers_cn/conv3d_transpose_cn.rst @@ -3,6 +3,8 @@ conv3d_transpose ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.conv3d_transpose(input, num_filters, output_size=None, filter_size=None, padding=0, stride=1, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, name=None, data_format='NCDHW') 三维转置卷积层(Convlution3D transpose layer) diff --git a/doc/fluid/api_cn/layers_cn/create_parameter_cn.rst b/doc/fluid/api_cn/layers_cn/create_parameter_cn.rst index 60cfae4aef482520182d86255d08273816815eac..224d2bb577b685294f64a2b800a9da5298ac38c4 100644 --- a/doc/fluid/api_cn/layers_cn/create_parameter_cn.rst +++ b/doc/fluid/api_cn/layers_cn/create_parameter_cn.rst @@ -3,6 +3,8 @@ create_parameter ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.create_parameter(shape,dtype,name=None,attr=None,is_bias=False,default_initializer=None) 该OP创建一个参数。该参数是一个可学习的变量, 拥有梯度并且可优化。 diff --git a/doc/fluid/api_cn/layers_cn/create_py_reader_by_data_cn.rst b/doc/fluid/api_cn/layers_cn/create_py_reader_by_data_cn.rst index bc6027c197221c4389a00a655143d8587a97ce1a..99eecff605fce6644dbbe5d03d2b69ac8696c2cc 100644 --- a/doc/fluid/api_cn/layers_cn/create_py_reader_by_data_cn.rst +++ b/doc/fluid/api_cn/layers_cn/create_py_reader_by_data_cn.rst @@ -3,6 +3,8 @@ create_py_reader_by_data ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.create_py_reader_by_data(capacity,feed_list,name=None,use_double_buffer=True) 创建一个Python端提供数据的reader。该OP与 :ref:`cn_api_fluid_layers_py_reader` 类似,不同点在于它能够从feed变量列表读取数据。 diff --git a/doc/fluid/api_cn/layers_cn/crf_decoding_cn.rst b/doc/fluid/api_cn/layers_cn/crf_decoding_cn.rst index 78d1b491167d5e7b9136bfdeeb051e96c5cf7590..8e9eb802f91d110096e819383e46d39b25e690c7 100644 --- a/doc/fluid/api_cn/layers_cn/crf_decoding_cn.rst +++ b/doc/fluid/api_cn/layers_cn/crf_decoding_cn.rst @@ -3,6 +3,8 @@ crf_decoding ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.crf_decoding(input, param_attr, label=None, length=None) diff --git a/doc/fluid/api_cn/layers_cn/data_cn.rst b/doc/fluid/api_cn/layers_cn/data_cn.rst index c40f720cdaa322048402ea20e33d4e5d39170957..298dcf6a85cbec50936ae3c6962157dc3b66e87e 100644 --- a/doc/fluid/api_cn/layers_cn/data_cn.rst +++ b/doc/fluid/api_cn/layers_cn/data_cn.rst @@ -3,6 +3,8 @@ data ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.data(name, shape, append_batch_size=True, dtype='float32', lod_level=0, type=VarType.LOD_TENSOR, stop_gradient=True) 该OP会在全局block中创建变量(Variable),该全局变量可被计算图中的算子(operator)访问。 diff --git a/doc/fluid/api_cn/layers_cn/data_norm_cn.rst b/doc/fluid/api_cn/layers_cn/data_norm_cn.rst index c1238d4f1d83853588090675ae11114ed7447828..c98363e67f1e58ed7b232ad44a13ee1e12ad1533 100644 --- a/doc/fluid/api_cn/layers_cn/data_norm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/data_norm_cn.rst @@ -3,6 +3,8 @@ data_norm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.data_norm(input, act=None, epsilon=1e-05, param_attr=None, data_layout='NCHW', in_place=False, name=None, moving_mean_name=None, moving_variance_name=None, do_model_average_for_mean_and_var=False) **数据正则化层** diff --git a/doc/fluid/api_cn/layers_cn/deformable_conv_cn.rst b/doc/fluid/api_cn/layers_cn/deformable_conv_cn.rst index 88a7dee023bb7e6a09b31d0ab6f90114e7f4ed3a..55bcb172e759147c4bddbd6b78885652bb538a1a 100644 --- a/doc/fluid/api_cn/layers_cn/deformable_conv_cn.rst +++ b/doc/fluid/api_cn/layers_cn/deformable_conv_cn.rst @@ -3,6 +3,8 @@ deformable_conv ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.deformable_conv(input, offset, mask, num_filters, filter_size, stride=1, padding=0, dilation=1, groups=None, deformable_groups=None, im2col_step=None, param_attr=None, bias_attr=None, modulated=True, name=None) **可变形卷积算子** diff --git a/doc/fluid/api_cn/layers_cn/dynamic_gru_cn.rst b/doc/fluid/api_cn/layers_cn/dynamic_gru_cn.rst index 081e84c40a996e36d11d4e5690b202dce3da58c1..5ef7a469dcd7ca8c881f06e45b2f36c021e736b8 100644 --- a/doc/fluid/api_cn/layers_cn/dynamic_gru_cn.rst +++ b/doc/fluid/api_cn/layers_cn/dynamic_gru_cn.rst @@ -3,6 +3,8 @@ dynamic_gru ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.dynamic_gru(input, size, param_attr=None, bias_attr=None, is_reverse=False, gate_activation='sigmoid', candidate_activation='tanh', h_0=None, origin_mode=False) diff --git a/doc/fluid/api_cn/layers_cn/dynamic_lstm_cn.rst b/doc/fluid/api_cn/layers_cn/dynamic_lstm_cn.rst index 69813bc7a3dc187d05f4aa2829afa2c97cfece3c..d5635229f2bbdc02c2831f0b4b7a6aed0142dc68 100644 --- a/doc/fluid/api_cn/layers_cn/dynamic_lstm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/dynamic_lstm_cn.rst @@ -3,6 +3,8 @@ dynamic_lstm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.dynamic_lstm(input, size, h_0=None, c_0=None, param_attr=None, bias_attr=None, use_peepholes=True, is_reverse=False, gate_activation='sigmoid', cell_activation='tanh', candidate_activation='tanh', dtype='float32', name=None) 该OP实现了 LSTM,即 Long-Short Term Memory(长短期记忆)运算 - `Hochreiter, S., & Schmidhuber, J. (1997) `_。 diff --git a/doc/fluid/api_cn/layers_cn/dynamic_lstmp_cn.rst b/doc/fluid/api_cn/layers_cn/dynamic_lstmp_cn.rst index 0d6696c7ed1e5f72df8122d2503592931ea138a9..ce3a45f9fcb681b00a52af17ee2f84ca5b01918e 100644 --- a/doc/fluid/api_cn/layers_cn/dynamic_lstmp_cn.rst +++ b/doc/fluid/api_cn/layers_cn/dynamic_lstmp_cn.rst @@ -2,6 +2,8 @@ dynamic_lstmp ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.dynamic_lstmp(input, size, proj_size, param_attr=None, bias_attr=None, use_peepholes=True, is_reverse=False, gate_activation='sigmoid', cell_activation='tanh', candidate_activation='tanh', proj_activation='tanh', dtype='float32', name=None, h_0=None, c_0=None, cell_clip=None, proj_clip=None) .. note:: diff --git a/doc/fluid/api_cn/layers_cn/embedding_cn.rst b/doc/fluid/api_cn/layers_cn/embedding_cn.rst index 2a6230a0d8130c7b26aa98437c9a150590afa18f..d494c7f657a6fc9ddb66f324753cb5eb4c7db529 100644 --- a/doc/fluid/api_cn/layers_cn/embedding_cn.rst +++ b/doc/fluid/api_cn/layers_cn/embedding_cn.rst @@ -3,6 +3,8 @@ embedding ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.embedding(input, size, is_sparse=False, is_distributed=False, padding_idx=None, param_attr=None, dtype='float32') 嵌入层(Embedding Layer) diff --git a/doc/fluid/api_cn/layers_cn/fc_cn.rst b/doc/fluid/api_cn/layers_cn/fc_cn.rst index 49a97d22e0825778603096262018f358c70c5094..47836281b609abd836280d6336fada0f51ec43bc 100644 --- a/doc/fluid/api_cn/layers_cn/fc_cn.rst +++ b/doc/fluid/api_cn/layers_cn/fc_cn.rst @@ -3,6 +3,8 @@ fc ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.fc(input, size, num_flatten_dims=1, param_attr=None, bias_attr=None, act=None, name=None) diff --git a/doc/fluid/api_cn/layers_cn/group_norm_cn.rst b/doc/fluid/api_cn/layers_cn/group_norm_cn.rst index 7b3a8333cf3fe33f296bfa7ea769d5e8155e1136..91b393788ab27255ae086ca3bc693b3f6ad47f2d 100755 --- a/doc/fluid/api_cn/layers_cn/group_norm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/group_norm_cn.rst @@ -3,6 +3,8 @@ group_norm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.group_norm(input, groups, epsilon=1e-05, param_attr=None, bias_attr=None, act=None, data_layout='NCHW', name=None) 参考论文: `Group Normalization `_ diff --git a/doc/fluid/api_cn/layers_cn/gru_unit_cn.rst b/doc/fluid/api_cn/layers_cn/gru_unit_cn.rst index a0385a997b11402690e4758e9f88f8656afec4a3..d4a531b6b10055418ad985f9531fec1f9d5ef225 100644 --- a/doc/fluid/api_cn/layers_cn/gru_unit_cn.rst +++ b/doc/fluid/api_cn/layers_cn/gru_unit_cn.rst @@ -3,6 +3,8 @@ gru_unit ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.gru_unit(input, hidden, size, param_attr=None, bias_attr=None, activation='tanh', gate_activation='sigmoid', origin_mode=False) Gated Recurrent Unit(GRU)循环神经网络计算单元。该OP用于完成单个时间步内GRU的计算,支持以下两种计算方式: diff --git a/doc/fluid/api_cn/layers_cn/hsigmoid_cn.rst b/doc/fluid/api_cn/layers_cn/hsigmoid_cn.rst index f5416efacac4bf67338c3259fa684111be522369..2c3656e21c7600227c0046ee3483d05667bb862c 100644 --- a/doc/fluid/api_cn/layers_cn/hsigmoid_cn.rst +++ b/doc/fluid/api_cn/layers_cn/hsigmoid_cn.rst @@ -3,6 +3,8 @@ hsigmoid ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.hsigmoid(input, label, num_classes, param_attr=None, bias_attr=None, name=None, path_table=None, path_code=None, is_custom=False, is_sparse=False) 层次sigmoid(hierarchical sigmoid),该OP通过构建一个分类二叉树来降低计算复杂度,主要用于加速语言模型的训练过程。 diff --git a/doc/fluid/api_cn/layers_cn/im2sequence_cn.rst b/doc/fluid/api_cn/layers_cn/im2sequence_cn.rst index f8dc68f4c363301e62b0b5c3576911cd5d579561..e60f9f7d6c49087f4f38b70bedb6c7ca920f0d02 100644 --- a/doc/fluid/api_cn/layers_cn/im2sequence_cn.rst +++ b/doc/fluid/api_cn/layers_cn/im2sequence_cn.rst @@ -3,6 +3,8 @@ im2sequence ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.im2sequence(input, filter_size=1, stride=1, padding=0, input_image_size=None, out_stride=1, name=None) 该OP使用 `filter` 扫描输入的Tensor并将输入Tensor转换成序列,返回值的 `shape={input.batch_size * output_height * output_width, filter_size_height* filter_size_width * input.channels}` 。返回值的timestep的个数为 `output_height * output_width` , 每个timestep的维度是 `filter_size_height* filter_size_width * input.channels` 。其中 `output_height` 和 `output_width` 由以下式计算: diff --git a/doc/fluid/api_cn/layers_cn/instance_norm_cn.rst b/doc/fluid/api_cn/layers_cn/instance_norm_cn.rst index 52b3851f26648574c702764496e3c0d3b4462c0f..d2e819c7a2f916259747633b822d5cfc68e28762 100644 --- a/doc/fluid/api_cn/layers_cn/instance_norm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/instance_norm_cn.rst @@ -3,6 +3,8 @@ instance_norm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.instance_norm(input, epsilon=1e-05, param_attr=None, bias_attr=None, name=None) diff --git a/doc/fluid/api_cn/layers_cn/layer_norm_cn.rst b/doc/fluid/api_cn/layers_cn/layer_norm_cn.rst index 409d95b39c0cba1fa47ffb7920eec237d1933823..3d49372f85e9ac22a480b803fb920c9ddf12e6ee 100644 --- a/doc/fluid/api_cn/layers_cn/layer_norm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/layer_norm_cn.rst @@ -3,6 +3,8 @@ layer_norm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.layer_norm(input, scale=True, shift=True, begin_norm_axis=1, epsilon=1e-05, param_attr=None, bias_attr=None, act=None, name=None) 该OP实现了层归一化层(Layer Normalization Layer),其可以应用于小批量输入数据。更多详情请参考:`Layer Normalization `_ diff --git a/doc/fluid/api_cn/layers_cn/linear_chain_crf_cn.rst b/doc/fluid/api_cn/layers_cn/linear_chain_crf_cn.rst index 4e4c48e48e248b2aae61f5f7d6371bdaaa9a084c..90aebef0fb8a866a5ec1c69840b34723232e4db9 100755 --- a/doc/fluid/api_cn/layers_cn/linear_chain_crf_cn.rst +++ b/doc/fluid/api_cn/layers_cn/linear_chain_crf_cn.rst @@ -3,6 +3,8 @@ linear_chain_crf ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.linear_chain_crf(input, label, param_attr=None, length=None) 线性链条件随机场(Linear Chain CRF) diff --git a/doc/fluid/api_cn/layers_cn/lstm_cn.rst b/doc/fluid/api_cn/layers_cn/lstm_cn.rst index 4889e45fbab5bd8f425025806540b8203f2ff949..206d8227ff84ee97ad1c6f914b4f71e69dca2e68 100644 --- a/doc/fluid/api_cn/layers_cn/lstm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/lstm_cn.rst @@ -3,6 +3,8 @@ lstm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.lstm(input, init_h, init_c, max_len, hidden_size, num_layers, dropout_prob=0.0, is_bidirec=False, is_test=False, name=None, default_initializer=None, seed=-1) .. note:: diff --git a/doc/fluid/api_cn/layers_cn/lstm_unit_cn.rst b/doc/fluid/api_cn/layers_cn/lstm_unit_cn.rst index 24131d7ce2d8da807762e2b8b323da033e15fe88..e24a932b38afae0e9bb6e24cf0afa5ddd5afff22 100644 --- a/doc/fluid/api_cn/layers_cn/lstm_unit_cn.rst +++ b/doc/fluid/api_cn/layers_cn/lstm_unit_cn.rst @@ -3,6 +3,8 @@ lstm_unit ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.lstm_unit(x_t, hidden_t_prev, cell_t_prev, forget_bias=0.0, param_attr=None, bias_attr=None, name=None) diff --git a/doc/fluid/api_cn/layers_cn/multi_box_head_cn.rst b/doc/fluid/api_cn/layers_cn/multi_box_head_cn.rst index 96204fc10537b8c9aceac53aabfd44fe7e794335..08c7830002290a9b5d02c60dae0e67aa37ae090d 100644 --- a/doc/fluid/api_cn/layers_cn/multi_box_head_cn.rst +++ b/doc/fluid/api_cn/layers_cn/multi_box_head_cn.rst @@ -3,6 +3,8 @@ multi_box_head ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.multi_box_head(inputs, image, base_size, num_classes, aspect_ratios, min_ratio=None, max_ratio=None, min_sizes=None, max_sizes=None, steps=None, step_w=None, step_h=None, offset=0.5, variance=[0.1, 0.1, 0.2, 0.2], flip=True, clip=False, kernel_size=1, pad=0, stride=1, name=None, min_max_aspect_ratios_order=False) 基于SSD(Single Shot MultiBox Detector)算法,在不同层输入特征上提取先验框、计算回归的坐标位置和分类的置信度,并合并到一起作为输出,具体参数解释和输出格式参考下面说明。更详细信息,请参阅SSD论文 `SSD:Single Shot MultiBox Detector `_ 的2.2节。 diff --git a/doc/fluid/api_cn/layers_cn/nce_cn.rst b/doc/fluid/api_cn/layers_cn/nce_cn.rst index f7b99a2be6b4e4988ddeabb97e1cf97c3ce31eab..20b66474c0e1fee0276947b4fdb64e6fcd237cda 100644 --- a/doc/fluid/api_cn/layers_cn/nce_cn.rst +++ b/doc/fluid/api_cn/layers_cn/nce_cn.rst @@ -3,6 +3,8 @@ nce ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.nce(input, label, num_total_classes, sample_weight=None, param_attr=None, bias_attr=None, num_neg_samples=None, name=None, sampler='uniform', custom_dist=None, seed=0, is_sparse=False) 计算并返回噪音对比估计损失值( noise-contrastive estimation training loss)。 diff --git a/doc/fluid/api_cn/layers_cn/prelu_cn.rst b/doc/fluid/api_cn/layers_cn/prelu_cn.rst index c0fa6498695e038bbabd3dbca806103feffbbab8..81e526344d2df1e10c7995bf07749b6fa4b972ea 100644 --- a/doc/fluid/api_cn/layers_cn/prelu_cn.rst +++ b/doc/fluid/api_cn/layers_cn/prelu_cn.rst @@ -3,6 +3,8 @@ prelu ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.prelu(x, mode, param_attr=None, name=None) 等式: diff --git a/doc/fluid/api_cn/layers_cn/py_func_cn.rst b/doc/fluid/api_cn/layers_cn/py_func_cn.rst index b94b29982ca9c9fe99538f4493c95a324a0ea8ad..dca98b091f3c13f32607009a8bf0c8e41baf615b 100644 --- a/doc/fluid/api_cn/layers_cn/py_func_cn.rst +++ b/doc/fluid/api_cn/layers_cn/py_func_cn.rst @@ -3,6 +3,8 @@ py_func ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.py_func(func, x, out, backward_func=None, skip_vars_in_backward_input=None) PaddlePaddle Fluid通过py_func在Python端注册OP。py_func的设计原理在于Paddle中的LodTensor与numpy数组可以方便的互相转换,从而可使用Python中的numpy API来自定义一个Python OP。 diff --git a/doc/fluid/api_cn/layers_cn/py_reader_cn.rst b/doc/fluid/api_cn/layers_cn/py_reader_cn.rst index c29dcc4ea74ba9206fd7be4f493e039072194907..602a1f8a254e27b95d6fd95fcdec514791f60af2 100644 --- a/doc/fluid/api_cn/layers_cn/py_reader_cn.rst +++ b/doc/fluid/api_cn/layers_cn/py_reader_cn.rst @@ -3,6 +3,8 @@ py_reader ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.py_reader(capacity, shapes, dtypes, lod_levels=None, name=None, use_double_buffer=True) diff --git a/doc/fluid/api_cn/layers_cn/read_file_cn.rst b/doc/fluid/api_cn/layers_cn/read_file_cn.rst index c004f80054495cdd0c5feb96e394da09fac4c531..688a52d359c9553ce3d448ea7315980625f4d642 100644 --- a/doc/fluid/api_cn/layers_cn/read_file_cn.rst +++ b/doc/fluid/api_cn/layers_cn/read_file_cn.rst @@ -3,6 +3,8 @@ read_file ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.read_file(reader) 从给定的reader中读取数据 diff --git a/doc/fluid/api_cn/layers_cn/row_conv_cn.rst b/doc/fluid/api_cn/layers_cn/row_conv_cn.rst index d8d8ef67bb6d56ad874d9d9d15e7801cb5a63da5..1bca0e610285ad94d67285599a6a4d5c58fc4782 100644 --- a/doc/fluid/api_cn/layers_cn/row_conv_cn.rst +++ b/doc/fluid/api_cn/layers_cn/row_conv_cn.rst @@ -3,6 +3,8 @@ row_conv ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.row_conv(input, future_context_size, param_attr=None, act=None) 该接口为行卷积(Row-convolution operator)或称之为超前卷积(lookahead convolution),最早介绍于DeepSpeech2论文中,论文链接: diff --git a/doc/fluid/api_cn/layers_cn/sequence_concat_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_concat_cn.rst index f5514a3a0afda57e7854f3cc6590bff10afdc138..cac6a04da17c4639ceaddc7c7d0bf0086895a6ad 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_concat_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_concat_cn.rst @@ -3,6 +3,8 @@ sequence_concat ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_concat(input, name=None) **注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用concat函数(fluid.layers.** :ref:`cn_api_fluid_layers_concat` **)。** diff --git a/doc/fluid/api_cn/layers_cn/sequence_conv_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_conv_cn.rst index 1d6c25f6db02632502e1227066cb9eea655ed0ff..1730822f148df0226e1c718f89e5be8726e5429c 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_conv_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_conv_cn.rst @@ -3,6 +3,8 @@ sequence_conv ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_conv(input, num_filters, filter_size=3, filter_stride=1, padding=True, padding_start=None, bias_attr=None, param_attr=None, act=None, name=None) **注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用conv2d函数(fluid.layers.** :ref:`cn_api_fluid_layers_conv2d` **)。** diff --git a/doc/fluid/api_cn/layers_cn/sequence_enumerate_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_enumerate_cn.rst index 84f04f42e51c95db249a7cbd966dcf335bd05740..716220f75f202b18151ce1b8916486c0d1ad4b74 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_enumerate_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_enumerate_cn.rst @@ -3,6 +3,8 @@ sequence_enumerate ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_enumerate(input, win_size, pad_value=0, name=None) 枚举形状为 ``[d_1, 1]`` 的输入序列所有长度为 ``win_size`` 的子序列,生成一个形状为 ``[d_1, win_size]`` 的新序列,需要时以 ``pad_value`` 填充。 diff --git a/doc/fluid/api_cn/layers_cn/sequence_expand_as_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_expand_as_cn.rst index 8b3d610c357857ec816528d0c6065331a13cbb8c..a68eee9f3435179983775431c759d0038bd75bac 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_expand_as_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_expand_as_cn.rst @@ -3,6 +3,8 @@ sequence_expand_as ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_expand_as(x, y, name=None) Sequence Expand As Layer,该OP根据输入 ``y`` 的第0级lod对输入 ``x`` 进行扩展。当前实现要求 ``y`` 的lod层数(level)必须为1,且 ``x`` 的第一维必须和 ``y`` 的第0层lod大小相同,所以扩展后的LodTensor具有和 ``y`` 相同的lod。扩展结果与输入 ``x`` 的lod无关,所以无需考虑 ``x`` 的lod。 diff --git a/doc/fluid/api_cn/layers_cn/sequence_expand_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_expand_cn.rst index 5b301b1fc1c2e86444bf6750af2d3154fd6ad704..414719d8d2de85a688326dee7a90ac573fe673c6 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_expand_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_expand_cn.rst @@ -3,6 +3,8 @@ sequence_expand ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_expand(x, y, ref_level=-1, name=None) 序列扩张层(Sequence Expand Layer),根据输入 ``y`` 的第 ``ref_level`` 层lod对输入 ``x`` 进行扩展。 ``x`` 的lod level最多为1,若 ``x`` 的lod level为1,则 ``x`` 的lod大小必须与 ``y`` 的第 ``ref_level`` 层lod大小相等;若 ``x`` 的lod level为0,则 ``x`` 的第一维大小必须与 ``y`` 第 ``ref_level`` 层大小相等。 ``x`` 的秩最少为2,当 ``x`` 的秩大于2时,将被当作是一个二维张量处理。 diff --git a/doc/fluid/api_cn/layers_cn/sequence_first_step_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_first_step_cn.rst index 399909f45385a58f292c2d3166f270e49c89e258..5eabcb568b23c2195f7e9113ed0eb6b133febfb9 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_first_step_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_first_step_cn.rst @@ -3,6 +3,8 @@ sequence_first_step ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_first_step(input) 该OP **仅支持LoDTensor类型的输入** ,将对输入的LoDTensor,在最后一层lod_level上,选取其每个序列(sequence)的第一个时间步(time_step)的特征向量作为池化后的输出向量。 diff --git a/doc/fluid/api_cn/layers_cn/sequence_last_step_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_last_step_cn.rst index 5684964a086f63218646fbb18c462171e33046db..2e0fcffa6435122250fc226caf9ea26699d4ad36 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_last_step_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_last_step_cn.rst @@ -3,6 +3,8 @@ sequence_last_step ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_last_step(input) 该OP **仅支持LoDTensor类型的输入** ,将对输入的LoDTensor,在最后一层lod_level上,选取其每个序列(sequence)的最后一个时间步(time-step)的特征向量作为池化后的输出向量。 diff --git a/doc/fluid/api_cn/layers_cn/sequence_pad_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_pad_cn.rst index 914b206c7970fb1c65686710ed624db1a6d862f8..5f509c960ecc5e5930fe77b7f5e5f1cc3be09801 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_pad_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_pad_cn.rst @@ -3,6 +3,8 @@ sequence_pad ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_pad(x,pad_value,maxlen=None,name=None) 序列填充操作符(Sequence Pad Operator),该OP将同一batch中的序列填充到一个一致的长度(由 ``maxlen`` 指定)。填充的新元素的值具体由输入 ``pad_value`` 指定,并会添加到每一个序列的末尾,使得他们最终的长度保持一致。最后返回一个Python tuple ``(Out, Length)`` ,其中LodTensor ``Out`` 为填充后的序列,LodTensor ``Length`` 为填充前的原序列长度信息。 diff --git a/doc/fluid/api_cn/layers_cn/sequence_pool_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_pool_cn.rst index 84f890c0ccc6d0dee4ef7b1f838a68c716c63a20..e5a1237838851a6e3c0688e9e02d934ab00361ca 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_pool_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_pool_cn.rst @@ -3,6 +3,8 @@ sequence_pool ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_pool(input, pool_type, is_test=False, pad_value=0.0) **注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用pool2d函数(fluid.layers.** :ref:`cn_api_fluid_layers_pool2d` **)。** diff --git a/doc/fluid/api_cn/layers_cn/sequence_reshape_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_reshape_cn.rst index a59d83f83f582641adf22d8d712a2a7d9007dcda..34f80bef63c67113261560df9c8f7e780cd684c9 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_reshape_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_reshape_cn.rst @@ -3,6 +3,8 @@ sequence_reshape ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_reshape(input, new_dim) **注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用reshape函数(fluid.layers.** :ref:`cn_api_fluid_layers_reshape` **)。** diff --git a/doc/fluid/api_cn/layers_cn/sequence_scatter_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_scatter_cn.rst index bc969c7c528b619fc0f22cd2bf79a8548401c187..086a9a41fa6697bca3eebbe486b3a14a422e9edb 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_scatter_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_scatter_cn.rst @@ -3,6 +3,8 @@ sequence_scatter ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_scatter(input, index, updates, name=None) .. note:: diff --git a/doc/fluid/api_cn/layers_cn/sequence_slice_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_slice_cn.rst index 86f347a37a03469387ffa319041ecafaaae710db..4d67aea9acd1c49738242040d25e3a6b69bb3529 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_slice_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_slice_cn.rst @@ -3,6 +3,8 @@ sequence_slice ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_slice(input, offset, length, name=None) **实现Sequence Slice(序列切片)运算** diff --git a/doc/fluid/api_cn/layers_cn/sequence_softmax_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_softmax_cn.rst index 45f2e59c71f2b88622b3a1162eb662df6ba15e53..0638ffb8a2512ce594d23c3805f81c0c9930bdb5 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_softmax_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_softmax_cn.rst @@ -3,6 +3,8 @@ sequence_softmax ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_softmax(input, use_cudnn=False, name=None) .. note:: diff --git a/doc/fluid/api_cn/layers_cn/sequence_unpad_cn.rst b/doc/fluid/api_cn/layers_cn/sequence_unpad_cn.rst index 177489e87b2fe0a8a641541fa6883e25d2db0ccd..0b00795fa1a81e3f47f6cc78ca8a8d7041a856c2 100644 --- a/doc/fluid/api_cn/layers_cn/sequence_unpad_cn.rst +++ b/doc/fluid/api_cn/layers_cn/sequence_unpad_cn.rst @@ -3,6 +3,8 @@ sequence_unpad ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.sequence_unpad(x, length, name=None) .. note:: diff --git a/doc/fluid/api_cn/layers_cn/spectral_norm_cn.rst b/doc/fluid/api_cn/layers_cn/spectral_norm_cn.rst index 529e587ed88515b3249877be2f84eb07b997a754..5576ecc0fe10405fd75d22ed010917877b0dd142 100644 --- a/doc/fluid/api_cn/layers_cn/spectral_norm_cn.rst +++ b/doc/fluid/api_cn/layers_cn/spectral_norm_cn.rst @@ -3,6 +3,8 @@ spectral_norm ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.spectral_norm(weight, dim=0, power_iters=1, eps=1e-12, name=None) **Spectral Normalization Layer** diff --git a/doc/fluid/api_cn/layers_cn/switch_case_cn.rst b/doc/fluid/api_cn/layers_cn/switch_case_cn.rst index bee99abcdfb83ddc8e9087db77c704404bce0c1c..d3a86c22ef256170fc3fd0ef84cc82a5168c1cd4 100644 --- a/doc/fluid/api_cn/layers_cn/switch_case_cn.rst +++ b/doc/fluid/api_cn/layers_cn/switch_case_cn.rst @@ -3,6 +3,8 @@ switch_case ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.switch_case(branch_index, branch_fns, default=None, name=None) 该OP的运行方式类似于c++的switch/case。 diff --git a/doc/fluid/api_cn/layers_cn/while_loop_cn.rst b/doc/fluid/api_cn/layers_cn/while_loop_cn.rst index d97a66fef63f0a24e9861cce227d717717fb853d..04ce95125f0750cc3e4ed6efda640c2df4d3853e 100644 --- a/doc/fluid/api_cn/layers_cn/while_loop_cn.rst +++ b/doc/fluid/api_cn/layers_cn/while_loop_cn.rst @@ -4,6 +4,8 @@ while_loop ____________________________________ +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.layers.while_loop(cond, body, loop_vars, is_test=False, name=None) 该API用于实现类似while的循环控制功能,只要循环条件 ``cond`` 的返回值为True,``while_loop`` 则会循环执行循环体 ``body`` ,直到 ``cond`` 的返回值为False。 diff --git a/doc/fluid/api_cn/nets_cn/glu_cn.rst b/doc/fluid/api_cn/nets_cn/glu_cn.rst index 144c6a059eb4388afd36c842bef015896874ae41..ade91e1870d2a6d45fe4090c6feb7f7387b7efbc 100644 --- a/doc/fluid/api_cn/nets_cn/glu_cn.rst +++ b/doc/fluid/api_cn/nets_cn/glu_cn.rst @@ -2,6 +2,8 @@ glu ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.nets.glu(input, dim=-1) 门控线性单元 Gated Linear Units (GLU) 由 :ref:`cn_api_fluid_layers_split` ,:ref:`cn_api_fluid_layers_sigmoid` 和 :ref:`cn_api_fluid_layers_elementwise_mul` 组成。特定的,沿着给定维度将输入拆分成两个大小相同的部分,:math:`a` 和 :math:`b` ,按如下方式计算: diff --git a/doc/fluid/api_cn/nets_cn/img_conv_group_cn.rst b/doc/fluid/api_cn/nets_cn/img_conv_group_cn.rst index ddc87565977357d48610b59735981b4209bcc6e6..9b6006778cb884c6b371c62bcce38a4457d9dae0 100644 --- a/doc/fluid/api_cn/nets_cn/img_conv_group_cn.rst +++ b/doc/fluid/api_cn/nets_cn/img_conv_group_cn.rst @@ -3,6 +3,8 @@ img_conv_group ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.nets.img_conv_group(input, conv_num_filter, pool_size, conv_padding=1, conv_filter_size=3, conv_act=None, param_attr=None, conv_with_batchnorm=False, conv_batchnorm_drop_rate=0.0, pool_stride=1, pool_type='max', use_cudnn=True) Image Convolution Group由Convolution2d,BatchNorm,DropOut和Pool2d组成。根据输入参数,img_conv_group将使用Convolution2d,BatchNorm,DropOut对Input进行连续计算,得到最后结果。 diff --git a/doc/fluid/api_cn/nets_cn/scaled_dot_product_attention_cn.rst b/doc/fluid/api_cn/nets_cn/scaled_dot_product_attention_cn.rst index 865fbc9098a3ac0ee6f94e4d30351460565615c8..33d3ac3610e99ce186f448726730fb91181c3a39 100644 --- a/doc/fluid/api_cn/nets_cn/scaled_dot_product_attention_cn.rst +++ b/doc/fluid/api_cn/nets_cn/scaled_dot_product_attention_cn.rst @@ -3,6 +3,8 @@ scaled_dot_product_attention ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.nets.scaled_dot_product_attention(queries, keys, values, num_heads=1, dropout_rate=0.0) 该接口实现了的基于点积(并进行了缩放)的多头注意力(Multi-Head Attention)机制。attention可以表述为将一个查询(query)和一组键值对(key-value pair)映射为一个输出;Multi-Head Attention则是使用多路进行attention,而且对attention的输入进行了线性变换。公式如下: diff --git a/doc/fluid/api_cn/nets_cn/sequence_conv_pool_cn.rst b/doc/fluid/api_cn/nets_cn/sequence_conv_pool_cn.rst index 4e67b94ba7c235284f6a491d06a5ecc08a15dd72..592cdb2741406b410272d2842c2dc31124821e7a 100644 --- a/doc/fluid/api_cn/nets_cn/sequence_conv_pool_cn.rst +++ b/doc/fluid/api_cn/nets_cn/sequence_conv_pool_cn.rst @@ -3,6 +3,8 @@ sequence_conv_pool ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.nets.sequence_conv_pool(input, num_filters, filter_size, param_attr=None, act='sigmoid', pool_type='max', bias_attr=None) **注意:该OP的输入** ``input`` **必须是2维LoDTensor, lod_level为1,如果输入是Tensor,建议使用** :ref:`cn_api_fluid_nets_simple_img_conv_pool` **代替** diff --git a/doc/fluid/api_cn/nets_cn/simple_img_conv_pool_cn.rst b/doc/fluid/api_cn/nets_cn/simple_img_conv_pool_cn.rst index f931b2e5ac098b1768d73531ce4dfedf68a59e4a..cec9e8befc40d5371729f00234ee0ee98ce1737e 100644 --- a/doc/fluid/api_cn/nets_cn/simple_img_conv_pool_cn.rst +++ b/doc/fluid/api_cn/nets_cn/simple_img_conv_pool_cn.rst @@ -3,6 +3,8 @@ simple_img_conv_pool ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.nets.simple_img_conv_pool(input, num_filters, filter_size, pool_size, pool_stride, pool_padding=0, pool_type='max', global_pooling=False, conv_stride=1, conv_padding=0, conv_dilation=1, conv_groups=1, param_attr=None, bias_attr=None, act=None, use_cudnn=True) ``simple_img_conv_pool`` 由一个conv2d( :ref:`cn_api_fluid_layers_conv2d` )和一个pool2d( :ref:`cn_api_fluid_layers_pool2d` ) OP组成。 diff --git a/doc/fluid/api_cn/optimizer_cn/DGCMomentumOptimizer_cn.rst b/doc/fluid/api_cn/optimizer_cn/DGCMomentumOptimizer_cn.rst index 2c08e873b80b29020feef2cbac1defb027ab35e3..ee5995c3e25acf8cd664d5c1a2ba52279f3521cc 100644 --- a/doc/fluid/api_cn/optimizer_cn/DGCMomentumOptimizer_cn.rst +++ b/doc/fluid/api_cn/optimizer_cn/DGCMomentumOptimizer_cn.rst @@ -3,6 +3,8 @@ DGCMomentumOptimizer ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.optimizer.DGCMomentumOptimizer(learning_rate, momentum, rampup_begin_step, rampup_step=1, sparsity=[0.999], use_nesterov=False, local_grad_clip_norm=None, num_trainers=None, regularization=None, name=None) DGC(深度梯度压缩)Momentum 优化器。原始论文: https://arxiv.org/abs/1712.01887 diff --git a/doc/fluid/api_cn/optimizer_cn/ExponentialMovingAverage_cn.rst b/doc/fluid/api_cn/optimizer_cn/ExponentialMovingAverage_cn.rst index 3ec7245bb4082fbb5d5f87e39802e5d557dd8ded..c10b81866feb9d874341d8feee1b2b7e6df8e719 100644 --- a/doc/fluid/api_cn/optimizer_cn/ExponentialMovingAverage_cn.rst +++ b/doc/fluid/api_cn/optimizer_cn/ExponentialMovingAverage_cn.rst @@ -3,6 +3,8 @@ ExponentialMovingAverage ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.optimizer.ExponentialMovingAverage(decay=0.999, thres_steps=None, name=None) 用指数衰减计算参数的滑动平均值。给定参数 :math:`\theta` ,它的指数滑动平均值 (exponential moving average, EMA) 为 diff --git a/doc/fluid/api_cn/optimizer_cn/LookaheadOptimizer_cn.rst b/doc/fluid/api_cn/optimizer_cn/LookaheadOptimizer_cn.rst index 4088deb29bc284e455437890236f6d102f6fe410..e41690bef88c5c0341a4a7316d14c9f0c3a38d95 100644 --- a/doc/fluid/api_cn/optimizer_cn/LookaheadOptimizer_cn.rst +++ b/doc/fluid/api_cn/optimizer_cn/LookaheadOptimizer_cn.rst @@ -3,6 +3,8 @@ LookaheadOptimizer ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.optimizer.LookaheadOptimizer(inner_optimizer, alpha=0.5, k=5) 本类实现了Lookahead优化算法:https://arxiv.org/abs/1907.08610。Lookahead优化算法在内存中保存两部分参数:快参数和慢参数。每个训练步次,inner_optimizer都更新快参数;每隔k个训练步次,Lookahead更新慢参数,如下: diff --git a/doc/fluid/api_cn/optimizer_cn/ModelAverage_cn.rst b/doc/fluid/api_cn/optimizer_cn/ModelAverage_cn.rst index 980e5a1d7c84776e1afc0a082f52707516575919..c9fb4e1b06c1531f74ac484b42e0cef9bcbab1e2 100644 --- a/doc/fluid/api_cn/optimizer_cn/ModelAverage_cn.rst +++ b/doc/fluid/api_cn/optimizer_cn/ModelAverage_cn.rst @@ -3,6 +3,8 @@ ModelAverage ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.optimizer.ModelAverage(average_window_rate, min_average_window=10000, max_average_window=10000, regularization=None, name=None) ModelAverage优化器,在训练过程中累积特定连续的历史Parameters,累积的历史范围可以用传入的average_window参数来控制,在预测时使用平均后的Parameters,通常可以提高预测的精度。 diff --git a/doc/fluid/api_cn/optimizer_cn/PipelineOptimizer_cn.rst b/doc/fluid/api_cn/optimizer_cn/PipelineOptimizer_cn.rst index fd7d5c1e5c50c8a31444b7326dbbed9ed497676e..e0dae3a34fd1a615be6b29cbb143677ee8cf447d 100644 --- a/doc/fluid/api_cn/optimizer_cn/PipelineOptimizer_cn.rst +++ b/doc/fluid/api_cn/optimizer_cn/PipelineOptimizer_cn.rst @@ -3,6 +3,8 @@ PipelineOptimizer ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.optimizer.PipelineOptimizer(optimizer, cut_list=None, place_list=None, concurrency_list=None, queue_size=30, sync_steps=1, start_cpu_core_id=0) 使用流水线模式进行训练。 diff --git a/doc/fluid/api_cn/optimizer_cn/RecomputeOptimizer_cn.rst b/doc/fluid/api_cn/optimizer_cn/RecomputeOptimizer_cn.rst index 51d2b12b62778153a56345a3d00ce6ab088c9f5f..44eb5acc817b82daf734a48c3b0f454a4659ad2c 100644 --- a/doc/fluid/api_cn/optimizer_cn/RecomputeOptimizer_cn.rst +++ b/doc/fluid/api_cn/optimizer_cn/RecomputeOptimizer_cn.rst @@ -3,6 +3,8 @@ RecomputeOptimizer ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.optimizer.RecomputeOptimizer(optimizer) 通常来讲,一个深度学习的训练流程包含了三个子步骤:首先,运行前向算子来计算Variable和loss的值;其次,运行反向算子来计算参数的梯度;最后,应用优化算法以更新参数值。 diff --git a/doc/fluid/api_cn/transpiler_cn/DistributeTranspilerConfig_cn.rst b/doc/fluid/api_cn/transpiler_cn/DistributeTranspilerConfig_cn.rst index d27a83e502e7223661c307292534346bf3491795..d1d9cf407f1ccf6b69586904cfce513a74a64f82 100644 --- a/doc/fluid/api_cn/transpiler_cn/DistributeTranspilerConfig_cn.rst +++ b/doc/fluid/api_cn/transpiler_cn/DistributeTranspilerConfig_cn.rst @@ -3,6 +3,8 @@ DistributeTranspilerConfig ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.transpiler.DistributeTranspilerConfig 单机任务切换为分布式任务的配置类,用户可根据需求进行配置,如指定同步/异步训练,指定节点个数及模型切分逻辑。 diff --git a/doc/fluid/api_cn/transpiler_cn/DistributeTranspiler_cn.rst b/doc/fluid/api_cn/transpiler_cn/DistributeTranspiler_cn.rst index bac6d389cc11377193a50a64576a211e6e807a02..85d76cbbeea74afdddd249bf17be8604f8c434f2 100644 --- a/doc/fluid/api_cn/transpiler_cn/DistributeTranspiler_cn.rst +++ b/doc/fluid/api_cn/transpiler_cn/DistributeTranspiler_cn.rst @@ -3,6 +3,8 @@ DistributeTranspiler ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.transpiler.DistributeTranspiler (config=None) diff --git a/doc/fluid/api_cn/transpiler_cn/HashName_cn.rst b/doc/fluid/api_cn/transpiler_cn/HashName_cn.rst index 95b91d59df9857bdd985ddf8cf4dfdf4cc48ffe4..d9e35ee53f9a5539d4c2791c216a05e78a226f25 100644 --- a/doc/fluid/api_cn/transpiler_cn/HashName_cn.rst +++ b/doc/fluid/api_cn/transpiler_cn/HashName_cn.rst @@ -3,6 +3,8 @@ HashName ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.transpiler.HashName(pserver_endpoints) 该方法使用 python ``Hash()`` 函数将变量散列到多个parameter server节点。 diff --git a/doc/fluid/api_cn/transpiler_cn/RoundRobin_cn.rst b/doc/fluid/api_cn/transpiler_cn/RoundRobin_cn.rst index fd4ad3a1ac9192081b6582155e973d99a05b4442..0eebe7b926e2c4f7ac443d90c47c6061648161dc 100644 --- a/doc/fluid/api_cn/transpiler_cn/RoundRobin_cn.rst +++ b/doc/fluid/api_cn/transpiler_cn/RoundRobin_cn.rst @@ -3,6 +3,8 @@ RoundRobin ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:class:: paddle.fluid.transpiler.RoundRobin(pserver_endpoints) 该方法使用 ``RoundRobin`` 的方式将变量散列到多个parameter server终端。 diff --git a/doc/fluid/api_cn/transpiler_cn/memory_optimize_cn.rst b/doc/fluid/api_cn/transpiler_cn/memory_optimize_cn.rst index 306b69a4f56141d562a76df4d864e70212463070..6df2a4bf9faf5225c24e380b45c38e262a8cd053 100644 --- a/doc/fluid/api_cn/transpiler_cn/memory_optimize_cn.rst +++ b/doc/fluid/api_cn/transpiler_cn/memory_optimize_cn.rst @@ -3,6 +3,8 @@ memory_optimize ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.transpiler.memory_optimize(input_program, skip_opt_set=None, print_log=False, level=0, skip_grads=True) **从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略** \ No newline at end of file diff --git a/doc/fluid/api_cn/transpiler_cn/release_memory_cn.rst b/doc/fluid/api_cn/transpiler_cn/release_memory_cn.rst index af9c18849a70baab0f2ef6b5e50e7c3b8e0c1a8c..7387741f9dcf98c2265884e9cac2ae81e8052961 100644 --- a/doc/fluid/api_cn/transpiler_cn/release_memory_cn.rst +++ b/doc/fluid/api_cn/transpiler_cn/release_memory_cn.rst @@ -3,6 +3,8 @@ release_memory ------------------------------- +**注意:该API仅支持【静态图】模式** + .. py:function:: paddle.fluid.transpiler.release_memory(input_program, skip_opt_set=None) **从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略** \ No newline at end of file