pub trait ModuleOps<B: Backend> {
Show 45 methods
// Required methods
fn conv2d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvOptions<2>,
) -> FloatTensor<B>;
fn deform_conv2d(
x: FloatTensor<B>,
offset: FloatTensor<B>,
weight: FloatTensor<B>,
mask: Option<FloatTensor<B>>,
bias: Option<FloatTensor<B>>,
options: DeformConvOptions<2>,
) -> FloatTensor<B>;
fn deform_conv2d_backward(
x: FloatTensor<B>,
offset: FloatTensor<B>,
weight: FloatTensor<B>,
mask: Option<FloatTensor<B>>,
bias: Option<FloatTensor<B>>,
output_grad: FloatTensor<B>,
options: DeformConvOptions<2>,
) -> DeformConv2dBackward<B>;
fn conv3d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvOptions<3>,
) -> FloatTensor<B>;
fn conv_transpose2d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<B>;
fn conv_transpose3d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<B>;
fn avg_pool2d(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
count_include_pad: bool,
) -> FloatTensor<B>;
fn avg_pool2d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
count_include_pad: bool,
) -> FloatTensor<B>;
fn adaptive_avg_pool2d(
x: FloatTensor<B>,
output_size: [usize; 2],
) -> FloatTensor<B>;
fn adaptive_avg_pool2d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
) -> FloatTensor<B>;
fn max_pool2d(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
) -> FloatTensor<B>;
fn max_pool2d_with_indices(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
) -> MaxPool2dWithIndices<B>;
fn max_pool2d_with_indices_backward(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
output_grad: FloatTensor<B>,
indices: IntTensor<B>,
) -> MaxPool2dBackward<B>;
fn interpolate(
x: FloatTensor<B>,
output_size: [usize; 2],
options: InterpolateOptions,
) -> FloatTensor<B>;
fn interpolate_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
output_size: [usize; 2],
options: InterpolateOptions,
) -> FloatTensor<B>;
// Provided methods
fn embedding(
weights: FloatTensor<B>,
indices: IntTensor<B>,
) -> FloatTensor<B> { ... }
fn embedding_backward(
weights: FloatTensor<B>,
output_grad: FloatTensor<B>,
indices: IntTensor<B>,
) -> FloatTensor<B> { ... }
fn conv1d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvOptions<1>,
) -> FloatTensor<B> { ... }
fn conv1d_x_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<1>,
) -> FloatTensor<B> { ... }
fn conv1d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<1>,
) -> FloatTensor<B> { ... }
fn conv1d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn conv2d_x_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<2>,
) -> FloatTensor<B> { ... }
fn conv2d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<2>,
) -> FloatTensor<B> { ... }
fn conv2d_bias_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn conv3d_x_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<3>,
) -> FloatTensor<B> { ... }
fn conv3d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<3>,
) -> FloatTensor<B> { ... }
fn conv3d_bias_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn conv_transpose1d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<B> { ... }
fn conv_transpose1d_x_backward(
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<B> { ... }
fn conv_transpose1d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<B> { ... }
fn conv_transpose1d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn conv_transpose2d_x_backward(
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<B> { ... }
fn conv_transpose2d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<B> { ... }
fn conv_transpose2d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn conv_transpose3d_x_backward(
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<B> { ... }
fn conv_transpose3d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<B> { ... }
fn conv_transpose3d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn unfold4d(
x: FloatTensor<B>,
kernel_size: [usize; 2],
options: UnfoldOptions,
) -> FloatTensor<B> { ... }
fn avg_pool1d(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
count_include_pad: bool,
) -> FloatTensor<B> { ... }
fn avg_pool1d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
count_include_pad: bool,
) -> FloatTensor<B> { ... }
fn adaptive_avg_pool1d(
x: FloatTensor<B>,
output_size: usize,
) -> FloatTensor<B> { ... }
fn adaptive_avg_pool1d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
) -> FloatTensor<B> { ... }
fn max_pool1d(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
) -> FloatTensor<B> { ... }
fn max_pool1d_with_indices(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
) -> MaxPool1dWithIndices<B> { ... }
fn max_pool1d_with_indices_backward(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
output_grad: FloatTensor<B>,
indices: IntTensor<B>,
) -> MaxPool1dBackward<B> { ... }
}Expand description
Module operations trait.
Required Methods§
Sourcefn conv2d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvOptions<2>,
) -> FloatTensor<B>
fn conv2d( x: FloatTensor<B>, weight: FloatTensor<B>, bias: Option<FloatTensor<B>>, options: ConvOptions<2>, ) -> FloatTensor<B>
Two dimensional convolution.
§Shapes
x: [batch_size, channels_in, height, width],
weight: [channels_out, channels_in, kernel_size_1, kernel_size_2],
bias: [channels_out],
Sourcefn deform_conv2d(
x: FloatTensor<B>,
offset: FloatTensor<B>,
weight: FloatTensor<B>,
mask: Option<FloatTensor<B>>,
bias: Option<FloatTensor<B>>,
options: DeformConvOptions<2>,
) -> FloatTensor<B>
fn deform_conv2d( x: FloatTensor<B>, offset: FloatTensor<B>, weight: FloatTensor<B>, mask: Option<FloatTensor<B>>, bias: Option<FloatTensor<B>>, options: DeformConvOptions<2>, ) -> FloatTensor<B>
Two dimensional deformable convolution.
§Shapes
x: [batch_size, channels_in, height, width],
weight: [channels_out, channels_in, kernel_size_1, kernel_size_2],
bias: [channels_out],
Sourcefn deform_conv2d_backward(
x: FloatTensor<B>,
offset: FloatTensor<B>,
weight: FloatTensor<B>,
mask: Option<FloatTensor<B>>,
bias: Option<FloatTensor<B>>,
output_grad: FloatTensor<B>,
options: DeformConvOptions<2>,
) -> DeformConv2dBackward<B>
fn deform_conv2d_backward( x: FloatTensor<B>, offset: FloatTensor<B>, weight: FloatTensor<B>, mask: Option<FloatTensor<B>>, bias: Option<FloatTensor<B>>, output_grad: FloatTensor<B>, options: DeformConvOptions<2>, ) -> DeformConv2dBackward<B>
Backward pass for the deform_conv2d operation.
Sourcefn conv3d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvOptions<3>,
) -> FloatTensor<B>
fn conv3d( x: FloatTensor<B>, weight: FloatTensor<B>, bias: Option<FloatTensor<B>>, options: ConvOptions<3>, ) -> FloatTensor<B>
Three dimensional convolution.
§Shapes
x: [batch_size, channels_in, depth, height, width],
weight: [channels_out, channels_in, kernel_size_1, kernel_size_2, kernel_size_3],
bias: [channels_out],
Sourcefn conv_transpose2d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<B>
fn conv_transpose2d( x: FloatTensor<B>, weight: FloatTensor<B>, bias: Option<FloatTensor<B>>, options: ConvTransposeOptions<2>, ) -> FloatTensor<B>
Two dimensional transposed convolution.
§Shapes
x: [batch_size, channels_in, height, width],
weight: [channels_in, channels_out, kernel_size_1, kernel_size_2],
bias: [channels_out],
Sourcefn conv_transpose3d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<B>
fn conv_transpose3d( x: FloatTensor<B>, weight: FloatTensor<B>, bias: Option<FloatTensor<B>>, options: ConvTransposeOptions<3>, ) -> FloatTensor<B>
Three dimensional transposed convolution.
§Shapes
x: [batch_size, channels_in, height, width],
weight: [channels_in, channels_out, kernel_size_1, kernel_size_2, kernel_size_3],
bias: [channels_out],
Sourcefn avg_pool2d(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
count_include_pad: bool,
) -> FloatTensor<B>
fn avg_pool2d( x: FloatTensor<B>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], count_include_pad: bool, ) -> FloatTensor<B>
Sourcefn avg_pool2d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
count_include_pad: bool,
) -> FloatTensor<B>
fn avg_pool2d_backward( x: FloatTensor<B>, grad: FloatTensor<B>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], count_include_pad: bool, ) -> FloatTensor<B>
Backward pass for the avg pooling 2d operation.
Sourcefn adaptive_avg_pool2d(
x: FloatTensor<B>,
output_size: [usize; 2],
) -> FloatTensor<B>
fn adaptive_avg_pool2d( x: FloatTensor<B>, output_size: [usize; 2], ) -> FloatTensor<B>
Sourcefn adaptive_avg_pool2d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
) -> FloatTensor<B>
fn adaptive_avg_pool2d_backward( x: FloatTensor<B>, grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the adaptive avg pooling 2d operation.
Sourcefn max_pool2d(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
) -> FloatTensor<B>
fn max_pool2d( x: FloatTensor<B>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], dilation: [usize; 2], ) -> FloatTensor<B>
Sourcefn max_pool2d_with_indices(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
) -> MaxPool2dWithIndices<B>
fn max_pool2d_with_indices( x: FloatTensor<B>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], dilation: [usize; 2], ) -> MaxPool2dWithIndices<B>
Sourcefn max_pool2d_with_indices_backward(
x: FloatTensor<B>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
output_grad: FloatTensor<B>,
indices: IntTensor<B>,
) -> MaxPool2dBackward<B>
fn max_pool2d_with_indices_backward( x: FloatTensor<B>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], dilation: [usize; 2], output_grad: FloatTensor<B>, indices: IntTensor<B>, ) -> MaxPool2dBackward<B>
Backward pass for the max pooling 2d operation.
Sourcefn interpolate(
x: FloatTensor<B>,
output_size: [usize; 2],
options: InterpolateOptions,
) -> FloatTensor<B>
fn interpolate( x: FloatTensor<B>, output_size: [usize; 2], options: InterpolateOptions, ) -> FloatTensor<B>
Sourcefn interpolate_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
output_size: [usize; 2],
options: InterpolateOptions,
) -> FloatTensor<B>
fn interpolate_backward( x: FloatTensor<B>, grad: FloatTensor<B>, output_size: [usize; 2], options: InterpolateOptions, ) -> FloatTensor<B>
Backward pass for the interpolate operation.
Provided Methods§
Sourcefn embedding(weights: FloatTensor<B>, indices: IntTensor<B>) -> FloatTensor<B>
fn embedding(weights: FloatTensor<B>, indices: IntTensor<B>) -> FloatTensor<B>
Sourcefn embedding_backward(
weights: FloatTensor<B>,
output_grad: FloatTensor<B>,
indices: IntTensor<B>,
) -> FloatTensor<B>
fn embedding_backward( weights: FloatTensor<B>, output_grad: FloatTensor<B>, indices: IntTensor<B>, ) -> FloatTensor<B>
Sourcefn conv1d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvOptions<1>,
) -> FloatTensor<B>
fn conv1d( x: FloatTensor<B>, weight: FloatTensor<B>, bias: Option<FloatTensor<B>>, options: ConvOptions<1>, ) -> FloatTensor<B>
One dimensional convolution.
§Shapes
x: [batch_size, channels_in, length],
weight: [channels_out, channels_in, kernel_size],
bias: [channels_out],
Sourcefn conv1d_x_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<1>,
) -> FloatTensor<B>
fn conv1d_x_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvOptions<1>, ) -> FloatTensor<B>
Backward pass for the conv1d operation, returning the gradient for x.
Sourcefn conv1d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<1>,
) -> FloatTensor<B>
fn conv1d_weight_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvOptions<1>, ) -> FloatTensor<B>
Backward pass for the conv1d operation, returning the gradient for weight.
Sourcefn conv1d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B>
fn conv1d_bias_backward( x: FloatTensor<B>, bias: FloatTensor<B>, output_grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the conv1d operation, returning the gradient for bias.
Sourcefn conv2d_x_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<2>,
) -> FloatTensor<B>
fn conv2d_x_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvOptions<2>, ) -> FloatTensor<B>
Backward pass for the conv2d operation, returning the gradient for x.
Sourcefn conv2d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<2>,
) -> FloatTensor<B>
fn conv2d_weight_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvOptions<2>, ) -> FloatTensor<B>
Backward pass for the conv2d operation, returning the gradient for weight.
Sourcefn conv2d_bias_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B>
fn conv2d_bias_backward( x: FloatTensor<B>, weight: FloatTensor<B>, bias: FloatTensor<B>, output_grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the conv2d operation, returning the gradient for bias.
Sourcefn conv3d_x_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<3>,
) -> FloatTensor<B>
fn conv3d_x_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvOptions<3>, ) -> FloatTensor<B>
Backward pass for the conv3d operation, returning the gradient for x.
Sourcefn conv3d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvOptions<3>,
) -> FloatTensor<B>
fn conv3d_weight_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvOptions<3>, ) -> FloatTensor<B>
Backward pass for the conv3d operation, returning the gradient for weight.
Sourcefn conv3d_bias_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B>
fn conv3d_bias_backward( x: FloatTensor<B>, weight: FloatTensor<B>, bias: FloatTensor<B>, output_grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the conv3d operation, returning the gradient for bias.
Sourcefn conv_transpose1d(
x: FloatTensor<B>,
weight: FloatTensor<B>,
bias: Option<FloatTensor<B>>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<B>
fn conv_transpose1d( x: FloatTensor<B>, weight: FloatTensor<B>, bias: Option<FloatTensor<B>>, options: ConvTransposeOptions<1>, ) -> FloatTensor<B>
One dimensional transposed convolution.
§Shapes
x: [batch_size, channels_in, length],
weight: [channels_in, channels_out, length],
bias: [channels_out],
Sourcefn conv_transpose1d_x_backward(
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<B>
fn conv_transpose1d_x_backward( weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvTransposeOptions<1>, ) -> FloatTensor<B>
Backward pass for the conv transpose 1d operation, returning the gradient for x.
Sourcefn conv_transpose1d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<B>
fn conv_transpose1d_weight_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvTransposeOptions<1>, ) -> FloatTensor<B>
Backward pass for the conv transpose 1d operation, returning the gradient for weight.
Sourcefn conv_transpose1d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B>
fn conv_transpose1d_bias_backward( x: FloatTensor<B>, bias: FloatTensor<B>, output_grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the conv transpose 1d operation, returning the gradient for bias.
Sourcefn conv_transpose2d_x_backward(
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<B>
fn conv_transpose2d_x_backward( weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvTransposeOptions<2>, ) -> FloatTensor<B>
Backward pass for the conv transpose 2d operation, returning the gradient for x.
Sourcefn conv_transpose2d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<B>
fn conv_transpose2d_weight_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvTransposeOptions<2>, ) -> FloatTensor<B>
Backward pass for the conv transpose 2d operation, returning the gradient for weight.
Sourcefn conv_transpose2d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B>
fn conv_transpose2d_bias_backward( x: FloatTensor<B>, bias: FloatTensor<B>, output_grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the conv transpose 2d operation, returning the gradient for bias.
Sourcefn conv_transpose3d_x_backward(
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<B>
fn conv_transpose3d_x_backward( weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvTransposeOptions<3>, ) -> FloatTensor<B>
Backward pass for the conv transpose 3d operation, returning the gradient for x.
Sourcefn conv_transpose3d_weight_backward(
x: FloatTensor<B>,
weight: FloatTensor<B>,
output_grad: FloatTensor<B>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<B>
fn conv_transpose3d_weight_backward( x: FloatTensor<B>, weight: FloatTensor<B>, output_grad: FloatTensor<B>, options: ConvTransposeOptions<3>, ) -> FloatTensor<B>
Backward pass for the conv transpose 3d operation, returning the gradient for weight.
Sourcefn conv_transpose3d_bias_backward(
x: FloatTensor<B>,
bias: FloatTensor<B>,
output_grad: FloatTensor<B>,
) -> FloatTensor<B>
fn conv_transpose3d_bias_backward( x: FloatTensor<B>, bias: FloatTensor<B>, output_grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the conv transpose 3d operation, returning the gradient for bias.
Sourcefn unfold4d(
x: FloatTensor<B>,
kernel_size: [usize; 2],
options: UnfoldOptions,
) -> FloatTensor<B>
fn unfold4d( x: FloatTensor<B>, kernel_size: [usize; 2], options: UnfoldOptions, ) -> FloatTensor<B>
Four-dimensional unfolding.
§Shapes
- x:
[batch_size, channels_in, height, width], - returns:
[batch_size, channels_in * kernel_size_1 * kernel_size_2, number of blocks],
Sourcefn avg_pool1d(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
count_include_pad: bool,
) -> FloatTensor<B>
fn avg_pool1d( x: FloatTensor<B>, kernel_size: usize, stride: usize, padding: usize, count_include_pad: bool, ) -> FloatTensor<B>
Sourcefn avg_pool1d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
count_include_pad: bool,
) -> FloatTensor<B>
fn avg_pool1d_backward( x: FloatTensor<B>, grad: FloatTensor<B>, kernel_size: usize, stride: usize, padding: usize, count_include_pad: bool, ) -> FloatTensor<B>
Backward pass for the avg pooling 1d operation.
Sourcefn adaptive_avg_pool1d(x: FloatTensor<B>, output_size: usize) -> FloatTensor<B>
fn adaptive_avg_pool1d(x: FloatTensor<B>, output_size: usize) -> FloatTensor<B>
Sourcefn adaptive_avg_pool1d_backward(
x: FloatTensor<B>,
grad: FloatTensor<B>,
) -> FloatTensor<B>
fn adaptive_avg_pool1d_backward( x: FloatTensor<B>, grad: FloatTensor<B>, ) -> FloatTensor<B>
Backward pass for the adaptive avg pooling 1d operation.
Sourcefn max_pool1d(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
) -> FloatTensor<B>
fn max_pool1d( x: FloatTensor<B>, kernel_size: usize, stride: usize, padding: usize, dilation: usize, ) -> FloatTensor<B>
Sourcefn max_pool1d_with_indices(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
) -> MaxPool1dWithIndices<B>
fn max_pool1d_with_indices( x: FloatTensor<B>, kernel_size: usize, stride: usize, padding: usize, dilation: usize, ) -> MaxPool1dWithIndices<B>
Sourcefn max_pool1d_with_indices_backward(
x: FloatTensor<B>,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
output_grad: FloatTensor<B>,
indices: IntTensor<B>,
) -> MaxPool1dBackward<B>
fn max_pool1d_with_indices_backward( x: FloatTensor<B>, kernel_size: usize, stride: usize, padding: usize, dilation: usize, output_grad: FloatTensor<B>, indices: IntTensor<B>, ) -> MaxPool1dBackward<B>
Backward pass for the max pooling 1d operation.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.