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 个整数二元组的序列,描述每个 n 个空间维度前后的填充。

  • rhs_dilation (Sequence[int] | None | None) – 可以是 None,或者是一个包含 n 个整数的序列,给出应用于 rhs 的每个空间维度的膨胀因子。RHS 膨胀也称为空洞卷积。

  • dimension_numbers (ConvGeneralDilatedDimensionNumbers | None) – 维度描述符的元组,与 lax.conv_general_dilated 中相同。默认为 tensorflow 的约定。

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

  • precision (lax.PrecisionLike | None) – 可选参数。可以是 None,表示后端的默认精度;可以是 Precision 枚举值(Precision.DEFAULTPrecision.HIGHPrecision.HIGHEST);或者是一个由两个 Precision 枚举值组成的元组,指示 lhs`rhs 的精度。

  • preferred_element_type (DTypeLike | None | None) – 可选参数。可以是 None,表示输入类型的默认累积类型;或者是一种数据类型,表示将结果累积到该数据类型并返回该数据类型的结果。

返回:

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

返回类型:

Array