jax.numpy.swapaxes

目录

jax.numpy.swapaxes#

jax.numpy.swapaxes(a, axis1, axis2)[source]#

交换数组的两个轴。

JAX 实现的 numpy.swapaxes(),使用 jax.lax.transpose() 实现。

参数:
  • a (ArrayLike) – 输入数组

  • axis1 (int) – 第一个轴的索引

  • axis2 (int) – 第二个轴的索引

返回:

交换指定轴的 a 的副本。

返回类型:

数组

注释

numpy.swapaxes() 不同,jax.numpy.swapaxes() 将返回输入数组的副本,而不是视图。然而,在 JIT 下,编译器将在可能的情况下优化掉这样的副本,因此在实践中不会影响性能。

另请参阅

示例

>>> a = jnp.ones((2, 3, 4, 5))
>>> jnp.swapaxes(a, 1, 3).shape
(2, 5, 4, 3)

通过 swapaxes 数组方法获得等效输出

>>> a.swapaxes(1, 3).shape
(2, 5, 4, 3)

通过 transpose() 获得等效输出

>>> a.transpose(0, 3, 2, 1).shape
(2, 5, 4, 3)