ClikaRT::ops::conv_transpose
function
conv_transpose()
Tensor conv_transpose(
Tensor x,
Tensor weight,
OptionalTensor bias,
ClikaRT::Span<const std::int64_t> stride,
ClikaRT::Span<const std::int64_t> padding,
ClikaRT::Span<const std::int64_t> output_padding,
int64_t groups,
ClikaRT::Span<const std::int64_t> dilation,
Activation activation = Activation::Identity
)
Rank-polymorphic (1-D/2-D/3-D) transposed (fractionally-strided) convolution (learnable upsampling).
Layout is channels-last; the WEIGHT is the transpose-flip of conv's: input-channel-first [C_in, K.., O/groups]; C_in == weight[0] and C_out == weight[-1] * groups (the cuDNN-BackwardData / ONNX convention, NOT conv's OHWI). padding is per-side: two entries (lo, hi) per spatial dim. output_padding grows only the output's high side.
All geometry spans are explicit here; the conv_transpose1d/2d/3d wrappers below carry the per-rank defaults.
Throws
ClikaRT::Error: when the channel/group arithmetic or a span length is inconsistent, or the dtype is not served (code_name()carries the reason).
Returns: channels-last [N, out-spatial.., C_out].
Declared in ClikaRT/compute/ops.h, line 1859