激活函数

激活函数将非线性的特性引入到神经网络当中。

PaddlePaddle Fluid 对大部分的激活函数进行了支持,其中有:

cn_api_fluid_layers_relu, cn_api_fluid_layers_tanh, cn_api_fluid_layers_sigmoid, cn_api_fluid_layers_elu, cn_api_fluid_layers_relu6, cn_api_fluid_layers_pow, cn_api_fluid_layers_stanh, cn_api_fluid_layers_hard_sigmoid, cn_api_fluid_layers_swish, cn_api_fluid_layers_prelu, cn_api_fluid_layers_brelu, cn_api_fluid_layers_leaky_relu, cn_api_fluid_layers_soft_relu, cn_api_fluid_layers_thresholded_relu, cn_api_fluid_layers_maxout, cn_api_fluid_layers_logsigmoid, cn_api_fluid_layers_hard_shrink, cn_api_fluid_layers_softsign, cn_api_fluid_layers_softplus, cn_api_fluid_layers_tanh_shrink, cn_api_fluid_layers_softshrink, cn_api_fluid_layers_exp

Fluid 提供了两种使用激活函数的方式:

  • 如果一个层的接口提供了 act 变量(默认值为 None),我们可以通过该变量指定该层的激活函数类型。该方式支持常见的激活函数: relu, tanh, sigmoid, identity

conv2d = fluid.layers.conv2d(input=data, num_filters=2, filter_size=3, act="relu")
  • Fluid 为每个 Activation 提供了接口,我们可以显式的对它们进行调用。

conv2d = fluid.layers.conv2d(input=data, num_filters=2, filter_size=3)
relu1 = fluid.layers.relu(conv2d)