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”

傳回:

輸入陣列的展平副本。

傳回型別:

Array

筆記

numpy.ravel() 不同,jax.numpy.ravel() 將傳回副本,而非輸入陣列的視圖。然而,在 JIT 下,編譯器會在可能的情況下最佳化掉此類副本,因此這在實務上不會影響效能。

另請參閱

範例

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