mindspore.ops.L2Normalize

查看源文件
class mindspore.ops.L2Normalize(axis=0, epsilon=1e-4)[源代码]

L2范数归一化算子。

该算子将对输入 x 在给定 axis 上的元素进行归一化。函数定义如下:

output=xmax(i|xi|2,ϵ)

其中 ϵ 表示 epsiloni|xi|2 表示计算输入 x 在给定 axis 上元素的平方和。

说明

在Ascend上,暂时不支持float64数据类型。

参数:
  • axis (Union[list(int), tuple(int), int],可选) - 指定计算L2范数的轴。默认值: 0

  • epsilon (float,可选) - 为了数值稳定性而引入的很小的浮点数。默认值: 1e-4

输入:
  • x (Tensor) - 计算归一化的输入。shape为 (N,) ,其中 表示任意的附加维度数。数据类型必须为float16、float32和float64。

输出:

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

异常:
  • TypeError - axis 不是list、tuple或int。

  • TypeError - epsilon 不是float。

  • TypeError - x 不是Tensor。

  • TypeError - x 的数据类型不是float16、float32或float64。

  • ValueError - x 的维度不大于0。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> l2_normalize = ops.L2Normalize()
>>> x = Tensor(np.random.randint(-256, 256, (2, 3, 4)), mindspore.float32)
>>> output = l2_normalize(x)
>>> print(output.shape)
(2, 3, 4)