Applies a 3D transposed convolution (also called deconvolution) over an input signal. Useful for 3D volumetric data upsampling, such as in medical imaging or video generation.
Usage
mlx_conv_transpose3d(
input,
weight,
stride = c(1L, 1L, 1L),
padding = c(0L, 0L, 0L),
dilation = c(1L, 1L, 1L),
output_padding = c(0L, 0L, 0L),
groups = 1L,
device = mlx_default_device()
)Arguments
- input
Input mlx array. Shape depends on dimensionality (see individual functions).
- weight
Weight array. Shape depends on dimensionality (see individual functions).
- stride
Stride of the convolution. Can be a scalar or vector (length depends on dimensionality). Default: 1 for 1D, c(1,1) for 2D, c(1,1,1) for 3D.
- padding
Amount of zero padding. Can be a scalar or vector (length depends on dimensionality). Default: 0 for 1D, c(0,0) for 2D, c(0,0,0) for 3D.
- dilation
Spacing between kernel elements. Can be a scalar or vector (length depends on dimensionality). Default: 1 for 1D, c(1,1) for 2D, c(1,1,1) for 3D.
- output_padding
Additional size added to output shape. Can be a scalar or length-3 vector. Default: c(0, 0, 0)
- groups
Number of blocked connections from input to output channels. Default: 1.
- device
Execution target: supply
"gpu","cpu", or anmlx_streamcreated viamlx_new_stream(). Defaults to the currentmlx_default_device()unless noted otherwise (helpers that act on an existing array typically reuse that array's device or stream).