jax.numpy.linspace#

jax.numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0, *, device=None)[源代码]#

返回在指定间隔内均匀间隔的数字。

JAX 实现的 numpy.linspace()

参数:
  • start (ArrayLike) – 起始值的标量或数组。

  • stop (ArrayLike) – 终止值的标量或数组。

  • num (int) – 要生成的数值个数。默认值:50。

  • endpoint (bool) – 如果为 True (默认),则在结果中包含 stop 值。如果为 False,则排除 stop 值。

  • retstep (bool) – 如果为 True,则返回一个 (result, step) 元组,其中 stepresult 中相邻值之间的间隔。

  • axis (int) – 生成线性空间的整数轴。默认为零。

  • device (xc.Device | Sharding | None | None) – 可选的 DeviceSharding,创建的数组将提交到该设备或分片。

  • dtype (DTypeLike | None | None)

返回:

  • values 是从 startstop 均匀间隔的值的数组。

  • step 是相邻值之间的间隔。

返回类型:

一个数组 values,或一个元组 (values, step),如果 retstep 为 True,其中

另请参阅

示例

0 到 10 之间的 5 个值的列表

>>> jnp.linspace(0, 10, 5)
Array([ 0. ,  2.5,  5. ,  7.5, 10. ], dtype=float32)

0 到 10 之间的 8 个值的列表,不包括端点

>>> jnp.linspace(0, 10, 8, endpoint=False)
Array([0.  , 1.25, 2.5 , 3.75, 5.  , 6.25, 7.5 , 8.75], dtype=float32)

值列表及其之间的步长

>>> vals, step = jnp.linspace(0, 10, 9, retstep=True)
>>> vals
Array([ 0.  ,  1.25,  2.5 ,  3.75,  5.  ,  6.25,  7.5 ,  8.75, 10.  ],      dtype=float32)
>>> step
Array(1.25, dtype=float32)

多维线性空间

>>> start = jnp.array([0, 5])
>>> stop = jnp.array([5, 10])
>>> jnp.linspace(start, stop, 5)
Array([[ 0.  ,  5.  ],
       [ 1.25,  6.25],
       [ 2.5 ,  7.5 ],
       [ 3.75,  8.75],
       [ 5.  , 10.  ]], dtype=float32)