mindspore.mint.nn.Hardswish

class mindspore.mint.nn.Hardswish

逐元素计算Hard Swish激活函数。

Hard Swish定义如下:

\[\begin{split}\text{Hardswish}(input) = \begin{cases} 0, & \text{ if } input \leq -3, \\ input, & \text{ if } input \geq +3, \\ input*(input + 3)/6, & \text{ otherwise } \end{cases}\end{split}\]

HSwish函数图:

../../_images/HSwish.png
输入:
  • input (Tensor) - Hard Swish的输入。

输出:

Tensor,具有与 input 相同的数据类型和shape。

异常:
  • TypeError - input 不是Tensor。

  • TypeError - input 不是int或者float类型。

支持平台:

Ascend

样例:

>>> import mindspore
>>> from mindspore import Tensor, mint
>>> import numpy as np
>>> input = Tensor(np.array([-1, -2, 0, 2, 1]), mindspore.float16)
>>> hswish = nn.HSwish()
>>> result = hswish(input)
>>> print(result)
[-0.3333 -0.3333  0.      1.667   0.6665]