---
title: "convTranspose"
sidebar_label: "convTranspose"
description: "Kotlin binding reference: convTranspose."
---

<!-- Generated by tools/api_reference/generate_api_docs.py. Do not edit. -->

//[clika-runtime](../../../index.md)/[io.clika.runtime](../index.md)/[Ops](index.md)/[convTranspose](convTranspose.md)

# convTranspose

[common]\
fun [convTranspose](convTranspose.md)(input: [Tensor](../Tensor/index.md), weight: [Tensor](../Tensor/index.md), bias: [Tensor](../Tensor/index.md)?, stride: [LongArray](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long-array/index.html), padding: [LongArray](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long-array/index.html), outputPadding: [LongArray](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long-array/index.html), groups: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html), dilation: [LongArray](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long-array/index.html), activation: [Activation](../Activation/index.md) = Activation.IDENTITY): [Tensor](../Tensor/index.md)

`convTranspose(input: Tensor, weight: Tensor, bias: Tensor?, stride: LongArray, padding: LongArray, outputPadding: LongArray, groups: Long, dilation: LongArray, activation: Activation = Activation.IDENTITY)`: the `conv_transpose` operator. 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.