jax.numpy.ravel#
- jax.numpy.ravel(a, order='C')[source]#
将数组展平为一维形状。
JAX 实现的
numpy.ravel()
,使用jax.lax.reshape()
实现。ravel(arr, order=order)
等效于reshape(arr, -1, order=order)
。- 参数:
a (ArrayLike) – 要展平的数组。
order (str) –
'F'
或'C'
,指定 reshape 应该应用列主序(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)