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.DEFAULT
,Precision.HIGH
或Precision.HIGHEST
) 或两个Precision
枚举值的元组,指示lhs`
和rhs
的精度。preferred_element_type (DTypeLike | None | None) – 可选。要么是
None
,表示输入类型的默认累积类型,要么是数据类型,表示将结果累积到该数据类型并返回具有该数据类型的结果。
- 返回值:
转置 N 维卷积,输出填充遵循 keras.layers.Conv2DTranspose 的约定。
- 返回类型: