jax.numpy.vander#

jax.numpy.vander(x, N=None, increasing=False)[原始碼]#

產生 Vandermonde 矩陣。

JAX 實作的 numpy.vander()

參數:
  • x (ArrayLike) – 輸入陣列。必須具有 x.ndim == 1

  • N (int | None) – int,選用,預設值=None。指定輸出矩陣的欄數。如果未指定,N = len(x)

  • increasing (bool) – bool,選用,預設值=False。指定欄的冪次順序。如果 True,冪次由左至右遞增,\([x^0, x^1, ..., x^{(N-1)}]\)。預設情況下,冪次由左至右遞減 \([x^{(N-1)}, ..., x^1, x^0]\)

回傳:

形狀為 [len(x), N] 的陣列,包含產生的 Vandermonde 矩陣。

回傳類型:

Array

範例

>>> x = jnp.array([1, 2, 3, 4])
>>> jnp.vander(x)
Array([[ 1,  1,  1,  1],
       [ 8,  4,  2,  1],
       [27,  9,  3,  1],
       [64, 16,  4,  1]], dtype=int32)

如果 N = 2,產生具有 2 欄的 Vandermonde 矩陣。

>>> jnp.vander(x, N=2)
Array([[1, 1],
       [2, 1],
       [3, 1],
       [4, 1]], dtype=int32)

increasing=True 時,以遞增的冪次順序產生 Vandermonde 矩陣。

>>> jnp.vander(x, increasing=True)
Array([[ 1,  1,  1,  1],
       [ 1,  2,  4,  8],
       [ 1,  3,  9, 27],
       [ 1,  4, 16, 64]], dtype=int32)