Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T > Class Template Referencefinal

template<typename T>
class TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >

Transposed Convolution operator.

Inference code generation for a transposed convolution layer. See the ONNX documentation for details about the transposed conv layer.

Definition at line 26 of file ROperator_ConvTranspose.hxx.

Public Member Functions

 ROperator_ConvTranspose ()
 Default constructor of ROperator_ConvTranspose.
 
 ROperator_ConvTranspose (std::string autopad, std::vector< size_t > dilations, size_t group, std::vector< size_t > kernelShape, std::vector< size_t > outputPadding, std::vector< size_t > outputShape, std::vector< size_t > pads, std::vector< size_t > strides, std::string nameX, std::string nameW, std::string nameB, std::string nameY)
 Constructor of ROperator_ConvTranspose from the attributes.
 
std::string Generate (std::string opName) override
 Generate the inference code.
 
std::string GenerateInitCode () override
 Generate code for initializing the op.
 
std::string GenerateSessionMembersCode (std::string) override
 Generate code for Session data members (e.g.
 
std::vector< std::string > GetBlasRoutines () override
 Returns the blas routines needed to compile the generated code.
 
void Initialize (RModel &) override
 Initialize the model.
 
std::vector< std::vector< size_t > > ShapeInference (std::vector< std::vector< size_t > >) override
 Infers the shape of the input tensors.
 
std::vector< ETensorTypeTypeInference (std::vector< ETensorType > input) override
 Infers the type of the output tensor.
 
- Public Member Functions inherited from TMVA::Experimental::SOFIE::ROperator
virtual ~ROperator ()
 
virtual std::vector< std::string > GetStdLibs ()
 
virtual std::string Header ()
 

Private Attributes

std::string fAttrAutopad
 
std::vector< size_t > fAttrDilations
 
size_t fAttrGroup
 
std::vector< size_t > fAttrKernelShape
 
std::vector< size_t > fAttrOutputPadding
 
std::vector< size_t > fAttrOutputShape
 
std::vector< size_t > fAttrPads
 
std::vector< size_t > fAttrStrides
 
size_t fDim
 
std::string fNB
 
std::string fNBroadcastedB
 
std::string fNW
 
std::string fNX
 
std::string fNY
 
std::vector< size_t > fShapeB
 
std::vector< size_t > fShapeW
 
std::vector< size_t > fShapeX
 
std::vector< size_t > fShapeY
 
std::string fType
 

Additional Inherited Members

- Protected Attributes inherited from TMVA::Experimental::SOFIE::ROperator
bool fIsOutputConstant = false
 flag to identify if operator has a constant output (no need to generate code)
 
bool fUseSession = false
 flag to identify if using the session class
 
const std::string SP = " "
 space used to correctly indent the generated C++ code
 

#include <TMVA/ROperator_ConvTranspose.hxx>

Inheritance diagram for TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >:
[legend]

Constructor & Destructor Documentation

◆ ROperator_ConvTranspose() [1/2]

template<typename T >
TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::ROperator_ConvTranspose ( )
inline

Default constructor of ROperator_ConvTranspose.

Definition at line 54 of file ROperator_ConvTranspose.hxx.

◆ ROperator_ConvTranspose() [2/2]

template<typename T >
TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::ROperator_ConvTranspose ( std::string  autopad,
std::vector< size_t >  dilations,
size_t  group,
std::vector< size_t >  kernelShape,
std::vector< size_t >  outputPadding,
std::vector< size_t >  outputShape,
std::vector< size_t >  pads,
std::vector< size_t >  strides,
std::string  nameX,
std::string  nameW,
std::string  nameB,
std::string  nameY 
)
inline

Constructor of ROperator_ConvTranspose from the attributes.

Parameters
autopadpadding
dilationsdilations of the kernel
groupnumber of groups
kernelShapeshape of the kernel
outputPaddingpadding of the output
outputShapeshape of the output
padspadding of the input
stridesstrides
nameXname of the input
nameWname of the weight
nameBname of the bias
nameYname of the output

Definition at line 71 of file ROperator_ConvTranspose.hxx.

Member Function Documentation

◆ Generate()

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::Generate ( std::string  opName)
overridevirtual

Generate the inference code.

Parameters
opNamename of the operator

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 228 of file ROperator_ConvTranspose.icc.

◆ GenerateInitCode()

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::GenerateInitCode
overridevirtual

Generate code for initializing the op.

Reimplemented from TMVA::Experimental::SOFIE::ROperator.

Definition at line 183 of file ROperator_ConvTranspose.icc.

◆ GenerateSessionMembersCode()

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::GenerateSessionMembersCode ( std::string  opName)
overridevirtual

Generate code for Session data members (e.g.

internal vectors)

Parameters
opNamename of the operator

Reimplemented from TMVA::Experimental::SOFIE::ROperator.

Definition at line 203 of file ROperator_ConvTranspose.icc.

◆ GetBlasRoutines()

template<typename T >
std::vector< std::string > TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::GetBlasRoutines ( )
inlineoverridevirtual

Returns the blas routines needed to compile the generated code.

Reimplemented from TMVA::Experimental::SOFIE::ROperator.

Definition at line 122 of file ROperator_ConvTranspose.hxx.

◆ Initialize()

template<typename T >
void TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::Initialize ( RModel model)
overridevirtual

Initialize the model.

Parameters
modelModel

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 106 of file ROperator_ConvTranspose.icc.

◆ ShapeInference()

template<typename T >
auto TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::ShapeInference ( std::vector< std::vector< size_t > >  input)
overridevirtual

Infers the shape of the input tensors.

Parameters
inputshape of the input tensors

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 18 of file ROperator_ConvTranspose.icc.

◆ TypeInference()

template<typename T >
std::vector< ETensorType > TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::TypeInference ( std::vector< ETensorType input)
inlineoverridevirtual

Infers the type of the output tensor.

Parameters
inputtype of the input tensors

Implements TMVA::Experimental::SOFIE::ROperator.

Definition at line 90 of file ROperator_ConvTranspose.hxx.

Member Data Documentation

◆ fAttrAutopad

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrAutopad
private

Definition at line 28 of file ROperator_ConvTranspose.hxx.

◆ fAttrDilations

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrDilations
private

Definition at line 29 of file ROperator_ConvTranspose.hxx.

◆ fAttrGroup

template<typename T >
size_t TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrGroup
private

Definition at line 30 of file ROperator_ConvTranspose.hxx.

◆ fAttrKernelShape

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrKernelShape
private

Definition at line 31 of file ROperator_ConvTranspose.hxx.

◆ fAttrOutputPadding

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrOutputPadding
private

Definition at line 32 of file ROperator_ConvTranspose.hxx.

◆ fAttrOutputShape

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrOutputShape
private

Definition at line 33 of file ROperator_ConvTranspose.hxx.

◆ fAttrPads

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrPads
private

Definition at line 34 of file ROperator_ConvTranspose.hxx.

◆ fAttrStrides

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fAttrStrides
private

Definition at line 35 of file ROperator_ConvTranspose.hxx.

◆ fDim

template<typename T >
size_t TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fDim
private

Definition at line 50 of file ROperator_ConvTranspose.hxx.

◆ fNB

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fNB
private

Definition at line 39 of file ROperator_ConvTranspose.hxx.

◆ fNBroadcastedB

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fNBroadcastedB
private

Definition at line 40 of file ROperator_ConvTranspose.hxx.

◆ fNW

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fNW
private

Definition at line 38 of file ROperator_ConvTranspose.hxx.

◆ fNX

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fNX
private

Definition at line 37 of file ROperator_ConvTranspose.hxx.

◆ fNY

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fNY
private

Definition at line 41 of file ROperator_ConvTranspose.hxx.

◆ fShapeB

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fShapeB
private

Definition at line 45 of file ROperator_ConvTranspose.hxx.

◆ fShapeW

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fShapeW
private

Definition at line 44 of file ROperator_ConvTranspose.hxx.

◆ fShapeX

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fShapeX
private

Definition at line 43 of file ROperator_ConvTranspose.hxx.

◆ fShapeY

template<typename T >
std::vector<size_t> TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fShapeY
private

Definition at line 46 of file ROperator_ConvTranspose.hxx.

◆ fType

template<typename T >
std::string TMVA::Experimental::SOFIE::ROperator_ConvTranspose< T >::fType
private

Definition at line 48 of file ROperator_ConvTranspose.hxx.

  • tmva/sofie/inc/TMVA/ROperator_ConvTranspose.hxx
  • tmva/sofie/inc/TMVA/ROperator_ConvTranspose.icc