PReLU¶
- class PReLU(num_parameters=1, init=0.25, **kwargs)[源代码]¶
对每个元素应用函数:
\[\text{PReLU}(x) = \max(0,x) + a * \min(0,x)\]或者
\[\begin{split}\text{PReLU}(x) = \begin{cases} x, & \text{ if } x \geq 0 \\ ax, & \text{ otherwise } \end{cases}\end{split}\]这里的 \(a\) 是一个可学习参数。当以无参数方式调用 PReLU() 时,它会在所有输入通道上使用同一个 \(a\) 参数。若以 PReLU(num_of_channels) 方式调用,每个输入通道都使用不同的 \(a\)。
- 参数
实际案例
>>> import numpy as np >>> data = mge.tensor(np.array([-1.2, -3.7, 2.7]).astype(np.float32)) >>> prelu = M.PReLU() >>> output = prelu(data) >>> output.numpy() array([-0.3 , -0.925, 2.7 ], dtype=float32)