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)[source]#

用于计算 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) – 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