提交 a09152a3 编写于 作者: S swtkiwi

test=develop

上级 6281ff04
......@@ -7,6 +7,12 @@ append_backward
.. py:function:: paddle.fluid.backward.append_backward(loss, parameter_list=None, no_grad_set=None, callbacks=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.append_backward
:alias: paddle.append_backward,paddle.framework.append_backward
:old_api: paddle.fluid.backward.append_backward
......
......@@ -7,6 +7,12 @@ gradients
.. py:function:: paddle.fluid.backward.gradients(targets, inputs, target_gradients=None, no_grad_set=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.gradients
:alias: paddle.gradients,paddle.framework.gradients
:old_api: paddle.fluid.backward.gradients
......
......@@ -10,6 +10,9 @@ GradientClipByGlobalNorm
:old_api: paddle.fluid.clip.GradientClipByGlobalNorm
将一个 Tensor列表 :math:`t\_list` 中所有Tensor的L2范数之和,限定在 ``clip_norm`` 范围内。
......
......@@ -11,6 +11,9 @@ GradientClipByNorm
将输入的多维Tensor :math:`X` 的L2范数限制在 ``clip_norm`` 范围之内。
- 如果L2范数大于 ``clip_norm`` ,则该 Tensor 会乘以一个系数进行压缩
......
......@@ -12,6 +12,9 @@ GradientClipByValue
将输入的多维Tensor :math:`X` 的值限制在 [min, max] 范围。
输入的 Tensor 不是从该类里传入, 而是默认会选择 ``Program`` 中全部的梯度,如果 ``need_clip`` 不为None,则可以只选择部分参数进行梯度裁剪。
......
......@@ -10,6 +10,9 @@ set_gradient_clip
.. warning::
此API对位置使用的要求较高,其必须位于组建网络之后, ``minimize`` 之前,因此在未来版本中可能被删除,故不推荐使用。推荐在 ``optimizer`` 初始化时设置梯度裁剪。
有三种裁剪策略: :ref:`cn_api_fluid_clip_GradientClipByGlobalNorm` 、 :ref:`cn_api_fluid_clip_GradientClipByNorm` 、 :ref:`cn_api_fluid_clip_GradientClipByValue` 。
......
......@@ -10,6 +10,9 @@ BackwardStrategy
**注意:该API只在动态图下生效**
BackwardStrategy是描述动态图反向执行的策略,主要功能是定义动态图反向执行时的不同策略
......
......@@ -11,6 +11,9 @@ BatchNorm
该接口用于构建 ``BatchNorm`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。其中实现了批归一化层(Batch Normalization Layer)的功能,可用作卷积和全连接操作的批归一化函数,根据当前批次数据按通道计算的均值和方差进行归一化。更多详情请参考 : `Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift <https://arxiv.org/pdf/1502.03167.pdf>`_
当use_global_stats = False时,:math:`\mu_{\beta}` 和 :math:`\sigma_{\beta}^{2}` 是minibatch的统计数据。计算公式如下:
......
......@@ -11,6 +11,9 @@ BilinearTensorProduct
该接口用于构建 ``BilinearTensorProduct`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。双线性乘积计算式子如下。
.. math::
......
......@@ -5,6 +5,11 @@ Conv2DTranspose
.. py:class:: paddle.fluid.dygraph.Conv2DTranspose(num_channels, num_filters, filter_size, output_size=None, padding=0, stride=1, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, dtype="float32")
:alias_main: paddle.nn.Conv2DTranspose
:alias: paddle.nn.Conv2DTranspose,paddle.nn.layer.Conv2DTranspose,paddle.nn.layer.conv.Conv2DTranspose
......
......@@ -5,6 +5,11 @@ Conv3DTranspose
.. py:class:: paddle.fluid.dygraph.Conv3DTranspose(num_channels, num_filters, filter_size, output_size=None, padding=0, stride=1, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, name=None, dtype="float32")
:alias_main: paddle.nn.Conv3DTranspose
:alias: paddle.nn.Conv3DTranspose,paddle.nn.layer.Conv3DTranspose,paddle.nn.layer.conv.Conv3DTranspose
......
......@@ -5,6 +5,11 @@ Conv3D
.. py:class:: paddle.fluid.dygraph.Conv3D(num_channels, num_filters, filter_size, stride=1, padding=0, dilation=1, groups=None, param_attr=None, bias_attr=None, use_cudnn=True, act=None, dtype="float32")
:alias_main: paddle.nn.Conv3D
:alias: paddle.nn.Conv3D,paddle.nn.layer.Conv3D,paddle.nn.layer.conv.Conv3D
......
......@@ -10,6 +10,9 @@ CosineDecay
该接口提供按余弦函数衰减学习率的功能。
余弦衰减的计算方式如下。
......
......@@ -11,6 +11,9 @@ Embedding
嵌入层(Embedding Layer)
该接口用于构建 ``Embedding`` 的一个可调用对象,具体用法参照 ``代码示例`` 。其根据input中的id信息从embedding矩阵中查询对应embedding信息,并会根据输入的size (vocab_size, emb_size)和dtype自动构造一个二维embedding矩阵。
......
......@@ -10,6 +10,9 @@ ExponentialDecay
该接口提供一种学习率按指数函数衰减的功能。
指数衰减的计算方式如下。
......
......@@ -11,6 +11,9 @@ GroupNorm
**Group Normalization层**
该接口用于构建 ``GroupNorm`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。其中实现了组归一化层的功能。更多详情请参考: `Group Normalization <https://arxiv.org/abs/1803.08494>`_ 。
......
......@@ -5,6 +5,11 @@ InstanceNorm
.. py:class:: paddle.fluid.dygraph.InstanceNorm(num_channels, epsilon=1e-05, param_attr=None, bias_attr=None, dtype='float32')
:alias_main: paddle.nn.InstanceNorm
:alias: paddle.nn.InstanceNorm,paddle.nn.layer.InstanceNorm,paddle.nn.layer.norm.InstanceNorm
该接口用于构建 ``InstanceNorm`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。
可用作卷积和全连接操作的实例正则化函数,根据每个样本的每个通道的均值和方差信息进行正则化。该层需要的数据格式如下:
......
......@@ -10,6 +10,9 @@ InverseTimeDecay
该接口提供反时限学习率衰减的功能。
反时限学习率衰减计算方式如下。
......
......@@ -5,6 +5,12 @@ LayerList
.. py:class:: paddle.fluid.dygraph.LayerList(sublayers=None)
:alias_main: paddle.nn.LayerList
:alias: paddle.nn.LayerList
:old_api: paddle.fluid.dygraph.container.LayerList
......
......@@ -11,6 +11,9 @@ LayerNorm
该接口用于构建 ``LayerNorm`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。其中实现了层归一化层(Layer Normalization Layer)的功能,其可以应用于小批量输入数据。更多详情请参考:`Layer Normalization <https://arxiv.org/pdf/1607.06450v1.pdf>`_
计算公式如下
......
......@@ -5,6 +5,12 @@ Layer
.. py:class:: paddle.fluid.dygraph.Layer(name_scope=None, dtype=core.VarDesc.VarType.FP32)
:alias_main: paddle.nn.Layer
:alias: paddle.nn.Layer
:old_api: paddle.fluid.dygraph.layers.Layer
......
......@@ -12,6 +12,9 @@ Linear
**线性变换层:**
.. math::
......
......@@ -10,6 +10,9 @@ NaturalExpDecay
该接口提供按自然指数衰减学习率的功能。
自然指数衰减的计算方式如下。
......
......@@ -10,6 +10,9 @@ NoamDecay
该接口提供Noam衰减学习率的功能。
Noam衰减的计算方式如下。
......
......@@ -5,6 +5,12 @@ ParallelEnv
.. py:class:: paddle.fluid.dygraph.ParallelEnv()
:alias_main: paddle.imperative.ParallelEnv
:alias: paddle.imperative.ParallelEnv
:old_api: paddle.fluid.dygraph.parallel.ParallelEnv
**注意:**
**这个类的曾用名为 Env, 这个旧的名字会被废弃,请使用新的类名 ParallelEnv。**
......
......@@ -5,6 +5,12 @@ ParameterList
.. py:class:: paddle.fluid.dygraph.ParameterList(parameters=None)
:alias_main: paddle.nn.ParameterList
:alias: paddle.nn.ParameterList
:old_api: paddle.fluid.dygraph.container.ParameterList
......
......@@ -10,6 +10,9 @@ PiecewiseDecay
该接口提供对初始学习率进行分段(piecewise)常数衰减的功能。
分段常数衰减的过程举例描述如下。
......
......@@ -10,6 +10,9 @@ PolynomialDecay
该接口提供学习率按多项式衰减的功能。通过多项式衰减函数,使得学习率值逐步从初始的 ``learning_rate``,衰减到 ``end_learning_rate`` 。
计算方式如下。
......
......@@ -11,6 +11,9 @@ Pool2D
该接口用于构建 ``Pool2D`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。其将在神经网络中构建一个二维池化层,并使用上述输入参数的池化配置,为二维空间池化操作,根据 ``input`` , 池化类型 ``pool_type`` , 池化核大小 ``pool_size`` , 步长 ``pool_stride`` ,填充 ``pool_padding`` 这些参数得到输出。
输入X和输出Out是NCHW格式,N为批大小,C是通道数,H是特征高度,W是特征宽度。参数( ``ksize``, ``strides``, ``paddings`` )含有两个整型元素。分别表示高度和宽度上的参数。输入X的大小和输出Out的大小可能不一致。
......
......@@ -5,6 +5,12 @@ ProgramTranslator
.. py:class:: paddle.fluid.dygraph.dygraph_to_static.ProgramTranslator()
:alias_main: paddle.imperative.ProgramTranslator
:alias: paddle.imperative.ProgramTranslator
:old_api: paddle.fluid.dygraph.ProgramTranslator
将动态图函数转为静态图函数的类。该类是个单例(singleton)。
参数:
......
......@@ -5,6 +5,12 @@ Sequential
.. py:class:: paddle.fluid.dygraph.Sequential(*layers)
:alias_main: paddle.nn.Sequential
:alias: paddle.nn.Sequential
:old_api: paddle.fluid.dygraph.container.Sequential
......
......@@ -11,6 +11,9 @@ SpectralNorm
该接口用于构建 ``SpectralNorm`` 类的一个可调用对象,具体用法参照 ``代码示例`` 。其中实现了谱归一化层的功能,用于计算fc、conv1d、conv2d、conv3d层的权重参数的谱正则值,输入权重参数应分别为2-D, 3-D, 4-D, 5-D张量,输出张量与输入张量维度相同。谱特征值计算方式如下:
步骤1:生成形状为[H]的向量U,以及形状为[W]的向量V,其中H是输入权重张量的第 ``dim`` 个维度,W是剩余维度的乘积。
......
......@@ -10,6 +10,12 @@ TracedLayer
TracedLayer用于将前向动态图模型转换为静态图模型,主要用于将动态图保存后做在线C++预测。除此以外,用户也可使用转换后的静态图模型在Python端做预测,通常比原先的动态图性能更好。
TracedLayer使用 ``Executor`` 和 ``CompiledProgram`` 运行静态图模型。转换后的静态图模型与原动态图模型共享参数。
......
......@@ -10,6 +10,9 @@ guard
通过with语句创建一个dygraph运行的context,执行context代码。
参数:
......
......@@ -10,6 +10,12 @@ load_dygraph
该接口尝试从磁盘中加载参数或优化器的 ``dict`` 。
该接口会同时加载 ``model_path + ".pdparams"`` 和 ``model_path + ".pdopt"`` 中的内容。
......
......@@ -10,6 +10,12 @@ no_grad
创建一个上下文来禁用动态图梯度计算。在此模式下,每次计算的结果都将具有stop_gradient=True。
也可以用作一个装饰器(确保不要用括号来初始化)。
......
......@@ -9,6 +9,12 @@ prepare_context
该API是进行多进程多卡训练的环境配置接口,接受一个ParallelStrategy结构体变量作为输入。当strategy属性中的nums_trainer小于2时,API会直接返回,当nums_trainer大于1且为CUDAPlace时,由于目前动态图模式仅支持GPU多卡训练,仅能配置NCCL多卡训练的环境,所以此时会对NCCL环境进行配置,具体内容包括:生成NCCL ID,并广播至参与训练的各进程,用于支持的处理器同步操作,创建并配置NCCL通信器等。
参数:
......
......@@ -10,6 +10,12 @@ save_dygraph
该接口将传入的参数或优化器的 ``dict`` 保存到磁盘上。
``state_dict`` 是通过 :ref:`cn_api_fluid_dygraph_Layer` 的 ``state_dict()`` 方法得到的。
......
......@@ -10,6 +10,9 @@ to_variable
该函数实现从numpy\.ndarray对象或者Variable对象创建一个 ``Variable`` 类型的对象。
参数:
......
......@@ -7,6 +7,12 @@ Executor
.. py:class:: paddle.fluid.executor.Executor (place=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.Executor
:alias: paddle.Executor,paddle.framework.Executor
:old_api: paddle.fluid.executor.Executor
......
......@@ -7,6 +7,12 @@ global_scope
.. py:function:: paddle.fluid.global_scope()
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.global_scope
:alias: paddle.global_scope,paddle.framework.global_scope
:old_api: paddle.fluid.executor.global_scope
......
......@@ -7,6 +7,12 @@ scope_guard
.. py:function:: paddle.fluid.executor.scope_guard (scope)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.scope_guard
:alias: paddle.scope_guard,paddle.framework.scope_guard
:old_api: paddle.fluid.executor.scope_guard
......
......@@ -10,6 +10,12 @@ BuildStrategy
``BuildStrategy`` 使用户更方便地控制 :ref:`cn_api_fluid_ParallelExecutor` 中计算图的建造方法,可通过设置 ``ParallelExecutor`` 中的 ``BuildStrategy`` 成员来实现此功能。
**代码示例**
......
......@@ -5,6 +5,12 @@ CPUPlace
.. py:class:: paddle.fluid.CPUPlace
:alias_main: paddle.CPUPlace
:alias: paddle.CPUPlace,paddle.framework.CPUPlace
:old_api: paddle.fluid.core.CPUPlace
......
......@@ -5,6 +5,12 @@ CUDAPinnedPlace
.. py:class:: paddle.fluid.CUDAPinnedPlace
:alias_main: paddle.CUDAPinnedPlace
:alias: paddle.CUDAPinnedPlace,paddle.framework.CUDAPinnedPlace
:old_api: paddle.fluid.core.CUDAPinnedPlace
......
......@@ -5,6 +5,12 @@ CUDAPlace
.. py:class:: paddle.fluid.CUDAPlace
:alias_main: paddle.CUDAPlace
:alias: paddle.CUDAPlace,paddle.framework.CUDAPlace
:old_api: paddle.fluid.core.CUDAPlace
......
......@@ -10,6 +10,12 @@ CompiledProgram
CompiledProgram根据 `build_strategy` 的配置将输入的Program或Graph进行转换和优化,例如:计算图中算子融合、计算图执行过程中开启内存/显存优化等,关于build_strategy更多信息。请参阅 ``fluid.BuildStrategy`` 。
参数:
......
......@@ -10,6 +10,9 @@ DataFeedDesc
描述训练数据的格式。输入是一个文件路径名,其内容是protobuf message。
可以参考 :code:`paddle/fluid/framework/data_feed.proto` 查看我们如何定义message
......
......@@ -12,6 +12,9 @@ DataFeeder
``DataFeeder`` 负责将reader(读取器)返回的数据转成一种特殊的数据结构,使它们可以输入到 ``Executor`` 和 ``ParallelExecutor`` 中。
reader通常返回一个minibatch条目列表。在列表中每一条目都是一个样本(sample),它是由具有一至多个特征的列表或元组组成的。
......
......@@ -10,6 +10,9 @@ ExecutionStrategy
通过设置 ``ExecutionStrategy`` 中的选项,用户可以对执行器的执行配置进行调整,比如设置执行器中线程池的大小等。
返回:初始化后的ExecutionStrategy的实例
......
......@@ -11,6 +11,9 @@ Executor
Executor支持单GPU、多GPU以及CPU运行。
参数:
......
......@@ -10,6 +10,12 @@ ParallelExecutor
``ParallelExecutor`` 是 ``Executor`` 的一个升级版本,可以支持基于数据并行的多节点模型训练和测试。如果采用数据并行模式, ``ParallelExecutor`` 在构造时会将参数分发到不同的节点上,并将输入的 ``Program`` 拷贝到不同的节点,在执行过程中,各个节点独立运行模型,将模型反向计算得到的参数梯度在多个节点之间进行聚合,之后各个节点独立的进行参数的更新。如果使用GPU运行模型,即 ``use_cuda=True`` ,节点指代GPU, ``ParallelExecutor`` 将自动获取在当前机器上可用的GPU资源,用户也可以通过在环境变量设置可用的GPU资源,例如:希望使用GPU0、GPU1计算,export CUDA_VISIBLEDEVICES=0,1;如果在CPU上进行操作,即 ``use_cuda=False`` ,节点指代CPU,**注意:此时需要用户在环境变量中手动添加 CPU_NUM ,并将该值设置为CPU设备的个数,例如:export CPU_NUM=4,如果没有设置该环境变量,执行器会在环境变量中添加该变量,并将其值设为1**。
参数:
......
......@@ -7,6 +7,12 @@ ParamAttr
.. py:class:: paddle.fluid.ParamAttr(name=None, initializer=None, learning_rate=1.0, regularizer=None, trainable=True, do_model_average=False)
:alias_main: paddle.ParamAttr
:alias: paddle.ParamAttr,paddle.framework.ParamAttr
:old_api: paddle.fluid.param_attr.ParamAttr
......
......@@ -5,6 +5,12 @@ Program
.. py:class:: paddle.fluid.Program
:alias_main: paddle.Program
:alias: paddle.Program,paddle.framework.Program
:old_api: paddle.fluid.framework.Program
......
......@@ -5,6 +5,12 @@ Variable
.. py:class:: paddle.fluid.Variable
:alias_main: paddle.Variable
:alias: paddle.Variable,paddle.framework.Variable
:old_api: paddle.fluid.framework.Variable
......
......@@ -10,6 +10,12 @@ WeightNormParamAttr
.. note::
该类中的 ``gradient_clip`` 属性在2.0版本会废弃,推荐在初始化 ``optimizer`` 时设置梯度裁剪。共有三种裁剪策略: :ref:`cn_api_fluid_clip_GradientClipByGlobalNorm` 、
:ref:`cn_api_fluid_clip_GradientClipByNorm` 、 :ref:`cn_api_fluid_clip_GradientClipByValue` 。
......
......@@ -11,6 +11,9 @@ create_random_int_lodtensor
创建一个包含随机整数的LoDTensor。
具体实现方法如下:
......
......@@ -13,6 +13,9 @@ data
该OP会在全局block中创建变量(Variable),该全局变量可被计算图中的算子(operator)访问。该变量可作为占位符用于数据输入。例如用执行器(Executor)feed数据进该变量
注意:
......
......@@ -5,6 +5,12 @@ default_main_program
.. py:function:: paddle.fluid.default_main_program()
:alias_main: paddle.default_main_program
:alias: paddle.default_main_program,paddle.framework.default_main_program
:old_api: paddle.fluid.framework.default_main_program
......
......@@ -8,6 +8,12 @@ default_startup_program
.. py:function:: paddle.fluid.default_startup_program()
:alias_main: paddle.default_startup_program
:alias: paddle.default_startup_program,paddle.framework.default_startup_program
:old_api: paddle.fluid.framework.default_startup_program
......
......@@ -5,6 +5,12 @@ disable_dygraph
.. py:function:: paddle.fluid.disable_dygraph()
:alias_main: paddle.disable_imperative
:alias: paddle.disable_imperative
:old_api: .fluid.dygraph.base.disable_dygraph
该接口关闭动态图模式。
返回:无
......
......@@ -10,6 +10,12 @@ embedding
该OP根据input中的id信息从embedding矩阵中查询对应embedding信息,函数会根据输入的size (vocab_size, emb_size)和dtype自动构造一个二维embedding矩阵。
输出的Tensor的shape是在输入Tensor shape的最后一维后面添加了emb_size的维度。
......
......@@ -5,6 +5,12 @@ enable_dygraph
.. py:function:: paddle.fluid.enable_dygraph(place=None)
:alias_main: paddle.enable_imperative
:alias: paddle.enable_imperative
:old_api: .fluid.dygraph.base.enable_dygraph
该接口打开动态图模式。
参数:
......
......@@ -10,6 +10,9 @@ global_scope
获取全局/默认作用域实例。很多API使用默认 ``global_scope`` ,例如 ``Executor.run`` 等。
返回:全局/默认作用域实例
......
......@@ -10,6 +10,9 @@ gradients
将目标梯度反向传播到输入。
参数:
......
......@@ -5,6 +5,12 @@ in_dygraph_mode
.. py:function:: paddle.fluid.in_dygraph_mode()
:alias_main: paddle.in_imperative_mode
:alias: paddle.in_imperative_mode
:old_api: .fluid.framework.in_dygraph_mode
......
......@@ -9,6 +9,9 @@ load
该接口从Program中过滤出参数和优化器信息,然后从文件中获取相应的值。
如果Program和加载的文件之间参数的维度或数据类型不匹配,将引发异常。
......
......@@ -9,6 +9,9 @@ load_op_library
``load_op_library`` 用于自定义C++算子中,用来加载算子动态共享库。加载库后,注册好的算子及其Kernel实现将在PaddlePaddle主进程中可以被调用。 请注意,自定义算子的类型不能与框架中的现有算子类型相同。
参数:
......
......@@ -10,5 +10,8 @@ memory_optimize
**从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略**
......@@ -11,6 +11,12 @@ name_scope
该函数为operators生成不同的命名空间。该函数只用于调试和可视化,不建议用在其它方面。
......
......@@ -11,6 +11,9 @@ one_hot
该OP将输入(input)中的每个id转换为一个one-hot向量,其长度为 ``depth`` ,该id对应的向量维度上的值为1,其余维度的值为0。
输出的Tensor(或LoDTensor)的shape是在输入shape的最后一维后面添加了depth的维度。
......
......@@ -10,6 +10,12 @@ program_guard
该接口应配合使用python的 ``with`` 语句来将 ``with`` block 里的算子和变量添加进指定的全局主程序(main program)和启动程序(startup program)。
``with`` 语句块中的fluid.layers下各接口将在新的main program(主程序)中添加operators(算子)和variables(变量)。
......
......@@ -10,4 +10,7 @@ release_memory
**从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略**
......@@ -7,9 +7,9 @@ save
.. py:function:: paddle.fluid.save(program, model_path)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.save
:alias: paddle.save,paddle.tensor.save,paddle.tensor.io.save
:old_api: paddle.fluid.save
......
......@@ -11,6 +11,9 @@ scope_guard
该接口通过 python 的 ``with`` 语句切换作用域(scope)。
作用域记录了变量名和变量 ( :ref:`api_guide_Variable` ) 之间的映射关系,类似于编程语言中的大括号。
如果未调用此接口,所有的变量和变量名都会被记录在默认的全局作用域中。
......
......@@ -6,7 +6,10 @@ manual_seed
.. py:function:: paddle.framework.manual_seed(seed)
:alias_main: paddle.manual_seed
:alias: paddle.manual_seed,paddle.framework.random.manual_seed
:alias: paddle.manual_seed,paddle.framework.manual_seed,paddle.framework.random.manual_seed
......
......@@ -11,6 +11,9 @@ Bilinear
``BilinearInitializer`` 的别名
......@@ -11,6 +11,9 @@ Constant
``ConstantInitializer`` 的别名
......@@ -11,5 +11,8 @@ MSRA
``MSRAInitializer`` 的别名
......@@ -11,6 +11,9 @@ Normal
``NormalInitializer`` 的别名
......@@ -11,6 +11,9 @@ TruncatedNormal
``TruncatedNormalInitializer`` 的别名
......@@ -11,6 +11,9 @@ Uniform
``UniformInitializer`` 的别名
......
......@@ -11,6 +11,9 @@ Xavier
``XavierInitializer`` 的别名
......
......@@ -5,6 +5,12 @@ DataLoader
.. py:class:: paddle.fluid.io.DataLoader
:alias_main: paddle.io.DataLoader
:alias: paddle.io.DataLoader
:old_api: paddle.fluid.io.DataLoader
......
......@@ -5,6 +5,12 @@ batch
.. py:function:: paddle.fluid.io.batch(reader, batch_size, drop_last=False)
:alias_main: paddle.io.batch
:alias: paddle.io.batch
:old_api: paddle.fluid.io.batch
......
......@@ -5,6 +5,11 @@ buffered
.. py:function:: paddle.fluid.io.buffered(reader, size)
:alias_main: paddle.io.buffered
:alias: paddle.io.buffered,paddle.io..reader.buffered
......
......@@ -5,6 +5,11 @@ cache
.. py:function:: paddle.fluid.io.cache(reader)
:alias_main: paddle.io.cache
:alias: paddle.io.cache,paddle.io..reader.cache
......
......@@ -5,6 +5,11 @@ chain
.. py:function:: paddle.fluid.io.chain(*readers)
:alias_main: paddle.io.chain
:alias: paddle.io.chain,paddle.io..reader.chain
......
......@@ -5,6 +5,11 @@ compose
.. py:function:: paddle.fluid.io.compose(*readers, **kwargs)
:alias_main: paddle.io.compose
:alias: paddle.io.compose,paddle.io..reader.compose
......
......@@ -5,6 +5,11 @@ firstn
.. py:function:: paddle.fluid.io.firstn(reader, n)
:alias_main: paddle.io.firstn
:alias: paddle.io.firstn,paddle.io..reader.firstn
......
......@@ -9,6 +9,9 @@ get_program_parameter
该接口从Program中获取所有参数。
参数:
......
......@@ -9,6 +9,9 @@ get_program_persistable_vars
该接口从Program中获取所有persistable的变量。
参数:
......
......@@ -7,9 +7,12 @@ load
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.load
:alias: paddle.load,paddle.tensor.load,paddle.tensor.io.load
:alias: paddle.load,paddle.io.load,paddle.tensor.load,paddle.tensor.io.load
:old_api: paddle.fluid.io.load
``fluid.io.load`` 是 :ref:`cn_api_fluid_load` 的别名
......@@ -7,6 +7,12 @@ load_inference_model
.. py:function:: paddle.fluid.io.load_inference_model(dirname, executor, model_filename=None, params_filename=None, pserver_endpoints=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.io.load_inference_model
:alias: paddle.io.load_inference_model
:old_api: paddle.fluid.io.load_inference_model
......
......@@ -10,6 +10,9 @@ load_params
该接口从指定的 ``main_program`` 中筛选出所有模型参数变量,并根据目录 ``dirname`` 或 ``filename`` 提供的参数文件对这些模型参数进行赋值。
使用 ``dirname`` 指定模型参数的存储路径。若模型参数变量以分离文件的形式存储在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None;若所有模型参数存储在一个单独的二进制文件中,则使用 ``filename`` 来指明这个二进制文件。
......
......@@ -10,6 +10,9 @@ load_persistables
该接口从给定的 ``main_program`` 中取出所有 ``persistable==True`` 的变量(即持久性变量,详见 :ref:`api_guide_model_save_reader` ),并根据目录 ``dirname`` 或 ``filename`` 提供的参数文件对这些持久性变量进行赋值。
使用 ``dirname`` 指定持久性变量的存储路径。若持久性变量以分离文件的形式保存在 ``dirname`` 指定的目录下,则设置 ``filename`` 值为None;若所有持久性变量保存在一个单独的二进制文件中,则使用 ``filename`` 来指明这个二进制文件。
......
......@@ -6,6 +6,12 @@ load_program_state
.. py:function:: paddle.fluid.io.load_program_state(model_path, var_list=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.io.load_program_state
:alias: paddle.io.load_program_state
:old_api: paddle.fluid.io.load_program_state
......
......@@ -9,6 +9,9 @@ load_vars
该接口从文件中加载 ``Program`` 的变量。
通过 ``vars`` 指定需要加载的变量,或者通过 ``predicate`` 筛选需要加载的变量, ``vars`` 和 ``predicate`` 不能同时为None。
......
......@@ -5,6 +5,11 @@ map_readers
.. py:function:: paddle.fluid.io.map_readers(func, *readers)
:alias_main: paddle.io.map_readers
:alias: paddle.io.map_readers,paddle.io..reader.map_readers
......
......@@ -7,6 +7,12 @@ save
.. py:function:: paddle.fluid.io.save(program, model_path)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.save
:alias: paddle.save,paddle.io.save,paddle.tensor.save,paddle.tensor.io.save
:old_api: paddle.fluid.io.save
......
......@@ -7,6 +7,12 @@ save_inference_model
.. py:function:: paddle.fluid.io.save_inference_model(dirname, feeded_var_names, target_vars, executor, main_program=None, model_filename=None, params_filename=None, export_for_deployment=True, program_only=False)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.io.save_inference_model
:alias: paddle.io.save_inference_model
:old_api: paddle.fluid.io.save_inference_model
......
......@@ -10,6 +10,9 @@ save_params
该OP从 ``main_program`` 中取出所有参数,然后将它们保存到 ``dirname`` 目录下或名为 ``filename`` 的文件中。
``dirname`` 用于指定保存参数的目标路径。若想将参数保存到多个独立文件中,设置 ``filename=None`` ; 若想将所有参数保存在单个文件中,请设置 ``filename`` 来指定该文件的名称。
......
......@@ -10,6 +10,9 @@ save_persistables
该OP从给定 ``main_program`` 中取出所有持久性变量(详见 :ref:`api_guide_model_save_reader` ),然后将它们保存到目录 ``dirname`` 中或 ``filename`` 指定的文件中。
``dirname`` 用于指定保存持久性变量的目录。如果想将持久性变量保存到指定目录的若干文件中,请设置 ``filename=None`` ; 若想将所有持久性变量保存在同一个文件中,请设置 ``filename`` 来指定文件的名称。
......
......@@ -10,6 +10,9 @@ save_vars
该接口将 ``Program`` 的变量保存到文件中。
通过 ``vars`` 指定需要保存的变量,或者通过 ``predicate`` 筛选需要保存的变量, ``vars`` 和 ``predicate`` 不能同时为None。
......
......@@ -6,6 +6,12 @@ set_program_state
.. py:function:: paddle.fluid.io.set_program_state(program, state_dict)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.io.set_program_state
:alias: paddle.io.set_program_state
:old_api: paddle.fluid.io.set_program_state
......
......@@ -6,11 +6,14 @@ shuffle
.. py:function:: paddle.fluid.io.shuffle(reader, buffer_size)
:alias_main: paddle.shuffle
:alias: paddle.shuffle,paddle.tensor.shuffle,paddle.tensor.random.shuffle
:alias: paddle.shuffle,paddle.io.shuffle,paddle.tensor.shuffle,paddle.io..reader.shuffle,paddle.tensor.random.shuffle
:old_api: paddle.fluid.io.shuffle
该接口创建一个数据读取器,其功能是将原始数据读取器的数据打乱,然后返回无序的数据。
从原始数据读取器取出buf_size个数据到缓冲区,将缓冲区数据打乱,然后将无序的数据依次返回。当缓冲区数据全部输出后,再次执行上述步骤。
......
......@@ -5,6 +5,11 @@ xmap_readers
.. py:function:: paddle.fluid.io.xmap_readers(mapper, reader, process_num, buffer_size, order=False)
:alias_main: paddle.io.xmap_readers
:alias: paddle.io.xmap_readers,paddle.io..reader.xmap_readers
......
......@@ -10,6 +10,9 @@ BeamSearchDecoder
:api_attr: 声明式编程模式(静态图)
带beam search解码策略的解码器。该接口包装一个cell来计算概率,然后执行一个beam search步骤计算得分,并为每个解码步骤选择候选输出。更多详细信息请参阅 `Beam search <https://en.wikipedia.org/wiki/Beam_search>`_
......
......@@ -11,6 +11,9 @@ Decoder
Decoder是dynamic_decode中使用的任何decoder实例的基类。它提供了为每一个时间步生成输出的接口,可用于生成序列。
......
......@@ -10,6 +10,9 @@ DynamicRNN
**注意:该类型的输入仅支持LoDTensor,如果您需要处理的输入数据是Tensor类型,
请使用StaticRNN( fluid.layers.** :ref:`cn_api_fluid_layers_StaticRNN` **)。**
......
......@@ -9,6 +9,9 @@ GRUCell
:api_attr: 声明式编程模式(静态图)
门控循环单元(Gated Recurrent Unit)。通过对 :code:`fluid.contrib.layers.rnn_impl.BasicGRUUnit` 包装,来让它可以应用于RNNCell。
......
......@@ -10,6 +10,9 @@ IfElse
该类用于实现IfElse分支控制功能, IfElse包含两个Block,true_block,false_block,IfElse会将满足True或False条件的数据分别放入不同的block运行。
cond是一个shape为[N, 1]、数据类型为bool的2-D tensor,表示输入数据对应部分的执行条件。
......
......@@ -10,6 +10,9 @@ LSTMCell
:api_attr: 声明式编程模式(静态图)
长短期记忆单元(Long-Short Term Memory)。通过对 :code:`fluid.contrib.layers.rnn_impl.BasicLSTMUnit` 包装,来让它可以应用于RNNCell。
......
......@@ -10,6 +10,12 @@ Print
**Print操作命令**
该OP创建一个打印操作,打印正在访问的Tensor内容。
......
......@@ -10,6 +10,9 @@ RNNCell
:api_attr: 声明式编程模式(静态图)
RNNCell是抽象的基类,代表将输入和状态映射到输出和新状态的计算,主要用于RNN。
.. py:method:: call(inputs, states, **kwargs)
......
......@@ -10,6 +10,9 @@ StaticRNN
该OP用来处理一批序列数据,其中每个样本序列的长度必须相等。StaticRNN将序列按照时间步长展开,用户需要定义每个时间步中的处理逻辑。
参数:
......
......@@ -10,6 +10,9 @@ Switch
该类用于实现Switch分支控制功能。Switch分支包含多个case分支和一个default分支,Switch控制流会依次检查各case分支条件是否满足,并仅执行第一个满足条件的case分支后面的语句。若不存在满足条件的case分支,则仅执行default分支后面的语句。
.. note::
......
......@@ -11,6 +11,9 @@ While
该类用于实现while循环控制功能,只要循环条件cond为True,就循环执行while循环体中的语句,直到cond为False为止。
.. note::
......
......@@ -11,6 +11,9 @@ abs
绝对值激活函数。
.. math::
......
......@@ -11,6 +11,9 @@ acos
arccosine激活函数。
.. math::
......
......@@ -11,6 +11,9 @@ adaptive_pool2d
该OP使用上述输入参数的池化配置,为二维空间自适应池化操作,根据 ``input`` , 池化类型 ``pool_type`` , 池化核大小 ``pool_size`` 这些参数得到输出。
输入X和输出Out是NCHW格式,N为批大小,C是通道数,H是特征高度,W是特征宽度。参数 ``pool_size`` 含有两个整型元素, 分别代表高度和宽度上的参数。输出Out的H和W维由 ``pool_size`` 决定,即输出shape为 :math:`\left ( N,C,pool_size[0],pool_size[1] \right )`
......
......@@ -11,6 +11,9 @@ adaptive_pool3d
该OP使用上述输入参数的池化配置,为二维空间自适应池化操作,根据 ``input`` , 池化类型 ``pool_type`` , 池化核大小 ``pool_size`` 这些参数得到输出。
输入X和输出Out是NCDHW格式,N为批大小,D是特征深度,C是通道数,H是特征高度,W是特征宽度。参数 ``pool_size`` 含有两个整型元素, 分别代表深度,高度和宽度上的参数。输出Out的D, H和W维由 ``pool_size`` 决定,即输出shape为 :math:`\left ( N,C,pool_size[0],pool_size[1],pool_size[2] \right )`
......
......@@ -11,6 +11,9 @@ add_position_encoding
该OP将输入inpu中每个位置(序列中的位置)的特征与对应的位置编码加权求和,位置编码可参考论文: `Attention Is All You Need <http://arxiv.org/pdf/1706.03762.pdf>`_
输出的计算公式如下:
......
......@@ -11,6 +11,9 @@ affine_channel
对输入的每个 channel 应用单独的仿射变换。用于将空间批量归一化替换为其等价的固定变换。
输入也可以是二维张量,并在第二维应用仿射变换。
......
......@@ -11,6 +11,9 @@ affine_grid
该OP用于生成仿射变换前后的feature maps的坐标映射关系。在视觉应用中,根据该OP得到的映射关系,将输入feature map的像素点变换到对应的坐标,就得到了经过仿射变换的feature map。
参数:
......
......@@ -11,6 +11,9 @@ anchor_generator
**Anchor generator operator**
为RCNN算法生成anchor,输入的每一位产生N个anchor,N=size(anchor_sizes)*size(aspect_ratios)。生成anchor的顺序首先是aspect_ratios循环,然后是anchor_sizes循环。
......
......@@ -11,6 +11,9 @@ argmin
**argmin**
该OP沿 ``axis`` 计算输入 ``x`` 的最小元素的索引。
......
......@@ -11,6 +11,9 @@ argsort
对输入变量沿给定轴进行排序,输出排序好的数据和相应的索引,其维度和输入相同。**默认升序排列,如果需要降序排列设置** ``descending=True`` 。
......
......@@ -11,6 +11,9 @@ asin
arcsine激活函数。
.. math::
......
......@@ -11,6 +11,9 @@ assign
该OP将输入Tensor或numpy数组拷贝至输出Tensor。
参数:
......
......@@ -11,6 +11,9 @@ atan
arctanh激活函数。
.. math::
......
......@@ -10,6 +10,9 @@ autoincreased_step_counter
创建一个自增变量,每个迭代累加一次,默认首次返回值为 1,默认累加步长为 1。
参数:
......
......@@ -7,6 +7,12 @@ 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, use_global_stats=False)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.batch_norm
:alias: paddle.declarative.batch_norm
:old_api: paddle.fluid.layers.batch_norm
......
......@@ -11,6 +11,9 @@ beam_search
束搜索(Beam search)是在机器翻译等生成任务中选择候选词的一种经典算法
更多细节参考 `Beam Search <https://en.wikipedia.org/wiki/Beam_search>`_
......
......@@ -11,6 +11,9 @@ beam_search_decode
该OP用在整个束搜索(Beam search)结束后,通过沿 ``ids`` 中保存的搜索路径回溯,为每个源句(样本)构造完整的beam search结果序列并保存在LoDTensor中。LoDTensor的格式和解析方式如下:
::
......
......@@ -7,6 +7,12 @@ bilinear_tensor_product
.. py:function:: paddle.fluid.layers.bilinear_tensor_product(x, y, size, act=None, name=None, param_attr=None, bias_attr=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.bilinear_tensor_product
:alias: paddle.declarative.bilinear_tensor_product
:old_api: paddle.fluid.layers.bilinear_tensor_product
......
......@@ -11,6 +11,9 @@ bipartite_match
该OP实现了贪心二分匹配算法,该算法用于根据输入距离矩阵获得与最大距离的匹配。对于输入二维矩阵,二分匹配算法可以找到每一行的匹配列(匹配意味着最大距离),也可以找到每列的匹配行。此算子仅计算列到行的匹配索引。对于每个实例,匹配索引的数量是
输入距离矩阵的列号。**该OP仅支持CPU**
......
......@@ -11,6 +11,9 @@ box_clip
将检测框框剪切为 ``im_info`` 给出的大小。对于每个输入框,公式如下:
::
......
......@@ -11,6 +11,9 @@ box_coder
Bounding Box Coder
编码/解码带有先验框信息的目标边界框
......
......@@ -11,6 +11,9 @@ box_decoder_and_assign
边界框编码器。
根据先验框来解码目标边界框。
......
......@@ -12,6 +12,9 @@ bpr_loss
贝叶斯个性化排序损失函数(Bayesian Personalized Ranking Loss Operator )
该OP属于pairwise类型的损失函数。损失值由下式计算而得:
......
......@@ -12,6 +12,9 @@ brelu
BReLU 激活函数
.. math:: out=min(max(x,t\_min),t\_max)
......
......@@ -13,6 +13,9 @@ case
该OP的运行方式类似于python的if-elif-elif-else。
参数:
......
......@@ -11,6 +11,9 @@ cast
该OP将 ``x`` 的数据类型转换为 ``dtype`` 并输出。支持输出和输入的数据类型相同。
参数:
......
......@@ -11,6 +11,9 @@ ceil
向上取整运算函数。
.. math::
......
......@@ -13,6 +13,9 @@ center_loss
该OP接收一个来自于最后一个隐藏层的输出和目标标签作为输入,返回损失值。为每一个类别提供一个类别中心,计算mini-batch中每个样本与对应类别中心的距离的平均值作为center loss。
对于输入,\(X\)和标签\(Y\),计算公式为:
......
......@@ -5,6 +5,12 @@ chunk_eval
.. py:function:: paddle.fluid.layers.chunk_eval(input, label, chunk_scheme, num_chunk_types, excluded_chunk_types=None, sqe_length=None)
:alias_main: paddle.metric.chunk_eval
:alias: paddle.metric.chunk_eval
:old_api: paddle.fluid.layers.nn.chunk_eval
......
......@@ -11,6 +11,9 @@ clip_by_norm
ClipByNorm算子
此算子将输入 ``X`` 的L2范数限制在 ``max_norm`` 内。如果 ``X`` 的L2范数小于或等于 ``max_norm`` ,则输出(Out)将与 ``X`` 相同。如果X的L2范数大于 ``max_norm`` ,则 ``X`` 将被线性缩放,使得输出(Out)的L2范数等于 ``max_norm`` ,如下面的公式所示:
......
......@@ -11,6 +11,9 @@ clip
该OP对输入Tensor每个元素的数值进行裁剪,使得输出Tensor元素的数值被限制在区间[min, max]内。具体的计算公式为如下。
.. math::
......
......@@ -11,6 +11,9 @@ collect_fpn_proposals
**该op仅支持LoDTensor输入**。连接多级RoIs(感兴趣区域)并依据multi_scores选择N个RoIs。此操作执行以下步骤:
1、选择num_level个RoIs和scores作为输入:num_level = max_level - min_level
2、连接num_level个RoIs和scores。
......
......@@ -11,6 +11,9 @@ concat
该OP对输入沿 ``axis`` 轴进行联结。
参数:
......
......@@ -13,6 +13,9 @@ cond
如果 ``pred`` 是 ``True`` ,该API返回 ``true_fn()`` ,否则返回 ``false_fn()`` 。
用户如果不想在 ``callable`` 中做任何事,可以把 ``true_fn`` 或 ``false_fn`` 设为 ``None`` ,此时本API会把该 ``callable`` 视为简单返回 ``None`` 。
......
......@@ -11,6 +11,9 @@ continuous_value_model
**注意:该OP仅支持在CPU运行。**
该OP在CTR项目中,用于去除或处理 ``input`` 中的展示和点击值。
......
......@@ -7,6 +7,12 @@ 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, data_format="NCHW")
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.conv2d
:alias: paddle.declarative.conv2d,paddle.nn.functional.conv2d,paddle.nn.functional.conv.conv2d
:old_api: paddle.fluid.layers.conv2d
......
......@@ -7,6 +7,12 @@ 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, data_format='NCHW')
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.conv2d_transpose
:alias: paddle.declarative.conv2d_transpose,paddle.nn.functional.conv2d_transpose,paddle.nn.functional.conv.conv2d_transpose
:old_api: paddle.fluid.layers.conv2d_transpose
......
......@@ -7,6 +7,12 @@ 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, data_format="NCDHW")
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.conv3d
:alias: paddle.declarative.conv3d,paddle.nn.functional.conv3d,paddle.nn.functional.conv.conv3d
:old_api: paddle.fluid.layers.conv3d
......
......@@ -7,6 +7,12 @@ 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, data_format='NCDHW')
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.conv3d_transpose
:alias: paddle.declarative.conv3d_transpose,paddle.nn.functional.conv3d_transpose,paddle.nn.functional.conv.conv3d_transpose
:old_api: paddle.fluid.layers.conv3d_transpose
......
......@@ -11,6 +11,9 @@ cos
余弦函数。
.. math::
......
......@@ -11,6 +11,9 @@ cosine_decay
使用 cosine decay 的衰减方式进行学习率调整。
在训练模型时,建议一边进行训练一边降低学习率。 通过使用此方法,学习速率将通过如下cosine衰减策略进行衰减:
......
......@@ -10,6 +10,12 @@ create_parameter
该OP创建一个参数。该参数是一个可学习的变量, 拥有梯度并且可优化。
**注意:这是一个低级别的API。如果您希望自己创建新的op,这个API将非常有用,无需使用layers。**
......
......@@ -10,6 +10,9 @@ create_py_reader_by_data
创建一个Python端提供数据的reader。该OP与 :ref:`cn_api_fluid_layers_py_reader` 类似,不同点在于它能够从feed变量列表读取数据。
参数:
......
......@@ -11,6 +11,9 @@ create_tensor
创建数据类型为dtype的Tensor。
参数:
......
......@@ -7,6 +7,12 @@ crf_decoding
.. py:function:: paddle.fluid.layers.crf_decoding(input, param_attr, label=None, length=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.crf_decoding
:alias: paddle.declarative.crf_decoding
:old_api: paddle.fluid.layers.crf_decoding
......
......@@ -11,6 +11,9 @@ crop_tensor
根据偏移量(offsets)和形状(shape),裁剪输入(x)Tensor。
**示例**:
......
......@@ -11,6 +11,9 @@ cross_entropy
该OP计算输入input和标签label间的交叉熵,可用于计算硬标签或软标签的交叉熵。
1. 硬标签交叉熵算法:若soft_label = False, :math:`label[i_1, i_2, ..., i_k]` 表示每个样本的硬标签值:
......
......@@ -11,6 +11,9 @@ cumsum
沿给定轴(axis)的元素的累加和。默认结果的第一个元素和输入的第一个元素一致。如果exlusive为True,结果的第一个元素则为0。
参数:
......
......@@ -7,6 +7,12 @@ data_norm
.. py:function:: paddle.fluid.layers.data_norm(input, act=None, epsilon=1e-05, param_attr=None, data_layout='NCHW', in_place=False, name=None, moving_mean_name=None, moving_variance_name=None, do_model_average_for_mean_and_var=False)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.data_norm
:alias: paddle.declarative.data_norm
:old_api: paddle.fluid.layers.data_norm
......
......@@ -7,6 +7,12 @@ deformable_conv
.. py:function:: paddle.fluid.layers.deformable_conv(input, offset, mask, num_filters, filter_size, stride=1, padding=0, dilation=1, groups=None, deformable_groups=None, im2col_step=None, param_attr=None, bias_attr=None, modulated=True, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.deformable_conv
:alias: paddle.declarative.deformable_conv
:old_api: paddle.fluid.layers.deformable_conv
......
......@@ -11,6 +11,9 @@ deformable_roi_pooling
可变形感兴趣区域(ROI)池化层
该OP对输入进行了可形变的感兴趣区域(ROI)池化操作。如同 `可形变卷积网络 <https://arxiv.org/abs/1703.06211>`_ 描述的一样,它将为每个bin中的像素获取一个偏移量,以便于在合适的位置进行池化。在完成可变形感兴趣区域(ROI)池化操作之后,批量数将变为候选框的数量。
......
......@@ -12,6 +12,9 @@ density_prior_box
该OP为SSD算法(Single Shot MultiBox Detector)生成density prior box,在每个 ``input`` 的位置产生N个候选框,其中,N由 ``densities`` , ``fixed_sizes`` 和 ``fixed_ratios`` 来计算。生成的每个输入位置附近的候选框中心(网格点)由 ``densities`` 和 ``density prior box`` 的数量计算,其中 ``density prior box`` 的数量由 ``fixed_sizes`` 和 ``fixed_ratios`` 决定。``fixed_sizes`` 和 ``densities`` 的大小一致。
.. math::
......
......@@ -11,6 +11,9 @@ detection_output
给定回归位置偏移、置信度以及先验框信息计算检测的输出,执行步骤如下:
1.根据先验框(``prior_box``)信息和回归位置偏移解码出预测框坐标。
......
......@@ -11,6 +11,9 @@ diag
该OP创建一个方阵,使用输入diagonal来指定方阵的对角线元素的值。
参数:
......
......@@ -11,6 +11,9 @@ dice_loss
该OP用来比较预测结果跟标签之间的相似度,通常用于二值图像分割,即标签为二值,也可以做多标签的分割。
dice_loss定义为:
......
......@@ -11,6 +11,9 @@ distribute_fpn_proposals
**该op仅支持LoDTensor输入**。在 Feature Pyramid Networks(FPN)模型中,需要依据proposal的尺度和参考尺度与级别将所有proposal分配到不同的FPN级别中。 此外,为了恢复proposals的顺序,我们返回一个数组,该数组表示当前proposals中的原始RoIs索引。 要计算每个RoI的FPN级别,公式如下:
.. math::
......
......@@ -11,6 +11,9 @@ dropout
dropout操作
丢弃或者保持x的每个元素独立。Dropout是一种正则化手段,通过在训练过程中阻止神经元节点间的相关性来减少过拟合。根据给定的丢弃概率,dropout操作符按丢弃概率随机将一些神经元输出设置为0,其他的仍保持不变。
......
......@@ -10,6 +10,9 @@ dynamic_decode
:api_attr: 声明式编程模式(静态图)
该接口重复执行 :code:`decoder.step()` 直到 其返回的表示完成状态的Tensor中的值全部为True或解码步骤达到 :code:`max_step_num`。
......
......@@ -11,6 +11,9 @@ dynamic_gru
**注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用StaticRNN(fluid.layers.** :ref:`cn_api_fluid_layers_StaticRNN` **)。**
该OP用于在完整序列上逐个时间步的进行单层Gated Recurrent Unit(GRU)的计算,单个时间步内GRU的计算支持以下两种计算方式:
......
......@@ -10,6 +10,9 @@ dynamic_lstm
该OP实现了 LSTM,即 Long-Short Term Memory(长短期记忆)运算 - `Hochreiter, S., & Schmidhuber, J. (1997) <http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf>`_。
.. note::
......
......@@ -9,6 +9,9 @@ dynamic_lstmp
.. note::
在实现的时候为了提升效率,用户必须将输入先进行线性映射,将维度为 [T, hidden_size] 的输入映射为 [T, 4×hidden_size] 输入,然后再传给该OP。
......
......@@ -12,6 +12,9 @@ edit_distance
该OP计算一批给定字符串及其参照字符串间的编辑距离。编辑距离也称Levenshtein距离,通过计算从一个字符串变成另一个字符串所需的最少操作步骤来衡量两个字符串的相异度。这里的操作包括插入、删除和替换。
比如给定假设字符串A=“kitten”和参照字符串B=“sitting”,从A变换成B编辑距离为3,至少需要两次替换和一次插入:
......
......@@ -11,6 +11,9 @@ elementwise_add
该OP是逐元素相加算子,输入 ``x`` 与输入 ``y`` 逐元素相加,并将各个位置的输出元素保存到返回结果中。
等式为:
......
......@@ -11,6 +11,9 @@ elementwise_div
该OP是逐元素相除算子,输入 ``x`` 与输入 ``y`` 逐元素相除,并将各个位置的输出元素保存到返回结果中。
等式是:
......
......@@ -11,6 +11,9 @@ elementwise_floordiv
该OP是逐元素整除算子,输入 ``x`` 与输入 ``y`` 逐元素整除,并将各个位置的输出元素保存到返回结果中。
等式为:
......
......@@ -10,6 +10,9 @@ elementwise_max
:old_api: paddle.fluid.layers.elementwise_max
该OP逐元素对比输入的两个多维Tensor,并且把各个位置更大的元素保存到返回结果中。
等式是:
......
......@@ -10,6 +10,9 @@ elementwise_min
:old_api: paddle.fluid.layers.elementwise_min
该OP逐元素对比输入的两个多维Tensor,并且把各个位置更小的元素保存到返回结果中。
等式是:
......
......@@ -11,6 +11,9 @@ elementwise_mod
该OP是逐元素取模算子,输入 ``x`` 与输入 ``y`` 逐元素取模,并将各个位置的输出元素保存到返回结果中。
等式为:
......
......@@ -11,6 +11,9 @@ elementwise_mul
该OP是逐元素相乘算子,输入 ``x`` 与输入 ``y`` 逐元素相乘,并将各个位置的输出元素保存到返回结果中。
等式是:
......
......@@ -10,6 +10,9 @@ elementwise_pow
:old_api: paddle.fluid.layers.elementwise_pow
该OP逐元素对输入Tensor进行幂操作。
等式是:
......
......@@ -11,6 +11,9 @@ elementwise_sub
该OP是逐元素相减算子,输入 ``x`` 与输入 ``y`` 逐元素相减,并将各个位置的输出元素保存到返回结果中。
等式是:
......
......@@ -11,6 +11,9 @@ elu
ELU激活层(ELU Activation Operator)
根据 https://arxiv.org/abs/1511.07289 对输入Tensor中每个元素应用以下计算。
......
......@@ -10,6 +10,9 @@ embedding
嵌入层(Embedding Layer)
**注意:此OP将在未来的版本中被移除!该OP要求输入Tensor shape的最后一维必须为1。推荐使用fluid.** :ref:`cn_api_fluid_embedding` 。
......
......@@ -11,6 +11,9 @@ erf
逐元素计算 Erf 激活函数。更多细节请参考 `Error function <https://en.wikipedia.org/wiki/Error_function>`_ 。
......
......@@ -11,6 +11,9 @@ exp
对输入,逐元素进行以自然数e为底指数运算。
.. math::
......
......@@ -11,6 +11,9 @@ expand_as
该OP会根据输入的variable ``target_tensor`` 对输入 ``x`` 的各维度进行广播。通过 ``target_tensor``的维度来为 ``x`` 的每个维度设置广播的次数,使得x 的维度与target_tensor的维度相同。 ``x`` 的秩应小于等于6。注意, ``target_tensor`` 的秩必须与 ``x`` 的秩相同。
注意:``target_tensor`` 对应的每一维必须能整除输入x中对应的维度,否则会报错。比如,target_tensor的维度为[2,6,2],x为[2,3,1],则整除后为[1,2,2],x广播后维度为[2,6,2]。如果target_tensor的维度为[2,5,2],第二维5不能整除x的第二维3,则会报错。
......
......@@ -11,6 +11,9 @@ expand
该OP会根据参数 ``expand_times`` 对输入 ``x`` 的各维度进行复制。通过参数 ``expand_times`` 来为 ``x`` 的每个维度设置复制次数。 ``x`` 的秩应小于等于6。注意, ``expand_times`` 的大小必须与 ``x`` 的秩相同。以下是一个用例:
::
......
......@@ -11,6 +11,9 @@ exponential_decay
在学习率上运用指数衰减。
训练模型时,在训练过程中降低学习率。每 ``decay_steps`` 步骤中以 ``decay_rate`` 衰减学习率。
......
......@@ -11,6 +11,9 @@ eye
该OP用来构建单位矩阵,或一个批次的单位矩阵。
参数:
......
......@@ -7,6 +7,12 @@ fc
.. py:function:: paddle.fluid.layers.fc(input, size, num_flatten_dims=1, param_attr=None, bias_attr=None, act=None, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.fc
:alias: paddle.declarative.fc
:old_api: paddle.fluid.layers.fc
......
......@@ -11,6 +11,9 @@ fill_constant
该OP创建一个形状为shape并且数据类型为dtype的Tensor,同时用 ``value`` 中提供的常量初始化该Tensor。
创建的Tensor的stop_gradient属性默认为True。
......
......@@ -11,6 +11,9 @@ filter_by_instag
此函数通过instag来过滤ins batch,大量属于同样的tags的样本,我们可以指定我们想要的一些tags,属于这些tags的样本将会被保留在输出中,其余的将会移除。比如,一个batch有4个样本,每个样本都有自己的tag表。
Ins | Ins_Tag |
......
......@@ -11,6 +11,9 @@ flatten
flatten op将输入的多维Tensor展平成2-D Tensor矩阵
例如:
......
......@@ -11,6 +11,9 @@ floor
向下取整函数。
.. math::
......
......@@ -11,6 +11,9 @@ fsp_matrix
**FSP matrix op**
fsp_matrix op用于计算两个4-D Tensor特征图的求解过程(FSP)矩阵。假设特征图x的形状为 :math:`[x\_channel,h,w]` ,特征图y的形状为 :math:`[y\_channel,h,w]` ,fsp_matrix op分两步得到x和y的fsp矩阵:
......
......@@ -11,6 +11,9 @@ gather_nd
该OP是 :code:`gather` 的高维推广,并且支持多轴同时索引。 :code:`index` 是一个K维度的张量,它可以认为是从 :code:`input` 中取K-1维张量,每一个元素是一个切片:
.. math::
......
......@@ -11,6 +11,9 @@ gather_tree
该OP在整个束搜索(Beam Search)结束后使用。在搜索结束后,可以获得每个时间步选择的的候选词id及其对应的在搜索树中的parent节点, ``ids`` 和 ``parents`` 的形状布局均为 :math:`[max\_time, batch\_size, beam\_size]` ,该OP从最后一个时间步回溯产生完整的id序列。
......
......@@ -11,6 +11,9 @@ gelu
逐元素计算 Gelu激活函数。更多细节请参考 `Gaussian Error Linear Units <https://arxiv.org/abs/1606.08415>`_ 。
如果使用近似计算:
......
......@@ -11,6 +11,9 @@ generate_mask_labels
**为Mask-RCNN生成mask标签**
对于给定的 RoI (Regions of Interest) 和 输入ground truth的分类标签和分割的坐标标签,采样出前景RoI,并返回其在输入 ``rois`` 中索引位置,并对每个RoI生成 :math:`K*M^{2}` 的二值mask标签。K为类别个数,M是RoI特征图大小。这些输出目标一般用于计算mask分支的损失。
......
......@@ -11,6 +11,9 @@ generate_proposal_labels
**注意:该OP无对应的反向OP**
该OP根据RPN预测产出的bounding boxes和groundtruth,抽取出用来计算loss的foreground boxes and background boxes。
......
......@@ -12,6 +12,9 @@ generate_proposals
该OP根据每个检测框为foreground对象的概率,推选生成用于后续检测网络的RoIs。
其中的检测框根据 ``anchors`` 和 ``bbox_deltas`` 计算得到。
......
......@@ -11,6 +11,9 @@ greater_equal
该OP逐元素地返回 :math:`x >= y` 的逻辑值,使用重载算子 `>=` 可以有相同的计算函数效果。
......
......@@ -11,6 +11,9 @@ greater_than
该OP逐元素地返回 :math:`x > y` 的逻辑值,使用重载算子 `>` 可以有相同的计算函数效果。
参数:
......
......@@ -11,6 +11,9 @@ grid_sampler
该OP基于flow field网格的对输入X进行双线性插值采样。网格通常由affine_grid生成, shape为[N, H, W, 2],是shape为[N, H, W]的采样点张量的(x, y)坐标。
其中,x坐标是对输入数据X的第四个维度(宽度维度)的索引,y坐标是第三维度(高维度)的索引,最终输出采样值为采样点的4个最接近的角点的双线性插值结果,输出张量的shape为[N, C, H, W]。
......
......@@ -7,6 +7,12 @@ 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)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.group_norm
:alias: paddle.declarative.group_norm
:old_api: paddle.fluid.layers.group_norm
......
......@@ -10,6 +10,9 @@ gru_unit
Gated Recurrent Unit(GRU)循环神经网络计算单元。该OP用于完成单个时间步内GRU的计算,支持以下两种计算方式:
如果origin_mode为True,则使用的运算公式来自论文
......
......@@ -11,6 +11,9 @@ hard_shrink
HardShrink激活函数(HardShrink activation operator)
......
......@@ -11,6 +11,9 @@ hard_sigmoid
sigmoid的分段线性逼近激活函数,速度比sigmoid快,详细解释参见 https://arxiv.org/abs/1603.00391。
.. math::
......
......@@ -11,6 +11,9 @@ hard_swish
该OP实现了hard_swish激活函数。hard_swish激活函数在MobileNetV3架构中被提出,相较于swish函数,具有数值稳定性好,计算速度快等优点,具体原理请参考: https://arxiv.org/pdf/1905.02244.pdf
:math:`out = \frac{x * (min(max(0, x+offset), threshold))}{scale}`
......
......@@ -11,6 +11,9 @@ has_inf
检查输入的变量(x)中是否包含无穷数(inf)。
参数:
......
......@@ -11,6 +11,9 @@ has_nan
检查输入的变量(x)中是否包含NAN。
参数:
......
......@@ -11,6 +11,9 @@ hash
该OP将输入 hash 成为一个整数,该数的值小于给定的 ``hash_size`` 。**仅支持输入为LoDTensor**。
该OP使用的哈希算法是:xxHash - `Extremely fast hash algorithm <https://github.com/Cyan4973/xxHash/tree/v0.6.5>`_
......
......@@ -7,6 +7,12 @@ hsigmoid
.. py:function:: paddle.fluid.layers.hsigmoid(input, label, num_classes, param_attr=None, bias_attr=None, name=None, path_table=None, path_code=None, is_custom=False, is_sparse=False)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.hsigmoid
:alias: paddle.declarative.hsigmoid,paddle.nn.functional.hsigmoid,paddle.nn.functional.activation.hsigmoid
:old_api: paddle.fluid.layers.hsigmoid
......
......@@ -12,6 +12,9 @@ huber_loss
该OP计算输入(input)与标签(label)之间的Huber损失。Huber损失是常用的回归损失之一,相较于平方误差损失,Huber损失减小了对异常点的敏感度,更具鲁棒性。
当输入与标签之差的绝对值大于delta时,计算线性误差:
......
......@@ -10,6 +10,9 @@ im2sequence
该OP使用 `filter` 扫描输入的Tensor并将输入Tensor转换成序列,返回值的 `shape={input.batch_size * output_height * output_width, filter_size_height* filter_size_width * input.channels}` 。返回值的timestep的个数为 `output_height * output_width` , 每个timestep的维度是 `filter_size_height* filter_size_width * input.channels` 。其中 `output_height` 和 `output_width` 由以下式计算:
......
......@@ -11,6 +11,9 @@ image_resize
**注意:** 参数 ``actual_shape`` 将被弃用,请使用 ``out_shape`` 替代。
该OP用于调整一个batch中图片的大小。
......
......@@ -11,6 +11,9 @@ image_resize_short
该OP用于调整一批图片的大小。输入图像的短边将被调整为给定的out_short_len 。输入图像的长边按比例调整大小,最终图像的长宽比保持不变。
参数:
......
......@@ -11,6 +11,9 @@ increment
使输入Tensor ``x`` 的数据累加 ``value`` , 该OP通常用于循环次数的计数。
参数:
......
......@@ -7,6 +7,12 @@ instance_norm
.. py:function:: paddle.fluid.layers.instance_norm(input, epsilon=1e-05, param_attr=None, bias_attr=None, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.instance_norm
:alias: paddle.declarative.instance_norm
:old_api: paddle.fluid.layers.instance_norm
......
......@@ -11,6 +11,9 @@ inverse_time_decay
在初始学习率上运用逆时衰减。
训练模型时,最好在训练过程中降低学习率。通过执行该函数,将对初始学习率运用逆时衰减函数。
......
......@@ -11,6 +11,9 @@ iou_similarity
**IOU Similarity Operator**
计算两个框列表的intersection-over-union(IOU)。框列表 :math:`X` 应为LoDTensor, :math:`Y` 是普通张量, :math:`X` 成批输入的所有实例共享 :math:`Y` 中的框。给定框A和框B,IOU的运算如下:
......
......@@ -11,6 +11,9 @@ is_empty
测试变量是否为空
参数:
......
......@@ -11,6 +11,9 @@ isfinite
``注意:此算子的输入 Tensor / LoDTensor 数据类型必须为 int32 / float / double 之一。``
测试 x 是否包含无穷值(即 nan 或 inf)。若元素均为有穷数,返回真;否则返回假。
......
......@@ -11,6 +11,9 @@ kldiv_loss
该OP计算输入(X)和输入(Target)之间的Kullback-Leibler散度损失。注意其中输入(X)应为对数概率值,输入(Target)应为概率值。
kL发散损失计算如下:
......
......@@ -11,6 +11,9 @@ l2_normalize
该OP计算欧几里得距离之和对x进行归一化。对于1-D张量(系数矩阵的维度固定为0)
计算公式如下:
......
......@@ -11,6 +11,9 @@ label_smooth
该OP实现了标签平滑的功能。标签平滑是一种对分类器层进行正则化的机制,称为标签平滑正则化(LSR)。由于直接优化正确标签的对数似然可能会导致过拟合,降低模型的适应能力,因此提出了标签平滑的方法来降低模型置信度。
标签平滑使用标签 :math:`y` 和一些固定模式随机分布变量 :math:`\mu` 。对 :math:`k` 标签,标签平滑的计算方式如下。
......
......@@ -7,6 +7,12 @@ 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)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.layer_norm
:alias: paddle.declarative.layer_norm
:old_api: paddle.fluid.layers.layer_norm
......
......@@ -11,6 +11,9 @@ leaky_relu
LeakyRelu激活函数
.. math:: out=max(x,α∗x)
......
......@@ -11,6 +11,9 @@ less_equal
该OP逐元素地返回 :math:`x <= y` 的逻辑值,使用重载算子 `<=` 可以有相同的计算函数效果。
参数:
......
......@@ -12,6 +12,9 @@ less_than
该OP逐元素地返回 :math:`x < y` 的逻辑值,使用重载算子 `<` 可以有相同的计算函数效果
......
......@@ -10,6 +10,9 @@ linear_chain_crf
线性链条件随机场(Linear Chain CRF)
条件随机场定义间接概率图,节点代表随机变量,边代表两个变量之间的依赖。CRF学习条件概率 :math:`P\left ( Y|X \right )` , :math:`X = \left ( x_{1},x_{2},...,x_{n} \right )` 是结构性输入,:math:`Y = \left ( y_{1},y_{2},...,y_{n} \right )` 为输入标签。
......
......@@ -12,6 +12,9 @@ linear_lr_warmup
该OP使用学习率优化策略-线性学习率热身(warm up)对学习率进行初步调整。在正常调整学习率之前,先逐步增大学习率,具体原理可参考: `Bag of Tricks for Image Classification with Convolutional Neural Networks <https://arxiv.org/abs/1812.01187>`_
当训练步数(global_step)小于热身步数(warmup_steps)时,学习率lr按如下方式更新:
......
......@@ -12,6 +12,9 @@ log
Log激活函数(计算自然对数)
.. math::
......
......@@ -11,6 +11,9 @@ log_loss
**负log loss层**
该 OP 对输入的预测结果和目标标签进行计算,返回负对数损失值。
......
......@@ -11,6 +11,9 @@ logical_and
该OP逐元素的对 ``X`` 和 ``Y`` 两LoDTensor/Tensor进行逻辑与运算。
.. math::
......
......@@ -11,6 +11,9 @@ logical_not
该OP逐元素的对 ``X`` LoDTensor/Tensor进行逻辑非运算
.. math::
......
......@@ -11,6 +11,9 @@ logical_or
该OP逐元素的对 ``X`` 和 ``Y`` 两LoDTensor/Tensor进行逻辑或运算。
.. math::
......
......@@ -11,6 +11,9 @@ logical_xor
该OP逐元素的对 ``X`` 和 ``Y`` 两LoDTensor/Tensor进行逻辑异或运算。
.. math::
......
......@@ -11,6 +11,9 @@ logsigmoid
Logsigmoid激活函数
......
......@@ -12,6 +12,9 @@ lrn
该OP实现了局部响应正则化层(Local Response Normalization Layer),用于对局部输入区域正则化,执行一种侧向抑制(lateral inhibition)。更多详情参考: `ImageNet Classification with Deep Convolutional Neural Networks <https://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf>`_
其中 ``input`` 是mini-batch的输入特征。计算过程如下:
......
......@@ -10,6 +10,9 @@ lstm
.. note::
该OP仅支持 GPU 设备运行
......
......@@ -11,6 +11,9 @@ lstm_unit
Long-Short Term Memory(LSTM)循环神经网络计算单元。该OP用于完成单个时间步内LSTM的计算,基于论文 `RECURRENT NEURAL NETWORK REGULARIZATION <http://arxiv.org/abs/1409.2329>`_ 中的描述实现,
并在forget gate(遗忘门)中增加了 ``forget_bias`` 来控制遗忘力度,公式如下:
......
......@@ -11,6 +11,9 @@ margin_rank_loss
margin rank loss(间隔排序损失)层。在排序问题中,它可以比较来自排序网络的输入 ``left`` 和输入 ``right`` 的得分。
可用如下等式定义:
......
......@@ -11,6 +11,9 @@ maxout
假设输入形状为(N, Ci, H, W),输出形状为(N, Co, H, W),则 :math:`Co=Ci/groups` 运算公式如下:
.. math::
......
......@@ -11,6 +11,9 @@ mean
计算 ``x`` 所有元素的平均值。
参数:
......
......@@ -11,6 +11,9 @@ mse_loss
该OP用于计算预测值和目标值的均方差误差。
对于预测值input和目标值label,公式为:
......
......@@ -7,6 +7,12 @@ multi_box_head
.. py:function:: paddle.fluid.layers.multi_box_head(inputs, image, base_size, num_classes, aspect_ratios, min_ratio=None, max_ratio=None, min_sizes=None, max_sizes=None, steps=None, step_w=None, step_h=None, offset=0.5, variance=[0.1, 0.1, 0.2, 0.2], flip=True, clip=False, kernel_size=1, pad=0, stride=1, name=None, min_max_aspect_ratios_order=False)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.multi_box_head
:alias: paddle.declarative.multi_box_head
:old_api: paddle.fluid.layers.multi_box_head
......
......@@ -11,6 +11,9 @@ multiclass_nms
**多分类NMS**
该OP用于对边界框(bounding box)和评分(scores)执行多类非极大值抑制(NMS)。
......
......@@ -11,6 +11,9 @@ multiplex
根据给定的index参数,该OP从每个输入Tensor中选择特定行构造输出Tensor。
设该OP输入包含 :math:`m` 个Tensor,其中 :math:`I_{i}` 代表第i个输入Tensor,:math:`i` 处于区间 :math:`[0,m)`。
......
......@@ -11,6 +11,9 @@ natural_exp_decay
将自然指数衰减运用到初始学习率上。
训练模型时,在训练过程中降低学习率。 自然指数衰减使用自然指数来计算衰减倍率,每 ``decay_steps`` 步衰减倍率的自然指数幂次项上增加 ``decay_rate`` 。
......
......@@ -7,6 +7,12 @@ nce
.. py:function:: paddle.fluid.layers.nce(input, label, num_total_classes, sample_weight=None, param_attr=None, bias_attr=None, num_neg_samples=None, name=None, sampler='uniform', custom_dist=None, seed=0, is_sparse=False)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.nce
:alias: paddle.declarative.nce
:old_api: paddle.fluid.layers.nce
......
......@@ -11,6 +11,9 @@ noam_decay
Noam衰减方法
noam衰减的numpy实现如下:
......
......@@ -11,6 +11,9 @@ not_equal
该OP逐元素地返回 :math:`x != y` 的逻辑值,使用重载算子 `!=` 可以有相同的计算函数效果。
参数:
......
......@@ -11,6 +11,9 @@ npair_loss
**Npair Loss Layer**
参考阅读 `Improved Deep Metric Learning with Multi class N pair Loss Objective <http://www.nec-labs.com/uploads/images/Department-Images/MediaAnalytics/papers/nips16_npairmetriclearning.pdf>`_
......
......@@ -11,6 +11,9 @@ pad2d
该OP依照 paddings 和 mode 属性对input进行2维 ``pad`` 。
参数:
......
......@@ -11,6 +11,9 @@ pad
该OP在Tensor上填充一个由 ``pad_value`` 给出的常数值,填充宽度由 ``paddings`` 指定。
其中,维度 ``i`` 中 ``x`` 内容前填充的值个数用 ``paddings[2*i]`` 表示,维度 ``i`` 中 ``x`` 内容后填充的值个数用 ``paddings[2*i+1]`` 表示。
......
......@@ -11,6 +11,9 @@ pad_constant_like
该OP使用 ``pad_value`` 填充 ``y`` ,填充到每个维度值的数量由x和y的形状而指定,((0,x.shape[0] - y.shape[0]), ..., (0, x.shape[i] - y.shape[i]), ..., (0, x.shape[n] - y.shape[n]))是每个维度填充的宽度,对于维度i,填充宽度 ``(0, x.shape[i] - y.shape[i])`` ,表示在y的第i维开头不填充,而在末尾填充 ``x.shape[i] - y.shape[i]`` 个位置。该OP要求y与x具有相同的秩,并且对每个维度i, ``y.shape[i] <= x.shape[i]`` 。
**示例**:
......
......@@ -11,6 +11,9 @@ piecewise_decay
对初始学习率进行分段衰减。
该算法可用如下代码描述。
......
......@@ -11,6 +11,9 @@ pixel_shuffle
该OP将一个形为[N, C, H, W]的Tensor重新排列成形为 [N, C/r**2, H*r, W*r] 的Tensor。这样做有利于实现步长(stride)为1/r的高效sub-pixel(亚像素)卷积。详见Shi等人在2016年发表的论文 `Real Time Single Image and Video Super Resolution Using an Efficient Sub Pixel Convolutional Neural Network <https://arxiv.org/abs/1609.05158v2>`_ 。
.. code-block:: text
......
......@@ -11,6 +11,9 @@ polygon_box_transform
**PolygonBoxTransform 算子**
该op用于将偏移坐标改变为真实的坐标。
......
......@@ -11,6 +11,9 @@ polynomial_decay
对初始学习率使用多项式衰减
.. code-block:: text
......
......@@ -11,6 +11,9 @@ pool2d
该OP使用上述输入参数的池化配置,为二维空间池化操作,根据 ``input`` ,池化核大小 ``pool_size`` ,池化类型 ``pool_type`` ,步长 ``pool_stride`` ,填充 ``pool_padding`` 等参数得到输出。
输入 ``input`` 和输出(out)采用NCHW或NHWC格式,N为批大小,C是通道数,H是特征高度,W是特征宽度。
......
......@@ -11,6 +11,9 @@ pool3d
该OP使用上述输入参数的池化配置,为三维空间池化操作,根据 ``input`` ,池化核大小 ``pool_size`` ,池化类型 ``pool_type`` ,步长 ``pool_stride`` 和填充 ``pool_padding`` 等参数计算输出。
输入 ``input`` 和输出(Out)采用NCDHW或NDHWC格式,其中N是批大小,C是通道数,D,H和W分别是特征的深度,高度和宽度。
......
......@@ -7,6 +7,12 @@ prelu
.. py:function:: paddle.fluid.layers.prelu(x, mode, param_attr=None, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.prelu
:alias: paddle.declarative.prelu
:old_api: paddle.fluid.layers.prelu
......
......@@ -10,6 +10,9 @@ prior_box
该OP为SSD(Single Shot MultiBox Detector)算法生成候选框。输入的每个位产生N个候选框,N由min_sizes,max_sizes和aspect_ratios的数目决定,候选框的尺寸在(min_size,max_size)之间,该尺寸根据aspect_ratios在序列中生成。
参数:
......
......@@ -11,6 +11,9 @@ prroi_pool
PRROIPool运算
精确区域池化方法(Precise region of interest pooling,也称为PRROIPooling)是对输入的 "感兴趣区域"(RoI)执行插值处理,将离散的特征图数据映射到一个连续空间,使用二重积分再求均值的方式实现Pooling。
......
......@@ -11,6 +11,9 @@ psroi_pool
**注意 rois必须为2维LoDTensor,lod_level为1**
该OP执行PSROIPooling运算,是位置敏感的感兴趣区域池化方法(Position sensitive region of interest pooling,也称为PSROIPooling)。输入input是位置敏感的评分图,输入rois是感兴趣区域的位置坐标。PSROIPooling不同于普通ROIPooling的地方在于,输入input特征图的不同通道会跟输出特征图上的位置区域相关联,该方法是在R-FCN模型中首次提出来的,更多详细信息请参阅 https://arxiv.org/abs/1605.06409。
......
......@@ -10,6 +10,9 @@ py_func
PaddlePaddle Fluid通过py_func在Python端注册OP。py_func的设计原理在于Paddle中的LodTensor与numpy数组可以方便的互相转换,从而可使用Python中的numpy API来自定义一个Python OP。
该自定义的Python OP的前向函数是 ``func``, 反向函数是 ``backward_func`` 。 Paddle将在前向部分调用 ``func`` ,并在反向部分调用 ``backward_func`` (如果 ``backward_func`` 不是None)。 ``x`` 为 ``func`` 的输入,必须为LoDTensor类型; ``out`` 为 ``func`` 的输出, 既可以是LoDTensor类型, 也可以是numpy数组。
......
......@@ -11,6 +11,9 @@ py_reader
创建一个在Python端提供数据的reader
该OP返回一个Reader Variable。该Reader提供了 ``decorate_paddle_reader()`` 和 ``decorate_tensor_provider()`` 来设置Python generator作为数据源,将数据源中的数据feed到Reader Variable。在c++端调用 ``Executor::Run()`` 时,来自generator的数据将被自动读取。与 ``DataFeeder.feed()`` 不同,数据读取进程和 ``Executor::Run()`` 进程可以使用 ``py_reader`` 并行运行。在每次数据传递开始时调用reader的 ``start()`` ,在传递结束和抛出 ``fluid.core.EOFException`` 异常后执行 ``reset()`` 。
......
......@@ -11,6 +11,9 @@ random_crop
该操作对batch中每个实例进行随机裁剪,即每个实例的裁剪位置不同,裁剪位置由均匀分布随机数生成器决定。所有裁剪后的实例都具有相同的维度,由 ``shape`` 参数决定。
参数:
......
......@@ -11,6 +11,9 @@ rank
该OP用于计算输入Tensor的维度(秩)。
参数:
......
......@@ -11,6 +11,9 @@ rank_loss
该OP实现了RankNet模型中的排序损失层。RankNet是一种文档对(pairwise)排序模型,训练样本由一对文档(假设用A、B来表示)组成。标签(假设用P来表示)表示A的排名是否高于B。更多详情请参考:`RankNet <http://icml.cc/2015/wp-content/uploads/2015/06/icml_ranking.pdf>`_
排序损失层有三个输入: :math:`o_i` 、 :math:`o_j` 和 :math:`\tilde{P_{ij}}` ,输入分别表示RankNet模型对文档A、B的输出得分和标签P的值;排序损失层的输入是批输入数据(批大小大于等于1);标签P的取值可以为: {0, 1} 或 {0, 0.5, 1} ,其中,0.5表示输入文档对排序相同。输入数据的排序损失 :math:`C_{i,j}` 计算过程如下:
......
......@@ -10,6 +10,9 @@ read_file
从给定的reader中读取数据
reader是一个Variable,它可以是由函数fluid.layers.py_reader()生成的reader,或者是由函数fluid.layers.double_buffer()生成的装饰Variable。
......
......@@ -11,6 +11,9 @@ reciprocal
reciprocal 对输入Tensor取倒数
......
......@@ -11,6 +11,9 @@ reduce_all
该OP是对指定维度上的Tensor元素进行与逻辑(&)计算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ reduce_any
该OP是对指定维度上的Tensor元素进行或逻辑(|)计算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ reduce_max
该OP是对指定维度上的Tensor元素求最大值运算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ reduce_mean
该OP是对指定维度上的Tensor元素进行平均值算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ reduce_min
该OP是对指定维度上的Tensor元素求最小值运算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ reduce_prod
该OP是对指定维度上的Tensor元素进行求乘积运算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ reduce_sum
该OP是对指定维度上的Tensor元素进行求和运算,并输出相应的计算结果。
参数:
......
......@@ -11,6 +11,9 @@ relu6
relu6激活函数
.. math:: out=min(max(0, x), threshold)
......
......@@ -11,6 +11,9 @@ reshape
该OP在保持输入 ``x`` 数据不变的情况下,改变 ``x`` 的形状。
目标形状可由 ``shape`` 或 ``actual_shape`` 给出。当两个属性同时被指定时,``actual_shape`` 的优先级高于 ``shape`` ,但此时 ``shape`` 只能是整数列表或元组,且在编译时仍然应该正确地设置 ``shape`` 以保证形状推断。
......
......@@ -11,6 +11,9 @@ resize_bilinear
**注意:** 参数 ``actual_shape`` 将被弃用,请使用 ``out_shape`` 替代。
该OP应用双向性插值法调整输入图片的大小,输出形状按优先级由actual_shape、out_shape和scale指定。
......
......@@ -11,6 +11,9 @@ resize_nearest
该OP对输入图片进行大小调整,在高度方向宽度方向进行最邻近插值(nearest neighbor interpolation)操作。
输出形状按优先级顺序依据 ``actual_shape`` , ``out_shape`` 和 ``scale`` 而定。
......
......@@ -11,6 +11,9 @@ resize_trilinear
**注意:** 参数 ``actual_shape`` 将被弃用,请使用 ``out_shape`` 替代。
该层对输入进行放缩,基于给定的由 ``actual_shape`` , ``out_shape`` , ``scale`` 确定的输出shape,进行三线插值。三线插值是包含三个参数的线性插值方程(D方向,H方向, W方向),在一个3D格子上进行三个方向的线性插值。更多细节,请参考维基百科:https://en.wikipedia.org/wiki/Trilinear_interpolation
......
......@@ -11,6 +11,9 @@ retinanet_detection_output
在 `RetinaNet <https://arxiv.org/abs/1708.02002>`_ 中,有多个 `FPN <https://arxiv.org/abs/1612.03144>`_ 层会输出用于分类的预测值和位置回归的预测值,该OP通过执行以下步骤将这些预测值转换成最终的检测结果:
1. 在每个FPN层上,先剔除分类预测值小于score_threshold的anchor,然后按分类预测值从大到小排序,选出排名前nms_top_k的anchor,并将这些anchor与其位置回归的预测值做解码操作得到检测框。
......
......@@ -11,6 +11,9 @@ retinanet_target_assign
该OP是从输入anchor中找出训练检测模型 `RetinaNet <https://arxiv.org/abs/1708.02002>`_ 所需的正负样本,并为每个正负样本分配用于分类的目标值和位置回归的目标值,同时从全部anchor的类别预测值cls_logits、位置预测值bbox_pred中取出属于各正负样本的部分。
正负样本的查找准则如下:
......
......@@ -11,6 +11,9 @@ reverse
**reverse**
该OP对输入Tensor ``x`` 在指定轴 ``axis`` 上进行数据的逆序操作。
......
......@@ -10,6 +10,9 @@ rnn
:api_attr: 声明式编程模式(静态图)
rnn创建一个由RNNCell :code:`cell` 指定的递归神经网络,该神经网络重复执行 :code:`cell.call()` 直至达到 :code:`inputs` 的最大长度。
......
......@@ -11,6 +11,9 @@ roi_align
**实现RoIAlign操作。**
Region of Interests align(直译:有意义、有价值选区对齐) 用于实现双线性插值,它可以将不均匀大小的输入
......
......@@ -11,6 +11,9 @@ roi_perspective_transform
该OP对RoI区域做透视变换,将不规则的RoI区域变成固定大小的矩形区域,透视变换是线性代数里面的一种基础变换。
参数:
......
......@@ -12,6 +12,9 @@ roi_pool
该OP实现了roi池化操作,对非均匀大小的输入执行最大池化,以获得固定大小的特征映射(例如7*7)。
该OP的操作分三个步骤:
......
......@@ -12,6 +12,9 @@ round
该OP将输入中的数值四舍五入到最接近的整数数值。
.. code-block:: python
......
......@@ -7,6 +7,12 @@ row_conv
.. py:function:: paddle.fluid.layers.row_conv(input, future_context_size, param_attr=None, act=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.row_conv
:alias: paddle.declarative.row_conv,paddle.nn.functional.row_conv,paddle.nn.functional.extension.row_conv
:old_api: paddle.fluid.layers.row_conv
......
......@@ -11,6 +11,9 @@ rpn_target_assign
该OP用于为anchors分配分类标签和回归标签,以便用这些标签对RPN进行训练。
该OP将anchors分为两种类别,正和负。根据Faster-RCNN的paper,正类别anchor包括以下两种anchor:
......
......@@ -11,6 +11,9 @@ rsqrt
该OP为rsqrt激活函数。
注:输入x应确保为非 **0** 值,否则程序会抛异常退出。
......
......@@ -11,6 +11,9 @@ sampled_softmax_with_cross_entropy
**Sampled Softmax With Cross Entropy Operator**
对于较大的输出类,采样的交叉熵损失Softmax被广泛地用作输出层。该运算符为所有示例采样若干个样本,并计算每行采样张量的SoftMax标准化值,然后计算交叉熵损失。
......
......@@ -11,6 +11,9 @@ scale
缩放算子。
对输入Tensor进行缩放和偏置,其公式如下:
......
......@@ -11,6 +11,9 @@ scatter
该OP根据index中的索引值将updates数据更新到input中。
.. code-block:: python
......
......@@ -11,6 +11,9 @@ scatter_nd_add
该OP通过对Variable中的单个值或切片应用稀疏加法,从而得到输出的Variable。
:code:`ref` 是维度为 :code:`R` 的张量。 :code:`index` 是维度为 :code:`K` 的张量。因此, :code:`index` 的形状是 :math:`[i_0, i_1, ..., i_{K-2}, Q]` ,其中 :math:`Q \leq R` 。:code:`updates` 是一个维度为 :math:`K - 1 + R - Q` 的张量,它的形状是 :math:`index.shape[:-1] + ref.shape[index.shape[-1]:]` 。
......
......@@ -11,6 +11,9 @@ scatter_nd
该OP根据 :code:`index` ,将 :code:`updates` 添加到一个新的张量中,从而得到输出的Variable。这个操作与 :code:`scatter_nd_add` 类似,除了形状为 :code:`shape` 的张量是通过零初始化的。相应地, :code:`scatter_nd(index, updates, shape)` 等价于 :code:`scatter_nd_add(fluid.layers.zeros(shape, updates.dtype), index, updates)` 。如果 :code:`index` 有重复元素,则将累积相应的更新,因此,由于数值近似问题,索引中重复元素的顺序不同可能会导致不同的输出结果。具体的计算方法可以参见 :code:`scatter_nd_add` 。该OP是 :code:`gather_nd` 的反函数。
参数:
......
......@@ -11,6 +11,9 @@ selu
SeLU激活函数,其公式如下:
.. math::
......
......@@ -10,6 +10,9 @@ sequence_concat
**注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用concat函数(fluid.layers.** :ref:`cn_api_fluid_layers_concat` **)。**
**该OP仅支持LoDTensor** ,通过LoDTensor的LoD信息将输入的多个LoDTensor进行连接(concat),输出连接后的LoDTensor。
......
......@@ -10,6 +10,9 @@ sequence_conv
**注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用conv2d函数(fluid.layers.** :ref:`cn_api_fluid_layers_conv2d` **)。**
该OP在给定的卷积参数下(如卷积核数目、卷积核大小等),对输入的变长序列(sequence)LoDTensor进行卷积操作。默认情况下,该OP会自适应地在每个输入序列的两端等长地填充全0数据,以确保卷积后的序列输出长度和输入长度一致。支持通过配置 ``padding_start`` 参数来指定序列填充的行为。
......
......@@ -10,6 +10,9 @@ sequence_enumerate
枚举形状为 ``[d_1, 1]`` 的输入序列所有长度为 ``win_size`` 的子序列,生成一个形状为 ``[d_1, win_size]`` 的新序列,需要时以 ``pad_value`` 填充。
注意,该OP的输入 ``input`` 只能是LodTensor。
......
......@@ -10,6 +10,9 @@ sequence_expand_as
Sequence Expand As Layer,该OP根据输入 ``y`` 的第0级lod对输入 ``x`` 进行扩展。当前实现要求 ``y`` 的lod层数(level)必须为1,且 ``x`` 的第一维必须和 ``y`` 的第0层lod大小相同,所以扩展后的LodTensor具有和 ``y`` 相同的lod。扩展结果与输入 ``x`` 的lod无关,所以无需考虑 ``x`` 的lod。
注意,该OP的输入 ``x`` 可以是Tensor或LoDTensor, ``y`` 只能是LodTensor。
......
......@@ -10,6 +10,9 @@ sequence_expand
序列扩张层(Sequence Expand Layer),根据输入 ``y`` 的第 ``ref_level`` 层lod对输入 ``x`` 进行扩展。 ``x`` 的lod level最多为1,若 ``x`` 的lod level为1,则 ``x`` 的lod大小必须与 ``y`` 的第 ``ref_level`` 层lod大小相等;若 ``x`` 的lod level为0,则 ``x`` 的第一维大小必须与 ``y`` 第 ``ref_level`` 层大小相等。 ``x`` 的秩最少为2,当 ``x`` 的秩大于2时,将被当作是一个二维张量处理。
注意,该OP的输入 ``x`` 可以是Tensor或LodTensor, ``y`` 只能是LodTensor。
......
......@@ -10,6 +10,9 @@ sequence_first_step
该OP **仅支持LoDTensor类型的输入** ,将对输入的LoDTensor,在最后一层lod_level上,选取其每个序列(sequence)的第一个时间步(time_step)的特征向量作为池化后的输出向量。
::
......
......@@ -10,6 +10,9 @@ sequence_last_step
该OP **仅支持LoDTensor类型的输入** ,将对输入的LoDTensor,在最后一层lod_level上,选取其每个序列(sequence)的最后一个时间步(time-step)的特征向量作为池化后的输出向量。
::
......
......@@ -10,6 +10,9 @@ sequence_pad
序列填充操作符(Sequence Pad Operator),该OP将同一batch中的序列填充到一个一致的长度(由 ``maxlen`` 指定)。填充的新元素的值具体由输入 ``pad_value`` 指定,并会添加到每一个序列的末尾,使得他们最终的长度保持一致。最后返回一个Python tuple ``(Out, Length)`` ,其中LodTensor ``Out`` 为填充后的序列,LodTensor ``Length`` 为填充前的原序列长度信息。
注意,该OP的输入 ``x`` 只能是LodTensor。
......
......@@ -10,6 +10,9 @@ sequence_pool
**注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用pool2d函数(fluid.layers.** :ref:`cn_api_fluid_layers_pool2d` **)。**
该OP **仅支持LoDTensor类型的输入** ,将对输入的LoDTensor进行指定方式的池化(pooling)操作。通过指定pool_type参数,将输入的每个序列(sequence)在最后一层lod_level上或时间步(time-step)上对特征进行诸如sum、average、sqrt等池化操作。
......
......@@ -10,6 +10,9 @@ sequence_reshape
**注意:该OP的输入只能是LoDTensor,如果您需要处理的输入是Tensor类型,请使用reshape函数(fluid.layers.** :ref:`cn_api_fluid_layers_reshape` **)。**
**该OP仅支持LoDTensor** ,在指定 ``new_dim`` 参数下,通过序列原始长度、和原始shape计算出新的shape,以输出包含新维度(new_dim)下的LoDTensor。目前仅支持1-level LoDTensor,请确保(原长度*原维数)可以除以新的维数,且每个序列没有余数。
......
......@@ -10,6 +10,9 @@ sequence_scatter
.. note::
该OP的输入index,updates必须是LoDTensor。
......
......@@ -10,6 +10,9 @@ sequence_slice
**实现Sequence Slice(序列切片)运算**
**该OP输入只能是LoDTensor, 如果您需要处理的是Tensor类型,请使用 :ref:`cn_api_fluid_layers_slice` 。**
......
......@@ -10,6 +10,9 @@ sequence_softmax
.. note::
该OP的输入只能是LoDTensor,如果要处理的输入是Tensor类型,请使用 :ref:`cn_api_fluid_layers_softmax`
......
......@@ -10,6 +10,9 @@ sequence_unpad
.. note::
该OP的输入为Tensor,输出为LoDTensor。该OP用于移除填充元素,与之对应,还存在进行数据填充的OP sequence_pad,详情见: :ref:`cn_api_fluid_layers_sequence_pad`
......
......@@ -11,6 +11,9 @@ shape
shape层。
获得输入Tensor的shape。
......
......@@ -11,6 +11,9 @@ shard_index
该函数对输入的索引根据分片(shard)的偏移量重新计算。
索引长度被均分为N个分片,如果输入索引所在的分片跟分片ID对应,则该索引以分片的偏移量为界重新计算,否则更新为默认值(ignore_value)。具体计算为:
::
......
......@@ -11,6 +11,9 @@ shuffle_channel
该OP将输入 ``x`` 的通道混洗重排。 它将每个组中的输入通道分成 ``group`` 个子组,并通过逐一从每个子组中选择元素来获得新的顺序。
请参阅 https://arxiv.org/pdf/1707.01083.pdf
......
......@@ -5,6 +5,11 @@ sigmoid
.. py:function:: paddle.fluid.layers.sigmoid(x, name=None)
:alias_main: paddle.nn.functional.sigmoid
:alias: paddle.nn.functional.sigmoid,paddle.nn.functional.activation.sigmoid
......
......@@ -11,6 +11,9 @@ sigmoid_cross_entropy_with_logits
在每个类别独立的分类任务中,该OP可以计算按元素的概率误差。可以将其视为预测数据点的标签,其中标签不是互斥的。例如,一篇新闻文章可以同时关于政治,科技,体育或者同时不包含这些内容。
logistic loss可通过下式计算:
......
......@@ -11,6 +11,9 @@ sigmoid_focal_loss
`Focal Loss <https://arxiv.org/abs/1708.02002>`_ 被提出用于解决计算机视觉任务中前景-背景不平衡的问题。该OP先计算输入x中每个元素的sigmoid值,然后计算sigmoid值与类别目标值label之间的Focal Loss。
Focal Loss的计算过程如下:
......
......@@ -11,6 +11,9 @@ sign
此OP对输入x中每个元素进行正负判断,并且输出正负判断值:1代表正,-1代表负,0代表零。
参数:
......
......@@ -11,6 +11,9 @@ similarity_focus
**实现SimilarityFocus(相似度聚焦)运算**
通过以下三个步骤,该层生成一个和输入 ``input`` 同形的 similarity focus mask(相似度聚焦掩码):
......
......@@ -11,6 +11,9 @@ slice
该OP沿多个轴生成 ``input`` 的切片。与numpy类似: https://docs.scipy.org/doc/numpy/reference/arrays.indexing.html 该OP使用 ``axes`` 、 ``starts`` 和 ``ends`` 属性来指定轴列表中每个轴的起点和终点位置,并使用此信息来对 ``input`` 切片。如果向 ``starts`` 或 ``ends`` 传递负值如 :math:`-i`,则表示该轴的反向第 :math:`i-1` 个位置(这里以0为初始位置)。如果传递给 ``starts`` 或 ``end`` 的值大于n(维度中的元素数目),则表示n。当切片一个未知数量的维度时,建议传入 ``INT_MAX``。 ``axes`` 、 ``starts`` 和 ``ends`` 三个参数的元素数目必须相等。以下示例将解释切片如何工作:
::
......
......@@ -11,6 +11,9 @@ smooth_l1
该layer计算变量 ``x`` 和 ``y`` 的smooth L1 loss,它以 ``x`` 和 ``y`` 的第一维大小作为批处理大小。对于每个实例,按元素计算smooth L1 loss,然后计算所有loss。输出变量的形状是[batch_size, 1]
......
......@@ -11,6 +11,9 @@ soft_relu
SoftReLU 激活函数.
.. math:: out=ln(1+exp(max(min(x,threshold),-threshold)))
......
......@@ -11,6 +11,9 @@ softmax
该OP实现了softmax层。OP的计算过程如下:
步骤1:输入 ``input`` 的 ``axis`` 维会被置换到最后一维;
......
......@@ -11,6 +11,9 @@ softmax_with_cross_entropy
该OP实现了softmax交叉熵损失函数。该函数会将softmax操作、交叉熵损失函数的计算过程进行合并,从而提供了数值上更稳定的梯度值。
因为该运算对 ``logits`` 的 ``axis`` 维执行softmax运算,所以它需要未缩放的 ``logits`` 。该运算不应该对softmax运算的输出进行操作,否则会产生错误的结果。
......
......@@ -11,6 +11,9 @@ softplus
softplus激活函数
.. math::
......
......@@ -11,6 +11,9 @@ softshrink
Softshrink激活函数
.. math::
......
......@@ -12,6 +12,9 @@ softsign
softsign激活函数
.. math::
......
......@@ -11,6 +11,9 @@ space_to_depth
该OP对成块的空间数据进行重组,输出一个输入张量的拷贝,其高度和宽度维度上的值移至通道维度。
重组时,依据 ``blocksize`` 指明的数据块大小, 对形为 ``[batch, channel, height, width]`` 的输入张量进行space_to_depth(广度至深度)运算,生成形为 ``[batch, channel * blocksize * blocksize, height/blocksize, width/blocksize]`` 的输出:
......
......@@ -7,6 +7,12 @@ spectral_norm
.. py:function:: paddle.fluid.layers.spectral_norm(weight, dim=0, power_iters=1, eps=1e-12, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.declarative.spectral_norm
:alias: paddle.declarative.spectral_norm
:old_api: paddle.fluid.layers.spectral_norm
......
......@@ -11,6 +11,9 @@ square
该OP执行逐元素取平方运算。
.. math::
......
......@@ -11,6 +11,9 @@ square_error_cost
该OP用于计算预测值和目标值的方差估计。
对于预测值input和目标值label,公式为:
......
......@@ -11,6 +11,9 @@ ssd_loss
该OP用于SSD物体检测算法的多窗口损失层
该层用于计算SSD的损失,给定位置偏移预测,置信度预测,候选框和真实框标签,以及难样本挖掘的类型。通过执行以下步骤,返回的损失是本地化损失(或回归损失)和置信度损失(或分类损失)的加权和:
......
......@@ -11,6 +11,9 @@ stanh
STanh 激活算子(STanh Activation Operator.)
.. math::
......
......@@ -9,6 +9,9 @@ strided_slice
:old_api: paddle.fluid.layers.strided_slice
strided_slice算子。
该OP沿多个轴生成 ``input`` 的切片,与numpy类似: https://docs.scipy.org/doc/numpy/reference/arrays.indexing.html。该OP使用 ``axes`` 、 ``starts`` 和 ``ends`` 属性来指定轴列表中每个轴的起点和终点位置,并使用此信息来对 ``input`` 切片。如果向 ``starts`` 或 ``ends`` 传递负值如 :math:`-i`,则表示该轴的反向第 :math:`i-1` 个位置(这里以0为初始位置), ``strides`` 表示切片的步长, ``strides`` 如果为负数,则按照反方向进行切片。如果传递给 ``starts`` 或 ``ends`` 的值大于n(维度中的元素数目),则表示n。当切片一个未知数量的维度时,建议传入 ``INT_MAX``。 ``axes`` 、 ``starts`` 和 ``ends`` 以及 ``strides`` 四个参数的元素数目必须相等。以下示例将解释切片如何工作:
......
......@@ -11,6 +11,9 @@ sums
该OP计算多个输入Tensor逐个元素相加的和。
- 示例:3个Tensor求和
......
......@@ -11,6 +11,9 @@ swish
逐元素计算 Swish 激活函数,参考 `Searching for Activation Functions <https://arxiv.org/abs/1710.05941>`_ 。
.. math::
......
......@@ -13,6 +13,9 @@ switch_case
该OP的运行方式类似于c++的switch/case。
参数:
......
......@@ -11,6 +11,9 @@ tanh_shrink
tanh_shrink激活函数
.. math::
......
......@@ -11,6 +11,9 @@ target_assign
对于每个实例,根据 ``match_indices`` 和 ``negative_indices`` 位置索引, 给输入 ``out`` 和 ``out_weight`` 赋值。输入 ``input`` 和 ``negative_indices`` 均为2-D LoDTensor。假如 ``input`` 中每个实例的行偏移称作lod,该操作计算步骤如下:
1.根据match_indices赋值:
......
......@@ -11,6 +11,9 @@ teacher_student_sigmoid_loss
**Teacher Student Log Loss Layer(教师--学生对数损失层)**
定制化需求,用于student萃取teacher的值。此图层接受输入预测和目标标签,并返回teacher_student损失。
......
......@@ -10,6 +10,9 @@ temporal_shift
该OP用于对输入X做时序通道T上的位移操作,为TSM(Temporal Shift Module)中使用的操作。
输入(X)的形状应为[N*T, C, H, W],N是批大小,T是 ``seg_num`` 指定的时间段号,C是通道号,H和W是特征的高度和宽度。
......
......@@ -11,6 +11,9 @@ thresholded_relu
逐元素计算 ThresholdedRelu激活函数。
.. math::
......
......@@ -10,6 +10,9 @@ topk
此OP用于查找输入Tensor的最后一维的前k个最大项,返回它们的值和索引。
如果输入是1-D Tensor,则找到Tensor的前k个最大项,并输出前k个最大项的值和索引。如果输入是更高阶的Tensor,则该OP会基于最后一维计算前k项。
......
......@@ -11,6 +11,9 @@ transpose
该OP根据perm对输入的多维Tensor进行数据重排。返回多维Tensor的第i维对应输入Tensor的perm[i]维。
参数:
......
......@@ -11,6 +11,9 @@ unfold
该OP实现的功能与卷积中用到的im2col函数一样,通常也被称作为im2col过程。对于每一个卷积核覆盖下的区域,元素会被重新排成一列。当卷积核在整个图片上滑动时,将会形成一系列的列向量。对于每一个输入形状为[N, C, H, W]的 ``x`` ,都将会按照下面公式计算出一个形状为[N, Cout, Lout]的输出。
......
......@@ -11,6 +11,9 @@ unique
unique为 ``x`` 返回一个unique张量和一个指向该unique张量的索引。
参数:
......
......@@ -10,6 +10,9 @@ unique_with_counts
:old_api: paddle.fluid.layers.unique_with_counts
该OP对输入Tensor元素进行去重,获取去重后结果Tensor,同时获取去重后结果在原始输入中的计数Tensor以及在原始输入中的索引Tensor。
注:该OP仅支持 **CPU** ,同时仅支持 **Tensor**
......
......@@ -11,6 +11,9 @@ unstack
该OP将单个dim为 ``D`` 的Tensor沿 ``axis`` 轴unpack为 ``num`` 个dim为 ``(D-1)`` 的Tensor
参数:
......
......@@ -11,6 +11,9 @@ warpctc
该OP用于计算 `CTC loss <https://www.cs.toronto.edu/~graves/icml_2006.pdf>`_ 。该OP的底层调用了第三方 `baidu-research::warp-ctc <https://github.com/baidu-research/warp-ctc>`_ 的实现。
参数:
......
......@@ -14,6 +14,9 @@ ____________________________________
该API用于实现类似while的循环控制功能,只要循环条件 ``cond`` 的返回值为True,``while_loop`` 则会循环执行循环体 ``body`` ,直到 ``cond`` 的返回值为False。
**注意:**
......
......@@ -12,6 +12,9 @@ yolo_box
该运算符基于YOLOv3网络的输出结果,生成YOLO检测框。
连接 yolo_box 网络的输出形状应为[N,C,H,W],其中 H 和 W 相同,用来指定网格大小。对每个网格点预测给定的数目的框,这个数目记为 S ,由 anchor 的数量指定。 在第二维(通道维度)中,C应该等于S *(5 + class_num),class_num是源数据集中对象类别数目(例如coco数据集中的80),此外第二个(通道)维度中还有4个框位置坐标x,y,w,h,以及anchor box的one-hot key的置信度得分。
......
......@@ -11,6 +11,9 @@ yolov3_loss
该运算通过给定的预测结果和真实框计算yolov3损失。
yolov3 loss前的网络输出形状为[N,C,H,W],H和W应该相同,用来指定网格(grid)大小。每个网格点预测S个边界框(bounding boxes),S由每个尺度中 ``anchors`` 簇的个数指定。在第二维(表示通道的维度)中,C的值应为S *(class_num + 5),class_num是源数据集的对象种类数(如coco中为80),另外,除了存储4个边界框位置坐标x,y,w,h,还包括边界框以及每个anchor框的one-hot关键字的置信度得分。
......
......@@ -4,6 +4,15 @@ Accuracy
-------------------------------
.. py:class:: paddle.fluid.metrics.Accuracy(name=None)
:alias_main: paddle.metric.accuracy
:alias: paddle.metric.accuracy
:old_api: paddle.fluid.layers.metric_op.accuracy
......
......@@ -4,6 +4,15 @@ Auc
-------------------------------
.. py:class:: paddle.fluid.metrics.Auc(name, curve='ROC', num_thresholds=4095)
:alias_main: paddle.metric.auc
:alias: paddle.metric.auc
:old_api: paddle.fluid.layers.metric_op.auc
......
......@@ -5,6 +5,12 @@ ChunkEvaluator
.. py:class:: paddle.fluid.metrics.ChunkEvaluator(name=None)
:alias_main: paddle.metric.ChunkEvaluator
:alias: paddle.metric.ChunkEvaluator
:old_api: paddle.fluid.metrics.ChunkEvaluator
该接口使用mini-batch的chunk_eval累计的counter numbers,来计算准确率、召回率和F1值。ChunkEvaluator有三个状态num_infer_chunks,num_label_chunks和num_correct_chunks,分别对应语块数目、标签中的语块数目、正确识别的语块数目。对于chunking的基础知识,请参考 https://www.aclweb.org/anthology/N01-1025 。ChunkEvalEvaluator计算块检测(chunk detection)的准确率,召回率和F1值,支持IOB, IOE, IOBES和IO标注方案。
......
......@@ -5,6 +5,12 @@ CompositeMetric
.. py:class:: paddle.fluid.metrics.CompositeMetric(name=None)
:alias_main: paddle.metric.CompositeMetric
:alias: paddle.metric.CompositeMetric
:old_api: paddle.fluid.metrics.CompositeMetric
......
......@@ -5,6 +5,12 @@ DetectionMAP
.. py:class:: paddle.fluid.metrics.DetectionMAP(input, gt_label, gt_box, gt_difficult=None, class_num=None, background_label=0, overlap_threshold=0.5, evaluate_difficult=True, ap_version='integral')
:alias_main: paddle.metric.DetectionMAP
:alias: paddle.metric.DetectionMAP
:old_api: paddle.fluid.metrics.DetectionMAP
......
......@@ -5,6 +5,12 @@ EditDistance
.. py:class:: paddle.fluid.metrics.EditDistance(name)
:alias_main: paddle.metric.EditDistance
:alias: paddle.metric.EditDistance
:old_api: paddle.fluid.metrics.EditDistance
......
......@@ -5,6 +5,12 @@ Precision
.. py:class:: paddle.fluid.metrics.Precision(name=None)
:alias_main: paddle.metric.Precision
:alias: paddle.metric.Precision
:old_api: paddle.fluid.metrics.Precision
......
......@@ -5,6 +5,12 @@ Recall
.. py:class:: paddle.fluid.metrics.Recall(name=None)
:alias_main: paddle.metric.Recall
:alias: paddle.metric.Recall
:old_api: paddle.fluid.metrics.Recall
......
......@@ -9,6 +9,9 @@ glu
门控线性单元 Gated Linear Units (GLU) 由 :ref:`cn_api_fluid_layers_split` ,:ref:`cn_api_fluid_layers_sigmoid` 和 :ref:`cn_api_fluid_layers_elementwise_mul` 组成。特定的,沿着给定维度将输入拆分成两个大小相同的部分,:math:`a` 和 :math:`b` ,按如下方式计算:
.. math::
......
......@@ -10,6 +10,9 @@ img_conv_group
Image Convolution Group由Convolution2d,BatchNorm,DropOut和Pool2d组成。根据输入参数,img_conv_group将使用Convolution2d,BatchNorm,DropOut对Input进行连续计算,得到最后结果。
参数:
......
......@@ -10,6 +10,9 @@ scaled_dot_product_attention
该接口实现了的基于点积(并进行了缩放)的多头注意力(Multi-Head Attention)机制。attention可以表述为将一个查询(query)和一组键值对(key-value pair)映射为一个输出;Multi-Head Attention则是使用多路进行attention,而且对attention的输入进行了线性变换。公式如下:
......
......@@ -10,6 +10,9 @@ sequence_conv_pool
**注意:该OP的输入** ``input`` **必须是2维LoDTensor, lod_level为1,如果输入是Tensor,建议使用** :ref:`cn_api_fluid_nets_simple_img_conv_pool` **代替**
该接口由序列卷积( :ref:`cn_api_fluid_layers_sequence_conv` )和池化( :ref:`cn_api_fluid_layers_sequence_pool` )组成
......
......@@ -10,6 +10,9 @@ simple_img_conv_pool
``simple_img_conv_pool`` 由一个conv2d( :ref:`cn_api_fluid_layers_conv2d` )和一个pool2d( :ref:`cn_api_fluid_layers_pool2d` ) OP组成。
参数:
......
......@@ -8,6 +8,9 @@ Conv2D
**二维卷积层**
该OP是二维卷积层(convolution2D layer),根据输入、滤波器、步长(stride)、填充(padding)、膨胀比例(dilations)一组参数计算输出特征层大小。输入和输出是NCHW或NHWC格式,其中N是批尺寸,C是通道数,H是特征高度,W是特征宽度。滤波器是MCHW格式,M是输出图像通道数,C是输入图像通道数,H是滤波器高度,W是滤波器宽度。如果组数(groups)大于1,C等于输入图像通道数除以组数的结果。详情请参考UFLDL's : `卷积 <http://ufldl.stanford.edu/tutorial/supervised/FeatureExtractionUsingConvolution/>`_ 。如果bias_attr不为False,卷积计算会添加偏置项。如果指定了激活函数类型,相应的激活函数会作用在最终结果上。
......
......@@ -10,6 +10,9 @@ LogSoftmax
**LogSoftmax激活层:**
.. math::
......
......@@ -11,6 +11,9 @@ ReLU
**ReLU(Rectified Linear Unit)激活层:**
.. math::
......
......@@ -5,6 +5,11 @@ UpSample
.. py:class:: paddle.nn.UpSample(out_shape=None, scale=None, resample='BILINEAR', actual_shape=None, align_corners=True, align_mode=1, data_format='NCHW')
:alias_main: paddle.nn.UpSample
:alias: paddle.nn.UpSample,paddle.nn.layer.UpSample,paddle.nn.layer.common.UpSample
**注意:** 参数 ``actual_shape`` 将被弃用,请使用 ``out_shape`` 替代。
该OP用于调整一个batch中图片的大小。
......
......@@ -10,6 +10,9 @@ diag_embed
该 OP 创建一个 Tensor,其在指定的 2D 平面(由 ``dim1`` 和 ``dim2`` 指定)上的对角线由输入 ``input`` 填充。
默认的,指定的 2D 平面由返回 Tensor 的最后两维组成。
......
......@@ -10,6 +10,9 @@ Inerpolate
**注意:** 参数 ``actual_shape`` 将被弃用,请使用 ``out_shape`` 替代。
该OP用于调整一个batch中图片的大小。
......
......@@ -5,6 +5,11 @@ BCELoss
.. py:function:: paddle.nn.BCELoss(input, label, weight=None, reduction='mean')
:alias_main: paddle.nn.BCELoss
:alias: paddle.nn.BCELoss,paddle.nn.layer.BCELoss,paddle.nn.layer.loss.BCELoss
该接口用于创建一个BCELoss的可调用类,用于计算输入和标签之间的二值交叉熵损失值。二值交叉熵损失函数公式如下:
当 `weight` 不为空时,公式为:
......
......@@ -3,6 +3,14 @@ CrossEntropyLoss
.. py:function:: paddle.nn.loss.CrossEntropyLoss(weight=None, reduction='mean', ignore_index=-100)
:alias_main: paddle.nn.CrossEntropyLoss
:alias: paddle.nn.CrossEntropyLoss,paddle.nn.layer.CrossEntropyLoss,paddle.nn.layer.loss.CrossEntropyLoss
该OP计算输入input和标签label间的交叉熵损失 ,它结合了`LogSoftmax` 和 `NLLLoss` 的OP计算,可用于训练一个 `n` 类分类器。
如果提供 `weight` 参数的话,它是一个 `1-D` 的tensor, 每个值对应每个类别的权重。
......
......@@ -3,6 +3,11 @@ L1Loss
.. py:function:: paddle.nn.loss.L1Loss(reduction='mean')
:alias_main: paddle.nn.L1Loss
:alias: paddle.nn.L1Loss,paddle.nn.layer.L1Loss,paddle.nn.layer.loss.L1Loss
该接口用于创建一个L1Loss的可调用类,L1Loss计算输入input和标签label间的 `L1 loss` 损失。
该损失函数的数学计算公式如下:
......
......@@ -3,6 +3,11 @@ MSELoss
.. py:function:: paddle.nn.loss.MSELoss(input,label)
:alias_main: paddle.nn.MSELoss
:alias: paddle.nn.MSELoss,paddle.nn.layer.MSELoss,paddle.nn.layer.loss.MSELoss
该OP用于计算预测值和目标值的均方差误差。
对于预测值input和目标值label:
......
......@@ -3,6 +3,11 @@ NLLLoss
.. py:function:: paddle.nn.loss.NLLLoss(weight=None, reduction='mean', ignore_index=-100)
:alias_main: paddle.nn.NLLLoss
:alias: paddle.nn.NLLLoss,paddle.nn.layer.NLLLoss,paddle.nn.layer.loss.NLLLoss
该OP计算输入input和标签label间的 `negative log likelihood loss` 损失 ,可用于训练一个 `n` 类分类器。
如果提供 `weight` 参数的话,它是一个 `1-D` 的tensor, 里面的值对应类别的权重。当你的训练集样本
......
......@@ -5,6 +5,12 @@ AdadeltaOptimizer
.. py:class:: paddle.fluid.optimizer.AdadeltaOptimizer(learning_rate, epsilon=1.0e-6, rho=0.95, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.AdadeltaOptimizer
:alias: paddle.optimizer.AdadeltaOptimizer
:old_api: paddle.fluid.optimizer.AdadeltaOptimizer
......
......@@ -5,6 +5,12 @@ Adadelta
.. py:attribute:: paddle.fluid.optimizer.Adadelta
:alias_main: paddle.optimizer.Adadelta
:alias: paddle.optimizer.Adadelta
:old_api: paddle.fluid.optimizer.Adadelta
......
......@@ -5,6 +5,12 @@ AdagradOptimizer
.. py:class:: paddle.fluid.optimizer.AdagradOptimizer(learning_rate, epsilon=1e-06, parameter_list=None, regularization=None, grad_clip=None, name=None, initial_accumulator_value=0.0)
:alias_main: paddle.optimizer.AdagradOptimizer
:alias: paddle.optimizer.AdagradOptimizer
:old_api: paddle.fluid.optimizer.AdagradOptimizer
......
......@@ -5,6 +5,12 @@ Adagrad
.. py:attribute:: paddle.fluid.optimizer.Adagrad
:alias_main: paddle.optimizer.Adagrad
:alias: paddle.optimizer.Adagrad
:old_api: paddle.fluid.optimizer.Adagrad
......
......@@ -5,6 +5,12 @@ AdamOptimizer
.. py:class:: paddle.fluid.optimizer.AdamOptimizer(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, parameter_list=None, regularization=None, grad_clip=None, name=None, lazy_mode=False)
:alias_main: paddle.optimizer.AdamOptimizer
:alias: paddle.optimizer.AdamOptimizer
:old_api: paddle.fluid.optimizer.AdamOptimizer
......
......@@ -5,6 +5,12 @@ Adam
.. py:attribute:: paddle.fluid.optimizer.Adam
:alias_main: paddle.optimizer.Adam
:alias: paddle.optimizer.Adam
:old_api: paddle.fluid.optimizer.Adam
......
......@@ -5,6 +5,12 @@ AdamaxOptimizer
.. py:class:: paddle.fluid.optimizer.AdamaxOptimizer(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.AdamaxOptimizer
:alias: paddle.optimizer.AdamaxOptimizer
:old_api: paddle.fluid.optimizer.AdamaxOptimizer
......
......@@ -5,6 +5,12 @@ Adamax
.. py:attribute:: paddle.fluid.optimizer.Adamax
:alias_main: paddle.optimizer.Adamax
:alias: paddle.optimizer.Adamax
:old_api: paddle.fluid.optimizer.Adamax
......
......@@ -7,6 +7,12 @@ DGCMomentumOptimizer
.. py:class:: paddle.fluid.optimizer.DGCMomentumOptimizer(learning_rate, momentum, rampup_begin_step, rampup_step=1, sparsity=[0.999], use_nesterov=False, local_grad_clip_norm=None, num_trainers=None, regularization=None, grad_clip=None, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.optimizer.DGCMomentumOptimizer
:alias: paddle.optimizer.DGCMomentumOptimizer
:old_api: paddle.fluid.optimizer.DGCMomentumOptimizer
......
......@@ -5,6 +5,12 @@ DecayedAdagradOptimizer
.. py:class:: paddle.fluid.optimizer.DecayedAdagradOptimizer(learning_rate, decay=0.95, epsilon=1e-06, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.DecayedAdagradOptimizer
:alias: paddle.optimizer.DecayedAdagradOptimizer
:old_api: paddle.fluid.optimizer.DecayedAdagradOptimizer
......
......@@ -5,6 +5,12 @@ DecayedAdagrad
.. py:attribute:: paddle.fluid.optimizer.DecayedAdagrad
:alias_main: paddle.optimizer.DecayedAdagrad
:alias: paddle.optimizer.DecayedAdagrad
:old_api: paddle.fluid.optimizer.DecayedAdagrad
......
......@@ -5,6 +5,12 @@ DpsgdOptimizer
.. py:class:: paddle.fluid.optimizer.DpsgdOptimizer(learning_rate=0.001, clip=0.9, batch_size=0.999, sigma=1e-8)
:alias_main: paddle.optimizer.DpsgdOptimizer
:alias: paddle.optimizer.DpsgdOptimizer
:old_api: paddle.fluid.optimizer.DpsgdOptimizer
......
......@@ -5,6 +5,12 @@ Dpsgd
.. py:attribute:: paddle.fluid.optimizer.Dpsgd
:alias_main: paddle.optimizer.Dpsgd
:alias: paddle.optimizer.Dpsgd
:old_api: paddle.fluid.optimizer.Dpsgd
......
......@@ -7,6 +7,12 @@ ExponentialMovingAverage
.. py:class:: paddle.fluid.optimizer.ExponentialMovingAverage(decay=0.999, thres_steps=None, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.optimizer.ExponentialMovingAverage
:alias: paddle.optimizer.ExponentialMovingAverage
:old_api: paddle.fluid.optimizer.ExponentialMovingAverage
......
......@@ -5,6 +5,12 @@ FtrlOptimizer
.. py:class:: paddle.fluid.optimizer.FtrlOptimizer(learning_rate, l1=0.0, l2=0.0, lr_power=-0.5, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.FtrlOptimizer
:alias: paddle.optimizer.FtrlOptimizer
:old_api: paddle.fluid.optimizer.FtrlOptimizer
......
......@@ -5,6 +5,12 @@ Ftrl
.. py:attribute:: paddle.fluid.optimizer.Ftrl
:alias_main: paddle.optimizer.Ftrl
:alias: paddle.optimizer.Ftrl
:old_api: paddle.fluid.optimizer.Ftrl
......
......@@ -5,6 +5,12 @@ LambOptimizer
.. py:class:: paddle.fluid.optimizer.LambOptimizer(learning_rate=0.001, lamb_weight_decay=0.01, beta1=0.9, beta2=0.999, epsilon=1e-06, parameter_list=None, regularization=None, grad_clip=None, exclude_from_weight_decay_fn=None, name=None)
:alias_main: paddle.optimizer.LambOptimizer
:alias: paddle.optimizer.LambOptimizer
:old_api: paddle.fluid.optimizer.LambOptimizer
......
......@@ -5,6 +5,12 @@ LarsMomentumOptimizer
.. py:class:: paddle.fluid.optimizer.LarsMomentumOptimizer(learning_rate, momentum, lars_coeff=0.001, lars_weight_decay=0.0005, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.LarsMomentumOptimizer
:alias: paddle.optimizer.LarsMomentumOptimizer
:old_api: paddle.fluid.optimizer.LarsMomentumOptimizer
......
......@@ -5,6 +5,12 @@ LarsMomentum
.. py:attribute:: paddle.fluid.optimizer.LarsMomentum
:alias_main: paddle.optimizer.LarsMomentum
:alias: paddle.optimizer.LarsMomentum
:old_api: paddle.fluid.optimizer.LarsMomentum
......
......@@ -7,6 +7,12 @@ LookaheadOptimizer
.. py:class:: paddle.fluid.optimizer.LookaheadOptimizer(inner_optimizer, alpha=0.5, k=5)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.optimizer.LookaheadOptimizer
:alias: paddle.optimizer.LookaheadOptimizer
:old_api: paddle.fluid.optimizer.LookaheadOptimizer
......
......@@ -7,6 +7,12 @@ ModelAverage
.. py:class:: paddle.fluid.optimizer.ModelAverage(average_window_rate, min_average_window=10000, max_average_window=10000, regularization=None, name=None)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.optimizer.ModelAverage
:alias: paddle.optimizer.ModelAverage
:old_api: paddle.fluid.optimizer.ModelAverage
......
......@@ -5,6 +5,12 @@ MomentumOptimizer
.. py:class:: paddle.fluid.optimizer.MomentumOptimizer(learning_rate, momentum, parameter_list=None, use_nesterov=False, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.MomentumOptimizer
:alias: paddle.optimizer.MomentumOptimizer
:old_api: paddle.fluid.optimizer.MomentumOptimizer
......
......@@ -5,6 +5,12 @@ Momentum
.. py:attribute:: paddle.fluid.optimizer.Momentum
:alias_main: paddle.optimizer.Momentum
:alias: paddle.optimizer.Momentum
:old_api: paddle.fluid.optimizer.Momentum
......
......@@ -7,6 +7,12 @@ PipelineOptimizer
.. py:class:: paddle.fluid.optimizer.PipelineOptimizer(optimizer, cut_list=None, place_list=None, concurrency_list=None, queue_size=30, sync_steps=1, start_cpu_core_id=0)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.optimizer.PipelineOptimizer
:alias: paddle.optimizer.PipelineOptimizer
:old_api: paddle.fluid.optimizer.PipelineOptimizer
......
......@@ -5,6 +5,12 @@ RMSPropOptimizer
.. py:class:: paddle.fluid.optimizer.RMSPropOptimizer(learning_rate, rho=0.95, epsilon=1e-06, momentum=0.0, centered=False, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.RMSPropOptimizer
:alias: paddle.optimizer.RMSPropOptimizer
:old_api: paddle.fluid.optimizer.RMSPropOptimizer
......
......@@ -7,6 +7,12 @@ RecomputeOptimizer
.. py:class:: paddle.fluid.optimizer.RecomputeOptimizer(optimizer)
:api_attr: 声明式编程模式(静态图)
:alias_main: paddle.optimizer.RecomputeOptimizer
:alias: paddle.optimizer.RecomputeOptimizer
:old_api: paddle.fluid.optimizer.RecomputeOptimizer
......
......@@ -5,6 +5,12 @@ SGDOptimizer
.. py:class:: paddle.fluid.optimizer.SGDOptimizer(learning_rate, parameter_list=None, regularization=None, grad_clip=None, name=None)
:alias_main: paddle.optimizer.SGDOptimizer
:alias: paddle.optimizer.SGDOptimizer
:old_api: paddle.fluid.optimizer.SGDOptimizer
......
......@@ -5,6 +5,12 @@ SGD
.. py:attribute:: paddle.fluid.optimizer.SGD
:alias_main: paddle.optimizer.SGD
:alias: paddle.optimizer.SGD
:old_api: paddle.fluid.optimizer.SGD
......
......@@ -11,6 +11,9 @@ add
该OP是逐元素相加算子,输入 ``x`` 与输入 ``y`` 逐元素相加,并将各个位置的输出元素保存到返回结果中。
等式为:
......
......@@ -10,6 +10,9 @@ addcmul
计算tensor1和tensor2的逐元素乘积,然后将结果乘以标量value,再加到input上输出。其中input, tensor1, tensor2的维度必须是可广播的。
计算过程的公式为:
......
......@@ -11,6 +11,9 @@ addmm
计算x和y的乘积,将结果乘以标量alpha,再加上input与beta的乘积,得到输出。其中input与x、y乘积的维度必须是可广播的。
计算过程的公式为:
......
......@@ -10,6 +10,9 @@ allclose
逐个检查input和other的所有元素是否均满足如下条件:
.. math::
......
......@@ -11,6 +11,9 @@ arange
该API根据step均匀分隔给定数值区间[start, end),并返回该分隔结果。
**参数**:
......
......@@ -12,6 +12,9 @@ argmax
该OP沿 ``axis`` 计算输入 ``input`` 的最大元素的索引。
参数:
......
......@@ -10,6 +10,9 @@ bmm
对输入x及输入y进行矩阵相乘。
两个输入的维度必须等于3,并且矩阵x和矩阵y的第一维必须相等
......
......@@ -10,6 +10,9 @@ clamp
该OP将输入的所有元素进行剪裁,使得输出元素限制在[min, max]内,具体公式如下:
.. math::
......
......@@ -10,6 +10,9 @@ cross
该OP返回在 ``dim`` 维度上,两个张量 ``input`` 和 ``other`` 的向量积(叉积)。 ``input`` 和 ``other`` 必须有相同的形状,
且指定的 ``dim`` 维上 ``size`` 必须为3,如果 ``dim`` 未指定,默认选取第一个 ``size`` 等于3的维度。
......
......@@ -10,6 +10,9 @@ dist
该OP用于计算 `(x-y)` 的 p 范数(p-norm),需要注意这不是严格意义上的范数,仅作为距离的度量。输入 `x` 和 `y` 的形状(shape)必须是可广播的(broadcastable)。其含义如下,详情请参考 `numpy的广播概念 <https://docs.scipy.org/doc/numpy/user/basics.broadcasting.html>`_ :
- 每个输入都至少有1维
......
......@@ -11,6 +11,9 @@ div
该OP是逐元素相除算子,输入 ``x`` 与输入 ``y`` 逐元素相除,并将各个位置的输出元素保存到返回结果中。
等式是:
......
......@@ -10,6 +10,9 @@ dot
该OP计算向量的内积
.. note::
......
......@@ -11,6 +11,9 @@ elementwise_equal
该OP返回 :math:`x==y` 逐元素比较x和y是否相等。
参数:
......
......@@ -10,6 +10,9 @@ elementwise_sum
该OP用于对输入的一至多个Tensor或LoDTensor求和。如果输入的是LoDTensor,输出仅与第一个输入共享LoD信息(序列信息)。
例1:
......
......@@ -9,6 +9,9 @@ equal
该OP返回 :math:`x==y` 逐元素比较x和y是否相等,所有的元素都相同则返回True,否则返回False。
参数:
......
......@@ -10,6 +10,9 @@ flip
该OP沿指定轴反转n维tensor.
参数:
......
......@@ -11,6 +11,9 @@ full
该OP创建一个和具有相同的形状和数据类型的Tensor,其中元素值均为fill_value。
参数:
......
......@@ -10,6 +10,9 @@ full_like
该OP创建一个和input具有相同的形状和数据类型的Tensor,其中元素值均为fill_value。
参数:
......
......@@ -10,6 +10,9 @@ gather
根据索引 index 获取输入(input)的最外层维度的条目,并将它们拼接在一起。
.. math::
......
......@@ -10,6 +10,9 @@ index_sample
该OP实现对输入 ``x`` 中的元素进行批量抽样,取 ``index`` 指定的对应下标的元素,按index中出现的先后顺序组织,填充为一个新的张量。
该OP中 ``x`` 与 ``index`` 都是 ``2-D`` 张量。 ``index`` 的第一维度与输入 ``x`` 的第一维度必须相同, ``index`` 的第二维度没有大小要求,可以重复索引相同下标元素。
......
......@@ -10,6 +10,9 @@ index_select
该OP沿着指定维度 ``dim`` 对输入 ``input`` 进行索引,取 ``index`` 中指定的相应项,然后返回到一个新的张量。这里 ``index`` 是一个 ``1-D`` 张量。除 ``dim`` 维外,返回的张量其余维度大小同输入 ``input`` , ``dim`` 维大小等于 ``index`` 的大小。
**参数**:
......
......@@ -10,6 +10,9 @@ inverse
计算方阵的逆。方阵是行数和列数相等的矩阵。输入可以是一个方阵(2-D张量),或者是批次方阵(维数大于2时)。
**参数**:
......
......@@ -11,6 +11,9 @@ kron
Kronecker Product 算子。
该 OP 计算两个张量的克罗内克积,结果是一个合成的张量,由第二个张量经过第一个张量中的元素缩放
......
......@@ -11,6 +11,9 @@ linspace
该OP在给定区间内返回固定数目的均匀间隔的值。
**注意:该OP不进行梯度计算**
......
......@@ -11,6 +11,9 @@ log1p
该OP计算Log1p(加一的自然对数)结果。
.. math::
......
......@@ -10,6 +10,9 @@ logsumexp
该OP对输入Tensor的元素以e为底做指数运算,然后根据指定维度做求和之后取自然对数
.. math::
......
......@@ -10,6 +10,9 @@ matmul
输入 ``x`` 和输入 ``y`` 矩阵相乘。
两个输入的形状可为任意维度,但当任一输入维度大于3时,两个输入的维度必须相等。
......
......@@ -12,6 +12,9 @@ max
该OP是对指定维度上的Tensor元素求最大值运算,并输出相应的计算结果。等价于 :ref:`cn_api_fluid_layers_reduce_max`
参数:
......
......@@ -11,6 +11,9 @@ meshgrid
该OP的输入是tensor list, 包含 k 个一维Tensor,对每个Tensor做扩充操作,输出 k 个 k 维tensor。
参数:
......
......@@ -11,6 +11,9 @@ min
该OP是对指定维度上的Tensor元素求最小值运算,并输出相应的计算结果。等价于 :ref:`cn_api_fluid_layers_reduce_min`
参数:
......
......@@ -11,6 +11,9 @@ mm
用于两个输入矩阵的相乘。
两个输入的形状可为任意维度,但当任一输入维度大于3时,两个输入的维度必须相等。
......
......@@ -12,6 +12,9 @@ mul
mul算子
此运算是用于对输入x和y执行矩阵乘法。
公式是:
......
......@@ -10,6 +10,9 @@ nonzero
该OP返回输入 ``input`` 中非零元素的坐标。如果输入 ``input`` 有 ``n`` 维,共包含 ``z`` 个非零元素,当 ``as_tuple = False`` 时,
返回结果是一个 ``shape`` 等于 ``[z x n]`` 的 ``Tensor`` , 第 ``i`` 行代表输入中第 ``i`` 个非零元素的坐标;当 ``as_tuple = True`` 时,
返回结果是由 ``n`` 个大小为 ``z`` 的 ``1-D Tensor`` 构成的元组,第 ``i`` 个 ``1-D Tensor`` 记录输入的非零元素在第 ``i`` 维的坐标。
......
......@@ -11,6 +11,9 @@ norm
该OP将计算给定Tensor的矩阵范数(Frobenius 范数)和向量范数(向量1范数、2范数、或者通常的p范数).
参数:
......
......@@ -12,6 +12,9 @@ ones
该OP创建形状为 ``shape`` 、数据类型为 ``dtype`` 且值全为1的Tensor。
参数:
......
......@@ -12,6 +12,9 @@ ones_like
该OP创建一个和input具有相同的形状和数据类型的全1Tensor。
参数:
......
......@@ -11,6 +11,9 @@ pow
该OP是指数激活算子:
.. math::
......
......@@ -10,6 +10,9 @@ randint
该OP使用从区间[low,high)内均匀分布采样的随机整数初始化一个Tensor。当high为None时(默认),均匀采样的区间为[0,low)。
参数:
......
......@@ -10,6 +10,9 @@ randn
该 API 用于生成数据符合标准正态随机分布(均值为 0,方差为 1 的正态随机分布)的 Tensor。
参数:
......
......@@ -10,6 +10,9 @@ roll
该OP沿着指定维度对输入 ``input`` 进行循环滚动,当元素移动到最后位置时,会从第一个位置重新插入。如果 ``dims`` 为 ``None`` ,则输入在被循环滚动之前,会先展平成 ``1-D Tensor`` ,滚动操作完成后恢复成原来的形状。
**参数**:
......
......@@ -11,6 +11,9 @@ sin
计算输入的正弦值。
.. math::
......
......@@ -11,6 +11,9 @@ sort
对输入变量沿给定轴进行排序,输出排序好的数据和相应的索引,其维度和输入相同。**默认升序排列,如果需要降序排列设置** ``descending=True`` 。
......
......@@ -10,6 +10,9 @@ split
该OP将输入Tensor分割成多个子Tensor。
**参数**:
......
......@@ -11,6 +11,9 @@ sqrt
计算输入的算数平方根。
.. math::
......
......@@ -10,6 +10,9 @@ squeeze
该OP会根据axes压缩输入Tensor的维度。如果指定了axes,则会删除axes中指定的维度,axes指定的维度要等于1。如果没有指定axes,那么所有等于1的维度都会被删除。
**参数**:
......
......@@ -10,6 +10,9 @@ stack
该OP沿 axis 轴对输入 x 进行堆叠操作。
**参数**:
......
......@@ -8,6 +8,9 @@ std
根据指定的axis计算input的标准差。
参数:
......
......@@ -11,6 +11,9 @@ sum
该OP是对指定维度上的Tensor元素进行求和运算,并输出相应的计算结果。
参数:
......
......@@ -10,6 +10,9 @@ t
该OP对小于等于2维的Tensor进行数据转置。0维和1维Tensor返回本身,2维Tensor等价于perm设置为0,1的 :ref:`cn_api_fluid_layers_transpose` 函数。
参数:
......
......@@ -11,6 +11,9 @@ tanh
tanh 激活函数
.. math::
......
......@@ -10,6 +10,9 @@ trace
该 OP 计算输入 Tensor 在指定平面上的对角线元素之和,并输出相应的计算结果。
如果输入是 2D Tensor,则返回对角线元素之和。
......
......@@ -10,6 +10,9 @@ tril
返回输入矩阵 `input` 的下三角部分,其余部分被设为0。
矩形的下三角部分被定义为对角线上和下方的元素。
......
......@@ -10,6 +10,9 @@ triu
返回输入矩阵 `input` 的上三角部分,其余部分被设为0。
矩形的上三角部分被定义为对角线上和上方的元素。
......
......@@ -9,6 +9,9 @@ unbind
该OP将输入Tensor按照指定的维度分割成多个子Tensor。
**参数**:
......
......@@ -10,6 +10,9 @@ unsqueeze
该OP向输入(input)的shape中一个或多个位置(axes)插入维度。
**参数**:
......
......@@ -8,6 +8,9 @@ var
沿给定的轴 axis 计算输入变量所有元素的方差。
参数:
......
......@@ -11,6 +11,9 @@ where
该OP返回一个根据输入 ``condition``, 选择 ``x`` 或 ``y`` 的元素组成的多维 ``Tensor`` :
.. math::
......
......@@ -11,6 +11,9 @@ zeros
该OP创建形状为 ``shape`` 、数据类型为 ``dtype`` 且值全为0的Tensor。
参数:
......
......@@ -12,6 +12,9 @@ zeros_like
该OP创建一个和input具有相同的形状和数据类型的全零Tensor。
参数:
......
......@@ -10,6 +10,9 @@ DistributeTranspilerConfig
单机任务切换为分布式任务的配置类,用户可根据需求进行配置,如指定同步/异步训练,指定节点个数及模型切分逻辑。
返回:None
......
......@@ -11,6 +11,9 @@ DistributeTranspiler
该类可以把fluid program转变为分布式数据并行计算的program, 有PServer和NCCL2两种模式。
在Pserver(全称:parameter server)模式下, 通过 ``transpile`` 将用于单机训练的 ``program`` 转译为可用于parameter server的分布式架构(即PServer,参数服务器)来进行训练的program。
在NCCL2模式下, 通过 ``transpile`` 将用于单机训练的 ``program`` 转译为可用于NCCL2的分布式架构来进行训练的program。在NCCL2模式下,transpiler会在 ``startup_program`` 中附加一个 ``NCCL_ID`` 广播算子(broadcasting operators)来实现在该集群中所有工作结点共享``NCCL_ID`` 。 调用 ``transpile_nccl2`` 后, 你 **必须** 将 ``trainer_id`` , ``num_trainers`` 参数提供给 ``Executor`` 来启动NCCL2分布式模式。
......
......@@ -10,6 +10,9 @@ HashName
该方法使用 python ``Hash()`` 函数将变量散列到多个parameter server节点。
参数:
......
......@@ -10,6 +10,9 @@ RoundRobin
该方法使用 ``RoundRobin`` 的方式将变量散列到多个parameter server终端。
`RondRobin <https://en.wikipedia.org/wiki/Round-robin_scheduling>`_
......
......@@ -10,4 +10,7 @@ memory_optimize
**从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略**
\ No newline at end of file
......@@ -10,4 +10,7 @@ release_memory
**从1.6版本开始此接口不再推荐使用,请不要在新写的代码中使用它,1.6+版本已默认开启更优的存储优化策略**
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册