jax.numpy.ravel#
- jax.numpy.ravel(a, order='C')[原始碼]#
將陣列展平為一維形狀。
numpy.ravel()
的 JAX 實作,以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()
:一般陣列 reshape。
範例
>>> x = jnp.array([[1, 2, 3], ... [4, 5, 6]])
預設情況下,以 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)