mindspore.ops.logspace

mindspore.ops.logspace(start, end, steps, base=10, *, dtype=mstype.float32)[源代码]

返回一个大小为 steps 的1-D Tensor,其值从 \(base^{start}\)\(base^{end}\) ,以 base 为底数。

\[\begin{split}\begin{aligned} &step = (end - start)/(steps - 1)\\ &output = [base^{start}, base^{start + 1 * step}, ... , base^{start + (steps-2) * step}, base^{end}] \end{aligned}\end{split}\]
参数:
  • start (Union[float, Tensor]) - 间隔的起始值。

  • end (Union[float, Tensor]) - 间隔的结束值。

  • steps (int) - steps 必须为非负整数。

  • base (int,可选) - base 必须为非负整数。默认值: 10

  • dtype (mindspore.dtype,可选) - 输出的数据类型。默认值: mstype.float32

返回:

Tensor,shape为 \((step, )\) ,数据类型由属性 dtype 设置。

异常:
  • TypeError - 若 start 不是一个float或Tensor。

  • TypeError - 若 end 不是一个float或Tensor。

  • TypeError - 若 steps 不是一个整数。

  • TypeError - 若 base 不是一个整数。

  • ValueError - 若 steps 不是非负整数。

  • ValueError - 若 base 不是非负整数。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> from mindspore import Tensor, ops
>>> start = Tensor(1, mindspore.float32)
>>> end = Tensor(10, mindspore.float32)
>>> output = ops.logspace(start, end, steps = 10, base = 10, dtype=mindspore.float32)
>>> print(output)
[1.e+01 1.e+02 1.e+03 1.e+04 1.e+05 1.e+06 1.e+07 1.e+08 1.e+09 1.e+10]