未验证 提交 b06883f0 编写于 作者: T Tink_Y 提交者: GitHub

Merge pull request #455 from haowang101779990/1207-cnapi

1207 api 翻译
################# #################
fluid.average fluid.average
################# #################
...@@ -8,7 +7,7 @@ ...@@ -8,7 +7,7 @@
.. _cn_api_fluid_average_WeightedAverage: .. _cn_api_fluid_average_WeightedAverage:
WeightedAverage WeightedAverage
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.average.WeightedAverage .. py:class:: paddle.fluid.average.WeightedAverage
...@@ -65,5 +64,7 @@ WeightedAverage ...@@ -65,5 +64,7 @@ WeightedAverage
英文版API文档: :ref:`api_fluid_average_WeightedAverage`
################# #################
fluid.backward fluid.backward
################# #################
...@@ -8,7 +7,7 @@ ...@@ -8,7 +7,7 @@
.. _cn_api_fluid_backward_append_backward: .. _cn_api_fluid_backward_append_backward:
append_backward append_backward
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.backward.append_backward(loss, parameter_list=None, no_grad_set=None, callbacks=None) .. py:function:: paddle.fluid.backward.append_backward(loss, parameter_list=None, no_grad_set=None, callbacks=None)
...@@ -86,5 +85,7 @@ append_backward ...@@ -86,5 +85,7 @@ append_backward
英文版API文档: :ref:`api_fluid_backward_append_backward`
################# #################
fluid.clip fluid.clip
################# #################
...@@ -8,7 +7,7 @@ ...@@ -8,7 +7,7 @@
.. _cn_api_fluid_clip_ErrorClipByValue: .. _cn_api_fluid_clip_ErrorClipByValue:
ErrorClipByValue ErrorClipByValue
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.clip.ErrorClipByValue(max, min=None) .. py:class:: paddle.fluid.clip.ErrorClipByValue(max, min=None)
...@@ -34,12 +33,14 @@ ErrorClipByValue ...@@ -34,12 +33,14 @@ ErrorClipByValue
英文版API文档: :ref:`api_fluid_clip_ErrorClipByValue`
.. _cn_api_fluid_clip_GradientClipByGlobalNorm: .. _cn_api_fluid_clip_GradientClipByGlobalNorm:
GradientClipByGlobalNorm GradientClipByGlobalNorm
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.clip.GradientClipByGlobalNorm(clip_norm, group_name='default_group') .. py:class:: paddle.fluid.clip.GradientClipByGlobalNorm(clip_norm, group_name='default_group')
...@@ -78,12 +79,14 @@ GradientClipByGlobalNorm ...@@ -78,12 +79,14 @@ GradientClipByGlobalNorm
英文版API文档: :ref:`api_fluid_clip_GradientClipByGlobalNorm`
.. _cn_api_fluid_clip_GradientClipByNorm: .. _cn_api_fluid_clip_GradientClipByNorm:
GradientClipByNorm GradientClipByNorm
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.clip.GradientClipByNorm(clip_norm) .. py:class:: paddle.fluid.clip.GradientClipByNorm(clip_norm)
...@@ -116,12 +119,14 @@ GradientClipByNorm ...@@ -116,12 +119,14 @@ GradientClipByNorm
英文版API文档: :ref:`api_fluid_clip_GradientClipByNorm`
.. _cn_api_fluid_clip_GradientClipByValue: .. _cn_api_fluid_clip_GradientClipByValue:
GradientClipByValue GradientClipByValue
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.clip.GradientClipByValue(max, min=None) .. py:class:: paddle.fluid.clip.GradientClipByValue(max, min=None)
...@@ -152,5 +157,7 @@ GradientClipByValue ...@@ -152,5 +157,7 @@ GradientClipByValue
英文版API文档: :ref:`api_fluid_clip_GradientClipByValue`
###################
################# fluid.data_feeder
fluid.data_feeder ###################
#################
.. _cn_api_fluid_data_feeder_DataFeeder: .. _cn_api_fluid_data_feeder_DataFeeder:
DataFeeder DataFeeder
>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.data_feeder.DataFeeder(feed_list, place, program=None) .. py:class:: paddle.fluid.data_feeder.DataFeeder(feed_list, place, program=None)
...@@ -101,10 +100,10 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是 ...@@ -101,10 +100,10 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是
将reader返回的输入数据batch转换为多个mini-batch,之后每个mini-batch都会被输入进各个设备(CPU或GPU)中。 将reader返回的输入数据batch转换为多个mini-batch,之后每个mini-batch都会被输入进各个设备(CPU或GPU)中。
参数: 参数:
- **reader** (fun) – 待输入的数据 - **reader** (fun) – 该参数是一个可以生成数据的函数
- **multi_devices** (bool) – 执行场所的数目,默认为None - **multi_devices** (bool) – bool型,指明是否使用多个设备
- **num_places** (int) – 执行场所的数目,默认为None - **num_places** (int) – 如果 ``multi_devices`` 为 ``True`` , 可以使用此参数来设置GPU数目。如果 ``num_places`` 为 ``None`` ,该函数默认使用当前训练机所有GPU设备。默认为None。
- **drop_last** (bool) – 舍弃数目匹配不上的batch或设备 - **drop_last** (bool) – 如果最后一个batch的大小比 ``batch_size`` 要小,则可使用该参数来指明是否选择丢弃最后一个batch数据。 默认为 ``True``
返回:转换结果 返回:转换结果
...@@ -117,5 +116,7 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是 ...@@ -117,5 +116,7 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是
英文版API文档: :ref:`api_fluid_data_feeder_DataFeeder`
################# #################
fluid.executor fluid.executor
################# #################
.. _cn_api_fluid_executor: .. _cn_api_fluid_executor_Executor:
Executor Executor
>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.executor.Executor (place) .. py:class:: paddle.fluid.executor.Executor (place)
...@@ -107,5 +106,64 @@ feed map为该program提供输入数据。fetch_list提供program训练结束后 ...@@ -107,5 +106,64 @@ feed map为该program提供输入数据。fetch_list提供program训练结束后
英文版API文档: :ref:`api_fluid_executor`
.. _cn_api_fluid_executor_global_scope:
global_scope
-------------------------------
.. py:function:: paddle.fluid.global_scope()
获取全局/默认作用域实例。很多api使用默认 ``global_scope`` ,例如 ``Executor.run`` 。
返回:全局/默认作用域实例
返回类型:Scope
.. _cn_api_fluid_executor_scope_guard:
scope_guard
-------------------------------
.. py:function:: paddle.fluid.scope_guard(*args, **kwds)
修改全局/默认作用域(scope), 运行时中的所有变量都将分配给新的scope。
参数:
- **scope** - 新的全局/默认 scope。
**代码示例**
.. code-block:: python
import paddle.fluid as fluid
new_scope = fluid.Scope()
with fluid.scope_guard(new_scope):
...
################# #################
fluid fluid
################# #################
...@@ -8,7 +7,7 @@ fluid ...@@ -8,7 +7,7 @@ fluid
.. _cn_api_fluid_AsyncExecutor: .. _cn_api_fluid_AsyncExecutor:
AsyncExecutor AsyncExecutor
>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.AsyncExecutor(place=None) .. py:function:: paddle.fluid.AsyncExecutor(place=None)
...@@ -48,14 +47,39 @@ AsyncExecutor正在积极开发,API可能在不久的将来会发生变化。 ...@@ -48,14 +47,39 @@ AsyncExecutor正在积极开发,API可能在不久的将来会发生变化。
目前仅支持CPU 目前仅支持CPU
.. py:method:: run(program, data_feed, filelist, thread_num, fetch, debug=False)
使用此 ``AsyncExecutor`` 来运行 ``program`` 。
``filelist`` 中包含训练数据集。用户也可以通过在参数 ``fetch`` 中提出变量来检查特定的变量, 正如 ``fluid.Executor`` 。
但不像 ``fluid.Executor`` , ``AsyncExecutor`` 不返回获取到的变量,而是将每个获取到的变量作为标准输出展示给用户。
数据集上的运算在多个线程上执行,每个线程中都会独立出一个线程本地作用域,并在此域中建立运算。
所有运算同时更新参数值。
参数:
- program (Program) – 需要执行的program。如果没有提供该参数,默认使用 ``default_main_program``
- data_feed (DataFeedDesc) – ``DataFeedDesc`` 对象
- filelist (str) – 一个包含训练数据集文件的文件列表
- thread_num (int) – 并发训练线程数。参照 *注解* 部分获取合适的设置方法
- fetch (str|list) – 变量名,或者变量名列表。指明最后要进行观察的变量命名
- debug (bool) – 如果为True, 在每一个minibatch处理后,fetch 中指明的变量将会通过标准输出打印出来
.. note::
1.该执行器会运行program中的所有运算,不只是那些依赖于fetchlist的运算
2.该类执行器在多线程上运行,每个线程占用一个CPU核。为了实现效率最大化,建议将 ``thread_num`` 等于或稍微小于CPU核心数
英文版API文档: :ref:`api_fluid_AsyncExecutor`
.. _cn_api_fluid_BuildStrategy: .. _cn_api_fluid_BuildStrategy:
BuildStrategy BuildStrategy
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.BuildStrategy .. py:class:: paddle.fluid.BuildStrategy
...@@ -105,38 +129,48 @@ str类型。在 ``ParallelExecutor`` 中,存在两种减少策略(reduce str ...@@ -105,38 +129,48 @@ str类型。在 ``ParallelExecutor`` 中,存在两种减少策略(reduce str
英文版API文档: :ref:`api_fluid_BuildStrategy`
.. _cn_api_fluid_CPUPlace: .. _cn_api_fluid_CPUPlace:
CPUPlace CPUPlace
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.CPUPlace .. py:class:: paddle.fluid.CPUPlace
英文版API文档: :ref:`api_fluid_CPUPlace`
.. _cn_api_fluid_create_lod_tensor: .. _cn_api_fluid_create_lod_tensor:
create_lod_tensor create_lod_tensor
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.create_lod_tensor(data, recursive_seq_lens, place) .. py:function:: paddle.fluid.create_lod_tensor(data, recursive_seq_lens, place)
该函数从一个numpy数组,列表或者已经存在的lod tensor中创建一个lod tensor。 该函数从一个numpy数组,列表或者已经存在的lod tensor中创建一个lod tensor。
通过一下几步实现: 通过一下几步实现:
1. 检查length-based level of detail (LoD,长度为基准的细节层次),或称recursive_sequence_lengths(递归序列长度)的正确性
2. 将recursive_sequence_lengths转化为offset-based LoD(偏移量为基准的LoD) 1. 检查length-based level of detail (LoD,长度为基准的细节层次),或称recursive_sequence_lengths(递归序列长度)的正确性
3. 把提供的numpy数组,列表或者已经存在的lod tensor复制到CPU或GPU中(依据执行场所确定)
4. 利用offset-based LoD来设置LoD 2. 将recursive_sequence_lengths转化为offset-based LoD(偏移量为基准的LoD)
3. 把提供的numpy数组,列表或者已经存在的lod tensor复制到CPU或GPU中(依据执行场所确定)
4. 利用offset-based LoD来设置LoD
例如: 例如:
假如我们想用LoD Tensor来承载一词序列的数据,其中每个词由一个整数来表示。现在,我们意图创建一个LoD Tensor来代表两个句子,其中一个句子有两个词,另外一个句子有三个。 假如我们想用LoD Tensor来承载一词序列的数据,其中每个词由一个整数来表示。现在,我们意图创建一个LoD Tensor来代表两个句子,其中一个句子有两个词,另外一个句子有三个。
那么数可以是一个numpy数组,形状为(5,1)。同时, ``recursive_seq_lens`` 为 [[2, 3]],表明各个句子的长度。这个长度为基准的 ``recursive_seq_lens`` 将在函数中会被转化为以偏移量为基准的 LoD [[0, 2, 5]]。 那么数 ``data`` 可以是一个numpy数组,形状为(5,1)。同时, ``recursive_seq_lens`` 为 [[2, 3]],表明各个句子的长度。这个长度为基准的 ``recursive_seq_lens`` 将在函数中会被转化为以偏移量为基准的 LoD [[0, 2, 5]]。
参数: 参数:
- **data** (numpy.ndarray|list|LoDTensor) – 容纳着待复制数据的一个numpy数组、列表或LoD Tensor - **data** (numpy.ndarray|list|LoDTensor) – 容纳着待复制数据的一个numpy数组、列表或LoD Tensor
...@@ -151,13 +185,15 @@ create_lod_tensor ...@@ -151,13 +185,15 @@ create_lod_tensor
英文版API文档: :ref:`api_fluid_create_lod_tensor`
.. _cn_api_fluid_create_random_int_lodtensor: .. _cn_api_fluid_create_random_int_lodtensor:
create_random_int_lodtensor create_random_int_lodtensor
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.create_random_int_lodtensor(recursive_seq_lens, base_shape, place, low, high) .. py:function:: paddle.fluid.create_random_int_lodtensor(recursive_seq_lens, base_shape, place, low, high)
...@@ -169,9 +205,9 @@ create_random_int_lodtensor ...@@ -169,9 +205,9 @@ create_random_int_lodtensor
该函数实现以下功能: 该函数实现以下功能:
1. 根据用户输入的length-based ``recursive_seq_lens`` (基于长度的递归序列长)和在 ``basic_shape`` 中的基本元素形状计算LoDTensor的整体形状 1. 根据用户输入的length-based ``recursive_seq_lens`` (基于长度的递归序列长)和在 ``basic_shape`` 中的基本元素形状计算LoDTensor的整体形状
2. 由此形状,建立numpy数组 2. 由此形状,建立numpy数组
3. 使用API: ``create_lod_tensor`` 建立LoDTensor 3. 使用API: ``create_lod_tensor`` 建立LoDTensor
假如我们想用LoD Tensor来承载一词序列,其中每个词由一个整数来表示。现在,我们意图创建一个LoD Tensor来代表两个句子,其中一个句子有两个词,另外一个句子有三个。那么 ``base_shape`` 为[1], 输入的length-based ``recursive_seq_lens`` 是 [[2, 3]]。那么LoDTensor的整体形状应为[5, 1],并且为两个句子存储5个词。 假如我们想用LoD Tensor来承载一词序列,其中每个词由一个整数来表示。现在,我们意图创建一个LoD Tensor来代表两个句子,其中一个句子有两个词,另外一个句子有三个。那么 ``base_shape`` 为[1], 输入的length-based ``recursive_seq_lens`` 是 [[2, 3]]。那么LoDTensor的整体形状应为[5, 1],并且为两个句子存储5个词。
...@@ -193,12 +229,14 @@ create_random_int_lodtensor ...@@ -193,12 +229,14 @@ create_random_int_lodtensor
英文版API文档: :ref:`api_fluid_create_random_int_lodtensor`
.. _cn_api_fluid_CUDAPinnedPlace: .. _cn_api_fluid_CUDAPinnedPlace:
CUDAPinnedPlace CUDAPinnedPlace
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.CUDAPinnedPlace .. py:class:: paddle.fluid.CUDAPinnedPlace
...@@ -209,24 +247,28 @@ CUDAPinnedPlace ...@@ -209,24 +247,28 @@ CUDAPinnedPlace
英文版API文档: :ref:`api_fluid_CUDAPinnedPlace`
.. _cn_api_fluid_CUDAPlace: .. _cn_api_fluid_CUDAPlace:
CUDAPlace CUDAPlace
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.CUDAPlace .. py:class:: paddle.fluid.CUDAPlace
英文版API文档: :ref:`api_fluid_CUDAPlace`
.. _cn_api_fluid_DataFeedDesc: .. _cn_api_fluid_DataFeedDesc:
DataFeedDesc DataFeedDesc
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.DataFeedDesc(proto_file) .. py:function:: paddle.fluid.DataFeedDesc(proto_file)
...@@ -267,7 +309,7 @@ DataFeedDesc应由来自磁盘的有效protobuf消息初始化: ...@@ -267,7 +309,7 @@ DataFeedDesc应由来自磁盘的有效protobuf消息初始化:
DataFeedDesc也可以在运行时更改。一旦你熟悉了每个字段的含义,您可以修改它以更好地满足您的需要。例如: DataFeedDesc也可以在运行时更改。一旦你熟悉了每个字段的含义,您可以修改它以更好地满足您的需要。例如:
.. code-block:: text .. code-block:: python
data_feed.set_batch_size(128) data_feed.set_batch_size(128)
data_feed.set_dense_slots('wd') # The slot named 'wd' will be dense data_feed.set_dense_slots('wd') # The slot named 'wd' will be dense
...@@ -277,6 +319,7 @@ DataFeedDesc也可以在运行时更改。一旦你熟悉了每个字段的含 ...@@ -277,6 +319,7 @@ DataFeedDesc也可以在运行时更改。一旦你熟悉了每个字段的含
print(data_feed.desc()) print(data_feed.desc())
参数: 参数:
- **proto_file** (string) - 包含数据feed中描述的磁盘文件 - **proto_file** (string) - 包含数据feed中描述的磁盘文件
...@@ -351,12 +394,14 @@ DataFeedDesc也可以在运行时更改。一旦你熟悉了每个字段的含 ...@@ -351,12 +394,14 @@ DataFeedDesc也可以在运行时更改。一旦你熟悉了每个字段的含
print(data_feed.desc()) print(data_feed.desc())
英文版API文档: :ref:`api_fluid_DataFeedDesc`
.. _cn_api_fluid_DataFeeder: .. _cn_api_fluid_DataFeeder:
DataFeeder DataFeeder
>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.DataFeeder(feed_list, place, program=None) .. py:class:: paddle.fluid.DataFeeder(feed_list, place, program=None)
...@@ -387,13 +432,14 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是 ...@@ -387,13 +432,14 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是
参数: 参数:
- **feed_list** (list) – 向模型输入的变量表或者变量表名 - **feed_list** (list) – 向模型输入的变量表或者变量表名
- **place** (Place) – place表明是向GPU还是CPU中输入数据。如果想向GPU中输入数据, 请使用 ``fluid.CUDAPlace(i)`` (i 代表 the GPU id);如果向CPU中输入数据, 请使用 ``fluid.CPUPlace()`` - **place** (Place) – place表明是向GPU还是CPU中输入数据。如果想向GPU中输入数据, 请使用 ``fluid.CUDAPlace(i)`` (i 代表 the GPU id);如果向CPU中输入数据, 请使用 ``fluid.CPUPlace()``
- **program** (Program) – 需要向其中输入数据的Program。如果为None, 会默认使用 ``default_main_program()``。 缺省值为None - **program** (Program) – 需要向其中输入数据的Program。如果为None, 会默认使用 ``default_main_program()``。 缺省值为None
弹出异常: ``ValueError`` – 如果一些变量不在此 Program 中 抛出异常:
- ``ValueError`` – 如果一些变量不在此 Program 中
**代码示例** **代码示例**
...@@ -437,7 +483,8 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是 ...@@ -437,7 +483,8 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是
返回类型: dict 返回类型: dict
**特别注意:** 设备(CPU或GPU)的数目必须等于minibatch的数目 .. note::
设备(CPU或GPU)的数目必须等于minibatch的数目
...@@ -448,16 +495,16 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是 ...@@ -448,16 +495,16 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是
将reader返回的输入数据batch转换为多个mini-batch,之后每个mini-batch都会被输入进各个设备(CPU或GPU)中。 将reader返回的输入数据batch转换为多个mini-batch,之后每个mini-batch都会被输入进各个设备(CPU或GPU)中。
参数: 参数:
- **reader** (fun) – 待输入的数据 - **reader** (fun) – 该参数是一个可以生成数据的函数
- **multi_devices** (bool) – 执行场所的数目,默认为None - **multi_devices** (bool) – bool型,指明是否使用多个设备
- **num_places** (int) – 执行场所的数目,默认为None - **num_places** (int) – 如果 ``multi_devices`` 为 ``True`` , 可以使用此参数来设置GPU数目。如果 ``num_places`` 为 ``None`` ,该函数默认使用当前训练机所有GPU设备。默认为None。
- **drop_last** (bool) – 舍弃数目匹配不上的batch或设备 - **drop_last** (bool) – 如果最后一个batch的大小比 ``batch_size`` 要小,则可使用该参数来指明是否选择丢弃最后一个batch数据。 默认为 ``True``
返回:转换结果 返回:转换结果
返回类型: dict 返回类型: dict
出异常: ``ValueError`` – 如果 ``drop_last`` 值为False并且reader返回的minibatch数目与设备数目不相等时,产生此异常 出异常: ``ValueError`` – 如果 ``drop_last`` 值为False并且reader返回的minibatch数目与设备数目不相等时,产生此异常
...@@ -466,12 +513,14 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是 ...@@ -466,12 +513,14 @@ reader通常返回一个minibatch条目列表。在列表中每一条目都是
英文版API文档: :ref:`api_fluid_DataFeeder`
.. _cn_api_fluid_default_main_program: .. _cn_api_fluid_default_main_program:
default_main_program default_main_program
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.default_main_program() .. py:function:: paddle.fluid.default_main_program()
...@@ -497,7 +546,9 @@ default_main_program ...@@ -497,7 +546,9 @@ default_main_program
英文版API文档: :ref:`api_fluid_default_main_program`
.. _cn_api_fluid_default_startup_program: .. _cn_api_fluid_default_startup_program:
...@@ -505,7 +556,7 @@ default_main_program ...@@ -505,7 +556,7 @@ default_main_program
default_startup_program default_startup_program
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.default_startup_program() .. py:function:: paddle.fluid.default_startup_program()
...@@ -529,12 +580,14 @@ startup_program会使用内在的operators(算子)去初始化他们,并 ...@@ -529,12 +580,14 @@ startup_program会使用内在的operators(算子)去初始化他们,并
英文版API文档: :ref:`api_fluid_default_startup_program`
.. _cn_api_fluid_DistributeTranspiler: .. _cn_api_fluid_DistributeTranspiler:
DistributeTranspiler DistributeTranspiler
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.DistributeTranspiler (config=None) .. py:class:: paddle.fluid.DistributeTranspiler (config=None)
...@@ -590,6 +643,7 @@ DistributeTranspiler ...@@ -590,6 +643,7 @@ DistributeTranspiler
参数: 参数:
- **trainer_id** (int) – 当前Trainer worker的id, 如果有n个Trainer worker, id 取值范围为0 ~ n-1 - **trainer_id** (int) – 当前Trainer worker的id, 如果有n个Trainer worker, id 取值范围为0 ~ n-1
- **program** (Program|None) – 待transpile(转译)的program, 缺省为 ``fluid.default_main_program()`` - **program** (Program|None) – 待transpile(转译)的program, 缺省为 ``fluid.default_main_program()``
- **startup_program** (Program|None) - 要转译的 ``startup_program`` ,默认为 ``fluid.default_startup_program()``
- **pservers** (str) – 内容为Pserver列表的字符串,格式为:按逗号区分不同的Pserver,每个Pserver的格式为 *ip地址:端口号* - **pservers** (str) – 内容为Pserver列表的字符串,格式为:按逗号区分不同的Pserver,每个Pserver的格式为 *ip地址:端口号*
- **trainers** (int|str) – 在Pserver模式下,该参数指Trainer机的个数;在nccl2模式下,它是一个内容为Trainer终端列表的字符串 - **trainers** (int|str) – 在Pserver模式下,该参数指Trainer机的个数;在nccl2模式下,它是一个内容为Trainer终端列表的字符串
- **sync_mode** (bool) – 是否做同步训练(synchronous training), 默认为True - **sync_mode** (bool) – 是否做同步训练(synchronous training), 默认为True
...@@ -652,12 +706,14 @@ DistributeTranspiler ...@@ -652,12 +706,14 @@ DistributeTranspiler
英文版API文档: :ref:`api_fluid_DistributeTranspiler`
.. _cn_api_fluid_DistributeTranspilerConfig: .. _cn_api_fluid_DistributeTranspilerConfig:
DistributeTranspilerConfig DistributeTranspilerConfig
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.DistributeTranspilerConfig .. py:class:: paddle.fluid.DistributeTranspilerConfig
...@@ -680,12 +736,14 @@ DistributeTranspilerConfig ...@@ -680,12 +736,14 @@ DistributeTranspilerConfig
英文版API文档: :ref:`api_fluid_DistributeTranspilerConfig`
.. _cn_api_fluid_ExecutionStrategy: .. _cn_api_fluid_ExecutionStrategy:
ExecutionStrategy ExecutionStrategy
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.ExecutionStrategy .. py:class:: paddle.fluid.ExecutionStrategy
...@@ -734,12 +792,14 @@ int型成员。它代表了线程池(thread pool)的大小。这些线程会被 ...@@ -734,12 +792,14 @@ int型成员。它代表了线程池(thread pool)的大小。这些线程会被
英文版API文档: :ref:`api_fluid_ExecutionStrategy`
.. _cn_api_fluid_executor: .. _cn_api_fluid_executor:
Executor Executor
>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.Executor (place) .. py:class:: paddle.fluid.Executor (place)
...@@ -843,26 +903,14 @@ feed map为该program提供输入数据。fetch_list提供program训练结束后 ...@@ -843,26 +903,14 @@ feed map为该program提供输入数据。fetch_list提供program训练结束后
英文版API文档: :ref:`api_fluid_executor`
.. _cn_api_fluid_fluid_Tensor:
Tensor
>>>>>>>>>>>>>>>>>>>>>>>>>
.. py:function:: paddle.fluid.Tensor
``LoDTensor`` 的别名
英文版API文档: :ref:`api_fluid_fluid_Tensor`
.. _cn_api_fluid_global_scope: .. _cn_api_fluid_global_scope:
global_scope global_scope
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.global_scope() .. py:function:: paddle.fluid.global_scope()
...@@ -875,19 +923,24 @@ global_scope ...@@ -875,19 +923,24 @@ global_scope
英文版API文档: :ref:`api_fluid_global_scope`
.. _cn_api_fluid_LoDTensor: .. _cn_api_fluid_LoDTensor:
LoDTensor LoDTensor
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.LoDTensor .. py:class:: paddle.fluid.LoDTensor
LoDTensor是一个具有LoD信息的张量(Tensor) LoDTensor是一个具有LoD信息的张量(Tensor)
``np.array(lod_tensor)`` 可以将LoDTensor转换为numpy array。 ``lod_tensor.lod()`` 可以获得LoD信息。 ``np.array(lod_tensor)`` 可以将LoDTensor转换为numpy array。
``lod_tensor.lod()`` 可以获得LoD信息。
LoD是多层序列(Level of Details)的缩写,通常用于不同长度的序列。如果您不需要了解LoD信息,可以跳过下面的注解。 LoD是多层序列(Level of Details)的缩写,通常用于不同长度的序列。如果您不需要了解LoD信息,可以跳过下面的注解。
举例: 举例:
...@@ -939,12 +992,14 @@ LoD可以有多个level(例如,一个段落可以有多个句子,一个句 ...@@ -939,12 +992,14 @@ LoD可以有多个level(例如,一个段落可以有多个句子,一个句
英文版API文档: :ref:`api_fluid_LoDTensor`
.. _cn_api_fluid_LoDTensorArray: .. _cn_api_fluid_LoDTensorArray:
LoDTensorArray LoDTensorArray
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.LoDTensorArray .. py:class:: paddle.fluid.LoDTensorArray
...@@ -954,19 +1009,22 @@ LoDTensorArray ...@@ -954,19 +1009,22 @@ LoDTensorArray
英文版API文档: :ref:`api_fluid_LoDTensorArray`
.. _cn_api_fluid_memory_optimize: .. _cn_api_fluid_memory_optimize:
memory_optimize memory_optimize
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.memory_optimize(input_program, skip_opt_set=None, print_log=False, level=0, skip_grads=False) .. py:function:: paddle.fluid.memory_optimize(input_program, skip_opt_set=None, print_log=False, level=0, skip_grads=False)
通过重用var内存来优化内存。 通过重用var内存来优化内存。
注意:它不支持block中嵌套子block。 .. note::
它不支持block中嵌套子block。
参数: 参数:
- **input_program** (str) – 输入Program。 - **input_program** (str) – 输入Program。
...@@ -979,12 +1037,14 @@ memory_optimize ...@@ -979,12 +1037,14 @@ memory_optimize
英文版API文档: :ref:`api_fluid_memory_optimize`
.. _cn_api_fluid_name_scope: .. _cn_api_fluid_name_scope:
name_scope name_scope
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.name_scope(*args, **kwds) .. py:function:: paddle.fluid.name_scope(*args, **kwds)
...@@ -1009,12 +1069,14 @@ name_scope ...@@ -1009,12 +1069,14 @@ name_scope
英文版API文档: :ref:`api_fluid_name_scope`
.. _cn_api_fluid_ParallelExecutor: .. _cn_api_fluid_ParallelExecutor:
ParallelExecutor ParallelExecutor
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -1041,7 +1103,7 @@ ParallelExecutor ...@@ -1041,7 +1103,7 @@ ParallelExecutor
返回类型: ParallelExecutor 返回类型: ParallelExecutor
出异常:``TypeError`` - 如果提供的参数 ``share_vars_from`` 不是 ``ParallelExecutor`` 类型的,将会弹出此异常 出异常:``TypeError`` - 如果提供的参数 ``share_vars_from`` 不是 ``ParallelExecutor`` 类型的,将会弹出此异常
**代码示例** **代码示例**
...@@ -1096,14 +1158,12 @@ ParallelExecutor ...@@ -1096,14 +1158,12 @@ ParallelExecutor
返回类型:List 返回类型:List
弹出异常: 抛出异常:
``ValueError`` - 如果feed参数是list类型,但是它的长度不等于可用设备(执行场所)的数目,再或者给定的feed不是dict类型,弹出此异常 - ``ValueError`` - 如果feed参数是list类型,但是它的长度不等于可用设备(执行场所)的数目,再或者给定的feed不是dict类型,抛出此异常
- ``TypeError`` - 如果feed参数是list类型,但是它里面的元素不是dict类型时,弹出此异常
``TypeError`` - 如果feed参数是list类型,但是它里面的元素不是dict类型时,弹出此异常
额外注意: .. note::
1.如果feed参数为dict类型,那么传入 ``ParallelExecutor`` 的数据量 *必须* 大于可用的执行场所数目。否则,C++端将会弹出异常。应额外注意核对数据集的最后一个batch是否比可用执行场所数目大。 1.如果feed参数为dict类型,那么传入 ``ParallelExecutor`` 的数据量 *必须* 大于可用的执行场所数目。否则,C++端将会抛出异常。应额外注意核对数据集的最后一个batch是否比可用执行场所数目大。
2.如果可用执行场所大于一个,则为每个变量最后获取的结果都是list类型,且这个list中的每个元素都是各个可用执行场所的变量 2.如果可用执行场所大于一个,则为每个变量最后获取的结果都是list类型,且这个list中的每个元素都是各个可用执行场所的变量
**代码示例** **代码示例**
...@@ -1120,13 +1180,15 @@ ParallelExecutor ...@@ -1120,13 +1180,15 @@ ParallelExecutor
英文版API文档: :ref:`api_fluid_ParallelExecutor`
.. _cn_api_fluid_ParamAttr: .. _cn_api_fluid_ParamAttr:
ParamAttr ParamAttr
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.ParamAttr(name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False) .. py:class:: paddle.fluid.ParamAttr(name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False)
...@@ -1160,12 +1222,14 @@ ParamAttr ...@@ -1160,12 +1222,14 @@ ParamAttr
英文版API文档: :ref:`api_fluid_ParamAttr`
.. _cn_api_fluid_Program: .. _cn_api_fluid_Program:
Program Program
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.Program .. py:function:: paddle.fluid.Program
...@@ -1372,12 +1436,14 @@ operator的角色,值只能是枚举变量{Forward, Backward, Optimize}。 ...@@ -1372,12 +1436,14 @@ operator的角色,值只能是枚举变量{Forward, Backward, Optimize}。
英文版API文档: :ref:`api_fluid_Program`
.. _cn_api_fluid_program_guard: .. _cn_api_fluid_program_guard:
program_guard program_guard
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.program_guard(*args, **kwds) .. py:function:: paddle.fluid.program_guard(*args, **kwds)
...@@ -1420,12 +1486,14 @@ program_guard ...@@ -1420,12 +1486,14 @@ program_guard
英文版API文档: :ref:`api_fluid_program_guard`
.. _cn_api_fluid_release_memory: .. _cn_api_fluid_release_memory:
release_memory release_memory
>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.release_memory(input_program, skip_opt_set=None) .. py:function:: paddle.fluid.release_memory(input_program, skip_opt_set=None)
...@@ -1450,14 +1518,36 @@ release_memory ...@@ -1450,14 +1518,36 @@ release_memory
英文版API文档: :ref:`api_fluid_release_memory`
.. _cn_api_fluid_Scope: .. _cn_api_fluid_Scope:
Scope Scope
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.scope(scope)
(作用域)Scope为变量名的联合。所有变量都属于Scope。
从本地作用域中可以拉取到其双亲作用域的变量。
要想运行一个网络,需要指明它运行所在的域,确切的说: exe.Run(&scope) 。
一个网络可以在不同域上运行,并且更新该域的各类变量。
在作用域上创建一个变量,并在域中获取。
**代码示例**
.. code-block:: python
# create tensor from a scope and set value to it.
param = scope.var('Param').get_tensor()
param_array = np.full((height, row_numel), 5.0).astype("float32")
param.set(param_array, place)
.. py:function:: paddle.fluid.scope(scope)
.. py:method:: drop_kids(self: paddle.fluid.core.Scope) → None .. py:method:: drop_kids(self: paddle.fluid.core.Scope) → None
.. py:method:: find_var(self: paddle.fluid.core.Scope, arg0: unicode) → paddle.fluid.core.Variable .. py:method:: find_var(self: paddle.fluid.core.Scope, arg0: unicode) → paddle.fluid.core.Variable
...@@ -1467,14 +1557,16 @@ Scope ...@@ -1467,14 +1557,16 @@ Scope
英文版API文档: :ref:`api_fluid_Scope`
.. _cn_api_fluid_scope_guard: .. _cn_api_fluid_scope_guard:
scope_guard scope_guard
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.scope_guard(*args, **kwds)() .. py:function:: paddle.fluid.scope_guard(*args, **kwds)
修改全局/默认作用域(scope), 运行时中的所有变量都将分配给新的scope。 修改全局/默认作用域(scope), 运行时中的所有变量都将分配给新的scope。
...@@ -1495,25 +1587,31 @@ scope_guard ...@@ -1495,25 +1587,31 @@ scope_guard
英文版API文档: :ref:`api_fluid_scope_guard`
.. _cn_api_fluid_switch_scope:
_switch_scope
>>>>>>>>>>>>>>>>>>>>>>>>>
.. py:function:: paddle.fluid._switch_scope(scope)
.. _cn_api_fluid_Tensor:
Tensor
-------------------------------
.. py:function:: paddle.fluid.Tensor
``LoDTensor`` 的别名
英文版API文档: :ref:`api_fluid_switch_scope`
.. _cn_api_fluid_WeightNormParamAttr: .. _cn_api_fluid_WeightNormParamAttr:
WeightNormParamAttr WeightNormParamAttr
>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -1546,5 +1644,7 @@ WeightNormParamAttr ...@@ -1546,5 +1644,7 @@ WeightNormParamAttr
英文版API文档: :ref:`api_fluid_WeightNormParamAttr`
###################
#################
fluid.initializer fluid.initializer
################# ###################
.. _cn_api_fluid_initializer_Bilinear: .. _cn_api_fluid_initializer_Bilinear:
...@@ -9,9 +8,9 @@ ...@@ -9,9 +8,9 @@
Bilinear Bilinear
>>>>>>>>>>> >>>>>>>>>>>
.. py:function:: paddle.fluid.initializer.Bilinear .. py:attribute:: paddle.fluid.initializer.Bilinear
``BilinearInitializer``的别名 ``BilinearInitializer`` 的别名
.. _cn_api_fluid_initializer_BilinearInitializer: .. _cn_api_fluid_initializer_BilinearInitializer:
...@@ -45,16 +44,16 @@ num_filters = C和groups = C 表示这是按通道转置的卷积函数。滤波 ...@@ -45,16 +44,16 @@ num_filters = C和groups = C 表示这是按通道转置的卷积函数。滤波
英文版API文档: :ref:`api_fluid_initializer_BilinearInitializer`
.. _cn_api_fluid_initializer_Constant: .. _cn_api_fluid_initializer_Constant:
Constant Constant
>>>>>>>>>> >>>>>>>>>>
.. py:function:: paddle.fluid.initializer.Constant .. py:attribute:: paddle.fluid.initializer.Constant
``ConstantInitializer``的别名 ``ConstantInitializer`` 的别名
.. _cn_api_fluid_initializer_ConstantInitializer: .. _cn_api_fluid_initializer_ConstantInitializer:
...@@ -78,7 +77,7 @@ ConstantInitializer ...@@ -78,7 +77,7 @@ ConstantInitializer
英文版API文档: :ref:`api_fluid_initializer_ConstantInitializer`
...@@ -103,7 +102,7 @@ force_init_on_cpu ...@@ -103,7 +102,7 @@ force_init_on_cpu
create_op('force_cpu': force_init_on_cpu()) create_op('force_cpu': force_init_on_cpu())
英文版API文档: :ref:`api_fluid_initializer_force_init_on_cpu`
...@@ -130,7 +129,7 @@ init_on_cpu ...@@ -130,7 +129,7 @@ init_on_cpu
英文版API文档: :ref:`api_fluid_initializer_init_on_cpu`
.. _cn_api_fluid_initializer_MSRA: .. _cn_api_fluid_initializer_MSRA:
...@@ -138,9 +137,9 @@ init_on_cpu ...@@ -138,9 +137,9 @@ init_on_cpu
MSRA MSRA
>>>>>> >>>>>>
.. py:function:: paddle.fluid.initializer.MSRA .. py:attribute:: paddle.fluid.initializer.MSRA
``MSRAInitializer``的别名 ``MSRAInitializer`` 的别名
.. _cn_api_fluid_initializer_MSRAInitializer: .. _cn_api_fluid_initializer_MSRAInitializer:
...@@ -184,7 +183,7 @@ MSRAInitializer ...@@ -184,7 +183,7 @@ MSRAInitializer
英文版API文档: :ref:`api_fluid_initializer_MSRAInitializer`
.. _cn_api_fluid_initializer_Normal: .. _cn_api_fluid_initializer_Normal:
...@@ -192,9 +191,9 @@ MSRAInitializer ...@@ -192,9 +191,9 @@ MSRAInitializer
Normal Normal
>>>>>>>> >>>>>>>>
.. py:function:: paddle.fluid.initializer.Normal .. py:attribute:: paddle.fluid.initializer.Normal
``NormalInitializer``的别名 ``NormalInitializer`` 的别名
.. _cn_api_fluid_initializer_NormalInitializer: .. _cn_api_fluid_initializer_NormalInitializer:
...@@ -222,16 +221,16 @@ NormalInitializer ...@@ -222,16 +221,16 @@ NormalInitializer
英文版API文档: :ref:`api_fluid_initializer_NormalInitializer`
.. _cn_api_fluid_initializer_TruncatedNormal: .. _cn_api_fluid_initializer_TruncatedNormal:
TruncatedNormal TruncatedNormal
>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>
.. py:function:: paddle.fluid.initializer.TruncatedNormal .. py:attribute:: paddle.fluid.initializer.TruncatedNormal
``TruncatedNormalInitializer``的别名 ``TruncatedNormalInitializer`` 的别名
.. _cn_api_fluid_initializer_TruncatedNormalInitializer: .. _cn_api_fluid_initializer_TruncatedNormalInitializer:
...@@ -260,7 +259,7 @@ Random Truncated Normal(高斯)分布初始化器 ...@@ -260,7 +259,7 @@ Random Truncated Normal(高斯)分布初始化器
英文版API文档: :ref:`api_fluid_initializer_TruncatedNormalInitializer`
.. _cn_api_fluid_initializer_Uniform: .. _cn_api_fluid_initializer_Uniform:
...@@ -268,13 +267,14 @@ Random Truncated Normal(高斯)分布初始化器 ...@@ -268,13 +267,14 @@ Random Truncated Normal(高斯)分布初始化器
Uniform Uniform
>>>>>>>>> >>>>>>>>>
.. _cn_api_fluid_initializer_UniformInitializer: .. py:attribute:: paddle.fluid.initializer.Uniform
.. py:class:: paddle.fluid.initializer.Uniform ``UniformInitializer`` 的别名
``UniformInitializer``的别名
.. _cn_api_fluid_initializer_UniformInitializer:
UniformInitializer UniformInitializer
>>>>>>>>>>>> >>>>>>>>>>>>
...@@ -297,16 +297,24 @@ UniformInitializer ...@@ -297,16 +297,24 @@ UniformInitializer
英文版API文档: :ref:`api_fluid_initializer_UniformInitializer`
.. _api_fluid_initializer_Xavier:
.. _cn_api_fluid_initializer_Xavier:
Xavier Xavier
>>>>>>>>> >>>>>>>>>
.. py:function:: paddle.fluid.initializer.Xavier .. py:attribute:: paddle.fluid.initializer.Xavier
``XavierInitializer`` 的别名
``XavierInitializer``的别名
.. _cn_api_fluid_initializer_XavierInitializer: .. _cn_api_fluid_initializer_XavierInitializer:
...@@ -351,5 +359,5 @@ XavierInitializer ...@@ -351,5 +359,5 @@ XavierInitializer
英文版API文档: :ref:`api_fluid_initializer_XavierInitializer`
################# #################
fluid.io fluid.io
################# #################
...@@ -8,7 +7,7 @@ ...@@ -8,7 +7,7 @@
.. _cn_api_fluid_io_load_inference_model: .. _cn_api_fluid_io_load_inference_model:
load_inference_model load_inference_model
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.load_inference_model(dirname, executor, model_filename=None, params_filename=None, pserver_endpoints=None) .. py:class:: paddle.fluid.io.load_inference_model(dirname, executor, model_filename=None, params_filename=None, pserver_endpoints=None)
...@@ -44,12 +43,14 @@ load_inference_model ...@@ -44,12 +43,14 @@ load_inference_model
英文版API文档: :ref:`api_fluid_io_load_inference_model`
.. _cn_api_fluid_io_load_params: .. _cn_api_fluid_io_load_params:
load_params load_params
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.load_params(executor, dirname, main_program=None, filename=None) .. py:class:: paddle.fluid.io.load_params(executor, dirname, main_program=None, filename=None)
...@@ -79,12 +80,14 @@ load_params ...@@ -79,12 +80,14 @@ load_params
英文版API文档: :ref:`api_fluid_io_load_params`
.. _cn_api_fluid_io_load_persistables: .. _cn_api_fluid_io_load_persistables:
load_persistables load_persistables
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.load_persistables(executor, dirname, main_program=None, filename=None) .. py:class:: paddle.fluid.io.load_persistables(executor, dirname, main_program=None, filename=None)
...@@ -112,12 +115,14 @@ load_persistables ...@@ -112,12 +115,14 @@ load_persistables
英文版API文档: :ref:`api_fluid_io_load_persistables`
.. _cn_api_fluid_io_load_vars: .. _cn_api_fluid_io_load_vars:
load_vars load_vars
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.load_vars(executor, dirname, main_program=None, vars=None, predicate=None, filename=None) .. py:class:: paddle.fluid.io.load_vars(executor, dirname, main_program=None, vars=None, predicate=None, filename=None)
...@@ -154,24 +159,28 @@ load_vars ...@@ -154,24 +159,28 @@ load_vars
prog = fluid.default_main_program() prog = fluid.default_main_program()
fluid.io.load_vars(executor=exe, dirname=path, main_program=prog, fluid.io.load_vars(executor=exe, dirname=path, main_program=prog,
vars=None) vars=None, predicate=name_has_fc)
#加载所有`main_program`中变量名包含 ‘fc’ 的变量
#并且此前所有变量应该保存在不同文件中
# The second usage: using `vars` to specify variables #用法2:使用 `vars` 列表来指明变量
var_list = [var_a, var_b, var_c] var_list = [var_a, var_b, var_c]
fluid.io.load_vars(executor=exe, dirname=path, vars=var_list, fluid.io.load_vars(executor=exe, dirname=path, vars=var_list,
filename="vars_file") filename="vars_file")
# var_a, var_b and var_c will be loaded. And they are supposed to haven # 加载 var_a , var_b , var_c .它们此前应被保存在同一文件中
# been saved in the same file named 'var_file' in the path "./my_paddle_model". # 文件名为 'var_file' ,路径为 "./my_paddle_model".
英文版API文档: :ref:`api_fluid_io_load_vars`
.. _cn_api_fluid_io_save_inference_model: .. _cn_api_fluid_io_save_inference_model:
save_inference_model save_inference_model
>>>>>>>>>>>> -------------------------------
.. py:class:: 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) .. py:class:: 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)
...@@ -211,12 +220,14 @@ save_inference_model ...@@ -211,12 +220,14 @@ save_inference_model
英文版API文档: :ref:`api_fluid_io_save_inference_model`
.. _cn_api_fluid_io_save_params: .. _cn_api_fluid_io_save_params:
save_params save_params
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.save_params(executor, dirname, main_program=None, filename=None) .. py:class:: paddle.fluid.io.save_params(executor, dirname, main_program=None, filename=None)
...@@ -248,12 +259,14 @@ save_params ...@@ -248,12 +259,14 @@ save_params
英文版API文档: :ref:`api_fluid_io_save_params`
.. _cn_api_fluid_io_save_persistables: .. _cn_api_fluid_io_save_persistables:
save_persistables save_persistables
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.save_persistables(executor, dirname, main_program=None, filename=None) .. py:class:: paddle.fluid.io.save_persistables(executor, dirname, main_program=None, filename=None)
...@@ -284,14 +297,14 @@ save_persistables ...@@ -284,14 +297,14 @@ save_persistables
英文版API文档: :ref:`api_fluid_io_save_persistables`
.. _cn_api_fluid_io_save_vars: .. _cn_api_fluid_io_save_vars:
save_vars save_vars
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.io.save_vars(executor, dirname, main_program=None, vars=None, predicate=None, filename=None) .. py:class:: paddle.fluid.io.save_vars(executor, dirname, main_program=None, vars=None, predicate=None, filename=None)
...@@ -328,7 +341,7 @@ save_vars ...@@ -328,7 +341,7 @@ save_vars
prog = fluid.default_main_program() prog = fluid.default_main_program()
fluid.io.save_vars(executor=exe, dirname=path, main_program=prog, fluid.io.save_vars(executor=exe, dirname=path, main_program=prog,
vars=None) vars=None, predicate = name_has_fc)
# 将main_program中名中包含“fc”的的所有变量保存。 # 将main_program中名中包含“fc”的的所有变量保存。
# 变量将分开保存。 # 变量将分开保存。
...@@ -341,5 +354,7 @@ save_vars ...@@ -341,5 +354,7 @@ save_vars
英文版API文档: :ref:`api_fluid_io_save_vars`
################### ###################
fluid.layers fluid.layers
################### ###################
...@@ -12,7 +11,7 @@ fluid.layers ...@@ -12,7 +11,7 @@ fluid.layers
.. _cn_api_fluid_layers_array_length: .. _cn_api_fluid_layers_array_length:
array_length array_length
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.array_length(array) .. py:function:: paddle.fluid.layers.array_length(array)
...@@ -42,14 +41,16 @@ array_length ...@@ -42,14 +41,16 @@ array_length
英文版API文档: :ref:`api_fluid_layers_array_length`
.. _cn_api_fluid_layers_array_read: .. _cn_api_fluid_layers_array_read:
array_read array_read
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.array_read(array,i) .. py:function:: paddle.fluid.layers.array_read(array,i)
...@@ -83,14 +84,16 @@ array_read ...@@ -83,14 +84,16 @@ array_read
英文版API文档: :ref:`api_fluid_layers_array_read`
.. _cn_api_fluid_layers_array_write: .. _cn_api_fluid_layers_array_write:
array_write array_write
>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.array_write(x, i, array=None) .. py:function:: paddle.fluid.layers.array_write(x, i, array=None)
...@@ -119,14 +122,16 @@ array_write ...@@ -119,14 +122,16 @@ array_write
英文版API文档: :ref:`api_fluid_layers_array_write`
.. _cn_api_fluid_layers_create_array: .. _cn_api_fluid_layers_create_array:
create_array create_array
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.create_array(dtype) .. py:function:: paddle.fluid.layers.create_array(dtype)
...@@ -151,14 +156,16 @@ create_array ...@@ -151,14 +156,16 @@ create_array
英文版API文档: :ref:`api_fluid_layers_create_array`
.. _cn_api_fluid_layers_DynamicRNN: .. _cn_api_fluid_layers_DynamicRNN:
DynamicRNN DynamicRNN
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.layers.DynamicRNN(name=None) .. py:class:: paddle.fluid.layers.DynamicRNN(name=None)
...@@ -299,14 +306,16 @@ memory用于缓存分段数据。memory的初始值可以是零,也可以是 ...@@ -299,14 +306,16 @@ memory用于缓存分段数据。memory的初始值可以是零,也可以是
英文版API文档: :ref:`api_fluid_layers_DynamicRNN`
.. _cn_api_fluid_layers_equal: .. _cn_api_fluid_layers_equal:
equal equal
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.equal(x,y,cond=None,**ignored) .. py:function:: paddle.fluid.layers.equal(x,y,cond=None,**ignored)
...@@ -330,14 +339,16 @@ equal ...@@ -330,14 +339,16 @@ equal
英文版API文档: :ref:`api_fluid_layers_equal`
.. _cn_api_fluid_layers_IfElse: .. _cn_api_fluid_layers_IfElse:
IfElse IfElse
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.IfElse(cond, name=None) .. py:function:: paddle.fluid.layers.IfElse(cond, name=None)
...@@ -371,14 +382,16 @@ if-else控制流。 ...@@ -371,14 +382,16 @@ if-else控制流。
英文版API文档: :ref:`api_fluid_layers_IfElse`
.. _cn_api_fluid_layers_increment: .. _cn_api_fluid_layers_increment:
increment increment
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.increment(x, value=1.0, in_place=True) .. py:function:: paddle.fluid.layers.increment(x, value=1.0, in_place=True)
...@@ -405,14 +418,16 @@ increment ...@@ -405,14 +418,16 @@ increment
英文版API文档: :ref:`api_fluid_layers_increment`
.. _cn_api_fluid_layers_is_empty: .. _cn_api_fluid_layers_is_empty:
is_empty is_empty
>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.is_empty(x, cond=None, **ignored) .. py:function:: paddle.fluid.layers.is_empty(x, cond=None, **ignored)
...@@ -438,14 +453,16 @@ is_empty ...@@ -438,14 +453,16 @@ is_empty
英文版API文档: :ref:`api_fluid_layers_is_empty`
.. _cn_api_fluid_layers_less_than: .. _cn_api_fluid_layers_less_than:
less_than less_than
>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.less_than(x, y, force_cpu=None, cond=None, **ignored) .. py:function:: paddle.fluid.layers.less_than(x, y, force_cpu=None, cond=None, **ignored)
...@@ -475,14 +492,16 @@ less_than ...@@ -475,14 +492,16 @@ less_than
英文版API文档: :ref:`api_fluid_layers_less_than`
.. _cn_api_fluid_layers_Print: .. _cn_api_fluid_layers_Print:
Print Print
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.Print(input, first_n=-1, message=None, summarize=-1, print_tensor_name=True, print_tensor_type=True, print_tensor_shape=True, print_tensor_lod=True, print_phase='both') .. py:function:: paddle.fluid.layers.Print(input, first_n=-1, message=None, summarize=-1, print_tensor_name=True, print_tensor_type=True, print_tensor_shape=True, print_tensor_lod=True, print_phase='both')
...@@ -517,14 +536,16 @@ Print ...@@ -517,14 +536,16 @@ Print
英文版API文档: :ref:`api_fluid_layers_Print`
.. _cn_api_fluid_layers_reorder_lod_tensor_by_rank: .. _cn_api_fluid_layers_reorder_lod_tensor_by_rank:
reorder_lod_tensor_by_rank reorder_lod_tensor_by_rank
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reorder_lod_tensor_by_rank(x, rank_table) .. py:function:: paddle.fluid.layers.reorder_lod_tensor_by_rank(x, rank_table)
...@@ -562,14 +583,16 @@ reorder_lod_tensor_by_rank ...@@ -562,14 +583,16 @@ reorder_lod_tensor_by_rank
英文版API文档: :ref:`api_fluid_layers_reorder_lod_tensor_by_rank`
.. _cn_api_fluid_layers_StaticRNN: .. _cn_api_fluid_layers_StaticRNN:
StaticRNN StaticRNN
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.layers.StaticRNN(name=None) .. py:class:: paddle.fluid.layers.StaticRNN(name=None)
...@@ -591,14 +614,16 @@ StaticRNN ...@@ -591,14 +614,16 @@ StaticRNN
英文版API文档: :ref:`api_fluid_layers_StaticRNN`
.. _cn_api_fluid_layers_Switch: .. _cn_api_fluid_layers_Switch:
Switch Switch
>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.Switch (name=None) .. py:function:: paddle.fluid.layers.Switch (name=None)
...@@ -645,14 +670,16 @@ Switch类实现的功能十分类似if-elif-else。它可以在学习率调度 ...@@ -645,14 +670,16 @@ Switch类实现的功能十分类似if-elif-else。它可以在学习率调度
英文版API文档: :ref:`api_fluid_layers_Switch`
.. _cn_api_fluid_layers_While: .. _cn_api_fluid_layers_While:
While While
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.While (cond, is_test=False, name=None) .. py:function:: paddle.fluid.layers.While (cond, is_test=False, name=None)
...@@ -683,7 +710,9 @@ While ...@@ -683,7 +710,9 @@ While
英文版API文档: :ref:`api_fluid_layers_While`
...@@ -697,7 +726,7 @@ While ...@@ -697,7 +726,7 @@ While
.. _cn_api_fluid_layers_batch: .. _cn_api_fluid_layers_batch:
batch batch
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.batch(reader, batch_size) .. py:function:: paddle.fluid.layers.batch(reader, batch_size)
...@@ -734,14 +763,16 @@ batch ...@@ -734,14 +763,16 @@ batch
英文版API文档: :ref:`api_fluid_layers_batch`
.. _cn_api_fluid_layers_create_py_reader_by_data: .. _cn_api_fluid_layers_create_py_reader_by_data:
create_py_reader_by_data create_py_reader_by_data
>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.create_py_reader_by_data(capacity,feed_list,name=None,use_double_buffer=True) .. py:function:: paddle.fluid.layers.create_py_reader_by_data(capacity,feed_list,name=None,use_double_buffer=True)
...@@ -789,14 +820,16 @@ create_py_reader_by_data ...@@ -789,14 +820,16 @@ create_py_reader_by_data
英文版API文档: :ref:`api_fluid_layers_create_py_reader_by_data`
.. _cn_api_fluid_layers_data: .. _cn_api_fluid_layers_data:
data data
>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.data(name, shape, append_batch_size=True, dtype='float32', lod_level=0, type=VarType.LOD_TENSOR, stop_gradient=True) .. py:function:: paddle.fluid.layers.data(name, shape, append_batch_size=True, dtype='float32', lod_level=0, type=VarType.LOD_TENSOR, stop_gradient=True)
...@@ -835,14 +868,16 @@ data ...@@ -835,14 +868,16 @@ data
英文版API文档: :ref:`api_fluid_layers_data`
.. _cn_api_fluid_layers_double_buffer: .. _cn_api_fluid_layers_double_buffer:
double_buffer double_buffer
>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.double_buffer(reader, place=None, name=None) .. py:function:: paddle.fluid.layers.double_buffer(reader, place=None, name=None)
...@@ -873,14 +908,16 @@ double_buffer ...@@ -873,14 +908,16 @@ double_buffer
英文版API文档: :ref:`api_fluid_layers_double_buffer`
.. _cn_api_fluid_layers_load: .. _cn_api_fluid_layers_load:
load load
>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.load(out, file_path, load_as_fp16=None) .. py:function:: paddle.fluid.layers.load(out, file_path, load_as_fp16=None)
...@@ -901,14 +938,16 @@ Load操作命令将从磁盘文件中加载LoDTensor/SelectedRows变量。 ...@@ -901,14 +938,16 @@ Load操作命令将从磁盘文件中加载LoDTensor/SelectedRows变量。
英文版API文档: :ref:`api_fluid_layers_load`
.. _cn_api_fluid_layers_open_files: .. _cn_api_fluid_layers_open_files:
open_files open_files
>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.open_files(filenames, shapes, lod_levels, dtypes, thread_num=None, buffer_size=None, pass_num=1, is_test=None) .. py:function:: paddle.fluid.layers.open_files(filenames, shapes, lod_levels, dtypes, thread_num=None, buffer_size=None, pass_num=1, is_test=None)
...@@ -945,14 +984,16 @@ open_files ...@@ -945,14 +984,16 @@ open_files
英文版API文档: :ref:`api_fluid_layers_open_files`
.. _cn_api_fluid_layers_Preprocessor: .. _cn_api_fluid_layers_Preprocessor:
Preprocessor Preprocessor
>>>>>>>>>>>>> -------------------------------
.. py:class:: class paddle.fluid.layers.Preprocessor(reader, name=None) .. py:class:: class paddle.fluid.layers.Preprocessor(reader, name=None)
...@@ -976,14 +1017,16 @@ reader变量中数据预处理块。 ...@@ -976,14 +1017,16 @@ reader变量中数据预处理块。
英文版API文档: :ref:`api_fluid_layers_Preprocessor`
.. _cn_api_fluid_layers_py_reader: .. _cn_api_fluid_layers_py_reader:
py_reader py_reader
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.py_reader(capacity, shapes, dtypes, lod_levels=None, name=None, use_double_buffer=True) .. py:function:: paddle.fluid.layers.py_reader(capacity, shapes, dtypes, lod_levels=None, name=None, use_double_buffer=True)
...@@ -1111,14 +1154,16 @@ py_reader ...@@ -1111,14 +1154,16 @@ py_reader
英文版API文档: :ref:`api_fluid_layers_py_reader`
.. _cn_api_fluid_layers_random_data_generator: .. _cn_api_fluid_layers_random_data_generator:
random_data_generator random_data_generator
>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.random_data_generator(low, high, shapes, lod_levels, for_parallel=True) .. py:function:: paddle.fluid.layers.random_data_generator(low, high, shapes, lod_levels, for_parallel=True)
...@@ -1151,14 +1196,16 @@ random_data_generator ...@@ -1151,14 +1196,16 @@ random_data_generator
英文版API文档: :ref:`api_fluid_layers_random_data_generator`
.. _cn_api_fluid_layers_read_file: .. _cn_api_fluid_layers_read_file:
read_file read_file
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.read_file(reader) .. py:function:: paddle.fluid.layers.read_file(reader)
...@@ -1186,14 +1233,16 @@ reader也是变量。可以为由fluid.layers.open_files()生成的原始reader ...@@ -1186,14 +1233,16 @@ reader也是变量。可以为由fluid.layers.open_files()生成的原始reader
英文版API文档: :ref:`api_fluid_layers_read_file`
.. _cn_api_fluid_layers_shuffle: .. _cn_api_fluid_layers_shuffle:
shuffle shuffle
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.shuffle(reader, buffer_size) .. py:function:: paddle.fluid.layers.shuffle(reader, buffer_size)
...@@ -1210,7 +1259,9 @@ shuffle ...@@ -1210,7 +1259,9 @@ shuffle
英文版API文档: :ref:`api_fluid_layers_shuffle`
...@@ -1224,7 +1275,7 @@ shuffle ...@@ -1224,7 +1275,7 @@ shuffle
.. _cn_api_fluid_layers_add_position_encoding: .. _cn_api_fluid_layers_add_position_encoding:
add_position_encoding add_position_encoding
>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.add_position_encoding(input, alpha, beta, name=None) .. py:function:: paddle.fluid.layers.add_position_encoding(input, alpha, beta, name=None)
...@@ -1236,9 +1287,9 @@ add_position_encoding ...@@ -1236,9 +1287,9 @@ add_position_encoding
.. math:: .. math::
PE(pos, 2i) = \sin{(pos / 10000^{2i / P})}\\ PE(pos, 2i) &= \sin{(pos / 10000^{2i / P})}\\
PE(pos, 2i + 1) = \cos{(pos / 10000^{2i / P})}\\ PE(pos, 2i + 1) &= \cos{(pos / 10000^{2i / P})}\\
Out(:, pos, i) = \alpha * input(:, pos, i) + \beta * PE(pos, i) Out(:, pos, i) &= \alpha * input(:, pos, i) + \beta * PE(pos, i)
其中: 其中:
- PE(pos, 2i): 偶数位置上数字的增量 - PE(pos, 2i): 偶数位置上数字的增量
...@@ -1257,14 +1308,15 @@ add_position_encoding ...@@ -1257,14 +1308,15 @@ add_position_encoding
英文版API文档: :ref:`api_fluid_layers_add_position_encoding`
.. _cn_api_fluid_layers_affine_channel: .. _cn_api_fluid_layers_affine_channel:
affine_channel affine_channel
>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.affine_channel(x, scale=None, bias=None, data_layout='NCHW', name=None) .. py:function:: paddle.fluid.layers.affine_channel(x, scale=None, bias=None, data_layout='NCHW', name=None)
...@@ -1283,14 +1335,16 @@ affine_channel ...@@ -1283,14 +1335,16 @@ affine_channel
英文版API文档: :ref:`api_fluid_layers_affine_channel`
.. _cn_api_fluid_layers_affine_grid: .. _cn_api_fluid_layers_affine_grid:
affine_grid affine_grid
>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.affine_grid(theta, out_shape, name=None) .. py:function:: paddle.fluid.layers.affine_grid(theta, out_shape, name=None)
...@@ -1387,14 +1441,16 @@ affine_grid ...@@ -1387,14 +1441,16 @@ affine_grid
英文版API文档: :ref:`api_fluid_layers_affine_grid`
.. _cn_api_fluid_layers_autoincreased_step_counter: .. _cn_api_fluid_layers_autoincreased_step_counter:
autoincreased_step_counter autoincreased_step_counter
>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.autoincreased_step_counter(counter_name=None, begin=1, step=1) .. py:function:: paddle.fluid.layers.autoincreased_step_counter(counter_name=None, begin=1, step=1)
...@@ -1418,14 +1474,16 @@ autoincreased_step_counter ...@@ -1418,14 +1474,16 @@ autoincreased_step_counter
英文版API文档: :ref:`api_fluid_layers_autoincreased_step_counter`
.. _cn_api_fluid_layers_batch_norm: .. _cn_api_fluid_layers_batch_norm:
batch_norm batch_norm
>>>>>>>>>>>> -------------------------------
.. 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, fuse_with_relu=False) .. 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, fuse_with_relu=False)
...@@ -1477,14 +1535,16 @@ batch_norm ...@@ -1477,14 +1535,16 @@ batch_norm
英文版API文档: :ref:`api_fluid_layers_batch_norm`
.. _cn_api_fluid_layers_beam_search: .. _cn_api_fluid_layers_beam_search:
beam_search beam_search
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.beam_search(pre_ids, pre_scores, ids, scores, beam_size, end_id, level=0, name=None) .. py:function:: paddle.fluid.layers.beam_search(pre_ids, pre_scores, ids, scores, beam_size, end_id, level=0, name=None)
...@@ -1540,14 +1600,16 @@ beam_search ...@@ -1540,14 +1600,16 @@ beam_search
英文版API文档: :ref:`api_fluid_layers_beam_search`
.. _cn_api_fluid_layers_beam_search_decode: .. _cn_api_fluid_layers_beam_search_decode:
beam_search_decode beam_search_decode
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.beam_search_decode(ids, scores, beam_size, end_id, name=None) .. py:function:: paddle.fluid.layers.beam_search_decode(ids, scores, beam_size, end_id, name=None)
...@@ -1580,14 +1642,16 @@ beam_search_decode ...@@ -1580,14 +1642,16 @@ beam_search_decode
英文版API文档: :ref:`api_fluid_layers_beam_search_decode`
.. _cn_api_fluid_layers_bilinear_tensor_product: .. _cn_api_fluid_layers_bilinear_tensor_product:
bilinear_tensor_product bilinear_tensor_product
>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.bilinear_tensor_product(x, y, size, act=None, name=None, param_attr=None, bias_attr=None) .. py:function:: paddle.fluid.layers.bilinear_tensor_product(x, y, size, act=None, name=None, param_attr=None, bias_attr=None)
...@@ -1625,14 +1689,16 @@ bilinear_tensor_product ...@@ -1625,14 +1689,16 @@ bilinear_tensor_product
英文版API文档: :ref:`api_fluid_layers_bilinear_tensor_product`
.. _cn_api_fluid_layers_brelu: .. _cn_api_fluid_layers_brelu:
brelu brelu
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.brelu(x, t_min=0.0, t_max=24.0, name=None) .. py:function:: paddle.fluid.layers.brelu(x, t_min=0.0, t_max=24.0, name=None)
...@@ -1649,14 +1715,16 @@ BRelu 激活函数 ...@@ -1649,14 +1715,16 @@ BRelu 激活函数
英文版API文档: :ref:`api_fluid_layers_brelu`
.. _cn_api_fluid_layers_chunk_eval: .. _cn_api_fluid_layers_chunk_eval:
chunk_eval chunk_eval
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.chunk_eval(input, label, chunk_scheme, num_chunk_types, excluded_chunk_types=None) .. py:function:: paddle.fluid.layers.chunk_eval(input, label, chunk_scheme, num_chunk_types, excluded_chunk_types=None)
...@@ -1743,14 +1811,16 @@ num_tag_type是标注规则中的标签类型数,num_chunk_type是块类型数 ...@@ -1743,14 +1811,16 @@ num_tag_type是标注规则中的标签类型数,num_chunk_type是块类型数
英文版API文档: :ref:`api_fluid_layers_chunk_eval`
.. _cn_api_fluid_layers_clip: .. _cn_api_fluid_layers_clip:
clip clip
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.clip(x, min, max, name=None) .. py:function:: paddle.fluid.layers.clip(x, min, max, name=None)
...@@ -1774,14 +1844,16 @@ clip运算符限制给定输入的值在一个区间内。间隔使用参数“m ...@@ -1774,14 +1844,16 @@ clip运算符限制给定输入的值在一个区间内。间隔使用参数“m
英文版API文档: :ref:`api_fluid_layers_clip`
.. _cn_api_fluid_layers_clip_by_norm: .. _cn_api_fluid_layers_clip_by_norm:
clip_by_norm clip_by_norm
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.clip_by_norm(x, max_norm, name=None) .. py:function:: paddle.fluid.layers.clip_by_norm(x, max_norm, name=None)
...@@ -1814,14 +1886,16 @@ ClipByNorm算子 ...@@ -1814,14 +1886,16 @@ ClipByNorm算子
英文版API文档: :ref:`api_fluid_layers_clip_by_norm`
.. _cn_api_fluid_layers_conv2d: .. _cn_api_fluid_layers_conv2d:
conv2d conv2d
>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -1893,14 +1967,16 @@ conv2d ...@@ -1893,14 +1967,16 @@ conv2d
英文版API文档: :ref:`api_fluid_layers_conv2d`
.. _cn_api_fluid_layers_conv2d_transpose: .. _cn_api_fluid_layers_conv2d_transpose:
conv2d_transpose conv2d_transpose
>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -1988,14 +2064,16 @@ conv2d_transpose ...@@ -1988,14 +2064,16 @@ conv2d_transpose
英文版API文档: :ref:`api_fluid_layers_conv2d_transpose`
.. _cn_api_fluid_layers_conv3d: .. _cn_api_fluid_layers_conv3d:
conv3d conv3d
>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -2066,14 +2144,16 @@ conv3d ...@@ -2066,14 +2144,16 @@ conv3d
英文版API文档: :ref:`api_fluid_layers_conv3d`
.. _cn_api_fluid_layers_conv3d_transpose: .. _cn_api_fluid_layers_conv3d_transpose:
conv3d_transpose conv3d_transpose
>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -2169,14 +2249,16 @@ conv3d_transpose ...@@ -2169,14 +2249,16 @@ conv3d_transpose
英文版API文档: :ref:`api_fluid_layers_conv3d_transpose`
.. _cn_api_fluid_layers_cos_sim: .. _cn_api_fluid_layers_cos_sim:
cos_sim cos_sim
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.cos_sim(X, Y) .. py:function:: paddle.fluid.layers.cos_sim(X, Y)
...@@ -2200,14 +2282,16 @@ cos_sim ...@@ -2200,14 +2282,16 @@ cos_sim
英文版API文档: :ref:`api_fluid_layers_cos_sim`
.. _cn_api_fluid_layers_crf_decoding: .. _cn_api_fluid_layers_crf_decoding:
crf_decoding crf_decoding
>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.crf_decoding(input, param_attr, label=None) .. py:function:: paddle.fluid.layers.crf_decoding(input, param_attr, label=None)
...@@ -2244,14 +2328,16 @@ crf_decoding ...@@ -2244,14 +2328,16 @@ crf_decoding
英文版API文档: :ref:`api_fluid_layers_crf_decoding`
.. _cn_api_fluid_layers_crop: .. _cn_api_fluid_layers_crop:
crop crop
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.crop(x, shape=None, offsets=None, name=None) .. py:function:: paddle.fluid.layers.crop(x, shape=None, offsets=None, name=None)
...@@ -2317,14 +2403,16 @@ crop ...@@ -2317,14 +2403,16 @@ crop
英文版API文档: :ref:`api_fluid_layers_crop`
.. _cn_api_fluid_layers_cross_entropy: .. _cn_api_fluid_layers_cross_entropy:
cross_entropy cross_entropy
>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.cross_entropy(input, label, soft_label=False, ignore_index=-100) .. py:function:: paddle.fluid.layers.cross_entropy(input, label, soft_label=False, ignore_index=-100)
...@@ -2382,14 +2470,16 @@ cross_entropy ...@@ -2382,14 +2470,16 @@ cross_entropy
英文版API文档: :ref:`api_fluid_layers_cross_entropy`
.. _cn_api_fluid_layers_ctc_greedy_decoder: .. _cn_api_fluid_layers_ctc_greedy_decoder:
ctc_greedy_decoder ctc_greedy_decoder
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.ctc_greedy_decoder(input, blank, name=None) .. py:function:: paddle.fluid.layers.ctc_greedy_decoder(input, blank, name=None)
...@@ -2448,14 +2538,16 @@ A simple example as below: ...@@ -2448,14 +2538,16 @@ A simple example as below:
英文版API文档: :ref:`api_fluid_layers_ctc_greedy_decoder`
.. _cn_api_fluid_layers_dice_loss: .. _cn_api_fluid_layers_dice_loss:
dice_loss dice_loss
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.dice_loss(input, label, epsilon=1e-05) .. py:function:: paddle.fluid.layers.dice_loss(input, label, epsilon=1e-05)
...@@ -2488,14 +2580,16 @@ dice_loss定义为: ...@@ -2488,14 +2580,16 @@ dice_loss定义为:
英文版API文档: :ref:`api_fluid_layers_dice_loss`
.. _cn_api_fluid_layers_dropout: .. _cn_api_fluid_layers_dropout:
dropout dropout
>>>>>>> -------------------------------
.. py:function:: Paddle.fluid.layers.dropout(x,dropout_prob,is_test=False,seed=None,name=None,dropout_implementation='downgrade_in_infer') .. py:function:: Paddle.fluid.layers.dropout(x,dropout_prob,is_test=False,seed=None,name=None,dropout_implementation='downgrade_in_infer')
...@@ -2535,14 +2629,16 @@ dropout操作 ...@@ -2535,14 +2629,16 @@ dropout操作
英文版API文档: :ref:`api_fluid_layers_dropout`
.. _cn_api_fluid_layers_dynamic_gru: .. _cn_api_fluid_layers_dynamic_gru:
dynamic_gru dynamic_gru
>>>>>>>>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -2613,14 +2709,16 @@ dynamic_gru ...@@ -2613,14 +2709,16 @@ dynamic_gru
英文版API文档: :ref:`api_fluid_layers_dynamic_gru`
.. _cn_api_fluid_layers_dynamic_lstm: .. _cn_api_fluid_layers_dynamic_lstm:
dynamic_lstm dynamic_lstm
>>>>>>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -2705,14 +2803,16 @@ W 代表了权重矩阵(weight matrix),例如 :math:`W_{xi}` 是从输入门 ...@@ -2705,14 +2803,16 @@ W 代表了权重矩阵(weight matrix),例如 :math:`W_{xi}` 是从输入门
英文版API文档: :ref:`api_fluid_layers_dynamic_lstm`
.. _cn_api_fluid_layers_dynamic_lstmp: .. _cn_api_fluid_layers_dynamic_lstmp:
dynamic_lstmp dynamic_lstmp
>>>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
动态LSTMP层(Dynamic LSTMP Layer) 动态LSTMP层(Dynamic LSTMP Layer)
...@@ -2810,7 +2910,9 @@ LSTMP层(具有循环映射的LSTM)在LSTM层后有一个分离的映射层, ...@@ -2810,7 +2910,9 @@ LSTMP层(具有循环映射的LSTM)在LSTM层后有一个分离的映射层,
英文版API文档: :ref:`api_fluid_layers_dynamic_lstmp`
...@@ -2818,7 +2920,7 @@ LSTMP层(具有循环映射的LSTM)在LSTM层后有一个分离的映射层, ...@@ -2818,7 +2920,7 @@ LSTMP层(具有循环映射的LSTM)在LSTM层后有一个分离的映射层,
edit_distance edit_distance
>>>>>>>>>>>>>> -------------------------------
.. py:function:: Paddle.fluid.layers.edit_distance(input,label,normalized=True,ignored_tokens=None) .. py:function:: Paddle.fluid.layers.edit_distance(input,label,normalized=True,ignored_tokens=None)
...@@ -2855,14 +2957,16 @@ edit_distance ...@@ -2855,14 +2957,16 @@ edit_distance
英文版API文档: :ref:`api_fluid_layers_edit_distance`
.. _cn_api_fluid_layers_elementwise_add: .. _cn_api_fluid_layers_elementwise_add:
elementwise_add elementwise_add
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_add(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_add(x, y, axis=-1, act=None, name=None)
...@@ -2909,14 +3013,16 @@ elementwise_add ...@@ -2909,14 +3013,16 @@ elementwise_add
英文版API文档: :ref:`api_fluid_layers_elementwise_add`
.. _cn_api_fluid_layers_elementwise_div: .. _cn_api_fluid_layers_elementwise_div:
elementwise_div elementwise_div
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_div(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_div(x, y, axis=-1, act=None, name=None)
...@@ -2965,14 +3071,16 @@ elementwise_div ...@@ -2965,14 +3071,16 @@ elementwise_div
英文版API文档: :ref:`api_fluid_layers_elementwise_div`
.. _cn_api_fluid_layers_elementwise_max: .. _cn_api_fluid_layers_elementwise_max:
elementwise_max elementwise_max
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_max(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_max(x, y, axis=-1, act=None, name=None)
最大元素算子 最大元素算子
...@@ -3020,14 +3128,16 @@ elementwise_max ...@@ -3020,14 +3128,16 @@ elementwise_max
英文版API文档: :ref:`api_fluid_layers_elementwise_max`
.. _cn_api_fluid_layers_elementwise_min: .. _cn_api_fluid_layers_elementwise_min:
elementwise_min elementwise_min
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_min(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_min(x, y, axis=-1, act=None, name=None)
...@@ -3076,14 +3186,16 @@ elementwise_min ...@@ -3076,14 +3186,16 @@ elementwise_min
英文版API文档: :ref:`api_fluid_layers_elementwise_min`
.. _cn_api_fluid_layers_elementwise_mul: .. _cn_api_fluid_layers_elementwise_mul:
elementwise_mul elementwise_mul
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_mul(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_mul(x, y, axis=-1, act=None, name=None)
...@@ -3131,14 +3243,16 @@ elementwise_mul ...@@ -3131,14 +3243,16 @@ elementwise_mul
英文版API文档: :ref:`api_fluid_layers_elementwise_mul`
.. _cn_api_fluid_layers_elementwise_pow: .. _cn_api_fluid_layers_elementwise_pow:
elementwise_pow elementwise_pow
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_pow(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_pow(x, y, axis=-1, act=None, name=None)
...@@ -3187,14 +3301,16 @@ elementwise_pow ...@@ -3187,14 +3301,16 @@ elementwise_pow
英文版API文档: :ref:`api_fluid_layers_elementwise_pow`
.. _cn_api_fluid_layers_elementwise_sub: .. _cn_api_fluid_layers_elementwise_sub:
elementwise_sub elementwise_sub
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elementwise_sub(x, y, axis=-1, act=None, name=None) .. py:function:: paddle.fluid.layers.elementwise_sub(x, y, axis=-1, act=None, name=None)
...@@ -3242,14 +3358,16 @@ elementwise_sub ...@@ -3242,14 +3358,16 @@ elementwise_sub
英文版API文档: :ref:`api_fluid_layers_elementwise_sub`
.. _cn_api_fluid_layers_elu: .. _cn_api_fluid_layers_elu:
elu elu
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.elu(x, alpha=1.0, name=None) .. py:function:: paddle.fluid.layers.elu(x, alpha=1.0, name=None)
...@@ -3271,14 +3389,16 @@ ELU激活层(ELU Activation Operator) ...@@ -3271,14 +3389,16 @@ ELU激活层(ELU Activation Operator)
英文版API文档: :ref:`api_fluid_layers_elu`
.. _cn_api_fluid_layers_embedding: .. _cn_api_fluid_layers_embedding:
embedding embedding
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.embedding(input, size, is_sparse=False, is_distributed=False, padding_idx=None, param_attr=None, dtype='float32') .. py:function:: paddle.fluid.layers.embedding(input, size, is_sparse=False, is_distributed=False, padding_idx=None, param_attr=None, dtype='float32')
...@@ -3310,14 +3430,16 @@ embedding ...@@ -3310,14 +3430,16 @@ embedding
英文版API文档: :ref:`api_fluid_layers_embedding`
.. _cn_api_fluid_layers_expand: .. _cn_api_fluid_layers_expand:
expand expand
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.expand(x, expand_times, name=None) .. py:function:: paddle.fluid.layers.expand(x, expand_times, name=None)
...@@ -3359,14 +3481,16 @@ expand运算会按给定的次数对输入各维度进行复制(tile)运算 ...@@ -3359,14 +3481,16 @@ expand运算会按给定的次数对输入各维度进行复制(tile)运算
英文版API文档: :ref:`api_fluid_layers_expand`
.. _cn_api_fluid_layers_fc: .. _cn_api_fluid_layers_fc:
fc fc
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.fc(input, size, num_flatten_dims=1, param_attr=None, bias_attr=None, act=None, is_test=False, name=None) .. py:function:: paddle.fluid.layers.fc(input, size, num_flatten_dims=1, param_attr=None, bias_attr=None, act=None, is_test=False, name=None)
...@@ -3422,14 +3546,16 @@ fc ...@@ -3422,14 +3546,16 @@ fc
英文版API文档: :ref:`api_fluid_layers_fc`
.. _cn_api_fluid_layers_flatten: .. _cn_api_fluid_layers_flatten:
flatten flatten
>>>>>>>>>> -------------------------------
将输入张量压扁成二维矩阵 将输入张量压扁成二维矩阵
...@@ -3476,14 +3602,16 @@ flatten ...@@ -3476,14 +3602,16 @@ flatten
英文版API文档: :ref:`api_fluid_layers_flatten`
.. _cn_api_fluid_layers_gather: .. _cn_api_fluid_layers_gather:
gather gather
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.gather(input, index) .. py:function:: paddle.fluid.layers.gather(input, index)
...@@ -3522,14 +3650,16 @@ gather ...@@ -3522,14 +3650,16 @@ gather
英文版API文档: :ref:`api_fluid_layers_gather`
.. _cn_api_fluid_layers_gaussian_random: .. _cn_api_fluid_layers_gaussian_random:
gaussian_random gaussian_random
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.gaussian_random(shape, mean=0.0, std=1.0, seed=0, dtype='float32') .. py:function:: paddle.fluid.layers.gaussian_random(shape, mean=0.0, std=1.0, seed=0, dtype='float32')
...@@ -3551,14 +3681,16 @@ gaussian_random算子。 ...@@ -3551,14 +3681,16 @@ gaussian_random算子。
英文版API文档: :ref:`api_fluid_layers_gaussian_random`
.. _cn_api_fluid_layers_gaussian_random_batch_size_like: .. _cn_api_fluid_layers_gaussian_random_batch_size_like:
gaussian_random_batch_size_like gaussian_random_batch_size_like
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.gaussian_random_batch_size_like(input, shape, input_dim_idx=0, output_dim_idx=0, mean=0.0, std=1.0, seed=0, dtype='float32') .. py:function:: paddle.fluid.layers.gaussian_random_batch_size_like(input, shape, input_dim_idx=0, output_dim_idx=0, mean=0.0, std=1.0, seed=0, dtype='float32')
...@@ -3581,14 +3713,43 @@ gaussian_random_batch_size_like ...@@ -3581,14 +3713,43 @@ gaussian_random_batch_size_like
英文版API文档: :ref:`api_fluid_layers_gaussian_random_batch_size_like`
.. _cn_api_fluid_layers_get_tensor_from_selected_rows:
get_tensor_from_selected_rows
-------------------------------
.. py:function:: paddle.fluid.layers.get_tensor_from_selected_rows(x, name=None)
:code:`Get Tensor From Selected Rows` 用于从选中行(Selected Rows)中获取张量
参数:
- **x** (Variable) - 输入,类型是SelectedRows
- **name** (basestring|None) - 输出的名称
返回: 输出类型为LoDTensor
返回类型: out(Variable)
.. _cn_api_fluid_layers_grid_sampler: .. _cn_api_fluid_layers_grid_sampler:
grid_sampler grid_sampler
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.grid_sampler(x, grid, name=None) .. py:function:: paddle.fluid.layers.grid_sampler(x, grid, name=None)
...@@ -3656,14 +3817,16 @@ step 2: ...@@ -3656,14 +3817,16 @@ step 2:
英文版API文档: :ref:`api_fluid_layers_grid_sampler`
.. _cn_api_fluid_layers_group_norm: .. _cn_api_fluid_layers_group_norm:
group_norm group_norm
>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -3692,14 +3855,16 @@ group_norm ...@@ -3692,14 +3855,16 @@ group_norm
英文版API文档: :ref:`api_fluid_layers_group_norm`
.. _cn_api_fluid_layers_gru_unit: .. _cn_api_fluid_layers_gru_unit:
gru_unit gru_unit
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.gru_unit(input, hidden, size, param_attr=None, bias_attr=None, activation='tanh', gate_activation='sigmoid') .. py:function:: paddle.fluid.layers.gru_unit(input, hidden, size, param_attr=None, bias_attr=None, activation='tanh', gate_activation='sigmoid')
...@@ -3758,14 +3923,16 @@ GRU单元的输入包括 :math:`z_t` , :math:`h_{t-1}` 。在上述等式中 ...@@ -3758,14 +3923,16 @@ GRU单元的输入包括 :math:`z_t` , :math:`h_{t-1}` 。在上述等式中
英文版API文档: :ref:`api_fluid_layers_gru_unit`
.. _cn_api_fluid_layers_hard_sigmoid: .. _cn_api_fluid_layers_hard_sigmoid:
hard_sigmoid hard_sigmoid
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.hard_sigmoid(x, slope=0.2, offset=0.5, name=None) .. py:function:: paddle.fluid.layers.hard_sigmoid(x, slope=0.2, offset=0.5, name=None)
...@@ -3787,14 +3954,16 @@ sigmoid的分段线性逼近(https://arxiv.org/abs/1603.00391),比sigmoid快 ...@@ -3787,14 +3954,16 @@ sigmoid的分段线性逼近(https://arxiv.org/abs/1603.00391),比sigmoid快
英文版API文档: :ref:`api_fluid_layers_hard_sigmoid`
.. _cn_api_fluid_layers_hash: .. _cn_api_fluid_layers_hash:
hash hash
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.hash(input, hash_size, num_hash=1, name=None) .. py:function:: paddle.fluid.layers.hash(input, hash_size, num_hash=1, name=None)
...@@ -3858,14 +4027,16 @@ hash ...@@ -3858,14 +4027,16 @@ hash
英文版API文档: :ref:`api_fluid_layers_hash`
.. _cn_api_fluid_layers_hsigmoid: .. _cn_api_fluid_layers_hsigmoid:
hsigmoid hsigmoid
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.hsigmoid(input, label, num_functiones, param_attr=None, bias_attr=None, name=None) .. py:function:: paddle.fluid.layers.hsigmoid(input, label, num_functiones, param_attr=None, bias_attr=None, name=None)
...@@ -3897,14 +4068,16 @@ hsigmoid ...@@ -3897,14 +4068,16 @@ hsigmoid
英文版API文档: :ref:`api_fluid_layers_hsigmoid`
.. _cn_api_fluid_layers_im2sequence: .. _cn_api_fluid_layers_im2sequence:
im2sequence im2sequence
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.im2sequence(input, filter_size=1, stride=1, padding=0, input_image_size=None, out_stride=1, name=None) .. py:function:: paddle.fluid.layers.im2sequence(input, filter_size=1, stride=1, padding=0, input_image_size=None, out_stride=1, name=None)
...@@ -3983,14 +4156,16 @@ im2sequence ...@@ -3983,14 +4156,16 @@ im2sequence
英文版API文档: :ref:`api_fluid_layers_im2sequence`
.. _cn_api_fluid_layers_image_resize: .. _cn_api_fluid_layers_image_resize:
image_resize image_resize
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.image_resize(input, out_shape=None, scale=None, name=None, resample='BILINEAR') .. py:function:: paddle.fluid.layers.image_resize(input, out_shape=None, scale=None, name=None, resample='BILINEAR')
...@@ -4023,14 +4198,16 @@ image_resize ...@@ -4023,14 +4198,16 @@ image_resize
英文版API文档: :ref:`api_fluid_layers_image_resize`
.. _cn_api_fluid_layers_image_resize_short: .. _cn_api_fluid_layers_image_resize_short:
image_resize_short image_resize_short
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.image_resize_short(input, out_short_len, resample='BILINEAR') .. py:function:: paddle.fluid.layers.image_resize_short(input, out_short_len, resample='BILINEAR')
...@@ -4049,14 +4226,16 @@ image_resize_short ...@@ -4049,14 +4226,16 @@ image_resize_short
英文版API文档: :ref:`api_fluid_layers_image_resize_short`
.. _cn_api_fluid_layers_l2_normalize: .. _cn_api_fluid_layers_l2_normalize:
l2_normalize l2_normalize
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.l2_normalize(x,axis,epsilon=1e-12,name=None) .. py:function:: paddle.fluid.layers.l2_normalize(x,axis,epsilon=1e-12,name=None)
...@@ -4091,14 +4270,16 @@ L2正则(L2 normalize Layer) ...@@ -4091,14 +4270,16 @@ L2正则(L2 normalize Layer)
英文版API文档: :ref:`api_fluid_layers_l2_normalize`
.. _cn_api_fluid_layers_label_smooth: .. _cn_api_fluid_layers_label_smooth:
label_smooth label_smooth
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.label_smooth(label, prior_dist=None, epsilon=0.1, dtype='float32', name=None) .. py:function:: paddle.fluid.layers.label_smooth(label, prior_dist=None, epsilon=0.1, dtype='float32', name=None)
...@@ -4138,14 +4319,16 @@ label_smooth ...@@ -4138,14 +4319,16 @@ label_smooth
英文版API文档: :ref:`api_fluid_layers_label_smooth`
.. _cn_api_fluid_layers_layer_norm: .. _cn_api_fluid_layers_layer_norm:
layer_norm layer_norm
>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -4191,14 +4374,16 @@ layer_norm ...@@ -4191,14 +4374,16 @@ layer_norm
英文版API文档: :ref:`api_fluid_layers_layer_norm`
.. _cn_api_fluid_layers_leaky_relu: .. _cn_api_fluid_layers_leaky_relu:
leaky_relu leaky_relu
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.leaky_relu(x, alpha=0.02, name=None) .. py:function:: paddle.fluid.layers.leaky_relu(x, alpha=0.02, name=None)
...@@ -4213,14 +4398,16 @@ LeakyRelu 激活函数 ...@@ -4213,14 +4398,16 @@ LeakyRelu 激活函数
英文版API文档: :ref:`api_fluid_layers_leaky_relu`
.. _cn_api_fluid_layers_linear_chain_crf: .. _cn_api_fluid_layers_linear_chain_crf:
linear_chain_crf linear_chain_crf
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.linear_chain_crf(input, label, param_attr=None) .. py:function:: paddle.fluid.layers.linear_chain_crf(input, label, param_attr=None)
...@@ -4282,14 +4469,16 @@ linear_chain_crf ...@@ -4282,14 +4469,16 @@ linear_chain_crf
英文版API文档: :ref:`api_fluid_layers_linear_chain_crf`
.. _cn_api_fluid_layers_lod_reset: .. _cn_api_fluid_layers_lod_reset:
lod_reset lod_reset
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.lod_reset(x, y=None, target_lod=None) .. py:function:: paddle.fluid.layers.lod_reset(x, y=None, target_lod=None)
...@@ -4367,14 +4556,16 @@ lod_reset ...@@ -4367,14 +4556,16 @@ lod_reset
英文版API文档: :ref:`api_fluid_layers_lod_reset`
.. _cn_api_fluid_layers_log: .. _cn_api_fluid_layers_log:
log log
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.log(x, name=None) .. py:function:: paddle.fluid.layers.log(x, name=None)
...@@ -4404,14 +4595,16 @@ log ...@@ -4404,14 +4595,16 @@ log
英文版API文档: :ref:`api_fluid_layers_log`
.. _cn_api_fluid_layers_log_loss: .. _cn_api_fluid_layers_log_loss:
log_loss log_loss
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.log_loss(input, label, epsilon=0.0001, name=None) .. py:function:: paddle.fluid.layers.log_loss(input, label, epsilon=0.0001, name=None)
...@@ -4446,14 +4639,16 @@ log_loss ...@@ -4446,14 +4639,16 @@ log_loss
英文版API文档: :ref:`api_fluid_layers_log_loss`
.. _cn_api_fluid_layers_logical_and: .. _cn_api_fluid_layers_logical_and:
logical_and logical_and
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.logical_and(x, y, out=None, name=None) .. py:function:: paddle.fluid.layers.logical_and(x, y, out=None, name=None)
...@@ -4477,14 +4672,16 @@ logical_and算子 ...@@ -4477,14 +4672,16 @@ logical_and算子
英文版API文档: :ref:`api_fluid_layers_logical_and`
.. _cn_api_fluid_layers_logical_not: .. _cn_api_fluid_layers_logical_not:
logical_not logical_not
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.logical_not(x, out=None, name=None) .. py:function:: paddle.fluid.layers.logical_not(x, out=None, name=None)
...@@ -4507,14 +4704,16 @@ logical_not算子 ...@@ -4507,14 +4704,16 @@ logical_not算子
英文版API文档: :ref:`api_fluid_layers_logical_not`
.. _cn_api_fluid_layers_logical_or: .. _cn_api_fluid_layers_logical_or:
logical_or logical_or
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.logical_or(x, y, out=None, name=None) .. py:function:: paddle.fluid.layers.logical_or(x, y, out=None, name=None)
...@@ -4538,14 +4737,16 @@ logical_or算子 ...@@ -4538,14 +4737,16 @@ logical_or算子
英文版API文档: :ref:`api_fluid_layers_logical_or`
.. _cn_api_fluid_layers_logical_xor: .. _cn_api_fluid_layers_logical_xor:
logical_xor logical_xor
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.logical_xor(x, y, out=None, name=None) .. py:function:: paddle.fluid.layers.logical_xor(x, y, out=None, name=None)
...@@ -4569,14 +4770,16 @@ logical_xor算子 ...@@ -4569,14 +4770,16 @@ logical_xor算子
英文版API文档: :ref:`api_fluid_layers_logical_xor`
.. _cn_api_fluid_layers_lrn: .. _cn_api_fluid_layers_lrn:
lrn lrn
>>>> -------------------------------
.. py:function:: paddle.fluid.layers.lrn(input, n=5, k=1.0, alpha=0.0001, beta=0.75, name=None) .. py:function:: paddle.fluid.layers.lrn(input, n=5, k=1.0, alpha=0.0001, beta=0.75, name=None)
...@@ -4623,14 +4826,93 @@ lrn ...@@ -4623,14 +4826,93 @@ lrn
英文版API文档: :ref:`api_fluid_layers_lrn`
.. _cn_api_fluid_layers_lstm:
lstm
-------------------------------
.. 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)
如果您的设备是GPU,本op将使用cudnn LSTM实现
一个没有 peephole 连接的四门长短期记忆网络。在前向传播中,给定迭代的输出ht和单元输出ct可由递归输入ht-1、单元输入ct-1和上一层输入xt计算,给定矩阵W、R和bias bW, bR由下式计算:
.. math::
i_t = \sigma(W_{ix}x_{t} + W_{ih}h_{t-1} + bx_i + bh_i)\\
f_t = \sigma(W_{fx}x_{t} + W_{fh}h_{t-1} + bx_f + bh_f)\\
o_t = \sigma(W_{ox}x_{t} + W_{oh}h_{t-1} + bx_o + bh_o)\\
\tilde{c_t} = tanh(W_{cx}x_t + W_{ch}h_{t-1} + bx_c + bh_c)\\
c_t = f_t \odot c_{t-1} + i_t \odot \tilde{c_t}\\
h_t = o_t \odot tanh(c_t)
公式中:
- W 项表示权重矩阵(e.g. :math:`W_{ix}` 是从输入门到输入的权重矩阵)
- b 项表示偏差向量( :math:`b_{xi}` 和 :math:`b_{hi}` 是输入门的偏差向量)
- sigmoid 是 logistic sigmoid 函数
- i、f、o、c 分别为输入门、遗忘门、输出门和激活向量,它们的大小与 cell 输出激活向量h相同。
- :math:`\odot` 是向量的元素乘积
- tanh是激活函数
- :math:`\tilde{c_t}` 也称为候选隐藏状态,它是根据当前输入和之前的隐藏状态来计算的
- sigmoid的计算公式为:sigmoid(x) = 1 / (1 + e^-x)
- \*表示点乘,X表示矩阵乘
参数:
- **input** (Variable) - LSTM 输入张量,形状必须为(seq_len x,batch_size,x,input_size)
- **init_h** (Variable) – LSTM的初始隐藏状态,是一个有形状的张量(num_layers,x,batch_size,x,hidden_size)如果is_bidirec = True,形状应该是(num_layers*2,x, batch_size, x, hidden_size)
- **init_c** (Variable) - LSTM的初始状态。这是一个有形状的张量(num_layers, x, batch_size, x, hidden_size)如果is_bidirec = True,形状应该是(num_layers*2, x, batch_size, x, hidden_size)
- **max_len** (int) – LSTM的最大长度。输入张量的第一个 dim 不能大于max_len
- **hidden_size** (int) - LSTM的隐藏大小
- **num_layers** (int) – LSTM的总层数
- **dropout_prob** (float|0.0) – dropout prob,dropout 只在 rnn 层之间工作,而不是在时间步骤之间。dropout 不作用于最后的 rnn 层的 rnn 输出中
- **is_bidirec** (bool) – 是否是双向的
- **is_test** (bool) – 是否在测试阶段
- **name** (str|None) - 此层的名称(可选)。如果没有设置,该层将被自动命名。
- **default_initializer** (Initialize|None) – 在哪里使用初始化器初始化权重,如果没有设置,将进行默认初始化。
- **seed** (int) – LSTM中dropout的Seed,如果是-1,dropout将使用随机Seed
返回:
- LSTM hidden的结果:形状(seq_len x batch_size x hidden_size)如果is_bidirec设置为True,形状为(seq_len x batch_sze hidden_size * 2)
- last_h(Tensor): LSTM最后一步的隐藏状态,形状为(num_layers x batch_size x hidden_size);如果is_bidirec设置为True,形状为(num_layers*2 x batch_size x hidden_size)
- last_c(Tensor): LSTM最后一步的cell状态,形状为(num_layers x batch_size x hidden_size);如果is_bidirec设置为True,形状为(num_layers*2 x batch_size x hidden_size)
**代码示例:**
.. code-block:: python
input = embedding
batch_size = 20
max_len = 100
dropout_prob = 0.2
input_size = 100
hidden_size = 150
num_layers = 1
init_hidden1 = layers.fill_constant( [num_layers, batch_size, hidden_size], 'float32', 0.0, stop_grad=False)
init_cell1 = layers.fill_constant( [num_layers, batch_size, hidden_size], 'float32', 0.0, stop_grad=False)
rnn_out, last_h, last_c = layers.lstm( input, init_h, init_c, max_len, dropout_prob, input_size, hidden_size, num_layers)
.. _cn_api_fluid_layers_lstm_unit: .. _cn_api_fluid_layers_lstm_unit:
lstm_unit lstm_unit
>>>>>>>>>>>>> -------------------------------
.. 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) .. 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)
...@@ -4691,14 +4973,16 @@ lstm单元的输入包括 :math:`x_{t}` , :math:`h_{t-1}` 和 :math:`c_{t-1}` ...@@ -4691,14 +4973,16 @@ lstm单元的输入包括 :math:`x_{t}` , :math:`h_{t-1}` 和 :math:`c_{t-1}`
英文版API文档: :ref:`api_fluid_layers_lstm_unit`
.. _cn_api_fluid_layers_margin_rank_loss: .. _cn_api_fluid_layers_margin_rank_loss:
margin_rank_loss margin_rank_loss
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.margin_rank_loss(label, left, right, margin=0.1, name=None) .. py:function:: paddle.fluid.layers.margin_rank_loss(label, left, right, margin=0.1, name=None)
...@@ -4737,7 +5021,9 @@ margin rank loss(差距排序损失)层。在排序问题中,它可以比 ...@@ -4737,7 +5021,9 @@ margin rank loss(差距排序损失)层。在排序问题中,它可以比
英文版API文档: :ref:`api_fluid_layers_margin_rank_loss`
...@@ -4746,7 +5032,7 @@ margin rank loss(差距排序损失)层。在排序问题中,它可以比 ...@@ -4746,7 +5032,7 @@ margin rank loss(差距排序损失)层。在排序问题中,它可以比
matmul matmul
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.matmul(x, y, transpose_x=False, transpose_y=False, alpha=1.0, name=None) .. py:function:: paddle.fluid.layers.matmul(x, y, transpose_x=False, transpose_y=False, alpha=1.0, name=None)
...@@ -4804,14 +5090,16 @@ matmul ...@@ -4804,14 +5090,16 @@ matmul
英文版API文档: :ref:`api_fluid_layers_matmul`
.. _cn_api_fluid_layers_maxout: .. _cn_api_fluid_layers_maxout:
maxout maxout
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.maxout(x, groups, name=None) .. py:function:: paddle.fluid.layers.maxout(x, groups, name=None)
...@@ -4843,14 +5131,16 @@ maxout ...@@ -4843,14 +5131,16 @@ maxout
英文版API文档: :ref:`api_fluid_layers_maxout`
.. _cn_api_fluid_layers_mean: .. _cn_api_fluid_layers_mean:
mean mean
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.mean(x, name=None) .. py:function:: paddle.fluid.layers.mean(x, name=None)
...@@ -4867,14 +5157,16 @@ mean算子计算X中所有元素的平均值 ...@@ -4867,14 +5157,16 @@ mean算子计算X中所有元素的平均值
英文版API文档: :ref:`api_fluid_layers_mean`
.. _cn_api_fluid_layers_mean_iou: .. _cn_api_fluid_layers_mean_iou:
mean_iou mean_iou
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.mean_iou(input, label, num_functiones) .. py:function:: paddle.fluid.layers.mean_iou(input, label, num_functiones)
...@@ -4901,14 +5193,62 @@ mean_iou ...@@ -4901,14 +5193,62 @@ mean_iou
英文版API文档: :ref:`api_fluid_layers_mean_iou`
.. _cn_api_fluid_layers_merge_selected_rows:
merge_selected_rows
-------------------------------
.. py:function:: paddle.fluid.layers.merge_selected_rows(x, name=None)
**实现合并选中行(row)操作**
该运算用于合并(值相加)输入张量中重复的行。输出行没有重复的行,并且按值从小到大顺序重新对行排序。
::
例如:
输入:
X.rows = [0, 5, 5, 4, 19]
X.height = 20
X.value = [[1, 1] [2, 2] [3, 3] [4, 4] [6, 6]]
输出:
Out.row is [0, 4, 5, 19]
Out.height is 20
Out.value is: [[1, 1] [4, 4] [5, 5] [6, 6]]
参数:
- x (Variable) – 输入类型为SelectedRows, 选中行有可能重复
- name (basestring|None) – 输出变量的命名
返回: 输出类型为SelectedRows,并且选中行不会重复
返回类型: 变量(Variable)
.. _cn_api_fluid_layers_mul: .. _cn_api_fluid_layers_mul:
mul mul
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.mul(x, y, x_num_col_dims=1, y_num_col_dims=1, name=None) .. py:function:: paddle.fluid.layers.mul(x, y, x_num_col_dims=1, y_num_col_dims=1, name=None)
...@@ -4935,14 +5275,16 @@ mul算子 ...@@ -4935,14 +5275,16 @@ mul算子
英文版API文档: :ref:`api_fluid_layers_mul`
.. _cn_api_fluid_layers_multiplex: .. _cn_api_fluid_layers_multiplex:
multiplex multiplex
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.multiplex(inputs, index) .. py:function:: paddle.fluid.layers.multiplex(inputs, index)
...@@ -4989,14 +5331,16 @@ multiplex ...@@ -4989,14 +5331,16 @@ multiplex
英文版API文档: :ref:`api_fluid_layers_multiplex`
.. _cn_api_fluid_layers_nce: .. _cn_api_fluid_layers_nce:
nce nce
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.nce(input, label, num_total_functiones, sample_weight=None, param_attr=None, bias_attr=None, num_neg_samples=None, name=None) .. py:function:: paddle.fluid.layers.nce(input, label, num_total_functiones, sample_weight=None, param_attr=None, bias_attr=None, num_neg_samples=None, name=None)
...@@ -5050,14 +5394,16 @@ nce ...@@ -5050,14 +5394,16 @@ nce
英文版API文档: :ref:`api_fluid_layers_nce`
.. _cn_api_fluid_layers_one_hot: .. _cn_api_fluid_layers_one_hot:
one_hot one_hot
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.one_hot(input, depth) .. py:function:: paddle.fluid.layers.one_hot(input, depth)
...@@ -5080,14 +5426,16 @@ one_hot ...@@ -5080,14 +5426,16 @@ one_hot
英文版API文档: :ref:`api_fluid_layers_one_hot`
.. _cn_api_fluid_layers_pad: .. _cn_api_fluid_layers_pad:
pad pad
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.pad(x, paddings, pad_value=0.0, name=None) .. py:function:: paddle.fluid.layers.pad(x, paddings, pad_value=0.0, name=None)
...@@ -5134,14 +5482,16 @@ pad ...@@ -5134,14 +5482,16 @@ pad
英文版API文档: :ref:`api_fluid_layers_pad`
.. _cn_api_fluid_layers_pad2d: .. _cn_api_fluid_layers_pad2d:
pad2d pad2d
>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.pad2d(input, paddings=[0, 0, 0, 0], mode='constant', pad_value=0.0, data_format='NCHW', name=None) .. py:function:: paddle.fluid.layers.pad2d(input, paddings=[0, 0, 0, 0], mode='constant', pad_value=0.0, data_format='NCHW', name=None)
...@@ -5202,14 +5552,16 @@ pad2d ...@@ -5202,14 +5552,16 @@ pad2d
英文版API文档: :ref:`api_fluid_layers_pad2d`
.. _cn_api_fluid_layers_pad_constant_like: .. _cn_api_fluid_layers_pad_constant_like:
pad_constant_like pad_constant_like
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.pad_constant_like(x, y, pad_value=0.0, name=None) .. py:function:: paddle.fluid.layers.pad_constant_like(x, y, pad_value=0.0, name=None)
...@@ -5262,14 +5614,16 @@ pad_constant_like ...@@ -5262,14 +5614,16 @@ pad_constant_like
英文版API文档: :ref:`api_fluid_layers_pad_constant_like`
.. _cn_api_fluid_layers_pool2d: .. _cn_api_fluid_layers_pool2d:
pool2d pool2d
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.pool2d(input, pool_size=-1, pool_type='max', pool_stride=1, pool_padding=0, global_pooling=False, use_cudnn=True, ceil_mode=False, name=None) .. py:function:: paddle.fluid.layers.pool2d(input, pool_size=-1, pool_type='max', pool_stride=1, pool_padding=0, global_pooling=False, use_cudnn=True, ceil_mode=False, name=None)
...@@ -5358,14 +5712,16 @@ pooling2d操作符根据 ``input`` , 池化类型 ``pool_type`` , 池化核 ...@@ -5358,14 +5712,16 @@ pooling2d操作符根据 ``input`` , 池化类型 ``pool_type`` , 池化核
英文版API文档: :ref:`api_fluid_layers_pool2d`
.. _cn_api_fluid_layers_pool3d: .. _cn_api_fluid_layers_pool3d:
pool3d pool3d
>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.pool3d(input, pool_size=-1, pool_type='max', pool_stride=1, pool_padding=0, global_pooling=False, use_cudnn=True, ceil_mode=False, name=None) .. py:function:: paddle.fluid.layers.pool3d(input, pool_size=-1, pool_type='max', pool_stride=1, pool_padding=0, global_pooling=False, use_cudnn=True, ceil_mode=False, name=None)
...@@ -5391,14 +5747,16 @@ pool3d ...@@ -5391,14 +5747,16 @@ pool3d
英文版API文档: :ref:`api_fluid_layers_pool3d`
.. _cn_api_fluid_layers_pow: .. _cn_api_fluid_layers_pow:
pow pow
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.pow(x, factor=1.0, name=None) .. py:function:: paddle.fluid.layers.pow(x, factor=1.0, name=None)
...@@ -5415,14 +5773,16 @@ pow ...@@ -5415,14 +5773,16 @@ pow
英文版API文档: :ref:`api_fluid_layers_pow`
.. _cn_api_fluid_layers_prelu: .. _cn_api_fluid_layers_prelu:
prelu prelu
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.prelu(x, mode, param_attr=None, name=None) .. py:function:: paddle.fluid.layers.prelu(x, mode, param_attr=None, name=None)
...@@ -5445,14 +5805,16 @@ prelu ...@@ -5445,14 +5805,16 @@ prelu
英文版API文档: :ref:`api_fluid_layers_prelu`
.. _cn_api_fluid_layers_random_crop: .. _cn_api_fluid_layers_random_crop:
random_crop random_crop
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.random_crop(x, shape, seed=None) .. py:function:: paddle.fluid.layers.random_crop(x, shape, seed=None)
...@@ -5475,14 +5837,16 @@ random_crop ...@@ -5475,14 +5837,16 @@ random_crop
英文版API文档: :ref:`api_fluid_layers_random_crop`
.. _cn_api_fluid_layers_rank_loss: .. _cn_api_fluid_layers_rank_loss:
rank_loss rank_loss
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.rank_loss(label, left, right, name=None) .. py:function:: paddle.fluid.layers.rank_loss(label, left, right, name=None)
...@@ -5527,14 +5891,16 @@ P 的取值可为: {0, 1} 或 {0, 0.5, 1}, 其中,0.5表示输入的两文 ...@@ -5527,14 +5891,16 @@ P 的取值可为: {0, 1} 或 {0, 0.5, 1}, 其中,0.5表示输入的两文
英文版API文档: :ref:`api_fluid_layers_rank_loss`
.. _cn_api_fluid_layers_reduce_max: .. _cn_api_fluid_layers_reduce_max:
reduce_max reduce_max
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reduce_max(input, dim=None, keep_dim=False, name=None) .. py:function:: paddle.fluid.layers.reduce_max(input, dim=None, keep_dim=False, name=None)
...@@ -5573,14 +5939,16 @@ reduce_max ...@@ -5573,14 +5939,16 @@ reduce_max
英文版API文档: :ref:`api_fluid_layers_reduce_max`
.. _cn_api_fluid_layers_reduce_mean: .. _cn_api_fluid_layers_reduce_mean:
reduce_mean reduce_mean
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reduce_mean(input, dim=None, keep_dim=False, name=None) .. py:function:: paddle.fluid.layers.reduce_mean(input, dim=None, keep_dim=False, name=None)
...@@ -5620,14 +5988,16 @@ reduce_mean ...@@ -5620,14 +5988,16 @@ reduce_mean
英文版API文档: :ref:`api_fluid_layers_reduce_mean`
.. _cn_api_fluid_layers_reduce_min: .. _cn_api_fluid_layers_reduce_min:
reduce_min reduce_min
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reduce_min(input, dim=None, keep_dim=False, name=None) .. py:function:: paddle.fluid.layers.reduce_min(input, dim=None, keep_dim=False, name=None)
...@@ -5666,14 +6036,16 @@ reduce_min ...@@ -5666,14 +6036,16 @@ reduce_min
英文版API文档: :ref:`api_fluid_layers_reduce_min`
.. _cn_api_fluid_layers_reduce_prod: .. _cn_api_fluid_layers_reduce_prod:
reduce_prod reduce_prod
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reduce_prod(input, dim=None, keep_dim=False, name=None) .. py:function:: paddle.fluid.layers.reduce_prod(input, dim=None, keep_dim=False, name=None)
...@@ -5713,14 +6085,16 @@ reduce_prod ...@@ -5713,14 +6085,16 @@ reduce_prod
英文版API文档: :ref:`api_fluid_layers_reduce_prod`
.. _cn_api_fluid_layers_reduce_sum: .. _cn_api_fluid_layers_reduce_sum:
reduce_sum reduce_sum
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reduce_sum(input, dim=None, keep_dim=False, name=None) .. py:function:: paddle.fluid.layers.reduce_sum(input, dim=None, keep_dim=False, name=None)
...@@ -5759,14 +6133,16 @@ reduce_sum ...@@ -5759,14 +6133,16 @@ reduce_sum
英文版API文档: :ref:`api_fluid_layers_reduce_sum`
.. _cn_api_fluid_layers_relu: .. _cn_api_fluid_layers_relu:
relu relu
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.relu(x, name=None) .. py:function:: paddle.fluid.layers.relu(x, name=None)
...@@ -5793,14 +6169,16 @@ Relu接受一个输入数据(张量),输出一个张量。将线性函数y = m ...@@ -5793,14 +6169,16 @@ Relu接受一个输入数据(张量),输出一个张量。将线性函数y = m
英文版API文档: :ref:`api_fluid_layers_relu`
.. _cn_api_fluid_layers_relu6: .. _cn_api_fluid_layers_relu6:
relu6 relu6
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.relu6(x, threshold=6.0, name=None) .. py:function:: paddle.fluid.layers.relu6(x, threshold=6.0, name=None)
...@@ -5823,14 +6201,16 @@ relu6激活算子(Relu6 Activation Operator) ...@@ -5823,14 +6201,16 @@ relu6激活算子(Relu6 Activation Operator)
英文版API文档: :ref:`api_fluid_layers_relu6`
.. _cn_api_fluid_layers_reshape: .. _cn_api_fluid_layers_reshape:
reshape reshape
>>>>>>>>>> -------------------------------
保持输入张量数据不变的情况下,改变张量的形状。 保持输入张量数据不变的情况下,改变张量的形状。
...@@ -5877,14 +6257,16 @@ reshape ...@@ -5877,14 +6257,16 @@ reshape
英文版API文档: :ref:`api_fluid_layers_reshape`
.. _cn_api_fluid_layers_resize_bilinear: .. _cn_api_fluid_layers_resize_bilinear:
resize_bilinear resize_bilinear
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.resize_bilinear(input, out_shape=None, scale=None, name=None) .. py:function:: paddle.fluid.layers.resize_bilinear(input, out_shape=None, scale=None, name=None)
...@@ -5904,14 +6286,16 @@ resize_bilinear ...@@ -5904,14 +6286,16 @@ resize_bilinear
英文版API文档: :ref:`api_fluid_layers_resize_bilinear`
.. _cn_api_fluid_layers_resize_nearest: .. _cn_api_fluid_layers_resize_nearest:
resize_nearest resize_nearest
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.resize_nearest(input, out_shape=None, scale=None, name=None, actual_shape=None) .. py:function:: paddle.fluid.layers.resize_nearest(input, out_shape=None, scale=None, name=None, actual_shape=None)
...@@ -5940,14 +6324,16 @@ resize_nearest ...@@ -5940,14 +6324,16 @@ resize_nearest
英文版API文档: :ref:`api_fluid_layers_resize_nearest`
.. _cn_api_fluid_layers_roi_align: .. _cn_api_fluid_layers_roi_align:
roi_align roi_align
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.roi_align(input, rois, pooled_height=1, pooled_width=1, spatial_scale=1.0, sampling_ratio=-1, name=None) .. py:function:: paddle.fluid.layers.roi_align(input, rois, pooled_height=1, pooled_width=1, spatial_scale=1.0, sampling_ratio=-1, name=None)
...@@ -5987,14 +6373,16 @@ Region of Interests align(直译:有意义、有价值选区对齐) 用于实 ...@@ -5987,14 +6373,16 @@ Region of Interests align(直译:有意义、有价值选区对齐) 用于实
英文版API文档: :ref:`api_fluid_layers_roi_align`
.. _cn_api_fluid_layers_roi_pool: .. _cn_api_fluid_layers_roi_pool:
roi_pool roi_pool
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.roi_pool(input, rois, pooled_height=1, pooled_width=1, spatial_scale=1.0) .. py:function:: paddle.fluid.layers.roi_pool(input, rois, pooled_height=1, pooled_width=1, spatial_scale=1.0)
...@@ -6030,14 +6418,16 @@ Faster-RCNN.使用了roi池化。roi关于roi池化请参考 https://stackoverfl ...@@ -6030,14 +6418,16 @@ Faster-RCNN.使用了roi池化。roi关于roi池化请参考 https://stackoverfl
英文版API文档: :ref:`api_fluid_layers_roi_pool`
.. _cn_api_fluid_layers_row_conv: .. _cn_api_fluid_layers_row_conv:
row_conv row_conv
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.row_conv(input, future_context_size, param_attr=None, act=None) .. py:function:: paddle.fluid.layers.row_conv(input, future_context_size, param_attr=None, act=None)
...@@ -6082,14 +6472,16 @@ row_conv ...@@ -6082,14 +6472,16 @@ row_conv
英文版API文档: :ref:`api_fluid_layers_row_conv`
.. _cn_api_fluid_layers_sampling_id: .. _cn_api_fluid_layers_sampling_id:
sampling_id sampling_id
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sampling_id(x, min=0.0, max=1.0, seed=0, dtype='float32') .. py:function:: paddle.fluid.layers.sampling_id(x, min=0.0, max=1.0, seed=0, dtype='float32')
...@@ -6110,14 +6502,16 @@ sampling_id算子。用于从输入的多项分布中对id进行采样的图层 ...@@ -6110,14 +6502,16 @@ sampling_id算子。用于从输入的多项分布中对id进行采样的图层
英文版API文档: :ref:`api_fluid_layers_sampling_id`
.. _cn_api_fluid_layers_scale: .. _cn_api_fluid_layers_scale:
scale scale
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.scale(x, scale=1.0, bias=0.0, bias_after_scale=True, act=None, name=None) .. py:function:: paddle.fluid.layers.scale(x, scale=1.0, bias=0.0, bias_after_scale=True, act=None, name=None)
...@@ -6150,14 +6544,16 @@ else: ...@@ -6150,14 +6544,16 @@ else:
英文版API文档: :ref:`api_fluid_layers_scale`
.. _cn_api_fluid_layers_scatter: .. _cn_api_fluid_layers_scatter:
scatter scatter
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.scatter(input, index, updates, name=None) .. py:function:: paddle.fluid.layers.scatter(input, index, updates, name=None)
...@@ -6188,14 +6584,16 @@ scatter ...@@ -6188,14 +6584,16 @@ scatter
英文版API文档: :ref:`api_fluid_layers_scatter`
.. _cn_api_fluid_layers_selu: .. _cn_api_fluid_layers_selu:
selu selu
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.selu(x, scale=None, alpha=None, name=None) .. py:function:: paddle.fluid.layers.selu(x, scale=None, alpha=None, name=None)
...@@ -6234,14 +6632,16 @@ selu ...@@ -6234,14 +6632,16 @@ selu
英文版API文档: :ref:`api_fluid_layers_selu`
.. _cn_api_fluid_layers_sequence_concat: .. _cn_api_fluid_layers_sequence_concat:
sequence_concat sequence_concat
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_concat(input, name=None) .. py:function:: paddle.fluid.layers.sequence_concat(input, name=None)
...@@ -6265,14 +6665,16 @@ sequence_concat操作通过序列信息连接LoD张量(Tensor)。例如:X1 ...@@ -6265,14 +6665,16 @@ sequence_concat操作通过序列信息连接LoD张量(Tensor)。例如:X1
英文版API文档: :ref:`api_fluid_layers_sequence_concat`
.. _cn_api_fluid_layers_sequence_conv: .. _cn_api_fluid_layers_sequence_conv:
sequence_conv sequence_conv
>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_conv(input, num_filters, filter_size=3, filter_stride=1, padding=None, bias_attr=None, param_attr=None, act=None, name=None) .. py:function:: paddle.fluid.layers.sequence_conv(input, num_filters, filter_size=3, filter_stride=1, padding=None, bias_attr=None, param_attr=None, act=None, name=None)
...@@ -6294,14 +6696,16 @@ sequence_conv ...@@ -6294,14 +6696,16 @@ sequence_conv
英文版API文档: :ref:`api_fluid_layers_sequence_conv`
.. _cn_api_fluid_layers_sequence_enumerate: .. _cn_api_fluid_layers_sequence_enumerate:
sequence_enumerate sequence_enumerate
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_enumerate(input, win_size, pad_value=0, name=None) .. py:function:: paddle.fluid.layers.sequence_enumerate(input, win_size, pad_value=0, name=None)
...@@ -6336,14 +6740,16 @@ sequence_enumerate ...@@ -6336,14 +6740,16 @@ sequence_enumerate
英文版API文档: :ref:`api_fluid_layers_sequence_enumerate`
.. _cn_api_fluid_layers_sequence_expand: .. _cn_api_fluid_layers_sequence_expand:
sequence_expand sequence_expand
>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_expand(x, y, ref_level=-1, name=None) .. py:function:: paddle.fluid.layers.sequence_expand(x, y, ref_level=-1, name=None)
...@@ -6406,14 +6812,16 @@ sequence_expand ...@@ -6406,14 +6812,16 @@ sequence_expand
英文版API文档: :ref:`api_fluid_layers_sequence_expand`
.. _cn_api_fluid_layers_sequence_expand_as: .. _cn_api_fluid_layers_sequence_expand_as:
sequence_expand_as sequence_expand_as
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_expand_as(x, y, name=None) .. py:function:: paddle.fluid.layers.sequence_expand_as(x, y, name=None)
...@@ -6457,14 +6865,16 @@ Sequence Expand As Layer ...@@ -6457,14 +6865,16 @@ Sequence Expand As Layer
英文版API文档: :ref:`api_fluid_layers_sequence_expand_as`
.. _cn_api_fluid_layers_sequence_first_step: .. _cn_api_fluid_layers_sequence_first_step:
sequence_first_step sequence_first_step
>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_first_step(input) .. py:function:: paddle.fluid.layers.sequence_first_step(input)
...@@ -6500,14 +6910,16 @@ sequence_first_step ...@@ -6500,14 +6910,16 @@ sequence_first_step
英文版API文档: :ref:`api_fluid_layers_sequence_first_step`
.. _cn_api_fluid_layers_sequence_last_step: .. _cn_api_fluid_layers_sequence_last_step:
sequence_last_step sequence_last_step
>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_last_step(input) .. py:function:: paddle.fluid.layers.sequence_last_step(input)
...@@ -6545,14 +6957,16 @@ sequence_last_step ...@@ -6545,14 +6957,16 @@ sequence_last_step
英文版API文档: :ref:`api_fluid_layers_sequence_last_step`
.. _cn_api_fluid_layers_sequence_mask: .. _cn_api_fluid_layers_sequence_mask:
sequence_mask sequence_mask
>>>>>>>>>>>>>> -------------------------------
该层根据输入 ``x`` 和 ```maxlen`` 输出一个掩码,数据类型为dtype。 该层根据输入 ``x`` 和 ```maxlen`` 输出一个掩码,数据类型为dtype。
...@@ -6577,14 +6991,16 @@ sequence_mask ...@@ -6577,14 +6991,16 @@ sequence_mask
英文版API文档: :ref:`api_fluid_layers_sequence_mask`
.. _cn_api_fluid_layers_sequence_pad: .. _cn_api_fluid_layers_sequence_pad:
sequence_pad sequence_pad
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_pad(x,pad_value,maxlen=None) .. py:function:: paddle.fluid.layers.sequence_pad(x,pad_value,maxlen=None)
...@@ -6667,14 +7083,16 @@ sequence_pad ...@@ -6667,14 +7083,16 @@ sequence_pad
英文版API文档: :ref:`api_fluid_layers_sequence_pad`
.. _cn_api_fluid_layers_sequence_pool: .. _cn_api_fluid_layers_sequence_pool:
sequence_pool sequence_pool
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_pool(input, pool_type) .. py:function:: paddle.fluid.layers.sequence_pool(input, pool_type)
...@@ -6727,14 +7145,16 @@ sequence_pool ...@@ -6727,14 +7145,16 @@ sequence_pool
英文版API文档: :ref:`api_fluid_layers_sequence_pool`
.. _cn_api_fluid_layers_sequence_reshape: .. _cn_api_fluid_layers_sequence_reshape:
sequence_reshape sequence_reshape
>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_reshape(input, new_dim) .. py:function:: paddle.fluid.layers.sequence_reshape(input, new_dim)
...@@ -6777,14 +7197,16 @@ Sequence Reshape Layer ...@@ -6777,14 +7197,16 @@ Sequence Reshape Layer
英文版API文档: :ref:`api_fluid_layers_sequence_reshape`
.. _cn_api_fluid_layers_sequence_reverse: .. _cn_api_fluid_layers_sequence_reverse:
sequence_reverse sequence_reverse
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_reverse(x, name=None) .. py:function:: paddle.fluid.layers.sequence_reverse(x, name=None)
...@@ -6824,14 +7246,16 @@ sequence_reverse ...@@ -6824,14 +7246,16 @@ sequence_reverse
英文版API文档: :ref:`api_fluid_layers_sequence_reverse`
.. _cn_api_fluid_layers_sequence_scatter: .. _cn_api_fluid_layers_sequence_scatter:
sequence_scatter sequence_scatter
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_scatter(input, index, updates, name=None) .. py:function:: paddle.fluid.layers.sequence_scatter(input, index, updates, name=None)
...@@ -6879,14 +7303,16 @@ sequence_scatter ...@@ -6879,14 +7303,16 @@ sequence_scatter
英文版API文档: :ref:`api_fluid_layers_sequence_scatter`
.. _cn_api_fluid_layers_sequence_slice: .. _cn_api_fluid_layers_sequence_slice:
sequence_slice sequence_slice
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_slice(input, offset, length, name=None) .. py:function:: paddle.fluid.layers.sequence_slice(input, offset, length, name=None)
...@@ -6939,14 +7365,16 @@ sequence_slice ...@@ -6939,14 +7365,16 @@ sequence_slice
英文版API文档: :ref:`api_fluid_layers_sequence_slice`
.. _cn_api_fluid_layers_sequence_softmax: .. _cn_api_fluid_layers_sequence_softmax:
sequence_softmax sequence_softmax
>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_softmax(input, use_cudnn=False, name=None) .. py:function:: paddle.fluid.layers.sequence_softmax(input, use_cudnn=False, name=None)
...@@ -6982,14 +7410,16 @@ sequence_softmax ...@@ -6982,14 +7410,16 @@ sequence_softmax
英文版API文档: :ref:`api_fluid_layers_sequence_softmax`
.. _cn_api_fluid_layers_sequence_unpad: .. _cn_api_fluid_layers_sequence_unpad:
sequence_unpad sequence_unpad
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sequence_unpad(x, length, name=None) .. py:function:: paddle.fluid.layers.sequence_unpad(x, length, name=None)
...@@ -7039,14 +7469,16 @@ sequence_unpad ...@@ -7039,14 +7469,16 @@ sequence_unpad
英文版API文档: :ref:`api_fluid_layers_sequence_unpad`
.. _cn_api_fluid_layers_shape: .. _cn_api_fluid_layers_shape:
shape shape
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.shape(input) .. py:function:: paddle.fluid.layers.shape(input)
...@@ -7065,14 +7497,16 @@ shape算子 ...@@ -7065,14 +7497,16 @@ shape算子
英文版API文档: :ref:`api_fluid_layers_shape`
.. _cn_api_fluid_layers_sigmoid_cross_entropy_with_logits: .. _cn_api_fluid_layers_sigmoid_cross_entropy_with_logits:
sigmoid_cross_entropy_with_logits sigmoid_cross_entropy_with_logits
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sigmoid_cross_entropy_with_logits(x, label, name=None) .. py:function:: paddle.fluid.layers.sigmoid_cross_entropy_with_logits(x, label, name=None)
...@@ -7116,14 +7550,16 @@ sigmoid_cross_entropy_with_logits ...@@ -7116,14 +7550,16 @@ sigmoid_cross_entropy_with_logits
英文版API文档: :ref:`api_fluid_layers_sigmoid_cross_entropy_with_logits`
.. _cn_api_fluid_layers_similarity_focus: .. _cn_api_fluid_layers_similarity_focus:
similarity_focus similarity_focus
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.similarity_focus(input, axis, indexes, name=None) .. py:function:: paddle.fluid.layers.similarity_focus(input, axis, indexes, name=None)
...@@ -7213,14 +7649,16 @@ similarity_focus ...@@ -7213,14 +7649,16 @@ similarity_focus
英文版API文档: :ref:`api_fluid_layers_similarity_focus`
.. _cn_api_fluid_layers_slice: .. _cn_api_fluid_layers_slice:
slice slice
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.slice(input, axes, starts, ends) .. py:function:: paddle.fluid.layers.slice(input, axes, starts, ends)
...@@ -7257,14 +7695,16 @@ slice算子。 ...@@ -7257,14 +7695,16 @@ slice算子。
英文版API文档: :ref:`api_fluid_layers_slice`
.. _cn_api_fluid_layers_smooth_l1: .. _cn_api_fluid_layers_smooth_l1:
smooth_l1 smooth_l1
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.smooth_l1(x, y, inside_weight=None, outside_weight=None, sigma=None) .. py:function:: paddle.fluid.layers.smooth_l1(x, y, inside_weight=None, outside_weight=None, sigma=None)
...@@ -7295,14 +7735,16 @@ smooth_l1 ...@@ -7295,14 +7735,16 @@ smooth_l1
英文版API文档: :ref:`api_fluid_layers_smooth_l1`
.. _cn_api_fluid_layers_soft_relu: .. _cn_api_fluid_layers_soft_relu:
soft_relu soft_relu
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.soft_relu(x, threshold=40.0, name=None) .. py:function:: paddle.fluid.layers.soft_relu(x, threshold=40.0, name=None)
...@@ -7318,14 +7760,16 @@ SoftRelu 激活函数 ...@@ -7318,14 +7760,16 @@ SoftRelu 激活函数
英文版API文档: :ref:`api_fluid_layers_soft_relu`
.. _cn_api_fluid_layers_softmax: .. _cn_api_fluid_layers_softmax:
softmax softmax
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.softmax(input, use_cudnn=True, name=None) .. py:function:: paddle.fluid.layers.softmax(input, use_cudnn=True, name=None)
...@@ -7361,14 +7805,16 @@ softmax操作符计算k维向量输入中所有其他维的指数和指数值的 ...@@ -7361,14 +7805,16 @@ softmax操作符计算k维向量输入中所有其他维的指数和指数值的
英文版API文档: :ref:`api_fluid_layers_softmax`
.. _cn_api_fluid_layers_softmax_with_cross_entropy: .. _cn_api_fluid_layers_softmax_with_cross_entropy:
softmax_with_cross_entropy softmax_with_cross_entropy
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.softmax_with_cross_entropy(logits, label, soft_label=False, ignore_index=-100) .. py:function:: paddle.fluid.layers.softmax_with_cross_entropy(logits, label, soft_label=False, ignore_index=-100)
...@@ -7415,14 +7861,16 @@ softmax_with_cross_entropy ...@@ -7415,14 +7861,16 @@ softmax_with_cross_entropy
英文版API文档: :ref:`api_fluid_layers_softmax_with_cross_entropy`
.. _cn_api_fluid_layers_space_to_depth: .. _cn_api_fluid_layers_space_to_depth:
space_to_depth space_to_depth
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.space_to_depth(x, blocksize, name=None) .. py:function:: paddle.fluid.layers.space_to_depth(x, blocksize, name=None)
...@@ -7465,14 +7913,16 @@ space_to_depth ...@@ -7465,14 +7913,16 @@ space_to_depth
英文版API文档: :ref:`api_fluid_layers_space_to_depth`
.. _cn_api_fluid_layers_split: .. _cn_api_fluid_layers_split:
split split
>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.split(input,num_or_sections,dim=-1,name=None) .. py:function:: paddle.fluid.layers.split(input,num_or_sections,dim=-1,name=None)
...@@ -7505,14 +7955,16 @@ split ...@@ -7505,14 +7955,16 @@ split
英文版API文档: :ref:`api_fluid_layers_split`
.. _cn_api_fluid_layers_square_error_cost: .. _cn_api_fluid_layers_square_error_cost:
square_error_cost square_error_cost
>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.square_error_cost(input,label) .. py:function:: paddle.fluid.layers.square_error_cost(input,label)
...@@ -7549,14 +8001,16 @@ square_error_cost ...@@ -7549,14 +8001,16 @@ square_error_cost
英文版API文档: :ref:`api_fluid_layers_square_error_cost`
.. _cn_api_fluid_layers_squeeze: .. _cn_api_fluid_layers_squeeze:
squeeze squeeze
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.squeeze(input, axes, name=None) .. py:function:: paddle.fluid.layers.squeeze(input, axes, name=None)
...@@ -7598,14 +8052,16 @@ squeeze ...@@ -7598,14 +8052,16 @@ squeeze
英文版API文档: :ref:`api_fluid_layers_squeeze`
.. _cn_api_fluid_layers_stack: .. _cn_api_fluid_layers_stack:
stack stack
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.stack(x, axis=0) .. py:function:: paddle.fluid.layers.stack(x, axis=0)
...@@ -7627,14 +8083,16 @@ stack ...@@ -7627,14 +8083,16 @@ stack
英文版API文档: :ref:`api_fluid_layers_stack`
.. _cn_api_fluid_layers_stanh: .. _cn_api_fluid_layers_stanh:
stanh stanh
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.stanh(x, scale_a=0.6666666666666666, scale_b=1.7159, name=None) .. py:function:: paddle.fluid.layers.stanh(x, scale_a=0.6666666666666666, scale_b=1.7159, name=None)
...@@ -7655,14 +8113,16 @@ STanh 激活算子(STanh Activation Operator.) ...@@ -7655,14 +8113,16 @@ STanh 激活算子(STanh Activation Operator.)
英文版API文档: :ref:`api_fluid_layers_stanh`
.. _cn_api_fluid_layers_sum: .. _cn_api_fluid_layers_sum:
sum sum
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sum(x) .. py:function:: paddle.fluid.layers.sum(x)
...@@ -7680,14 +8140,16 @@ sum算子。 ...@@ -7680,14 +8140,16 @@ sum算子。
英文版API文档: :ref:`api_fluid_layers_sum`
.. _cn_api_fluid_layers_swish: .. _cn_api_fluid_layers_swish:
swish swish
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.swish(x, beta=1.0, name=None) .. py:function:: paddle.fluid.layers.swish(x, beta=1.0, name=None)
...@@ -7710,14 +8172,16 @@ Swish 激活函数 ...@@ -7710,14 +8172,16 @@ Swish 激活函数
英文版API文档: :ref:`api_fluid_layers_swish`
.. _cn_api_fluid_layers_topk: .. _cn_api_fluid_layers_topk:
topk topk
>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.topk(input, k, name=None) .. py:function:: paddle.fluid.layers.topk(input, k, name=None)
这个运算符用于查找最后一维的前k个最大项,返回它们的值和索引。 这个运算符用于查找最后一维的前k个最大项,返回它们的值和索引。
...@@ -7766,14 +8230,16 @@ topk ...@@ -7766,14 +8230,16 @@ topk
英文版API文档: :ref:`api_fluid_layers_topk`
.. _cn_api_fluid_layers_transpose: .. _cn_api_fluid_layers_transpose:
transpose transpose
>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.transpose(x,perm,name=None) .. py:function:: paddle.fluid.layers.transpose(x,perm,name=None)
...@@ -7799,14 +8265,16 @@ transpose ...@@ -7799,14 +8265,16 @@ transpose
英文版API文档: :ref:`api_fluid_layers_transpose`
.. _cn_api_fluid_layers_uniform_random_batch_size_like: .. _cn_api_fluid_layers_uniform_random_batch_size_like:
uniform_random_batch_size_like uniform_random_batch_size_like
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.uniform_random_batch_size_like(input, shape, dtype='float32', input_dim_idx=0, output_dim_idx=0, min=-1.0, max=1.0, seed=0) .. py:function:: paddle.fluid.layers.uniform_random_batch_size_like(input, shape, dtype='float32', input_dim_idx=0, output_dim_idx=0, min=-1.0, max=1.0, seed=0)
...@@ -7830,14 +8298,16 @@ uniform_random_batch_size_like算子。 ...@@ -7830,14 +8298,16 @@ uniform_random_batch_size_like算子。
英文版API文档: :ref:`api_fluid_layers_uniform_random_batch_size_like`
.. _cn_api_fluid_layers_unsqueeze: .. _cn_api_fluid_layers_unsqueeze:
unsqueeze unsqueeze
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.unsqueeze(input, axes, name=None) .. py:function:: paddle.fluid.layers.unsqueeze(input, axes, name=None)
...@@ -7865,14 +8335,16 @@ unsqueeze ...@@ -7865,14 +8335,16 @@ unsqueeze
英文版API文档: :ref:`api_fluid_layers_unsqueeze`
.. _cn_api_fluid_layers_unstack: .. _cn_api_fluid_layers_unstack:
unstack unstack
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.unstack(x, axis=0, num=None) .. py:function:: paddle.fluid.layers.unstack(x, axis=0, num=None)
...@@ -7899,14 +8371,16 @@ unstack ...@@ -7899,14 +8371,16 @@ unstack
英文版API文档: :ref:`api_fluid_layers_unstack`
.. _cn_api_fluid_layers_warpctc: .. _cn_api_fluid_layers_warpctc:
warpctc warpctc
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.warpctc(input, label, blank=0, norm_by_times=False, use_cudnn=False)) .. py:function:: paddle.fluid.layers.warpctc(input, label, blank=0, norm_by_times=False, use_cudnn=False))
...@@ -7933,7 +8407,9 @@ warpctc ...@@ -7933,7 +8407,9 @@ warpctc
英文版API文档: :ref:`api_fluid_layers_warpctc`
...@@ -7947,7 +8423,7 @@ warpctc ...@@ -7947,7 +8423,7 @@ warpctc
.. _cn_api_fluid_layers_abs: .. _cn_api_fluid_layers_abs:
abs abs
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.abs(x, name=None) .. py:function:: paddle.fluid.layers.abs(x, name=None)
...@@ -7963,14 +8439,16 @@ abs ...@@ -7963,14 +8439,16 @@ abs
英文版API文档: :ref:`api_fluid_layers_abs`
.. _cn_api_fluid_layers_ceil: .. _cn_api_fluid_layers_ceil:
ceil ceil
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.ceil(x, name=None) .. py:function:: paddle.fluid.layers.ceil(x, name=None)
...@@ -7984,14 +8462,16 @@ ceil ...@@ -7984,14 +8462,16 @@ ceil
英文版API文档: :ref:`api_fluid_layers_ceil`
.. _cn_api_fluid_layers_cos: .. _cn_api_fluid_layers_cos:
cos cos
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.cos(x, name=None) .. py:function:: paddle.fluid.layers.cos(x, name=None)
...@@ -8006,14 +8486,16 @@ cos ...@@ -8006,14 +8486,16 @@ cos
英文版API文档: :ref:`api_fluid_layers_cos`
.. _cn_api_fluid_layers_cumsum: .. _cn_api_fluid_layers_cumsum:
cumsum cumsum
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.cumsum(x,axis=None,exclusive=None,reverse=None .. py:function:: paddle.fluid.layers.cumsum(x,axis=None,exclusive=None,reverse=None
...@@ -8036,14 +8518,16 @@ cumsum ...@@ -8036,14 +8518,16 @@ cumsum
英文版API文档: :ref:`api_fluid_layers_cumsum`
.. _cn_api_fluid_layers_exp: .. _cn_api_fluid_layers_exp:
exp exp
>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.exp(x, name=None) .. py:function:: paddle.fluid.layers.exp(x, name=None)
...@@ -8057,14 +8541,16 @@ exp ...@@ -8057,14 +8541,16 @@ exp
英文版API文档: :ref:`api_fluid_layers_exp`
.. _cn_api_fluid_layers_floor: .. _cn_api_fluid_layers_floor:
floor floor
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.floor(x, name=None) .. py:function:: paddle.fluid.layers.floor(x, name=None)
...@@ -8080,14 +8566,16 @@ floor ...@@ -8080,14 +8566,16 @@ floor
英文版API文档: :ref:`api_fluid_layers_floor`
.. _cn_api_fluid_layers_hard_shrink: .. _cn_api_fluid_layers_hard_shrink:
hard_shrink hard_shrink
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.hard_shrink(x,threshold=None) .. py:function:: paddle.fluid.layers.hard_shrink(x,threshold=None)
...@@ -8117,14 +8605,16 @@ HardShrink激活函数(HardShrink activation operator) ...@@ -8117,14 +8605,16 @@ HardShrink激活函数(HardShrink activation operator)
英文版API文档: :ref:`api_fluid_layers_hard_shrink`
.. _cn_api_fluid_layers_logsigmoid: .. _cn_api_fluid_layers_logsigmoid:
logsigmoid logsigmoid
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.logsigmoid(x, name=None) .. py:function:: paddle.fluid.layers.logsigmoid(x, name=None)
...@@ -8139,14 +8629,16 @@ logsigmoid ...@@ -8139,14 +8629,16 @@ logsigmoid
英文版API文档: :ref:`api_fluid_layers_logsigmoid`
.. _cn_api_fluid_layers_reciprocal: .. _cn_api_fluid_layers_reciprocal:
reciprocal reciprocal
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reciprocal(x, name=None) .. py:function:: paddle.fluid.layers.reciprocal(x, name=None)
...@@ -8163,14 +8655,16 @@ reciprocal ...@@ -8163,14 +8655,16 @@ reciprocal
英文版API文档: :ref:`api_fluid_layers_reciprocal`
.. _cn_api_fluid_layers_round: .. _cn_api_fluid_layers_round:
round round
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.round(x, name=None) .. py:function:: paddle.fluid.layers.round(x, name=None)
...@@ -8184,14 +8678,16 @@ round ...@@ -8184,14 +8678,16 @@ round
英文版API文档: :ref:`api_fluid_layers_round`
.. _cn_api_fluid_layers_sigmoid: .. _cn_api_fluid_layers_sigmoid:
sigmoid sigmoid
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sigmoid(x, name=None) .. py:function:: paddle.fluid.layers.sigmoid(x, name=None)
...@@ -8207,14 +8703,16 @@ sigmoid ...@@ -8207,14 +8703,16 @@ sigmoid
英文版API文档: :ref:`api_fluid_layers_sigmoid`
.. _cn_api_fluid_layers_sin: .. _cn_api_fluid_layers_sin:
sin sin
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sin(x, name=None) .. py:function:: paddle.fluid.layers.sin(x, name=None)
...@@ -8229,14 +8727,16 @@ sin ...@@ -8229,14 +8727,16 @@ sin
英文版API文档: :ref:`api_fluid_layers_sin`
.. _cn_api_fluid_layers_softplus: .. _cn_api_fluid_layers_softplus:
softplus softplus
>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.softplus(x,name=None) .. py:function:: paddle.fluid.layers.softplus(x,name=None)
...@@ -8248,14 +8748,16 @@ softplus ...@@ -8248,14 +8748,16 @@ softplus
英文版API文档: :ref:`api_fluid_layers_softplus`
.. _cn_api_fluid_layers_softshrink: .. _cn_api_fluid_layers_softshrink:
softshrink softshrink
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.softshrink(x, name=None) .. py:function:: paddle.fluid.layers.softshrink(x, name=None)
...@@ -8277,14 +8779,16 @@ Softshrink激活算子 ...@@ -8277,14 +8779,16 @@ Softshrink激活算子
英文版API文档: :ref:`api_fluid_layers_softshrink`
.. _cn_api_fluid_layers_softsign: .. _cn_api_fluid_layers_softsign:
softsign softsign
>>>>>>>>> -------------------------------
.. py:function:: Paddle.fluid.layers.softsign(x,name=None) .. py:function:: Paddle.fluid.layers.softsign(x,name=None)
...@@ -8296,14 +8800,16 @@ softsign ...@@ -8296,14 +8800,16 @@ softsign
英文版API文档: :ref:`api_fluid_layers_softsign`
.. _cn_api_fluid_layers_sqrt: .. _cn_api_fluid_layers_sqrt:
sqrt sqrt
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sqrt(x, name=None) .. py:function:: paddle.fluid.layers.sqrt(x, name=None)
...@@ -8318,14 +8824,16 @@ sqrt ...@@ -8318,14 +8824,16 @@ sqrt
英文版API文档: :ref:`api_fluid_layers_sqrt`
.. _cn_api_fluid_layers_square: .. _cn_api_fluid_layers_square:
square square
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.square(x,name=None) .. py:function:: paddle.fluid.layers.square(x,name=None)
...@@ -8337,14 +8845,16 @@ square ...@@ -8337,14 +8845,16 @@ square
英文版API文档: :ref:`api_fluid_layers_square`
.. _cn_api_fluid_layers_tanh: .. _cn_api_fluid_layers_tanh:
tanh tanh
>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.tanh(x, name=None) .. py:function:: paddle.fluid.layers.tanh(x, name=None)
...@@ -8361,14 +8871,16 @@ tanh ...@@ -8361,14 +8871,16 @@ tanh
英文版API文档: :ref:`api_fluid_layers_tanh`
.. _cn_api_fluid_layers_tanh_shrink: .. _cn_api_fluid_layers_tanh_shrink:
tanh_shrink tanh_shrink
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.tanh_shrink(x, name=None) .. py:function:: paddle.fluid.layers.tanh_shrink(x, name=None)
...@@ -8381,14 +8893,16 @@ tanh_shrink ...@@ -8381,14 +8893,16 @@ tanh_shrink
英文版API文档: :ref:`api_fluid_layers_tanh_shrink`
.. _cn_api_fluid_layers_thresholded_relu: .. _cn_api_fluid_layers_thresholded_relu:
thresholded_relu thresholded_relu
>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.thresholded_relu(x,threshold=None) .. py:function:: paddle.fluid.layers.thresholded_relu(x,threshold=None)
...@@ -8416,14 +8930,16 @@ thresholded_relu ...@@ -8416,14 +8930,16 @@ thresholded_relu
英文版API文档: :ref:`api_fluid_layers_thresholded_relu`
.. _cn_api_fluid_layers_uniform_random: .. _cn_api_fluid_layers_uniform_random:
uniform_random uniform_random
>>>>>>>>>>>>>> -------------------------------
.. py:function:: Paddle.fluid.layers.uniform_random(shape,dtype=None,min=None,max=None,seed=None) .. py:function:: Paddle.fluid.layers.uniform_random(shape,dtype=None,min=None,max=None,seed=None)
该操作符初始化一个张量,该张量的值是从正太分布中抽样的随机值 该操作符初始化一个张量,该张量的值是从正太分布中抽样的随机值
...@@ -8445,7 +8961,9 @@ uniform_random ...@@ -8445,7 +8961,9 @@ uniform_random
英文版API文档: :ref:`api_fluid_layers_uniform_random`
...@@ -8459,7 +8977,7 @@ uniform_random ...@@ -8459,7 +8977,7 @@ uniform_random
.. _cn_api_fluid_layers_argmax: .. _cn_api_fluid_layers_argmax:
argmax argmax
>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers argmin(x,axis=0) .. py:function:: paddle.fluid.layers argmin(x,axis=0)
...@@ -8484,14 +9002,16 @@ argmax ...@@ -8484,14 +9002,16 @@ argmax
英文版API文档: :ref:`api_fluid_layers_argmax`
.. _cn_api_fluid_layers_argmin: .. _cn_api_fluid_layers_argmin:
argmin argmin
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers argmin(x,axis=0) .. py:function:: paddle.fluid.layers argmin(x,axis=0)
...@@ -8516,14 +9036,16 @@ argmin ...@@ -8516,14 +9036,16 @@ argmin
英文版API文档: :ref:`api_fluid_layers_argmin`
.. _cn_api_fluid_layers_argsort: .. _cn_api_fluid_layers_argsort:
argsort argsort
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers argsort(input,axis=-1,name=None) .. py:function:: paddle.fluid.layers argsort(input,axis=-1,name=None)
...@@ -8565,14 +9087,16 @@ argsort ...@@ -8565,14 +9087,16 @@ argsort
英文版API文档: :ref:`api_fluid_layers_argsort`
.. _cn_api_fluid_layers_assign: .. _cn_api_fluid_layers_assign:
assign assign
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.assign(input,output=None) .. py:function:: paddle.fluid.layers.assign(input,output=None)
...@@ -8598,14 +9122,16 @@ assign ...@@ -8598,14 +9122,16 @@ assign
英文版API文档: :ref:`api_fluid_layers_assign`
.. _cn_api_fluid_layers_cast: .. _cn_api_fluid_layers_cast:
cast cast
>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.cast(x,dtype) .. py:function:: paddle.fluid.layers.cast(x,dtype)
...@@ -8628,14 +9154,16 @@ cast ...@@ -8628,14 +9154,16 @@ cast
英文版API文档: :ref:`api_fluid_layers_cast`
.. _cn_api_fluid_layers_concat: .. _cn_api_fluid_layers_concat:
concat concat
>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.concat(input,axis=0,name=None) .. py:function:: paddle.fluid.layers.concat(input,axis=0,name=None)
...@@ -8660,14 +9188,16 @@ concat ...@@ -8660,14 +9188,16 @@ concat
英文版API文档: :ref:`api_fluid_layers_concat`
.. _cn_api_fluid_layers_create_global_var: .. _cn_api_fluid_layers_create_global_var:
create_global_var create_global_var
>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.create_global_var(shape,value,dtype,persistable=False,force_cpu=False,name=None) .. py:function:: paddle.fluid.layers.create_global_var(shape,value,dtype,persistable=False,force_cpu=False,name=None)
...@@ -8694,14 +9224,16 @@ create_global_var ...@@ -8694,14 +9224,16 @@ create_global_var
英文版API文档: :ref:`api_fluid_layers_create_global_var`
.. _cn_api_fluid_layers_create_parameter: .. _cn_api_fluid_layers_create_parameter:
create_parameter create_parameter
>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.create_parameter(shape,dtype,name=None,attr=None,is_bias=False,default_initializer=None) .. py:function:: paddle.fluid.layers.create_parameter(shape,dtype,name=None,attr=None,is_bias=False,default_initializer=None)
...@@ -8728,14 +9260,16 @@ create_parameter ...@@ -8728,14 +9260,16 @@ create_parameter
英文版API文档: :ref:`api_fluid_layers_create_parameter`
.. _cn_api_fluid_layers_create_tensor: .. _cn_api_fluid_layers_create_tensor:
create_tensor create_tensor
>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.create_tensor(dtype,name=None,persistable=False) .. py:function:: paddle.fluid.layers.create_tensor(dtype,name=None,persistable=False)
...@@ -8757,14 +9291,18 @@ create_tensor ...@@ -8757,14 +9291,18 @@ create_tensor
tensor = fluid.layers.create_tensor(dtype='float32') tensor = fluid.layers.create_tensor(dtype='float32')
英文版API文档: :ref:`api_fluid_layers_create_tensor`
.. _cn_api_fluid_layers_fill_constant: .. _cn_api_fluid_layers_fill_constant:
fill_constant fill_constant
>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers fill_constant(shape,dtype,value,force_cpu=False,out=None) .. py:function:: paddle.fluid.layers fill_constant(shape,dtype,value,force_cpu=False,out=None)
...@@ -8793,14 +9331,16 @@ fill_constant ...@@ -8793,14 +9331,16 @@ fill_constant
英文版API文档: :ref:`api_fluid_layers_fill_constant`
.. _cn_api_fluid_layers_fill_constant_batch_size_like: .. _cn_api_fluid_layers_fill_constant_batch_size_like:
fill_constant_batch_size_like fill_constant_batch_size_like
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.fill_constant_batch_size_like(input,shape,dtype,value,input_dim_idx=0,output_dim_idx=0) .. py:function:: paddle.fluid.layers.fill_constant_batch_size_like(input,shape,dtype,value,input_dim_idx=0,output_dim_idx=0)
...@@ -8826,14 +9366,16 @@ fill_constant_batch_size_like ...@@ -8826,14 +9366,16 @@ fill_constant_batch_size_like
英文版API文档: :ref:`api_fluid_layers_fill_constant_batch_size_like`
.. _cn_api_fluid_layers_has_inf: .. _cn_api_fluid_layers_has_inf:
has_inf has_inf
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.has_inf(x) .. py:function:: paddle.fluid.layers.has_inf(x)
...@@ -8853,14 +9395,16 @@ has_inf ...@@ -8853,14 +9395,16 @@ has_inf
英文版API文档: :ref:`api_fluid_layers_has_inf`
.. _cn_api_fluid_layers_has_nan: .. _cn_api_fluid_layers_has_nan:
has_nan has_nan
>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.has_nan(x) .. py:function:: paddle.fluid.layers.has_nan(x)
...@@ -8874,14 +9418,16 @@ has_nan ...@@ -8874,14 +9418,16 @@ has_nan
英文版API文档: :ref:`api_fluid_layers_has_nan`
.. _cn_api_fluid_layers_isfinite: .. _cn_api_fluid_layers_isfinite:
isfinite isfinite
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.isfinite(x) .. py:function:: paddle.fluid.layers.isfinite(x)
...@@ -8896,14 +9442,16 @@ isfinite ...@@ -8896,14 +9442,16 @@ isfinite
英文版API文档: :ref:`api_fluid_layers_isfinite`
.. _cn_api_fluid_layers_ones: .. _cn_api_fluid_layers_ones:
ones ones
>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.ones(shape,dtype,force_cpu=False) .. py:function:: paddle.fluid.layers.ones(shape,dtype,force_cpu=False)
...@@ -8929,14 +9477,16 @@ ones ...@@ -8929,14 +9477,16 @@ ones
英文版API文档: :ref:`api_fluid_layers_ones`
.. _cn_api_fluid_layers_reverse: .. _cn_api_fluid_layers_reverse:
reverse reverse
>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.reverse(x,axis) .. py:function:: paddle.fluid.layers.reverse(x,axis)
...@@ -8962,14 +9512,16 @@ reverse ...@@ -8962,14 +9512,16 @@ reverse
英文版API文档: :ref:`api_fluid_layers_reverse`
.. _cn_api_fluid_layers_sums: .. _cn_api_fluid_layers_sums:
sums sums
>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.sums(input,out=None) .. py:function:: paddle.fluid.layers.sums(input,out=None)
...@@ -8998,14 +9550,16 @@ sums ...@@ -8998,14 +9550,16 @@ sums
英文版API文档: :ref:`api_fluid_layers_sums`
.. _cn_api_fluid_layers_tensor_array_to_tensor: .. _cn_api_fluid_layers_tensor_array_to_tensor:
tensor_array_to_tensor tensor_array_to_tensor
>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.tensor_array_to_tensor(input, axis=1, name=None) .. py:function:: paddle.fluid.layers.tensor_array_to_tensor(input, axis=1, name=None)
...@@ -9049,14 +9603,16 @@ tensor_array_to_tensor ...@@ -9049,14 +9603,16 @@ tensor_array_to_tensor
英文版API文档: :ref:`api_fluid_layers_tensor_array_to_tensor`
.. _cn_api_fluid_layers_zeros: .. _cn_api_fluid_layers_zeros:
zeros zeros
>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.zeros(shape,dtype,force_cpu=False) .. py:function:: paddle.fluid.layers.zeros(shape,dtype,force_cpu=False)
...@@ -9082,7 +9638,9 @@ zeros ...@@ -9082,7 +9638,9 @@ zeros
英文版API文档: :ref:`api_fluid_layers_zeros`
...@@ -9096,7 +9654,7 @@ zeros ...@@ -9096,7 +9654,7 @@ zeros
.. _cn_api_fluid_layers_append_LARS: .. _cn_api_fluid_layers_append_LARS:
append_LARS append_LARS
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.append_LARS(params_grads,learning_rate,weight_decay) .. py:function:: paddle.fluid.layers.append_LARS(params_grads,learning_rate,weight_decay)
...@@ -9117,14 +9675,16 @@ append_LARS ...@@ -9117,14 +9675,16 @@ append_LARS
英文版API文档: :ref:`api_fluid_layers_append_LARS`
.. _cn_api_fluid_layers_exponential_decay: .. _cn_api_fluid_layers_exponential_decay:
exponential_decay exponential_decay
>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers exponential_decay(learning_rate,decay_steps,decay_rate,staircase=False) .. py:function:: paddle.fluid.layers exponential_decay(learning_rate,decay_steps,decay_rate,staircase=False)
...@@ -9163,14 +9723,16 @@ exponential_decay ...@@ -9163,14 +9723,16 @@ exponential_decay
英文版API文档: :ref:`api_fluid_layers_exponential_decay`
.. _cn_api_fluid_layers_inverse_time_decay: .. _cn_api_fluid_layers_inverse_time_decay:
inverse_time_decay inverse_time_decay
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.inverse_time_decay(learning_rate, decay_steps, decay_rate, staircase=False) .. py:function:: paddle.fluid.layers.inverse_time_decay(learning_rate, decay_steps, decay_rate, staircase=False)
...@@ -9210,14 +9772,16 @@ inverse_time_decay ...@@ -9210,14 +9772,16 @@ inverse_time_decay
英文版API文档: :ref:`api_fluid_layers_inverse_time_decay`
.. _cn_api_fluid_layers_natural_exp_decay: .. _cn_api_fluid_layers_natural_exp_decay:
natural_exp_decay natural_exp_decay
>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.natural_exp_decay(learning_rate, decay_steps, decay_rate, staircase=False) .. py:function:: paddle.fluid.layers.natural_exp_decay(learning_rate, decay_steps, decay_rate, staircase=False)
...@@ -9240,14 +9804,16 @@ natural_exp_decay ...@@ -9240,14 +9804,16 @@ natural_exp_decay
英文版API文档: :ref:`api_fluid_layers_natural_exp_decay`
.. _cn_api_fluid_layers_noam_decay: .. _cn_api_fluid_layers_noam_decay:
noam_decay noam_decay
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers noam_decay(d_model,warmup_steps) .. py:function:: paddle.fluid.layers noam_decay(d_model,warmup_steps)
...@@ -9270,14 +9836,16 @@ Noam衰减方法。noam衰减的numpy实现如下。 ...@@ -9270,14 +9836,16 @@ Noam衰减方法。noam衰减的numpy实现如下。
英文版API文档: :ref:`api_fluid_layers_noam_decay`
.. _cn_api_fluid_layers_piecewise_decay: .. _cn_api_fluid_layers_piecewise_decay:
piecewise_decay piecewise_decay
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.piecewise_decay(boundaries,values) .. py:function:: paddle.fluid.layers.piecewise_decay(boundaries,values)
...@@ -9304,14 +9872,16 @@ piecewise_decay ...@@ -9304,14 +9872,16 @@ piecewise_decay
英文版API文档: :ref:`api_fluid_layers_piecewise_decay`
.. _cn_api_fluid_layers_polynomial_decay: .. _cn_api_fluid_layers_polynomial_decay:
polynomial_decay polynomial_decay
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.polynomial_decay(learning_rate,decay_steps,end_learning_rate=0.0001,power=1.0,cycle=False) .. py:function:: paddle.fluid.layers.polynomial_decay(learning_rate,decay_steps,end_learning_rate=0.0001,power=1.0,cycle=False)
...@@ -9339,7 +9909,9 @@ polynomial_decay ...@@ -9339,7 +9909,9 @@ polynomial_decay
英文版API文档: :ref:`api_fluid_layers_polynomial_decay`
...@@ -9353,7 +9925,7 @@ polynomial_decay ...@@ -9353,7 +9925,7 @@ polynomial_decay
.. _cn_api_fluid_layers_anchor_generator: .. _cn_api_fluid_layers_anchor_generator:
anchor_generator anchor_generator
>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.anchor_generator(input, anchor_sizes=None, aspect_ratios=None, variance=[0.1, 0.1, 0.2, 0.2], stride=None, offset=0.5, name=None) .. py:function:: paddle.fluid.layers.anchor_generator(input, anchor_sizes=None, aspect_ratios=None, variance=[0.1, 0.1, 0.2, 0.2], stride=None, offset=0.5, name=None)
...@@ -9401,14 +9973,16 @@ anchor_generator ...@@ -9401,14 +9973,16 @@ anchor_generator
英文版API文档: :ref:`api_fluid_layers_anchor_generator`
.. _cn_api_fluid_layers_bipartite_match: .. _cn_api_fluid_layers_bipartite_match:
bipartite_match bipartite_match
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.bipartite_match(dist_matrix, match_type=None, dist_threshold=None, name=None) .. py:function:: paddle.fluid.layers.bipartite_match(dist_matrix, match_type=None, dist_threshold=None, name=None)
...@@ -9452,14 +10026,16 @@ bipartite_match ...@@ -9452,14 +10026,16 @@ bipartite_match
英文版API文档: :ref:`api_fluid_layers_bipartite_match`
.. _cn_api_fluid_layers_box_coder: .. _cn_api_fluid_layers_box_coder:
box_coder box_coder
>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.box_coder(prior_box, prior_box_var, target_box, code_type='encode_center_size', box_normalized=True, name=None) .. py:function:: paddle.fluid.layers.box_coder(prior_box, prior_box_var, target_box, code_type='encode_center_size', box_normalized=True, name=None)
...@@ -9511,14 +10087,16 @@ Bounding Box Coder ...@@ -9511,14 +10087,16 @@ Bounding Box Coder
英文版API文档: :ref:`api_fluid_layers_box_coder`
.. _cn_api_fluid_layers_density_prior_box: .. _cn_api_fluid_layers_density_prior_box:
density_prior_box density_prior_box
>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.density_prior_box(input, image, densities=None, fixed_sizes=None, fixed_ratios=None, variance=[0.1, 0.1, 0.2, 0.2], clip=False, steps=[0.0, 0.0], offset=0.5, flatten_to_2d=False, name=None) .. py:function:: paddle.fluid.layers.density_prior_box(input, image, densities=None, fixed_sizes=None, fixed_ratios=None, variance=[0.1, 0.1, 0.2, 0.2], clip=False, steps=[0.0, 0.0], offset=0.5, flatten_to_2d=False, name=None)
...@@ -9589,14 +10167,16 @@ density prior box的量由fixed_sizes and fixed_ratios决定。显然地,fixed ...@@ -9589,14 +10167,16 @@ density prior box的量由fixed_sizes and fixed_ratios决定。显然地,fixed
英文版API文档: :ref:`api_fluid_layers_density_prior_box`
.. _cn_api_fluid_layers_detection_map: .. _cn_api_fluid_layers_detection_map:
detection_map detection_map
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.detection_map(detect_res, label, function_num, background_label=0, overlap_threshold=0.3, evaluate_difficult=True, has_state=None, input_states=None, out_states=None, ap_version='integral') .. py:function:: paddle.fluid.layers.detection_map(detect_res, label, function_num, background_label=0, overlap_threshold=0.3, evaluate_difficult=True, has_state=None, input_states=None, out_states=None, ap_version='integral')
...@@ -9654,14 +10234,16 @@ detection_map ...@@ -9654,14 +10234,16 @@ detection_map
英文版API文档: :ref:`api_fluid_layers_detection_map`
.. _cn_api_fluid_layers_detection_output: .. _cn_api_fluid_layers_detection_output:
detection_output detection_output
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.detection_output(loc, scores, prior_box, prior_box_var, background_label=0, nms_threshold=0.3, nms_top_k=400, keep_top_k=200, score_threshold=0.01, nms_eta=1.0) .. py:function:: paddle.fluid.layers.detection_output(loc, scores, prior_box, prior_box_var, background_label=0, nms_threshold=0.3, nms_top_k=400, keep_top_k=200, score_threshold=0.01, nms_eta=1.0)
...@@ -9713,14 +10295,16 @@ Detection Output Layer for Single Shot Multibox Detector(SSD) ...@@ -9713,14 +10295,16 @@ Detection Output Layer for Single Shot Multibox Detector(SSD)
英文版API文档: :ref:`api_fluid_layers_detection_output`
.. _cn_api_fluid_layers_generate_proposal_labels: .. _cn_api_fluid_layers_generate_proposal_labels:
generate_proposal_labels generate_proposal_labels
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.generate_proposal_labels(rpn_rois, gt_functiones, is_crowd, gt_boxes, im_info, batch_size_per_im=256, fg_fraction=0.25, fg_thresh=0.25, bg_thresh_hi=0.5, bg_thresh_lo=0.0, bbox_reg_weights=[0.1, 0.1, 0.2, 0.2], function_nums=None, use_random=True) .. py:function:: paddle.fluid.layers.generate_proposal_labels(rpn_rois, gt_functiones, is_crowd, gt_boxes, im_info, batch_size_per_im=256, fg_fraction=0.25, fg_thresh=0.25, bg_thresh_hi=0.5, bg_thresh_lo=0.0, bbox_reg_weights=[0.1, 0.1, 0.2, 0.2], function_nums=None, use_random=True)
...@@ -9758,14 +10342,16 @@ RpnRois 是RPN的输出box, 并由 ``GenerateProposals`` 来进一步处理, ...@@ -9758,14 +10342,16 @@ RpnRois 是RPN的输出box, 并由 ``GenerateProposals`` 来进一步处理,
英文版API文档: :ref:`api_fluid_layers_generate_proposal_labels`
.. _cn_api_fluid_layers_generate_proposals: .. _cn_api_fluid_layers_generate_proposals:
generate_proposals generate_proposals
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.generate_proposals(scores, bbox_deltas, im_info, anchors, variances, pre_nms_top_n=6000, post_nms_top_n=1000, nms_thresh=0.5, min_size=0.1, eta=1.0, name=None) .. py:function:: paddle.fluid.layers.generate_proposals(scores, bbox_deltas, im_info, anchors, variances, pre_nms_top_n=6000, post_nms_top_n=1000, nms_thresh=0.5, min_size=0.1, eta=1.0, name=None)
...@@ -9801,14 +10387,17 @@ generate_proposals ...@@ -9801,14 +10387,17 @@ generate_proposals
英文版API文档: :ref:`api_fluid_layers_generate_proposals`
.. _cn_api_fluid_layers_iou_similarity: .. _cn_api_fluid_layers_iou_similarity:
iou_similarity iou_similarity
>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.iou_similarity(x, y, name=None) .. py:function:: paddle.fluid.layers.iou_similarity(x, y, name=None)
...@@ -9830,14 +10419,16 @@ iou_similarity ...@@ -9830,14 +10419,16 @@ iou_similarity
英文版API文档: :ref:`api_fluid_layers_iou_similarity`
.. _cn_api_fluid_layers_multi_box_head: .. _cn_api_fluid_layers_multi_box_head:
multi_box_head multi_box_head
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.multi_box_head(inputs, image, base_size, num_functiones, 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) .. py:function:: paddle.fluid.layers.multi_box_head(inputs, image, base_size, num_functiones, 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)
...@@ -9897,14 +10488,16 @@ multi_box_head ...@@ -9897,14 +10488,16 @@ multi_box_head
英文版API文档: :ref:`api_fluid_layers_multi_box_head`
.. _cn_api_fluid_layers_polygon_box_transform: .. _cn_api_fluid_layers_polygon_box_transform:
polygon_box_transform polygon_box_transform
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.polygon_box_transform(input, name=None) .. py:function:: paddle.fluid.layers.polygon_box_transform(input, name=None)
...@@ -9925,14 +10518,16 @@ PolygonBoxTransform 算子。 ...@@ -9925,14 +10518,16 @@ PolygonBoxTransform 算子。
英文版API文档: :ref:`api_fluid_layers_polygon_box_transform`
.. _cn_api_fluid_layers_prior_box: .. _cn_api_fluid_layers_prior_box:
prior_box prior_box
>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.prior_box(input,image,min_sizes=None,aspect_ratios=[1.0],variance=[0.1,0.1,0.2,0.2],flip=False,clip=False,steps=[0.0,0.0],offset=0.5,name=None,min_max_aspect_ratios_order=False) .. py:function:: paddle.fluid.layers.prior_box(input,image,min_sizes=None,aspect_ratios=[1.0],variance=[0.1,0.1,0.2,0.2],flip=False,clip=False,steps=[0.0,0.0],offset=0.5,name=None,min_max_aspect_ratios_order=False)
**Prior Box Operator** **Prior Box Operator**
...@@ -9975,14 +10570,16 @@ prior_box ...@@ -9975,14 +10570,16 @@ prior_box
英文版API文档: :ref:`api_fluid_layers_prior_box`
.. _cn_api_fluid_layers_roi_perspective_transform: .. _cn_api_fluid_layers_roi_perspective_transform:
roi_perspective_transform roi_perspective_transform
>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.roi_perspective_transform(input, rois, transformed_height, transformed_width, spatial_scale=1.0) .. py:function:: paddle.fluid.layers.roi_perspective_transform(input, rois, transformed_height, transformed_width, spatial_scale=1.0)
...@@ -10015,14 +10612,16 @@ roi_perspective_transform ...@@ -10015,14 +10612,16 @@ roi_perspective_transform
英文版API文档: :ref:`api_fluid_layers_roi_perspective_transform`
.. _cn_api_fluid_layers_rpn_target_assign: .. _cn_api_fluid_layers_rpn_target_assign:
rpn_target_assign rpn_target_assign
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.rpn_target_assign(bbox_pred, cls_logits, anchor_box, anchor_var, gt_boxes, is_crowd, im_info, rpn_batch_size_per_im=256, rpn_straddle_thresh=0.0, rpn_fg_fraction=0.5, rpn_positive_overlap=0.7, rpn_negative_overlap=0.3, use_random=True) .. py:function:: paddle.fluid.layers.rpn_target_assign(bbox_pred, cls_logits, anchor_box, anchor_var, gt_boxes, is_crowd, im_info, rpn_batch_size_per_im=256, rpn_straddle_thresh=0.0, rpn_fg_fraction=0.5, rpn_positive_overlap=0.7, rpn_negative_overlap=0.3, use_random=True)
...@@ -10075,14 +10674,16 @@ rpn_target_assign ...@@ -10075,14 +10674,16 @@ rpn_target_assign
英文版API文档: :ref:`api_fluid_layers_rpn_target_assign`
.. _cn_api_fluid_layers_ssd_loss: .. _cn_api_fluid_layers_ssd_loss:
ssd_loss ssd_loss
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.ssd_loss(location, confidence, gt_box, gt_label, prior_box, prior_box_var=None, background_label=0, overlap_threshold=0.5, neg_pos_ratio=3.0, neg_overlap=0.5, loc_loss_weight=1.0, conf_loss_weight=1.0, match_type='per_prediction', mining_type='max_negative', normalize=True, sample_size=None) .. py:function:: paddle.fluid.layers.ssd_loss(location, confidence, gt_box, gt_label, prior_box, prior_box_var=None, background_label=0, overlap_threshold=0.5, neg_pos_ratio=3.0, neg_overlap=0.5, loc_loss_weight=1.0, conf_loss_weight=1.0, match_type='per_prediction', mining_type='max_negative', normalize=True, sample_size=None)
...@@ -10167,14 +10768,16 @@ ssd_loss ...@@ -10167,14 +10768,16 @@ ssd_loss
英文版API文档: :ref:`api_fluid_layers_ssd_loss`
.. _cn_api_fluid_layers_target_assign: .. _cn_api_fluid_layers_target_assign:
target_assign target_assign
>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.target_assign(input, matched_indices, negative_indices=None, mismatch_value=None, name=None) .. py:function:: paddle.fluid.layers.target_assign(input, matched_indices, negative_indices=None, mismatch_value=None, name=None)
...@@ -10227,7 +10830,9 @@ target_assign ...@@ -10227,7 +10830,9 @@ target_assign
英文版API文档: :ref:`api_fluid_layers_target_assign`
...@@ -10241,7 +10846,7 @@ target_assign ...@@ -10241,7 +10846,7 @@ target_assign
.. _cn_api_fluid_layers_accuracy: .. _cn_api_fluid_layers_accuracy:
accuracy accuracy
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.accuracy(input, label, k=1, correct=None, total=None) .. py:function:: paddle.fluid.layers.accuracy(input, label, k=1, correct=None, total=None)
...@@ -10274,14 +10879,16 @@ accuracy layer。 参考 https://en.wikipedia.org/wiki/Precision_and_recall ...@@ -10274,14 +10879,16 @@ accuracy layer。 参考 https://en.wikipedia.org/wiki/Precision_and_recall
英文版API文档: :ref:`api_fluid_layers_accuracy`
.. _cn_api_fluid_layers_auc: .. _cn_api_fluid_layers_auc:
auc auc
>>>>> -------------------------------
.. py:function:: paddle.fluid.layers.auc(input, label, curve='ROC', num_thresholds=4095, topk=1, slide_steps=1) .. py:function:: paddle.fluid.layers.auc(input, label, curve='ROC', num_thresholds=4095, topk=1, slide_steps=1)
...@@ -10320,7 +10927,9 @@ auc ...@@ -10320,7 +10927,9 @@ auc
英文版API文档: :ref:`api_fluid_layers_auc`
################# #################
fluid.metrics fluid.metrics
################# #################
.. _cn_api_fluid_merics_Auc: .. _cn_api_fluid_metrics_Accuracy:
Auc
>>>>
.. py:class:: paddle.fluid.metrics.Auc(name, curve='ROC', num_thresholds=4095)
Auc度量适用于二分类。参考 https://en.wikipedia.org/wiki/Receiver_operating_characteristic#Area_under_the_curve 。需要注意auc度量本身是用Python计算值。如果关心速度,请用fluid.layers.auc。 Accuracy
-------------------------------
auc函数创建四个局部变量true_positives, true_negatives, false_positives和false_negatives,用于计算AUC。对于离散化AUC曲线,临界值线性间隔设置以便计算召回率和准确率的值,用false positive率的召回值高度计算ROC曲线面积,用recall的准确值高度计算PR曲线面积。 .. py:class:: paddle.fluid.metrics.Accuracy(name=None)
参数: 累加mini-batch正确率,计算每次pass的平均准确率。https://en.wikipedia.org/wiki/Accuracy_and_precision
- **name** - 度量名
- **curve** - 将要计算的曲线名的详情,曲线包括ROC(默认)或者PR(Precision-Recall-curve)。
注:目前只用Python实现ROC曲线 参数:
- **name** — 度量标准的名称
**代码示例** **代码示例**
.. code-block:: python .. code-block:: python
labels = fluid.layers.data(name="data", shape=[1], dtype="int32")
data = fluid.layers.data(name="data", shape=[32, 32], dtype="int32")
pred = fluid.layers.fc(input=data, size=1000, act="tanh") pred = fluid.layers.fc(input=data, size=1000, act="tanh")
metric = fluid.metrics.Auc() minibatch_accuracy = fluid.layers.accuracy(pred, label)
for data in train_reader(): accuracy_evaluator = fluid.metrics.Accuracy()
loss, preds, labels = exe.run(fetch_list=[cost, preds, labels]) for pass in range(PASSES):
metric.update(preds, labels) accuracy_evaluator.reset()
numpy_auc = metric.eval() for data in train_reader():
batch_size = data[0]
loss = exe.run(fetch_list=[cost, minibatch_accuracy])
accuracy_evaluator.update(value=minibatch_accuracy, weight=batch_size)
numpy_acc = accuracy_evaluator.eval()
英文版API文档: :ref:`api_fluid_merics_Auc`
.. _cn_api_fluid_merics_MetricBase: .. py:method:: update(value, weight)
MetricBase 更新mini batch的状态.
>>>>>>>>>>>>
.. py:class:: paddle.fluid.metrics.MetricBase(name) 参数:
- **value** (float|numpy.array) – 每个mini batch的正确率
- **weight** (int|float) – batch 大小
所有Metrics的基类。MetricBase为模型估计方法定义一组接口。Metrics累积连续的两个minibatch之间的度量状态,对每个minibatch用最新接口将当前minibatch值添加到全局状态。用eval函数来计算last reset()或者scratch on()中累积的度量值。如果需要定制一个新的metric,请继承自MetricBase和自定义实现类。
参数:
- **name** (str) - metric实例名。例如准确率(accuracy)。如果想区分一个模型里不同的metrics,则需要实例名。
.. py:method:: reset()
reset()清除度量(metric)的状态(state)。默认情况下,状态(state)包含没有 ``_`` 前缀的metric。reset将这些状态设置为初始状态。如果不想使用隐式命名规则,请自定义reset接口。
.. py:method:: get_config()
获取度量(metric)状态和当前状态。状态(state)包含没有 ``_`` 前缀的成员。
参数:**None**
返回:metric对应到state的字典 .. _cn_api_fluid_metrics_Auc:
返回类型:字典(dict) Auc
-------------------------------
.. py:class:: paddle.fluid.metrics.Auc(name, curve='ROC', num_thresholds=4095)
.. py:method:: update(preds,labels) Auc度量适用于二分类。参考 https://en.wikipedia.org/wiki/Receiver_operating_characteristic#Area_under_the_curve 。需要注意auc度量本身是用Python计算值。如果关心速度,请用fluid.layers.auc。
更新每个minibatch的度量状态(metric states),用户可通过Python或者C++操作符计算minibatch度量值(metric) auc函数创建四个局部变量true_positives, true_negatives, false_positives和false_negatives,用于计算AUC。对于离散化AUC曲线,临界值线性间隔设置以便计算召回率和准确率的值,用false positive率的召回值高度计算ROC曲线面积,用recall的准确值高度计算PR曲线面积
参数: 参数:
- **preds** (numpy.array) - 当前minibatch的预测 - **name** - 度量名
- **labels** (numpy.array) - 当前minibatch的标签,如果标签为one-hot或者soft-label,应该自定义相应的更新规则。 - **curve** - 将要计算的曲线名的详情,曲线包括ROC(默认)或者PR(Precision-Recall-curve)。
.. py:method:: eval()
基于累积状态(accumulated states)评估当前度量(current metric)。
返回:metrics(Python中)
返回类型:float|list(float)|numpy.array
注:目前只用Python实现ROC曲线
英文版API文档: :ref:`api_fluid_merics_MetricBase` **代码示例**:
.. _cn_api_fluid_metrics_Accuracy: .. code-block:: python
Accuracy pred = fluid.layers.fc(input=data, size=1000, act="tanh")
>>>>>>>>>>>> metric = fluid.metrics.Auc()
for data in train_reader():
loss, preds, labels = exe.run(fetch_list=[cost, preds, labels])
metric.update(preds, labels)
numpy_auc = metric.eval()
.. py:class:: paddle.fluid.metrics.Accuracy(name=None)
累加mini-batch正确率,计算每次pass的平均准确率。https://en.wikipedia.org/wiki/Accuracy_and_precision
参数:
- **name** — 度量标准的名称
**代码示例**
.. code-block:: python
labels = fluid.layers.data(name="data", shape=[1], dtype="int32")
data = fluid.layers.data(name="data", shape=[32, 32], dtype="int32")
pred = fluid.layers.fc(input=data, size=1000, act="tanh")
minibatch_accuracy = fluid.layers.accuracy(pred, label)
accuracy_evaluator = fluid.metrics.Accuracy()
for pass in range(PASSES):
accuracy_evaluator.reset()
for data in train_reader():
batch_size = data[0]
loss = exe.run(fetch_list=[cost, minibatch_accuracy])
accuracy_evaluator.update(value=minibatch_accuracy, weight=batch_size)
numpy_acc = accuracy_evaluator.eval()
.. py:method:: update(value, weight)
更新mini batch的状态.
参数:
- **value** (float|numpy.array) – 每个mini batch的正确率
- **weight** (int|float) – batch 大小
英文版API文档: :ref:`api_fluid_metrics_Accuracy`
.. _cn_api_fluid_metrics_ChunkEvaluator: .. _cn_api_fluid_metrics_ChunkEvaluator:
ChunkEvaluator ChunkEvaluator
>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.metrics.ChunkEvaluator(name=None) .. py:class:: paddle.fluid.metrics.ChunkEvaluator(name=None)
...@@ -169,12 +125,14 @@ ChunkEvaluator ...@@ -169,12 +125,14 @@ ChunkEvaluator
英文版API文档: :ref:`api_fluid_metrics_ChunkEvaluator`
.. _cn_api_fluid_metrics_CompositeMetric: .. _cn_api_fluid_metrics_CompositeMetric:
CompositeMetric CompositeMetric
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.metrics.CompositeMetric(name=None) .. py:class:: paddle.fluid.metrics.CompositeMetric(name=None)
...@@ -229,14 +187,16 @@ CompositeMetric ...@@ -229,14 +187,16 @@ CompositeMetric
英文版API文档: :ref:`api_fluid_metrics_CompositeMetric`
.. _cn_api_fluid_metrics_DetectionMAP: .. _cn_api_fluid_metrics_DetectionMAP:
DetectionMAP DetectionMAP
>>>>>>>>>>>> -------------------------------
.. py:class:: class paddle.fluid.metrics.DetectionMAP(name=None) .. py:class:: paddle.fluid.metrics.DetectionMAP(name=None)
计算 detection 平均精度(mAP)。 mAP是衡量object detectors精度的指标,比如 Faster R-CNN,SSD等。它不同于召回率,它是最大精度的平均值。 请从以下文章中获取更多信息: 计算 detection 平均精度(mAP)。 mAP是衡量object detectors精度的指标,比如 Faster R-CNN,SSD等。它不同于召回率,它是最大精度的平均值。 请从以下文章中获取更多信息:
...@@ -275,12 +235,14 @@ https://arxiv.org/abs/1512.02325 ...@@ -275,12 +235,14 @@ https://arxiv.org/abs/1512.02325
英文版API文档: :ref:`api_fluid_metrics_DetectionMAP`
.. _cn_api_fluid_metrics_EditDistance: .. _cn_api_fluid_metrics_EditDistance:
EditDistance EditDistance
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.metrics.EditDistance(name) .. py:class:: paddle.fluid.metrics.EditDistance(name)
...@@ -307,12 +269,63 @@ EditDistance ...@@ -307,12 +269,63 @@ EditDistance
英文版API文档: :ref:`api_fluid_metrics_EditDistance`
.. _cn_api_fluid_metrics_MetricBase:
MetricBase
-------------------------------
.. py:class:: paddle.fluid.metrics.MetricBase(name)
所有Metrics的基类。MetricBase为模型估计方法定义一组接口。Metrics累积连续的两个minibatch之间的度量状态,对每个minibatch用最新接口将当前minibatch值添加到全局状态。用eval函数来计算last reset()或者scratch on()中累积的度量值。如果需要定制一个新的metric,请继承自MetricBase和自定义实现类。
参数:
- **name** (str) - metric实例名。例如准确率(accuracy)。如果想区分一个模型里不同的metrics,则需要实例名。
.. py:method:: reset()
reset()清除度量(metric)的状态(state)。默认情况下,状态(state)包含没有 ``_`` 前缀的metric。reset将这些状态设置为初始状态。如果不想使用隐式命名规则,请自定义reset接口。
.. py:method:: get_config()
获取度量(metric)状态和当前状态。状态(state)包含没有 ``_`` 前缀的成员。
参数:**None**
返回:metric对应到state的字典
返回类型:字典(dict)
.. py:method:: update(preds,labels)
更新每个minibatch的度量状态(metric states),用户可通过Python或者C++操作符计算minibatch度量值(metric)。
参数:
- **preds** (numpy.array) - 当前minibatch的预测
- **labels** (numpy.array) - 当前minibatch的标签,如果标签为one-hot或者soft-label,应该自定义相应的更新规则。
.. py:method:: eval()
基于累积状态(accumulated states)评估当前度量(current metric)。
返回:metrics(Python中)
返回类型:float|list(float)|numpy.array
.. _cn_api_fluid_metrics_Precision: .. _cn_api_fluid_metrics_Precision:
Precision Precision
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.metrics.Precision(name=None) .. py:class:: paddle.fluid.metrics.Precision(name=None)
...@@ -339,12 +352,14 @@ Precision(也称为 positive predictive value,正预测值)是被预测为正样 ...@@ -339,12 +352,14 @@ Precision(也称为 positive predictive value,正预测值)是被预测为正样
英文版API文档: :ref:`api_fluid_metrics_Precision`
.. _cn_api_fluid_metrics_Recall: .. _cn_api_fluid_metrics_Recall:
Recall Recall
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.metrics.Recall(name=None) .. py:class:: paddle.fluid.metrics.Recall(name=None)
...@@ -368,5 +383,7 @@ https://en.wikipedia.org/wiki/Precision_and_recall ...@@ -368,5 +383,7 @@ https://en.wikipedia.org/wiki/Precision_and_recall
英文版API文档: :ref:`api_fluid_metrics_Recall`
#################
fluid.nets
#################
.. _cn_api_fluid_nets_glu:
glu
-------------------------------
.. py:function:: paddle.fluid.nets.glu(input, dim=-1)
T
he Gated Linear Units(GLU)由切分(split),sigmoid激活函数和按元素相乘组成。沿着给定维将input拆分成两个大小相同的部分,a和b,计算如下:
.. math::
GLU(a,b) = a\bigotimes \sigma (b)
参考论文: `Language Modeling with Gated Convolutional Networks <https://arxiv.org/pdf/1612.08083.pdf>`_
参数:
- **input** (Variable) - 输入变量,张量或者LoDTensor
- **dim** (int) - 拆分的维度。如果 :math:`dim<0`,拆分的维为 :math:`rank(input)+dim`。默认为-1
返回:变量 —— 变量的大小为输入的一半
返回类型:变量(Variable)
**代码示例:**
.. code-block:: python
data = fluid.layers.data(name="words", shape=[3, 6, 9], dtype="float32")
output = fluid.nets.glu(input=data, dim=1) # shape of output: [3, 3, 9]
.. _cn_api_fluid_nets_img_conv_group:
img_conv_group
-------------------------------
.. 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进行连续计算,并将最后一个结果传递给Pool2d。
参数:
- **input** (Variable) - 具有[N,C,H,W]格式的输入图像。
- **conv_num_filter** (list | tuple) - 表示该组的过滤器数。
- **pool_size** (int | list | tuple) - ``Pool2d Layer`` 池的大小。如果pool_size是列表或元组,则它必须包含两个整数(pool_size_H,pool_size_W)。否则,pool_size_H = pool_size_W = pool_size。
- **conv_padding** (int | list | tuple) - Conv2d Layer的 ``padding`` 大小。如果 ``padding`` 是列表或元组,则其长度必须等于 ``conv_num_filter`` 的长度。否则,所有Conv2d图层的 ``conv_padding`` 都是相同的。默认1。
- **conv_filter_size** (int | list | tuple) - 过滤器大小。如果filter_size是列表或元组,则其长度必须等于 ``conv_num_filter`` 的长度。否则,所有Conv2d图层的 ``conv_filter_size`` 都是相同的。默认3。
- **conv_act** (str) - ``Conv2d Layer`` 的激活类型, ``BatchNorm`` 后面没有。默认值:无。
- **param_attr** (ParamAttr) - Conv2d层的参数。默认值:无
- **conv_with_batchnorm** (bool | list) - 表示在 ``Conv2d Layer`` 之后是否使用 ``BatchNorm`` 。如果 ``conv_with_batchnorm`` 是一个列表,则其长度必须等于 ``conv_num_filter`` 的长度。否则, ``conv_with_batchnorm`` 指示是否所有Conv2d层都遵循 ``BatchNorm``。默认为False。
- **conv_batchnorm_drop_rate** (float | list) - 表示 ``BatchNorm`` 之后的 ``Dropout Layer`` 的 ``rop_rate`` 。如果 ``conv_batchnorm_drop_rate`` 是一个列表,则其长度必须等于 ``conv_num_filter`` 的长度。否则,所有 ``Dropout Layers`` 的 ``drop_rate`` 都是 ``conv_batchnorm_drop_rate`` 。默认值为0.0。
- **pool_stride** (int | list | tuple) - ``Pool2d`` 层的汇集步幅。如果 ``pool_stride`` 是列表或元组,则它必须包含两个整数(pooling_stride_H,pooling_stride_W)。否则,pooling_stride_H = pooling_stride_W = pool_stride。默认1。
- **pool_type** (str) - 池化类型可以是最大池化的 ``max`` 和平均池化的 ``avg`` 。默认max。
- **use_cudnn** (bool) - 是否使用cudnn内核,仅在安装cudnn库时才有效。默认值:True
返回: 使用Convolution2d进行串行计算后的最终结果,BatchNorm,DropOut和Pool2d。
返回类型: 变量(Variable)。
**代码示例**
.. code-block:: python
img = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32')
conv_pool = fluid.nets.img_conv_group(input=img,
num_channels=3,
conv_padding=1,
conv_num_filter=[3, 3],
conv_filter_size=3,
conv_act="relu",
pool_size=2,
pool_stride=2)
.. _cn_api_fluid_nets_scaled_dot_product_attention:
scaled_dot_product_attention
-------------------------------
.. py:function:: paddle.fluid.nets.scaled_dot_product_attention(queries, keys, values, num_heads=1, dropout_rate=0.0)
点乘attention运算。
attention运算机制可以被视为将查询和一组键值对映射到输出。 将输出计算为值的加权和,其中分配给每个值的权重由查询的兼容性函数(此处的点积)与对应的密钥计算。
可以通过(batch)矩阵乘法实现点积attention运算,如下所示:
.. math::
Attention(Q, K, V)= softmax(QK^\mathrm{T})V
请参阅 `Attention Is All You Need <https://arxiv.org/pdf/1706.03762.pdf>`_
参数:
- **queries** (Variable) - 输入变量,应为3-D Tensor。
- **keys** (Variable) - 输入变量,应为3-D Tensor。
- **values** (Variable) - 输入变量,应为3-D Tensor。
- **num_heads** (int) - 计算缩放点积attention运算的head数。默认值:1。
- **dropout_rate** (float) - 降低attention的dropout率。默认值:0.0。
返回: 通过multi-head来缩放点积attention运算的三维张量。
返回类型: 变量(Variable)。
抛出异常:
- ``ValueError`` - 如果输入查询键,值不是3-D Tensor会报错。
.. note::
当num_heads> 1时,分别学习三个线性投影,以将输入查询,键和值映射到查询',键'和值'。 查询',键'和值'与查询,键和值具有相同的形状。
当num_heads == 1时,scaled_dot_product_attention没有可学习的参数。
**代码示例**
.. code-block:: python
queries = fluid.layers.data(name="queries",
shape=[3, 5, 9],
dtype="float32",
append_batch_size=False)
queries.stop_gradient = False
keys = fluid.layers.data(name="keys",
shape=[3, 6, 9],
dtype="float32",
append_batch_size=False)
keys.stop_gradient = False
values = fluid.layers.data(name="values",
shape=[3, 6, 10],
dtype="float32",
append_batch_size=False)
values.stop_gradient = False
contexts = fluid.nets.scaled_dot_product_attention(queries, keys, values)
contexts.shape # [3, 5, 10]
.. _cn_api_fluid_nets_sequence_conv_pool:
sequence_conv_pool
-------------------------------
.. py:function:: paddle.fluid.nets.sequence_conv_pool(input, num_filters, filter_size, param_attr=None, act='sigmoid', pool_type='max')
sequence_conv_pool由序列卷积和池化组成
参数:
- **input** (Variable) - sequence_conv的输入,支持变量时间长度输入序列。当前输入为shape为(T,N)的矩阵,T是mini-batch中的总时间步数,N是input_hidden_size
- **num_filters** (int)- 滤波器数
- **filter_size** (int)- 滤波器大小
- **param_attr** (ParamAttr) - Sequence_conv层的参数。默认:None
- **act** (str) - Sequence_conv层的激活函数类型。默认:sigmoid
- **pool_type** (str)- 池化类型。可以是max-pooling的max,average-pooling的average,sum-pooling的sum,sqrt-pooling的sqrt。默认max
返回:序列卷积(Sequence Convolution)和池化(Pooling)的结果
返回类型:变量(Variable)
**代码示例**:
.. code-block:: python
input_dim = len(word_dict)
emb_dim = 128
hid_dim = 512
data = fluid.layers.data( ame="words", shape=[1], dtype="int64", lod_level=1)
emb = fluid.layers.embedding(input=data, size=[input_dim, emb_dim], is_sparse=True)
seq_conv = fluid.nets.sequence_conv_pool(input=emb,
num_filters=hid_dim,
filter_size=3,
act="tanh",
pool_type="sqrt")
.. _cn_api_fluid_nets_simple_img_conv_pool:
simple_img_conv_pool
-------------------------------
.. 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`` 由一个Convolution2d和一个Pool2d组成。
参数:
- **input** (Variable) - 输入图像的格式为[N,C,H,W]。
- **num_filters** (int) - ``filter`` 的数量。它与输出的通道相同。
- **filter_size** (int | list | tuple) - 过滤器大小。如果 ``filter_size`` 是列表或元组,则它必须包含两个整数(filter_size_H,filter_size_W)。否则,filter_size_H = filter_size_W = filter_size。
- **pool_size** (int | list | tuple) - Pool2d池化层大小。如果pool_size是列表或元组,则它必须包含两个整数(pool_size_H,pool_size_W)。否则,pool_size_H = pool_size_W = pool_size。
- **pool_stride** (int | list | tuple) - Pool2d池化层步长。如果pool_stride是列表或元组,则它必须包含两个整数(pooling_stride_H,pooling_stride_W)。否则,pooling_stride_H = pooling_stride_W = pool_stride。
- **pool_padding** (int | list | tuple) - Pool2d池化层的padding。如果pool_padding是列表或元组,则它必须包含两个整数(pool_padding_H,pool_padding_W)。否则,pool_padding_H = pool_padding_W = pool_padding。默认值为0。
- **pool_type** (str) - 池化类型可以是 ``max-pooling`` 的 ``max`` 和平均池的 ``avg`` 。默认 ``max`` 。
- **global_pooling** (bool)- 是否使用全局池。如果global_pooling = true,则忽略pool_size和pool_padding。默认为False
- **conv_stride** (int | list | tuple) - conv2d Layer的步长。如果stride是列表或元组,则它必须包含两个整数,(conv_stride_H,conv_stride_W)。否则,conv_stride_H = conv_stride_W = conv_stride。默认值:conv_stride = 1。
- **conv_padding** (int | list | tuple) - conv2d Layer的padding大小。如果padding是列表或元组,则它必须包含两个整数(conv_padding_H,conv_padding_W)。否则,conv_padding_H = conv_padding_W = conv_padding。默认值:conv_padding = 0。
- **conv_dilation** (int | list | tuple) - conv2d Layer的dilation大小。如果dilation是列表或元组,则它必须包含两个整数(conv_dilation_H,conv_dilation_W)。否则,conv_dilation_H = conv_dilation_W = conv_dilation。默认值:conv_dilation = 1。
- **conv_groups** (int) - conv2d Layer的组数。根据Alex Krizhevsky的Deep CNN论文中的分组卷积:当group = 2时,前半部分滤波器仅连接到输入通道的前半部分,而后半部分滤波器仅连接到后半部分输入通道。默认值:groups = 1。
- **param_attr** (ParamAttr | None) - 可学习参数的参数属性或conv2d权重。如果将其设置为None或ParamAttr的一个属性,则conv2d将创建ParamAttr作为param_attr。如果未设置param_attr的初始化,则使用 :math:`Normal(0.0,std)` 初始化参数,并且 ``std`` 为 :math:`(\frac{2.0 }{filter\_elem\_num})^{0.5}` 。默认值:None
- **bias_attr** (ParamAttr | bool | None) - conv2d的bias参数属性。如果设置为False,则不会向输出单元添加bias。如果将其设置为None或ParamAttr的一个属性,则conv2d将创建ParamAttr作为bias_attr。如果未设置bias_attr的初始化程序,则将偏差初始化为零。默认值:None
- **act** (str) - conv2d的激活类型,如果设置为None,则不附加激活。默认值:无。
- **use_cudnn** (bool) - 是否使用cudnn内核,仅在安装cudnn库时才有效。默认值:True。
返回: Convolution2d和Pool2d之后输入的结果。
返回类型: 变量(Variable)
**示例代码**
.. code-block:: python
img = fluid.layers.data(name='img', shape=[1, 28, 28], dtype='float32')
conv_pool = fluid.nets.simple_img_conv_pool(input=img,
filter_size=5,
num_filters=20,
pool_size=2,
pool_stride=2,
act="relu")
################# #################
fluid.optimizer fluid.optimizer
################# #################
.. _cn_api_fluid_optimizer_Adadelta:
Adadelta
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.Adadelta
``AdadeltaOptimizer`` 的别名
.. _cn_api_fluid_optimizer_Adagrad:
Adagrad
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.Adagrad
``AdagradOptimizer`` 的别名
.. _cn_api_fluid_optimizer_AdagradOptimizer: .. _cn_api_fluid_optimizer_AdagradOptimizer:
AdagradOptimizer AdagradOptimizer
>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.AdagradOptimizer(learning_rate, epsilon=1e-06, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.AdagradOptimizer(learning_rate, epsilon=1e-06, regularization=None, name=None)
...@@ -37,45 +60,42 @@ http://cs231n.github.io/neural-networks-3/#ada 用于维持数值稳定性,避 ...@@ -37,45 +60,42 @@ http://cs231n.github.io/neural-networks-3/#ada 用于维持数值稳定性,避
optimizer = fluid.optimizer.Adagrad(learning_rate=0.2) optimizer = fluid.optimizer.Adagrad(learning_rate=0.2)
optimizer.minimize(cost) optimizer.minimize(cost)
AdamOptimizer
>>>>>>>>>>>>>
.. py:class:: paddle.fluid.optimizer. AdamOptimizer(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, regularization=None, name=None)
该函数实现了自适应矩估计优化器,介绍自Adam论文:https://arxiv.org/abs/1412.6980的第二节。Adam是一阶基于梯度下降的算法,基于自适应低阶矩估计。
Adam更新如下:
.. math::
t & = t + 1\\moment\_out & = {\beta}_1 * moment + (1 - {\beta}_1) * grad\\inf\_norm\_out & = max({\beta}_2 * inf\_norm + \epsilon, |grad|)\\learning\_rate & = \frac{learning\_rate}{1 - {\beta}_1^t}\\param\_out & = param - learning\_rate * \frac{moment\_out}{inf\_norm\_out}
参数: .. _cn_api_fluid_optimizer_Adam:
- **learning_rate** (float|Variable)-学习率,用于更新参数。作为数据参数,可以是一个浮点类型值或有一个浮点类型值的变量
- **beta1** (float)-一阶矩估计的指数衰减率
- **beta2** (float)-二阶矩估计的指数衰减率
- **epsilon** (float)-保持数值稳定性的短浮点类型值
- **regularization** - 规则化函数,例如''fluid.regularizer.L2DecayRegularizer
- **name** - 可选名称前缀
**代码示例**: Adam
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.Adam
``AdamOptimizer`` 的别名
.. code-block:: python:
optimizer = fluid.optimizer.Adam(learning_rate=0.2)
optimizer.minimize(cost)
.. note::
目前,AdamaxOptimizer不支持稀疏参数优化
.. _cn_api_fluid_optimizer_Adamax:
Adamax
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.Adamax
``AdamaxOptimizer`` 的别名
英文版API文档: :ref:`api_fluid_optimizer_AdagradOptimizer`
.. _cn_api_fluid_optimizer_AdamaxOptimizer: .. _cn_api_fluid_optimizer_AdamaxOptimizer:
AdamaxOptimizer AdamaxOptimizer
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.AdamaxOptimizer(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.AdamaxOptimizer(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, regularization=None, name=None)
...@@ -119,12 +139,68 @@ Adamax 更新规则: ...@@ -119,12 +139,68 @@ Adamax 更新规则:
英文版API文档: :ref:`api_fluid_optimizer_AdamaxOptimizer`
.. _cn_api_fluid_optimizer_AdamOptimizer:
AdamOptimizer
-------------------------------
.. py:class:: paddle.fluid.optimizer. AdamOptimizer(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, regularization=None, name=None)
该函数实现了自适应矩估计优化器,介绍自 `Adam论文 <https://arxiv.org/abs/1412.6980>`_ 的第二节。Adam是一阶基于梯度下降的算法,基于自适应低阶矩估计。
Adam更新如下:
.. math::
t & = t + 1\\moment\_out & = {\beta}_1 * moment + (1 - {\beta}_1) * grad\\inf\_norm\_out & = max({\beta}_2 * inf\_norm + \epsilon, |grad|)\\learning\_rate & = \frac{learning\_rate}{1 - {\beta}_1^t}\\param\_out & = param - learning\_rate * \frac{moment\_out}{inf\_norm\_out}
参数:
- **learning_rate** (float|Variable)-学习率,用于更新参数。作为数据参数,可以是一个浮点类型值或有一个浮点类型值的变量
- **beta1** (float)-一阶矩估计的指数衰减率
- **beta2** (float)-二阶矩估计的指数衰减率
- **epsilon** (float)-保持数值稳定性的短浮点类型值
- **regularization** - 规则化函数,例如''fluid.regularizer.L2DecayRegularizer
- **name** - 可选名称前缀
**代码示例**:
.. code-block:: python:
optimizer = fluid.optimizer.Adam(learning_rate=0.2)
optimizer.minimize(cost)
.. _cn_api_fluid_optimizer_DecayedAdagrad:
DecayedAdagrad
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.DecayedAdagrad
``DecayedAdagradOptimizer`` 的别名
.. _cn_api_fluid_optimizer_DecayedAdagradOptimizer: .. _cn_api_fluid_optimizer_DecayedAdagradOptimizer:
DecayedAdagradOptimizer DecayedAdagradOptimizer
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.DecayedAdagradOptimizer(learning_rate, decay=0.95, epsilon=1e-06, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.DecayedAdagradOptimizer(learning_rate, decay=0.95, epsilon=1e-06, regularization=None, name=None)
...@@ -160,12 +236,27 @@ Decayed Adagrad Optimizer ...@@ -160,12 +236,27 @@ Decayed Adagrad Optimizer
英文版API文档: :ref:`api_fluid_optimizer_DecayedAdagradOptimizer`
.. _cn_api_fluid_optimizer_Ftrl:
Ftrl
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.Ftrl
``FtrlOptimizer`` 的别名
.. _cn_api_fluid_optimizer_FtrlOptimizer: .. _cn_api_fluid_optimizer_FtrlOptimizer:
FtrlOptimizer FtrlOptimizer
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.FtrlOptimizer(learning_rate, l1=0.0, l2=0.0, lr_power=-0.5,regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.FtrlOptimizer(learning_rate, l1=0.0, l2=0.0, lr_power=-0.5,regularization=None, name=None)
...@@ -194,9 +285,9 @@ TFRTL 原始论文: ( `https://www.eecs.tufts.edu/~dsculley/papers/ad-click-pred ...@@ -194,9 +285,9 @@ TFRTL 原始论文: ( `https://www.eecs.tufts.edu/~dsculley/papers/ad-click-pred
参数: 参数:
- **learning_rate** (float|Variable)-全局学习率。 - **learning_rate** (float|Variable)-全局学习率。
- **l1** (float) - **l1** (float) - 暂无,请等待后期更新
- **l2** (float) - **l2** (float) - 暂无,请等待后期更新
- **lr_power** (float) - **lr_power** (float) - 暂无,请等待后期更新
- **regularization** - 正则化器,例如 ``fluid.regularizer.L2DecayRegularizer`` - **regularization** - 正则化器,例如 ``fluid.regularizer.L2DecayRegularizer``
- **name** — 可选的名称前缀 - **name** — 可选的名称前缀
...@@ -211,29 +302,32 @@ TFRTL 原始论文: ( `https://www.eecs.tufts.edu/~dsculley/papers/ad-click-pred ...@@ -211,29 +302,32 @@ TFRTL 原始论文: ( `https://www.eecs.tufts.edu/~dsculley/papers/ad-click-pred
_, params_grads = optimizer.minimize(cost) _, params_grads = optimizer.minimize(cost)
.. note:: .. note::
目前, FtrlOptimizer 不支持 sparse gradient 目前, FtrlOptimizer 不支持 sparse gradient
英文版API文档: :ref:`api_fluid_optimizer_FtrlOptimizer`
.. _cn_api_fluid_optimizer_LarsMomentum: .. _cn_api_fluid_optimizer_LarsMomentum:
LarsMomentum LarsMomentum
>>>>>>>>>>>>>> -------------------------------
:code:`fluid.optimizer.LarsMomentumOptimizer` 的别名 .. py:attribute:: paddle.fluid.optimizer.LarsMomentum
``fluid.optimizer.LarsMomentumOptimizer`` 的别名
英文版API文档: :ref:`api_fluid_optimizer_LarsMomentum`
.. _cn_api_fluid_optimizer_LarsMomentumOptimizer: .. _cn_api_fluid_optimizer_LarsMomentumOptimizer:
LarsMomentumOptimizer LarsMomentumOptimizer
>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.optimizer.LarsMomentumOptimizer(learning_rate, momentum, lars_coeff=0.001, lars_weight_decay=0.0005, regularization=None, name=None) .. py:function:: paddle.fluid.optimizer.LarsMomentumOptimizer(learning_rate, momentum, lars_coeff=0.001, lars_weight_decay=0.0005, regularization=None, name=None)
...@@ -265,12 +359,14 @@ LARS支持的Momentum优化器 ...@@ -265,12 +359,14 @@ LARS支持的Momentum优化器
英文版API文档: :ref:`api_fluid_optimizer_LarsMomentumOptimizer`
.. _cn_api_fluid_optimizer_ModelAverage: .. _cn_api_fluid_optimizer_ModelAverage:
ModelAverage ModelAverage
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.ModelAverage(average_window_rate, min_average_window=10000, max_average_window=10000, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.ModelAverage(average_window_rate, min_average_window=10000, max_average_window=10000, regularization=None, name=None)
...@@ -315,12 +411,25 @@ ModelAverage ...@@ -315,12 +411,25 @@ ModelAverage
英文版API文档: :ref:`api_fluid_optimizer_ModelAverage`
.. _cn_api_fluid_optimizer_Momentum:
Momentum
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.Momentum
``MomentumOptimizer`` 的别名
.. _cn_api_fluid_optimizer_MomentumOptimizer: .. _cn_api_fluid_optimizer_MomentumOptimizer:
MomentumOptimizer MomentumOptimizer
>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.MomentumOptimizer(learning_rate, momentum, use_nesterov=False, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.MomentumOptimizer(learning_rate, momentum, use_nesterov=False, regularization=None, name=None)
...@@ -349,12 +458,14 @@ MomentumOptimizer ...@@ -349,12 +458,14 @@ MomentumOptimizer
英文版API文档: :ref:`api_fluid_optimizer_MomentumOptimizer`
.. _cn_api_fluid_optimizer_RMSPropOptimizer: .. _cn_api_fluid_optimizer_RMSPropOptimizer:
RMSPropOptimizer RMSPropOptimizer
>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.RMSPropOptimizer(learning_rate, rho=0.95, epsilon=1e-06, momentum=0.0, centered=False, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.RMSPropOptimizer(learning_rate, rho=0.95, epsilon=1e-06, momentum=0.0, centered=False, regularization=None, name=None)
...@@ -406,12 +517,27 @@ RMSPropOptimizer ...@@ -406,12 +517,27 @@ RMSPropOptimizer
英文版API文档: :ref:`api_fluid_optimizer_RMSPropOptimizer`
.. _cn_api_fluid_optimizer_SGD:
SGD
-------------------------------
.. py:attribute:: paddle.fluid.optimizer.SGD
``SGDOptimizer`` 的别名
.. _cn_api_fluid_optimizer_SGDOptimizer: .. _cn_api_fluid_optimizer_SGDOptimizer:
SGDOptimizer SGDOptimizer
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.optimizer.SGDOptimizer(learning_rate, regularization=None, name=None) .. py:class:: paddle.fluid.optimizer.SGDOptimizer(learning_rate, regularization=None, name=None)
...@@ -438,5 +564,7 @@ SGDOptimizer ...@@ -438,5 +564,7 @@ SGDOptimizer
英文版API文档: :ref:`api_fluid_optimizer_SGDOptimizer`
################# #################
fluid.param_attr fluid.param_attr
################# #################
.. _cn_api_fluid_param_attr_ParamAttr:
ParamAttr
-------------------------------
.. py:class:: paddle.fluid.param_attr.ParamAttr(name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False)
该类代表了参数的各种属性。 为了使神经网络训练过程更加流畅,用户可以根据需要调整参数属性。比如learning rate(学习率), regularization(正则化), trainable(可训练性), do_model_average(平均化模型)和参数初始化方法.
参数:
- **name** (str) – 参数名。默认为None。
- **initializer** (Initializer) – 初始化该参数的方法。 默认为None
- **learning_rate** (float) – 参数的学习率。计算方法为 global_lr*parameter_lr∗scheduler_factor。 默认为1.0
- **regularizer** (WeightDecayRegularizer) – 正则因子. 默认为None
- **trainable** (bool) – 该参数是否可训练。默认为True
- **gradient_clip** (BaseGradientClipAttr) – 减少参数梯度的方法。默认为None
- **do_model_average** (bool) – 该参数是否服从模型平均值。默认为False
**代码示例**
.. code-block:: python
w_param_attrs = fluid.ParamAttr(name="fc_weight",
learning_rate=0.5,
regularizer=fluid.L2Decay(1.0),
trainable=True)
y_predict = fluid.layers.fc(input=x, size=10, param_attr=w_param_attrs)
.. _cn_api_fluid_param_attr_WeightNormParamAttr: .. _cn_api_fluid_param_attr_WeightNormParamAttr:
WeightNormParamAttr WeightNormParamAttr
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.param_attr.WeightNormParamAttr(dim=None, name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False) .. py:class:: paddle.fluid.param_attr.WeightNormParamAttr(dim=None, name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False)
...@@ -41,39 +80,11 @@ WeightNormParamAttr ...@@ -41,39 +80,11 @@ WeightNormParamAttr
英文版API文档: :ref:`api_fluid_param_attr_WeightNormParamAttr`
.. _cn_api_fluid_ParamAttr:
ParamAttr
>>>>>>>>>>>>>>>>>>>>>>>>>
.. py:class:: paddle.fluid.param_attr.ParamAttr(name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, gradient_clip=None, do_model_average=False)
该类代表了参数的各种属性。 为了使神经网络训练过程更加流畅,用户可以根据需要调整参数属性。比如learning rate(学习率), regularization(正则化), trainable(可训练性), do_model_average(平均化模型)和参数初始化方法.
参数:
- **name** (str) – 参数名。默认为None。
- **initializer** (Initializer) – 初始化该参数的方法。 默认为None
- **learning_rate** (float) – 参数的学习率。计算方法为 global_lr*parameter_lr∗scheduler_factor。 默认为1.0
- **regularizer** (WeightDecayRegularizer) – 正则因子. 默认为None
- **trainable** (bool) – 该参数是否可训练。默认为True
- **gradient_clip** (BaseGradientClipAttr) – 减少参数梯度的方法。默认为None
- **do_model_average** (bool) – 该参数是否服从模型平均值。默认为False
**代码示例**
.. code-block:: python
w_param_attrs = fluid.ParamAttr(name="fc_weight",
learning_rate=0.5,
regularizer=fluid.L2Decay(1.0),
trainable=True)
y_predict = fluid.layers.fc(input=x, size=10, param_attr=w_param_attrs)
英文版API文档: :ref:`api_fluid_ParamAttr`
################# #################
fluid.profiler fluid.profiler
################# #################
...@@ -8,7 +7,7 @@ ...@@ -8,7 +7,7 @@
.. _cn_api_fluid_profiler_cuda_profiler: .. _cn_api_fluid_profiler_cuda_profiler:
cuda_profiler cuda_profiler
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.profiler.cuda_profiler(*args, **kwds) .. py:function:: paddle.fluid.profiler.cuda_profiler(*args, **kwds)
...@@ -54,12 +53,14 @@ CUDA分析器。通过CUDA运行时应用程序编程接口对CUDA程序进行 ...@@ -54,12 +53,14 @@ CUDA分析器。通过CUDA运行时应用程序编程接口对CUDA程序进行
英文版API文档: :ref:`api_fluid_profiler_cuda_profiler`
.. _cn_api_fluid_profiler_profiler: .. _cn_api_fluid_profiler_profiler:
profiler profiler
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.profiler.profiler(*args, **kwds) .. py:function:: paddle.fluid.profiler.profiler(*args, **kwds)
...@@ -93,12 +94,14 @@ profile interface 。与cuda_profiler不同,此profiler可用于分析CPU和GP ...@@ -93,12 +94,14 @@ profile interface 。与cuda_profiler不同,此profiler可用于分析CPU和GP
英文版API文档: :ref:`api_fluid_profiler_profiler`
.. _cn_api_fluid_profiler_reset_profiler: .. _cn_api_fluid_profiler_reset_profiler:
reset_profiler reset_profiler
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.profiler.reset_profiler() .. py:function:: paddle.fluid.profiler.reset_profiler()
...@@ -118,12 +121,14 @@ reset_profiler ...@@ -118,12 +121,14 @@ reset_profiler
英文版API文档: :ref:`api_fluid_profiler_reset_profiler`
.. _cn_api_fluid_profiler_start_profiler: .. _cn_api_fluid_profiler_start_profiler:
start_profiler start_profiler
>>>>>>>>>>>> -------------------------------
.. py:function:: paddle.fluid.profiler.start_profiler(state) .. py:function:: paddle.fluid.profiler.start_profiler(state)
...@@ -157,12 +162,14 @@ start_profiler ...@@ -157,12 +162,14 @@ start_profiler
英文版API文档: :ref:`api_fluid_profiler_start_profiler`
.. _cn_api_fluid_profiler_stop_profiler: .. _cn_api_fluid_profiler_stop_profiler:
stop_profiler stop_profiler
>>>>>>>>>>>> -------------------------------
.. py:function::paddle.fluid.profiler.stop_profiler(sorted_key=None, profile_path='/tmp/profile') .. py:function::paddle.fluid.profiler.stop_profiler(sorted_key=None, profile_path='/tmp/profile')
...@@ -192,5 +199,7 @@ stop_profiler ...@@ -192,5 +199,7 @@ stop_profiler
英文版API文档: :ref:`api_fluid_profiler_stop_profiler`
#######################
fluid.recordio_writer
#######################
.. _cn_api_fluid_recordio_writer_convert_reader_to_recordio_file:
convert_reader_to_recordio_file
-------------------------------
.. py:function:: paddle.fluid.recordio_writer.convert_reader_to_recordio_file(filename, reader_creator, feeder, compressor=Compressor.Snappy, max_num_records=1000, feed_order=None)
将 Python reader 转换为recordio文件
**代码示例:**
.. code-block:: python
import paddle.fluid as fluid
import paddle.dataset.mnist as mnist
import paddle
tmp_program = fluid.Program()
with fluid.program_guard(tmp_program):
img = fluid.layers.data(name='img', shape=[784])
label = fluid.layers.data(name='label', shape=[1], dtype='int64')
feeder = fluid.DataFeeder(feed_list=[img, label], place=fluid.CPUPlace())
# mnist.recordio 会在当前目录生成
fluid.recordio_writer.convert_reader_to_recordio_file(
filename="mnist.recordio",
reader_creator=paddle.batch(mnist.train(), batch_size=32),
feeder=feeder)
参数:
- **filename** (str) - recordio文件名
- **reader_creator** (callable) - Python reader的创造器。可参考 :ref:`api_guide_python_reader`
- **feeder** (DataFeeder) - 数据处理实例。用于将 :code:`reader_creator` 转换为 :code:`lod_tensor`
- **compressor** – 必须在 :code:`fluid.core.RecordIOWriter.Compressor.Snappy` 或 :code:` fluid.core.RecordIOWriter.Compressor.NoCompress` 中, 默认情况下使用 :code:`Snappy`
- **max_num_records** (int) – 一个 chuck 中 records 的最大数量。每个 records 都是 reader 函数的返回值
- **feed_order** (list) - reader 返回的变量名的顺序
返回: 保存的 record 的数目
返回类型: int
.. _cn_api_fluid_recordio_writer_convert_reader_to_recordio_files:
convert_reader_to_recordio_files
-------------------------------
.. py:function:: paddle.fluid.recordio_writer.convert_reader_to_recordio_files(filename, batch_per_file, reader_creator, feeder, compressor=Compressor.Snappy, max_num_records=1000, feed_order=None)
该函数可以将一个python驱动的reader(数据读取器)转变为多个recodio文件。
该API实现的功能和 ``convert_reader_to_recordio_file`` 基本相同,只不过本函数会生成多个recordio文件。
每个文件最多存储 ``batch_per_file`` 条记录。
请参照 :ref:`cn_api_fluid_recordio_writer_convert_reader_to_recordio_file` 获取更详细的介绍。
###################
#################
fluid.regularizer fluid.regularizer
################# ###################
.. _cn_api_fluid_regularizer_L1Decay:
L1Decay
-------------------------------
.. py:attribute:: paddle.fluid.regularizer.L1Decay
``L1DecayRegularizer`` 的别名
.. _cn_api_fluid_regularizer_L1DecayRegularizer: .. _cn_api_fluid_regularizer_L1DecayRegularizer:
L1DecayRegularizer L1DecayRegularizer
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.regularizer.L1DecayRegularizer(regularization_coeff=0.0) .. py:class:: paddle.fluid.regularizer.L1DecayRegularizer(regularization_coeff=0.0)
...@@ -37,12 +45,26 @@ L1正则将会稀疏化权重矩阵。 ...@@ -37,12 +45,26 @@ L1正则将会稀疏化权重矩阵。
英文版API文档: :ref:`api_fluid_regularizer_L1DecayRegularizer`
.. _cn_api_fluid_regularizer_L2Decay:
L2Decay
-------------------------------
.. py:attribute:: paddle.fluid.regularizer.L2Decay
``L2DecayRegularizer`` 的别名
.. _cn_api_fluid_regularizer_L2DecayRegularizer: .. _cn_api_fluid_regularizer_L2DecayRegularizer:
L2DecayRegularizer L2DecayRegularizer
>>>>>>>>>>>> -------------------------------
.. py:class:: paddle.fluid.regularizer.L2DecayRegularizer(regularization_coeff=0.0) .. py:class:: paddle.fluid.regularizer.L2DecayRegularizer(regularization_coeff=0.0)
...@@ -68,5 +90,7 @@ L2DecayRegularizer ...@@ -68,5 +90,7 @@ L2DecayRegularizer
英文版API文档: :ref:`api_fluid_regularizer_L2DecayRegularizer`
#################
fluid.transpiler
#################
.. _cn_api_fluid_transpiler_DistributeTranspiler:
DistributeTranspiler
-------------------------------
.. py:class:: paddle.fluid.transpiler.DistributeTranspiler (config=None)
该类可以把fluid program转变为分布式数据并行计算程序(distributed data-parallelism programs),可以有Pserver和NCCL2两种模式。
当program在Pserver(全称:parameter server)模式下, ``main_program`` (主程序)转为使用一架远程parameter server(即pserver,参数服务器)来进行参数优化,并且优化图会被输入到一个pserver program中。
在NCCL2模式下,transpiler会在 ``startup_program`` 中附加一个 ``NCCL_ID`` 广播算子(broadcasting operators)来实现在该集群中所有工作结点共享``NCCL_ID`` 。
调用 ``transpile_nccl2`` 后, 你 **必须** 将 ``trainer_id`` , ``num_trainers`` 参数提供给 ``ParallelExecutor`` 来启动NCCL2分布式模式。
**代码示例**
.. code-block:: python
# for pserver mode
pserver_endpoints = "192.168.0.1:6174,192.168.0.2:6174"
trainer_endpoints = "192.168.0.1:6174,192.168.0.2:6174"
current_endpoint = "192.168.0.1:6174"
trainer_id = 0
trainers = 4
role = os.getenv("PADDLE_TRAINING_ROLE")
t = fluid.DistributeTranspiler()
t.transpile(
trainer_id, pservers=pserver_endpoints, trainers=trainers)
if role == "PSERVER":
pserver_program = t.get_pserver_program(current_endpoint)
pserver_startup_program = t.get_startup_program(current_endpoint,
pserver_program)
elif role == "TRAINER":
trainer_program = t.get_trainer_program()
# for nccl2 mode
config = fluid.DistributeTranspilerConfig()
config.mode = "nccl2"
t = fluid.DistributeTranspiler(config=config)
t.transpile(trainer_id, workers=workers, current_endpoint=curr_ep)
exe = fluid.ParallelExecutor(
use_cuda,
loss_name=loss_var.name,
num_trainers=len(trainers.split(",)),
trainer_id=trainer_id
)
.. py:method:: transpile(trainer_id, program=None, pservers='127.0.0.1:6174', trainers=1, sync_mode=True, startup_program=None, current_endpoint='127.0.0.1:6174')
该方法可以运行该transpiler(转译器)。
参数:
- **trainer_id** (int) – 当前Trainer worker的id, 如果有n个Trainer worker, id 取值范围为0 ~ n-1
- **program** (Program|None) – 待transpile(转译)的program, 缺省为 ``fluid.default_main_program()``
- **startup_program** (Program|None) - 要转译的 ``startup_program`` ,默认为 ``fluid.default_startup_program()``
- **pservers** (str) – 内容为Pserver列表的字符串,格式为:按逗号区分不同的Pserver,每个Pserver的格式为 *ip地址:端口号*
- **trainers** (int|str) – 在Pserver模式下,该参数指Trainer机的个数;在nccl2模式下,它是一个内容为Trainer终端列表的字符串
- **sync_mode** (bool) – 是否做同步训练(synchronous training), 默认为True
- **startup_program** (Program|None) – 待transpile(转译)的startup_program,默认为 ``fluid.default_main_program()``
- **current_endpoint** (str) – 当需要把program转译(transpile)至NCCL2模式下时,需要将当前endpoint(终端)传入该参数。Pserver模式不使用该参数
.. py:method:: get_trainer_program(wait_port=True)
该方法可以得到Trainer侧的program。
返回: Trainer侧的program
返回类型: Program
.. py:method:: get_pserver_program(endpoint)
该方法可以得到Pserver(参数服务器)侧的程序
参数:
- **endpoint** (str) – 当前Pserver终端
返回: 当前Pserver需要执行的program
返回类型: Program
.. py:method:: get_pserver_programs(endpoint)
该方法可以得到Pserver侧用于分布式训练的 ``main_program`` 和 ``startup_program`` 。
参数:
- **endpoint** (str) – 当前Pserver终端
返回: (main_program, startup_program), “Program”类型的元组
返回类型: tuple
.. py:method:: get_startup_program(endpoint, pserver_program=None, startup_program=None)
**该函数已停止使用**
获取当前Pserver的startup_program,如果有多个被分散到不同blocks的变量,则修改operator的输入变量。
参数:
- **endpoint** (str) – 当前Pserver终端
- **pserver_program** (Program) – 已停止使用。 先调用get_pserver_program
- **startup_program** (Program) – 已停止使用。应在初始化时传入startup_program
返回: Pserver侧的startup_program
返回类型: Program
.. _cn_api_fluid_transpiler_DistributeTranspilerConfig:
DistributeTranspilerConfig
-------------------------------
.. py:class:: paddle.fluid.transpiler.DistributeTranspilerConfig
.. py:method:: slice_var_up (bool)
为Pserver将张量切片, 默认为True
.. py:method:: split_method (PSDispatcher)
可使用 RoundRobin 或者 HashName
注意: 尝试选择最佳方法来达到负载均衡。
.. py:attribute:: min_block_size (int)
最小数据块的大小
注意: 根据:https://github.com/PaddlePaddle/Paddle/issues/8638#issuecomment-369912156, 当数据块大小超过2MB时,我们可以有效地使用带宽。如果你想更改它,请详细查看slice_variable函数。
.. _cn_api_fluid_transpiler_HashName:
HashName
-------------------------------
.. py:class:: paddle.fluid.transpiler.HashName(pserver_endpoints)
使用 python ``Hash()`` 函数将变量名散列到多个pserver终端。
参数:
- **pserver_endpoints** (list) - endpoint (ip:port)的 list
.. _cn_api_fluid_transpiler_memory_optimize:
memory_optimize
-------------------------------
.. py:function:: paddle.fluid.transpiler.memory_optimize(input_program, skip_opt_set=None, print_log=False, level=0, skip_grads=False)
通过重用var内存来优化内存。
注意:它不支持block中嵌套子block。
参数:
- **input_program** (str) – 输入Program。
- **skip_opt_set** (set) – set中的vars将不被内存优化。
- **print_log** (bool) – 是否打印debug日志。
- **level** (int) - 如果 level=0 并且shape是完全相等,则重用。
返回: None
.. _cn_api_fluid_transpiler_release_memory:
release_memory
-------------------------------
.. py:function:: paddle.fluid.transpiler.release_memory(input_program, skip_opt_set=None)
该函数可以调整输入program,插入 ``delete_op`` 删除算子,提前删除不需要的变量。
改动是在变量本身上进行的。
**提醒** : 该API还在试验阶段,会在后期版本中删除。不建议用户使用。
参数:
- **input_program** (Program) – 在此program中插入 ``delete_op``
- **skip_opt_set** (set) – 在内存优化时跳过的变量的集合
返回: None
.. _cn_api_fluid_transpiler_RoundRobin:
RoundRobin
-------------------------------
.. py:class:: paddle.fluid.transpiler.RoundRobin(pserver_endpoints)
使用 ``RondRobin`` 方法将变量分配给服务器端点。
`RondRobin <https://en.wikipedia.org/wiki/Round-robin_scheduling>`_
参数:
- **pserver_endpoints** (list) - endpoint (ip:port)的 list
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册