torch_npu.npu_gelu
须知:[object Object] 在NPU环境下使用Torch原生接口gelu时,approximate参数不起作用且默认为tanh,如果需要approximate的默认值设定为None或者区分不同的approximate方法需要使用此接口。
产品支持情况
| 产品 | 是否支持 |
|---|---|
| [object Object]Atlas 推理系列产品[object Object] | √ |
| [object Object]Atlas A2 训练系列产品/Atlas A2 推理系列产品[object Object] | √ |
| [object Object]Atlas 训练系列产品[object Object] | √ |
功能说明
API功能:计算高斯误差线性单元的激活函数。
计算公式:
Gaussian Error Linear Unit(GELU)的表达式为:
是Gaussian Distribution的CDF(Cumulative Distribution Function),表达式为:
此时对应
approximate="none",若采用approximate="tanh",则将 替换为 的近似形式。
函数原型
[object Object]
参数说明
input (
Tensor):必选参数,对应公式中的,待进行npu_gelu计算的入参,数据格式支持,支持非连续的Tensor。输入最大支持8维。- [object Object]Atlas 训练系列产品[object Object]:数据类型支持
float16、float32。 - [object Object]Atlas A2 训练系列产品/Atlas A2 推理系列产品[object Object]:数据类型支持
float32、float16、bfloat16。 - [object Object]Atlas 推理系列产品[object Object]:数据类型支持
float16、float32。
- [object Object]Atlas 训练系列产品[object Object]:数据类型支持
approximate (
Tensor):可选参数,字符串类型,计算使用的激活函数模式,可配置为none或者tanh。其中none代表使用erf模式,tanh代表使用tanh模式。
返回值说明
Tensor
数据类型必须和input一样,数据格式支持,shape必须和input一样,支持非连续的Tensor。
约束说明
- 该接口支持图模式。
input输入不能为None。
调用示例
单算子模式调用
[object Object]图模式调用
[object Object]