mindspore.ops.GeLU

class mindspore.ops.GeLU[源代码]

高斯误差线性单元激活函数(Gaussian Error Linear Units activation function)。

Gaussian Error Linear Units (GELUs) 文章中对GeLU函数进行了介绍。 此外,也可以参考 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding

GeLU函数定义如下:

\[GELU(x_i) = x_i*P(X < x_i)\]

其中 \(P\) 是标准高斯分布的累积分布函数, \(x_i\) 是输入的元素。

输入:

  • x (Tensor) - 激活函数GeLU的输入,数据类型为float16或float32。

输出:

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

异常:

  • TypeError - x 不是Tensor。

  • TypeError - x 的数据类型既不是float16也不是float32。

支持平台:

Ascend GPU CPU

样例:

>>> x = Tensor(np.array([1.0, 2.0, 3.0]), mindspore.float32)
>>> gelu = ops.GeLU()
>>> result = gelu(x)
>>> print(result)
[0.841192  1.9545976  2.9963627]