jax.lax.conv_transpose#

jax.lax.conv_transpose(lhs, rhs, strides, padding, rhs_dilation=None, dimension_numbers=None, transpose_kernel=False, precision=None, preferred_element_type=None)[源代码]#

用于计算 N 维卷积“转置”的便捷包装器。

此函数直接计算分数步长卷积,而不是间接计算前向卷积的梯度(转置)。

参数:
  • lhs (Array) – 一个秩为 n+2 维的输入数组。

  • rhs (Array) – 一个秩为 n+2 维的内核权重数组。

  • strides (Sequence[int]) – n 个整数的序列,设置分数步长。

  • padding (str | Sequence[tuple[int, int]]) – 'SAME'、'VALID' 将设置为相应前向卷积的转置,或 n 个整数 2 元组的序列,描述每个 n 空间维度之前和之后的填充。

  • rhs_dilation (Sequence[int] | None) – None,或 n 个整数的序列,给出应用于 rhs 的每个空间维度的扩张因子。RHS 扩张也称为 atrous 卷积。

  • dimension_numbers (ConvGeneralDilatedDimensionNumbers) – 维度描述符的元组,如 lax.conv_general_dilated 中所示。 默认为 tensorflow 约定。

  • transpose_kernel (bool) – 如果为 True,则翻转空间轴并交换内核的输入/输出通道轴。 这使得此函数的输出与应用于相同内核的梯度派生函数(如 keras.layers.Conv2DTranspose)相同。 对于神经网络中的典型用途,这完全没有意义,只会使输入/输出通道规范令人困惑。

  • precision (lax.PrecisionLike) – 可选。可以是 None,这意味着后端的默认精度,一个 Precision 枚举值 (Precision.DEFAULT, Precision.HIGHPrecision.HIGHEST),或者是一个两个 Precision 枚举的元组,指示 lhs`rhs 的精度。

  • preferred_element_type (DTypeLike | None) – 可选。可以是 None,这意味着输入类型的默认累积类型,或者是一种数据类型,指示要将结果累积到该数据类型并返回具有该数据类型的结果。

返回:

转置的 N 维卷积,输出填充遵循 keras.layers.Conv2DTranspose 的约定。

返回类型:

数组