19 #include "ngraph/coordinate_diff.hpp"
20 #include "ngraph/op/op.hpp"
21 #include "ngraph/op/util/attr_types.hpp"
34 NGRAPH_RTTI_DECLARATION;
63 const PadType& auto_pad = PadType::EXPLICIT);
68 virtual std::shared_ptr<Node>
69 clone_with_new_inputs(
const OutputVector& new_args)
const override;
73 void set_strides(
const Strides& strides) { m_strides = strides; }
76 void set_dilations(
const Strides& dilations) { m_dilations = dilations; }
79 void set_pads_begin(
const CoordinateDiff& pads_begin) { m_pads_begin = pads_begin; }
82 void set_adding_above(
const CoordinateDiff& pads_end) { m_pads_end = pads_end; }
85 void set_auto_pad(
const PadType& auto_pad) { m_auto_pad = auto_pad; }
101 static constexpr
NodeTypeInfo type_info{
"ConvolutionBackpropData", 1};
130 const PadType& auto_pad = PadType::EXPLICIT,
155 const PadType& auto_pad = PadType::EXPLICIT,
160 virtual bool is_dynamic()
const override;
162 virtual std::shared_ptr<Node>
163 clone_with_new_inputs(
const OutputVector& new_args)
const override;
167 void set_output_shape(
const Shape& output_shape);
170 void set_strides(
const Strides& strides) { m_strides = strides; }
173 void set_dilations(
const Strides& dilations) { m_dilations = dilations; }
176 void set_pads_begin(
const CoordinateDiff& pads_begin) { m_pads_begin = pads_begin; }
179 void set_pads_end(
const CoordinateDiff& pads_end) { m_pads_end = pads_end; }
182 void set_auto_pad(
const PadType& auto_pad) { m_auto_pad = auto_pad; }
187 m_output_padding = output_padding;
203 const std::vector<Dimension>& filters_shape,
209 std::vector<Dimension>& output_spatial_shape);
Visits the attributes of a node, primarily for serialization-like tasks.
Definition: attribute_visitor.hpp:71
A difference (signed) of tensor element coordinates.
Definition: coordinate_diff.hpp:30
A handle for one of a node's outputs.
Definition: node_output.hpp:42
Class representing a shape that may be partially or totally dynamic.
Definition: partial_shape.hpp:46
Shape for a tensor.
Definition: shape.hpp:31
Strides for a tensor.
Definition: strides.hpp:30
Root of all actual ops.
Definition: op.hpp:29
Data batch backprop for batched convolution operation.
Definition: convolution.hpp:99
void validate_and_infer_types() override
Verifies that attributes and inputs are consistent and computes output shapes and element types....
const CoordinateDiff & get_output_padding() const
Definition: convolution.hpp:184
ConvolutionBackpropData()=default
Constructs a batched-convolution data batch-backprop operation.
void infer_conv_backprop_output_spatial_shape(const std::vector< Dimension > &input_data_shape, const std::vector< Dimension > &filters_shape, const Strides &strides, const Strides &dilations, const CoordinateDiff &pads_begin, const CoordinateDiff &pads_end, const CoordinateDiff &output_padding, std::vector< Dimension > &output_spatial_shape)
Calculates output spatial features size.
const CoordinateDiff & get_pads_begin() const
Definition: convolution.hpp:175
const CoordinateDiff & get_pads_end() const
Definition: convolution.hpp:178
const PartialShape get_output_shape() const
const NodeTypeInfo & get_type_info() const override
Definition: convolution.hpp:102
const Strides & get_strides() const
Definition: convolution.hpp:169
const PadType & get_auto_pad() const
Definition: convolution.hpp:181
const Strides & get_dilations() const
Definition: convolution.hpp:172
Batched convolution operation, with optional window dilation and stride.
Definition: convolution.hpp:32
const Strides & get_dilations() const
Definition: convolution.hpp:75
const PadType & get_auto_pad() const
Definition: convolution.hpp:84
Convolution(const Output< Node > &data_batch, const Output< Node > &filters, const Strides &strides, const CoordinateDiff &pads_begin, const CoordinateDiff &pads_end, const Strides &dilations, const PadType &auto_pad=PadType::EXPLICIT)
Constructs a batched convolution operation.
void validate_and_infer_types() override
Verifies that attributes and inputs are consistent and computes output shapes and element types....
const CoordinateDiff & get_pads_begin() const
Definition: convolution.hpp:78
Convolution()=default
Constructs a batched convolution operation.
virtual std::shared_ptr< Node > get_default_value() const override
const CoordinateDiff & get_pads_end() const
Definition: convolution.hpp:81
const Strides & get_strides() const
Definition: convolution.hpp:72
PadType
Padding Type used for Convolution and Pooling
Definition: attr_types.hpp:73
The Intel nGraph C++ API.
Definition: attribute_adapter.hpp:28