mindspore.nn.RReLU

class mindspore.nn.RReLU(lower=1 / 8, upper=1 / 3)[源代码]

逐元素计算RReLU(Randomized Leaky ReLU)激活函数。

该激活函数定义如下:

\[\text{RReLU}(x_{ji}) = \begin{cases}x_{ji}, &\text{if } x_{ji} \geq 0; \cr {\alpha_{ji}} * x_{ji}, &\text{otherwise.}\end{cases}\]

其中,\(\alpha_{ji}\) ~ \(U(l, u)\), \(l \le u\)

更多细节详见 Empirical Evaluation of Rectified Activations in Convolution Network

参数:
  • lower (Union[int, float]) - x<0时激活函数的斜率的下界,默认值: 1 / 8

  • upper (Union[int, float]) - x<0时激活函数的斜率的上界,默认值: 1 / 3

输入:
  • x (Tensor) - 计算RReLU的任意维度的Tensor。

输出:

Tensor,数据类型和shape与 x 相同。

异常:
  • TypeError - lower 不是浮点数或整数。

  • TypeError - upper 不是浮点数或整数。

  • TypeError - x 不是Tensor。

  • TypeError - x 内的数据类型不是mindspore.float16或mindspore.float32。

  • ValueError - lower 大于 upper

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> from mindspore import Tensor, nn
>>> import numpy as np
>>> x = Tensor(np.array([[-1.0, 4.0], [2.0, 0]]), mindspore.float32)
>>> r_relu = nn.RReLU()
>>> output = r_relu(x)
>>> print(output)
[[-0.31465699  4.        ]
 [ 2.          0.        ]]