mindspore.mint.nn.functional.normalize

查看源文件
mindspore.mint.nn.functional.normalize(input, p=2.0, dim=1, eps=1e-12)[源代码]

将输入的张量按照指定维度进行归一化。

对于一个输入的张量,它的维度为:math:(n_{0},…, n_{dim},…, n_{k}),对于第:math:n_{dim}`个向量 `v,它沿着维度 dim 按照如下公式进行转换

\[v=\frac{v}{\max(\left \| v \right \| _{p},\in )}\]

默认归一化计算方法为沿着第一个维度利用欧几里得范数进行归一化。

警告

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

参数:
  • input (Tensor) - 输入的Tensor。

  • p (float) - 范数公式中的指数值。默认值为 2

  • dim (int) - 指定的维度。默认值为 1

  • eps (float) - 设置的最小值,以避免除法分母为 0 。默认值为 1e-12

返回:
  • Tensor。shape和数据类型与输入input相同。

支持平台:

Ascend

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, mint
>>> tensor = Tensor(np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]), mindspore.float32)
>>> output = mint.nn.functional.normalize(tensor)
>>> print(output)
[[0.0000 0.4472 0.8944]
 [0.4243 0.5657 0.7071]
 [0.4915 0.5735 0.6554]]