prelu¶
prelu激活函数
\[prelu(x) = max(0, x) + \alpha * min(0, x)\]
共提供三种激活方式:
all: 所有元素使用同一个alpha值
channel: 在同一个通道中的元素使用同一个alpha值
element: 每一个元素有一个独立的alpha值
- 参数:
-
x (Tensor)- 多维Tensor或LoDTensor,数据类型为float32。
mode (str) - 权重共享模式。
param_attr (ParamAttr,可选) - 可学习权重 \([\alpha]\) 的参数属性,可由ParamAttr创建。默认值为None,表示使用默认的权重参数属性。具体用法请参见 ParamAttr 。
data_format (str,可选) – 指定输入的数据格式,输出的数据格式将与输入保持一致,可以是 "NC", "NCL", "NCHW", "NCDHW", "NLC", "NHWC" 或者 "NDHWC"。默认值:"NCHW"。
name (str,可选) – 具体用法请参见 Name ,一般无需设置,默认值为None。
返回: 表示激活输出Tensor,数据类型和形状于输入相同。
代码示例:
import paddle
x = paddle.to_tensor([-1., 2., 3.])
param = paddle.ParamAttr(initializer=paddle.nn.initializer.Constant(0.2))
out = paddle.static.nn.prelu(x, 'all', param)
# [-0.2, 2., 3.]