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)