jax.numpy.linspace#

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

返回间隔内均匀间隔的数字。

numpy.linspace()的 JAX 实现。

参数:
  • start (Array | ndarray | bool | number | bool | int | float | complex) – 起始值的标量或数组。

  • stop (Array | ndarray | bool | number | bool | int | float | complex) – 停止值的标量或数组。

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

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

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

  • axis (int) – 整数轴,沿该轴生成 linspace。默认为零。

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

  • dtype (str | type[Any] | dtype | SupportsDType | None)

返回:

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

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

返回类型:

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

另请参阅

示例

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)

多维 linspace

>>> 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)