mindspore.ops.linspace

mindspore.ops.linspace(start, end, steps)[源代码]

返回一个在区间 startend (包括 startend )内均匀分布的,包含 steps 个值的一维Tensor。

\[\begin{split}\begin{aligned} &step = (end - start)/(steps - 1)\\ &output = [start, start+step, start+2*step, ... , end] \end{aligned}\end{split}\]
参数:
  • start (Union[Tensor, int, float]) - 零维Tensor,数据类型必须为float32。区间的起始值。

  • end (Union[Tensor, int, float]) - 零维Tensor,数据类型必须为float32。区间的末尾值。

  • steps (Union[Tensor, int]) - 间隔中的包含的数值数量,包括区间端点。必须为正数。

返回:

Tensor,具有与 start 相同的dtype,shape为 \((steps)\)

异常:
  • TypeError - startend 不是Tensor。

  • TypeError - startend 的数据类型不是float32。

  • ValueError - startend 的维度不是0。

  • TypeError - steps 不是int类型。

  • ValueError - steps 不是正数。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> from mindspore import Tensor, ops
>>> start = Tensor(1, mindspore.float32)
>>> end = Tensor(10, mindspore.float32)
>>> steps = 5
>>> output = ops.linspace(start, end, steps)
>>> print(output)
[ 1.    3.25  5.5   7.75 10.  ]