mindsponge.common.vecs_robust_normalize

查看源文件
mindsponge.common.vecs_robust_normalize(v, epsilon=1e-08)[源代码]

向量l2范数归一化。

v=(x1,x2,x3)l2_norm=x1x1+x2x2+x3x3+epsilonresult=(x1/l2_norm,x2/l2_norm,x3/l2_norm)
参数:
  • v (Tuple) - 输入向量,(x,y,z) 其中 x,y,z 是标量或 Tensor,若为Tensor其shape相同。

  • epsilon (float) - 极小值,防止返回值为0,默认为 1e-8

返回:

Tuple, 返回二范数归一化后的向量,长度为3,其中每个元素shape与v中的元素相同。

支持平台:

Ascend GPU CPU

样例:

>>> import numpy as np
>>> from mindspore import Tensor
>>> from mindspore import dtype as mstype
>>> from mindsponge.common.geometry import vecs_robust_normalize
>>> x= Tensor(np.ones(256), mstype.float32)
>>> y= Tensor(np.ones(256), mstype.float32)
>>> z= Tensor(np.ones(256), mstype.float32)
>>> result=vecs_robust_normalize((x,y,z))
>>> print(len(result))
>>> print(result[0].shape)
>>> print(result[1].shape)
>>> print(result[2].shape)
3
(256,)
(256,)
(256,)