mindspore.ops.celu

查看源文件
mindspore.ops.celu(x, alpha=1.0)[源代码]

celu激活函数,逐元素计算输入Tensor的celu(Continuously differentiable exponential linear units)值。公式定义如下:

\[\text{CeLU}(x) = \max(0,x) + \min(0, \alpha * (\exp(x/\alpha) - 1))\]

详情请参考: celu

警告

这是一个实验性API,后续可能修改或删除。

CELU函数图:

../../_images/CELU.png
参数:
  • x (Tensor) - celu的输入,数据类型为float16或float32。

  • alpha (float,可选) - celu公式定义的阈值 \(\alpha\) 。默认值: 1.0

返回:

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

异常:
  • TypeError - alpha 不是float。

  • TypeError - x 不是Tensor。

  • TypeError - x 的dtype既不是float16也不是float32。

  • ValueError - alpha 的值为0。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> x = Tensor(np.array([-2.0, -1.0, 1.0, 2.0]), mindspore.float32)
>>> output = ops.celu(x, alpha=1.0)
>>> print(output)
[-0.86466473 -0.63212055  1.          2.        ]