1#ifndef INFINI_OPS_BASE_MAX_UNPOOL3D_H_
2#define INFINI_OPS_BASE_MAX_UNPOOL3D_H_
8#include "common/op_utils/max_unpool.h"
15 const std::vector<int64_t> kernel_size,
16 const std::optional<std::vector<int64_t>> stride,
17 const std::vector<int64_t> padding,
18 const std::optional<std::vector<int64_t>> output_size,
Tensor out)
32 auto geometry = max_unpool_detail::ResolveGeometry<3>(
33 input, kernel_size, stride, padding, output_size);
35 stride_ = std::move(geometry.second);
40 [[deprecated(
"Use the `kernel_size` overload instead.")]]
42 const std::vector<int64_t> output_size,
43 const std::vector<int64_t> stride,
44 const std::vector<int64_t> padding,
Tensor out)
60 const std::vector<int64_t> kernel_size,
61 const std::optional<std::vector<int64_t>> stride,
62 const std::vector<int64_t> padding,
63 const std::optional<std::vector<int64_t>> output_size,
65 const auto geometry = max_unpool_detail::ResolveGeometry<3>(
66 input, kernel_size, stride, padding, output_size);
67 (*this)(input, indices, geometry.first, geometry.second, padding, out);
72 [[deprecated(
"Use the `kernel_size` overload instead.")]]
virtual void
74 const std::vector<int64_t> output_size,
75 const std::vector<int64_t> stride,
76 const std::vector<int64_t> padding,
Tensor out)
const = 0;
Definition max_unpool3d.h:12
Tensor::Strides out_strides_
Definition max_unpool3d.h:93
int device_index_
Definition max_unpool3d.h:103
Tensor::Shape out_shape_
Definition max_unpool3d.h:91
std::vector< int64_t > output_size_
Definition max_unpool3d.h:97
Tensor::Shape input_shape_
Definition max_unpool3d.h:79
Tensor::Strides input_strides_
Definition max_unpool3d.h:81
std::vector< int64_t > stride_
Definition max_unpool3d.h:99
DataType input_type_
Definition max_unpool3d.h:83
DataType indices_type_
Definition max_unpool3d.h:89
virtual void operator()(const Tensor input, const Tensor indices, const std::vector< int64_t > output_size, const std::vector< int64_t > stride, const std::vector< int64_t > padding, Tensor out) const =0
Tensor::Shape indices_shape_
Definition max_unpool3d.h:85
MaxUnpool3d(const Tensor input, const Tensor indices, const std::vector< int64_t > output_size, const std::vector< int64_t > stride, const std::vector< int64_t > padding, Tensor out)
Definition max_unpool3d.h:41
MaxUnpool3d(const Tensor input, const Tensor indices, const std::vector< int64_t > kernel_size, const std::optional< std::vector< int64_t > > stride, const std::vector< int64_t > padding, const std::optional< std::vector< int64_t > > output_size, Tensor out)
Definition max_unpool3d.h:14
void operator()(const Tensor input, const Tensor indices, const std::vector< int64_t > kernel_size, const std::optional< std::vector< int64_t > > stride, const std::vector< int64_t > padding, const std::optional< std::vector< int64_t > > output_size, Tensor out) const
Definition max_unpool3d.h:59
Tensor::Strides indices_strides_
Definition max_unpool3d.h:87
std::vector< int64_t > padding_
Definition max_unpool3d.h:101
DataType out_type_
Definition max_unpool3d.h:95
Definition generated/include/operator.h:282
Definition generated/include/operator.h:28
infini::rt::TensorView Tensor
Definition tensor.h:8