mindspore.ops.LogSpace

class mindspore.ops.LogSpace(steps=10, 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}\]

警告

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

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

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

  • dtype (mindspore.dtype,可选) - 输出的数据类型,支持mindspore.float16、mindspore.float32或mindspore.float64。默认值:mindspore.float32。

输入:
  • start (Tensor) - 间隔的起始值,shape为0-D,数据类型为float16、float32或float64(对于GPU)类型。

  • end (Tensor) - 间隔的结束值,shape为0-D,数据类型为float16、float32或float64(对于GPU)类型。

输出:

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

异常:
  • TypeError - 若 input 不是一个Tensor。

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

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

  • TypeError - 若 dtype 不是mindspore.float16、mindspore.float32或mindspore.float64。

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

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

支持平台:

Ascend GPU CPU

样例:

>>> logspace = ops.LogSpace(steps = 10, base = 10, dtype=mstype.float32)
>>> start = Tensor(1, mstype.float32)
>>> end = Tensor(10, mstype.float32)
>>> output = logspace(start, end)
>>> 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]