jax.numpy.ravel#
- jax.numpy.ravel(a, order='C')[源代码][源代码]#
将数组展平为1维形状。
JAX 实现
numpy.ravel()
,基于jax.lax.reshape()
实现。ravel(arr, order=order)
等同于reshape(arr, -1, order=order)
。- 参数:
a (ArrayLike) – 要展平的数组。
order (str) –
'F'
或'C'
,指定重塑应采用列优先(Fortran 风格,'F'
)还是行优先(C 风格,'C'
)顺序;默认是'C'
。JAX 不支持 order=”A” 或 order=”K”。
- 返回:
输入数组的扁平化副本。
- 返回类型:
备注
与
numpy.ravel()
不同,jax.numpy.ravel()
将返回输入数组的副本而不是视图。然而,在 JIT 下,编译器会在可能的情况下优化掉这些副本,因此在实践中不会影响性能。参见
jax.Array.ravel()
: 通过数组方法实现的等效功能。jax.numpy.reshape()
: 通用数组重塑。
示例
>>> x = jnp.array([[1, 2, 3], ... [4, 5, 6]])
默认情况下,ravel 以 C 风格,按行主序排列
>>> jnp.ravel(x) Array([1, 2, 3, 4, 5, 6], dtype=int32)
可选地以Fortran风格,按列优先展开:
>>> jnp.ravel(x, order='F') Array([1, 4, 2, 5, 3, 6], dtype=int32)
为了方便,同样的功能可以通过
jax.Array.ravel()
方法实现:>>> x.ravel() Array([1, 2, 3, 4, 5, 6], dtype=int32)