ArmNN
 20.02
INetwork Class Referenceabstract

Main network class which provides the interface for building up a neural network. More...

#include <INetwork.hpp>

Inheritance diagram for INetwork:
Network

Public Member Functions

virtual Status PrintGraph ()=0
 
virtual profiling::ProfilingGuid GetGuid () const =0
 
virtual IConnectableLayerAddInputLayer (LayerBindingId id, const char *name=nullptr)=0
 Adds an input layer to the network. More...
 
virtual IConnectableLayerAddArgMinMaxLayer (const ArgMinMaxDescriptor &desc, const char *name=nullptr)=0
 Adds an ArgMinMax layer to the network. More...
 
virtual IConnectableLayerAddComparisonLayer (const ComparisonDescriptor &comparisonDescriptor, const char *name=nullptr)=0
 Add a Comparison layer to the network. More...
 
virtual IConnectableLayerAddConcatLayer (const ConcatDescriptor &concatDescriptor, const char *name=nullptr)=0
 Adds a concatenation layer to the network. More...
 
virtual IConnectableLayerAddConvolution2dLayer (const Convolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name=nullptr)=0
 Adds a 2D convolution layer to the network. More...
 
virtual IConnectableLayerAddConvolution2dLayer (const Convolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const char *name=nullptr)=0
 
virtual IConnectableLayerAddConvolution2dLayer (const Convolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const ConstTensor &biases, const char *name=nullptr)=0
 
virtual IConnectableLayerAddDepthToSpaceLayer (const DepthToSpaceDescriptor &depthToSpaceDescriptor, const char *name=nullptr)=0
 Adds a depth to space layer to the network. More...
 
virtual IConnectableLayerAddDepthwiseConvolution2dLayer (const DepthwiseConvolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name=nullptr)=0
 Adds a 2D depthwise convolution layer to the network. More...
 
virtual IConnectableLayerAddDepthwiseConvolution2dLayer (const DepthwiseConvolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const char *name=nullptr)=0
 
virtual IConnectableLayerAddDepthwiseConvolution2dLayer (const DepthwiseConvolution2dDescriptor &convolution2dDescriptor, const ConstTensor &weights, const ConstTensor &biases, const char *name=nullptr)=0
 
virtual IConnectableLayerAddDequantizeLayer (const char *name=nullptr)=0
 Adds a Dequantize layer to the network. More...
 
virtual IConnectableLayerAddDetectionPostProcessLayer (const DetectionPostProcessDescriptor &descriptor, const ConstTensor &anchors, const char *name=nullptr)=0
 Adds a Detection PostProcess layer to the network. More...
 
virtual IConnectableLayerAddElementwiseUnaryLayer (const ElementwiseUnaryDescriptor &elementwiseUnaryDescriptor, const char *name=nullptr)=0
 Add an ElementwiseUnary layer to the network. More...
 
virtual IConnectableLayerAddFullyConnectedLayer (const FullyConnectedDescriptor &fullyConnectedDescriptor, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name=nullptr)=0
 Adds a fully connected layer to the network. More...
 
virtual IConnectableLayerAddFullyConnectedLayer (const FullyConnectedDescriptor &fullyConnectedDescriptor, const ConstTensor &weights, const char *name=nullptr)=0
 
virtual IConnectableLayerAddFullyConnectedLayer (const FullyConnectedDescriptor &fullyConnectedDescriptor, const ConstTensor &weights, const ConstTensor &biases, const char *name=nullptr)=0
 
virtual IConnectableLayerAddPermuteLayer (const PermuteDescriptor &permuteDescriptor, const char *name=nullptr)=0
 Adds a permute layer to the network. More...
 
virtual IConnectableLayerAddBatchToSpaceNdLayer (const BatchToSpaceNdDescriptor &batchToSpaceNdDescriptor, const char *name=nullptr)=0
 Adds a batch to space ND layer to the network. More...
 
virtual IConnectableLayerAddPooling2dLayer (const Pooling2dDescriptor &pooling2dDescriptor, const char *name=nullptr)=0
 Adds a pooling layer to the network. More...
 
virtual IConnectableLayerAddActivationLayer (const ActivationDescriptor &activationDescriptor, const char *name=nullptr)=0
 Adds an activation layer to the network. More...
 
virtual IConnectableLayerAddNormalizationLayer (const NormalizationDescriptor &normalizationDescriptor, const char *name=nullptr)=0
 Adds a normalization layer to the network. More...
 
virtual IConnectableLayerAddSliceLayer (const SliceDescriptor &sliceDescriptor, const char *name=nullptr)=0
 Adds a slice layer to the network. More...
 
virtual IConnectableLayerAddSoftmaxLayer (const SoftmaxDescriptor &softmaxDescriptor, const char *name=nullptr)=0
 Adds a softmax layer to the network. More...
 
virtual IConnectableLayerAddSplitterLayer (const ViewsDescriptor &splitterDescriptor, const char *name=nullptr)=0
 Adds a splitter layer to the network. More...
 
virtual IConnectableLayerAddMergeLayer (const char *name=nullptr)=0
 Adds a merge layer to the network. More...
 
virtual IConnectableLayerAddMergerLayer (const MergerDescriptor &mergerDescriptor, const char *name=nullptr)=0
 Adds a concat layer to the network. More...
 
virtual IConnectableLayerAddAbsLayer (const char *name=nullptr)=0
 Add absolute layer to the network. More...
 
virtual IConnectableLayerAddAdditionLayer (const char *name=nullptr)=0
 Adds an addition layer to the network. More...
 
virtual IConnectableLayerAddMultiplicationLayer (const char *name=nullptr)=0
 Adds a multiplication layer to the network. More...
 
virtual IConnectableLayerAddBatchNormalizationLayer (const BatchNormalizationDescriptor &desc, const ConstTensor &mean, const ConstTensor &variance, const ConstTensor &beta, const ConstTensor &gamma, const char *name=nullptr)=0
 Adds a batch normalization layer to the network. More...
 
virtual IConnectableLayerAddResizeBilinearLayer (const ResizeBilinearDescriptor &resizeDesc, const char *name=nullptr)=0
 Adds a resize bilinear layer to the network. More...
 
virtual IConnectableLayerAddResizeLayer (const ResizeDescriptor &resizeDescriptor, const char *name=nullptr)=0
 Adds a resize layer to the network. More...
 
virtual IConnectableLayerAddInstanceNormalizationLayer (const InstanceNormalizationDescriptor &desc, const char *name=nullptr)=0
 Adds an instance normalization layer to the network. More...
 
virtual IConnectableLayerAddL2NormalizationLayer (const L2NormalizationDescriptor &desc, const char *name=nullptr)=0
 Adds an L2 normalization layer to the network. More...
 
virtual IConnectableLayerAddLogSoftmaxLayer (const LogSoftmaxDescriptor &logSoftmaxDescriptor, const char *name=nullptr)=0
 Adds a log softmax layer to the network. More...
 
virtual IConnectableLayerAddConstantLayer (const ConstTensor &input, const char *name=nullptr)=0
 Adds a layer with no inputs and a single output, which always corresponds to the passed in constant tensor. More...
 
virtual IConnectableLayerAddReshapeLayer (const ReshapeDescriptor &reshapeDescriptor, const char *name=nullptr)=0
 Adds a reshape layer to the network. More...
 
virtual IConnectableLayerAddSpaceToBatchNdLayer (const SpaceToBatchNdDescriptor &spaceToBatchNdDescriptor, const char *name=nullptr)=0
 Adds a space to batch layer to the network. More...
 
virtual IConnectableLayerAddSpaceToDepthLayer (const SpaceToDepthDescriptor &spaceToDepthDescriptor, const char *name=nullptr)=0
 Adds a space to depth layer to the network. More...
 
virtual IConnectableLayerAddFloorLayer (const char *name=nullptr)=0
 Adds a floor layer to the network. More...
 
virtual IConnectableLayerAddOutputLayer (LayerBindingId id, const char *name=nullptr)=0
 Adds an output layer to the network. More...
 
virtual IConnectableLayerAddLstmLayer (const LstmDescriptor &descriptor, const LstmInputParams &params, const char *name=nullptr)=0
 Add a Lstm layer to the network. More...
 
virtual IConnectableLayerAddDivisionLayer (const char *name=nullptr)=0
 Adds a division layer to the network. More...
 
virtual IConnectableLayerAddSubtractionLayer (const char *name=nullptr)=0
 Adds a subtraction layer to the network. More...
 
virtual IConnectableLayerAddMaximumLayer (const char *name=nullptr)=0
 Add a Maximum layer to the network. More...
 
virtual IConnectableLayerAddMeanLayer (const MeanDescriptor &meanDescriptor, const char *name=nullptr)=0
 Add a Mean layer to the network. More...
 
virtual IConnectableLayerAddPadLayer (const PadDescriptor &padDescriptor, const char *name=nullptr)=0
 Adds a fully pad layer to the network. More...
 
virtual IConnectableLayerAddQuantizeLayer (const char *name=nullptr)=0
 Add a quantize layer to the network. More...
 
virtual IConnectableLayerAddStridedSliceLayer (const StridedSliceDescriptor &stridedSliceDescriptor, const char *name=nullptr)=0
 Adds a strided slice layer to the network. More...
 
virtual IConnectableLayerAddMinimumLayer (const char *name=nullptr)=0
 Add a Minimum layer to the network. More...
 
virtual IConnectableLayerAddGreaterLayer (const char *name=nullptr)=0
 Add a Greater layer to the network. More...
 
virtual IConnectableLayerAddEqualLayer (const char *name=nullptr)=0
 Add a Equal layer to the network. More...
 
virtual IConnectableLayerAddRsqrtLayer (const char *name=nullptr)=0
 Add Reciprocal of square root layer to the network. More...
 
virtual IConnectableLayerAddGatherLayer (const char *name=nullptr)=0
 Add Gather layer to the network. More...
 
virtual IConnectableLayerAddSwitchLayer (const char *name=nullptr)=0
 Adds a switch layer to the network. More...
 
virtual IConnectableLayerAddPreluLayer (const char *name=nullptr)=0
 Adds a PReLU layer to the network. More...
 
virtual IConnectableLayerAddTransposeConvolution2dLayer (const TransposeConvolution2dDescriptor &descriptor, const ConstTensor &weights, const Optional< ConstTensor > &biases, const char *name=nullptr)=0
 Adds a 2D transpose convolution layer to the network. More...
 
virtual IConnectableLayerAddTransposeLayer (const TransposeDescriptor &transposeDescriptor, const char *name=nullptr)=0
 Adds a transpose layer to the network. More...
 
virtual IConnectableLayerAddStackLayer (const StackDescriptor &descriptor, const char *name=nullptr)=0
 Adds a stack layer to the network. More...
 
virtual IConnectableLayerAddStandInLayer (const StandInDescriptor &descriptor, const char *name=nullptr)=0
 Add a stand-in layer for a type unknown to the Arm NN framework. More...
 
virtual IConnectableLayerAddQuantizedLstmLayer (const QuantizedLstmInputParams &params, const char *name=nullptr)=0
 Add a QuantizedLstm layer to the network. More...
 
virtual void Accept (ILayerVisitor &visitor) const =0
 

Static Public Member Functions

static INetworkCreateRaw ()
 
static INetworkPtr Create ()
 
static void Destroy (INetwork *network)
 

Protected Member Functions

 ~INetwork ()
 

Detailed Description

Main network class which provides the interface for building up a neural network.

This object is subsequently required by the IRuntime::Load() method.

Definition at line 105 of file INetwork.hpp.

Constructor & Destructor Documentation

◆ ~INetwork()

~INetwork ( )
inlineprotected

Definition at line 563 of file INetwork.hpp.

563 {}

Member Function Documentation

◆ Accept()

virtual void Accept ( ILayerVisitor visitor) const
pure virtual

Implemented in Network.

Referenced by Serializer::Serialize().

◆ AddAbsLayer()

virtual IConnectableLayer* AddAbsLayer ( const char *  name = nullptr)
pure virtual

Add absolute layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

◆ AddActivationLayer()

virtual IConnectableLayer* AddActivationLayer ( const ActivationDescriptor activationDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds an activation layer to the network.

Parameters
activationDescriptor- ActivationDescriptor to configure the activation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by BOOST_AUTO_TEST_CASE(), armnn::CreateStartOfLeakyReluNetwork(), armnnTfParser::OutputShapeOfExpandDims(), and armnnTfParser::OutputShapeOfSqueeze().

◆ AddAdditionLayer()

virtual IConnectableLayer* AddAdditionLayer ( const char *  name = nullptr)
pure virtual

Adds an addition layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by BOOST_AUTO_TEST_CASE(), armnnTfParser::OutputShapeOfSqueeze(), and TfParser::TfParser().

◆ AddArgMinMaxLayer()

virtual IConnectableLayer* AddArgMinMaxLayer ( const ArgMinMaxDescriptor desc,
const char *  name = nullptr 
)
pure virtual

Adds an ArgMinMax layer to the network.

Parameters
desc- Parameters for the L2 normalization operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddBatchNormalizationLayer()

virtual IConnectableLayer* AddBatchNormalizationLayer ( const BatchNormalizationDescriptor desc,
const ConstTensor mean,
const ConstTensor variance,
const ConstTensor beta,
const ConstTensor gamma,
const char *  name = nullptr 
)
pure virtual

Adds a batch normalization layer to the network.

Parameters
mean- Pre-calculated mean for each channel.
variance- Pre-calculated variance for each channel.
beta- Per-channel additive factor.
gamma- Per-channel multiplicative factor.
Returns
- Interface for configuring the layer.
Parameters
name- Optional name for the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ AddBatchToSpaceNdLayer()

virtual IConnectableLayer* AddBatchToSpaceNdLayer ( const BatchToSpaceNdDescriptor batchToSpaceNdDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a batch to space ND layer to the network.

Parameters
batchToSpaceNdDescriptor- Description of the layer.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddComparisonLayer()

virtual IConnectableLayer* AddComparisonLayer ( const ComparisonDescriptor comparisonDescriptor,
const char *  name = nullptr 
)
pure virtual

Add a Comparison layer to the network.

Parameters
name- Optional name for the layer.
desc- Descriptor for the comparison operation. @ return - Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ AddConcatLayer()

virtual IConnectableLayer* AddConcatLayer ( const ConcatDescriptor concatDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a concatenation layer to the network.

Parameters
concatDescriptor- ConcatDescriptor (synonym for OriginsDescriptor) to configure the concatenation process. Number of Views must be equal to the number of inputs, and their order must match - e.g. first view corresponds to the first input, second view to the second input, etc....
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::CalculatePaddedOutputTensorInfo().

◆ AddConstantLayer()

virtual IConnectableLayer* AddConstantLayer ( const ConstTensor input,
const char *  name = nullptr 
)
pure virtual

Adds a layer with no inputs and a single output, which always corresponds to the passed in constant tensor.

Parameters
input- Tensor to be provided as the only output of the layer. The layer will maintain its own copy of the tensor data, meaning the memory referenced by input can be freed or reused after this function is called.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddConvolution2dLayer() [1/3]

virtual IConnectableLayer* AddConvolution2dLayer ( const Convolution2dDescriptor convolution2dDescriptor,
const ConstTensor weights,
const Optional< ConstTensor > &  biases,
const char *  name = nullptr 
)
pure virtual

Adds a 2D convolution layer to the network.

Parameters
convolution2dDescriptor- Description of the 2D convolution layer.
weights- Tensor for the weights data.
biases- Optional tensor for the bias data. If specified, must match the output tensor shape.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::ConvertTfTensorDataType().

◆ AddConvolution2dLayer() [2/3]

virtual IConnectableLayer* AddConvolution2dLayer ( const Convolution2dDescriptor convolution2dDescriptor,
const ConstTensor weights,
const char *  name = nullptr 
)
pure virtual

Implemented in Network.

◆ AddConvolution2dLayer() [3/3]

virtual IConnectableLayer* AddConvolution2dLayer ( const Convolution2dDescriptor convolution2dDescriptor,
const ConstTensor weights,
const ConstTensor biases,
const char *  name = nullptr 
)
pure virtual

Implemented in Network.

◆ AddDepthToSpaceLayer()

virtual IConnectableLayer* AddDepthToSpaceLayer ( const DepthToSpaceDescriptor depthToSpaceDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a depth to space layer to the network.

Parameters
depthToSpaceDescriptor- Parameters for the depth to space operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddDepthwiseConvolution2dLayer() [1/3]

virtual IConnectableLayer* AddDepthwiseConvolution2dLayer ( const DepthwiseConvolution2dDescriptor convolution2dDescriptor,
const ConstTensor weights,
const Optional< ConstTensor > &  biases,
const char *  name = nullptr 
)
pure virtual

Adds a 2D depthwise convolution layer to the network.

Parameters
convolution2dDescriptor- Description of the 2D depthwise convolution layer.
weights- Tensor for the weights. Expected format: [channelMultiplier, inputChannels, height, width].
biasesOptional tensor for the bias data. If specified, must match the output tensor shape.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::ConvertTfTensorDataType().

◆ AddDepthwiseConvolution2dLayer() [2/3]

virtual IConnectableLayer* AddDepthwiseConvolution2dLayer ( const DepthwiseConvolution2dDescriptor convolution2dDescriptor,
const ConstTensor weights,
const char *  name = nullptr 
)
pure virtual

Implemented in Network.

◆ AddDepthwiseConvolution2dLayer() [3/3]

virtual IConnectableLayer* AddDepthwiseConvolution2dLayer ( const DepthwiseConvolution2dDescriptor convolution2dDescriptor,
const ConstTensor weights,
const ConstTensor biases,
const char *  name = nullptr 
)
pure virtual

Implemented in Network.

◆ AddDequantizeLayer()

virtual IConnectableLayer* AddDequantizeLayer ( const char *  name = nullptr)
pure virtual

Adds a Dequantize layer to the network.

Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddDetectionPostProcessLayer()

virtual IConnectableLayer* AddDetectionPostProcessLayer ( const DetectionPostProcessDescriptor descriptor,
const ConstTensor anchors,
const char *  name = nullptr 
)
pure virtual

Adds a Detection PostProcess layer to the network.

Parameters
descriptor- Description of the Detection PostProcess layer.
anchors- Tensor for anchors.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddDivisionLayer()

virtual IConnectableLayer* AddDivisionLayer ( const char *  name = nullptr)
pure virtual

Adds a division layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddElementwiseUnaryLayer()

virtual IConnectableLayer* AddElementwiseUnaryLayer ( const ElementwiseUnaryDescriptor elementwiseUnaryDescriptor,
const char *  name = nullptr 
)
pure virtual

Add an ElementwiseUnary layer to the network.

Parameters
name- Optional name for the layer.
desc- Descriptor for the elementwiseUnary operation. @ return - Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddEqualLayer()

virtual IConnectableLayer* AddEqualLayer ( const char *  name = nullptr)
pure virtual

Add a Equal layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

◆ AddFloorLayer()

virtual IConnectableLayer* AddFloorLayer ( const char *  name = nullptr)
pure virtual

Adds a floor layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddFullyConnectedLayer() [1/3]

virtual IConnectableLayer* AddFullyConnectedLayer ( const FullyConnectedDescriptor fullyConnectedDescriptor,
const ConstTensor weights,
const Optional< ConstTensor > &  biases,
const char *  name = nullptr 
)
pure virtual

Adds a fully connected layer to the network.

Parameters
fullyConnectedDescriptor- Description of the fully connected layer.
weights- Tensor for the weights data.
biases- Optional tensor for the bias data.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddFullyConnectedLayer() [2/3]

virtual IConnectableLayer* AddFullyConnectedLayer ( const FullyConnectedDescriptor fullyConnectedDescriptor,
const ConstTensor weights,
const char *  name = nullptr 
)
pure virtual

Implemented in Network.

◆ AddFullyConnectedLayer() [3/3]

virtual IConnectableLayer* AddFullyConnectedLayer ( const FullyConnectedDescriptor fullyConnectedDescriptor,
const ConstTensor weights,
const ConstTensor biases,
const char *  name = nullptr 
)
pure virtual

Implemented in Network.

◆ AddGatherLayer()

virtual IConnectableLayer* AddGatherLayer ( const char *  name = nullptr)
pure virtual

Add Gather layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ AddGreaterLayer()

virtual IConnectableLayer* AddGreaterLayer ( const char *  name = nullptr)
pure virtual

Add a Greater layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

◆ AddInputLayer()

virtual IConnectableLayer* AddInputLayer ( LayerBindingId  id,
const char *  name = nullptr 
)
pure virtual

Adds an input layer to the network.

Parameters
id- User generated id to uniquely identify a particular input. The same id needs to be specified. when passing the inputs to the IRuntime::EnqueueWorkload() function.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by BOOST_AUTO_TEST_CASE(), armnn::CreateStartOfLeakyReluNetwork(), and armnnTfParser::OutputShapeOfSqueeze().

◆ AddInstanceNormalizationLayer()

virtual IConnectableLayer* AddInstanceNormalizationLayer ( const InstanceNormalizationDescriptor desc,
const char *  name = nullptr 
)
pure virtual

Adds an instance normalization layer to the network.

Parameters
desc- Parameters for the instance normalization operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddL2NormalizationLayer()

virtual IConnectableLayer* AddL2NormalizationLayer ( const L2NormalizationDescriptor desc,
const char *  name = nullptr 
)
pure virtual

Adds an L2 normalization layer to the network.

Normalization is performed along dimension 1, but requires a 4d input.

Parameters
desc- Parameters for the L2 normalization operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddLogSoftmaxLayer()

virtual IConnectableLayer* AddLogSoftmaxLayer ( const LogSoftmaxDescriptor logSoftmaxDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a log softmax layer to the network.

Parameters
logSoftmaxDescriptor- LogSoftmaxDescriptor to configure the log softmax.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddLstmLayer()

virtual IConnectableLayer* AddLstmLayer ( const LstmDescriptor descriptor,
const LstmInputParams params,
const char *  name = nullptr 
)
pure virtual

Add a Lstm layer to the network.

Parameters
descriptor- Parameters for the Lstm operation
params- Weights and biases for the LSTM cell
name- Optional name for the layer
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddMaximumLayer()

virtual IConnectableLayer* AddMaximumLayer ( const char *  name = nullptr)
pure virtual

Add a Maximum layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddMeanLayer()

virtual IConnectableLayer* AddMeanLayer ( const MeanDescriptor meanDescriptor,
const char *  name = nullptr 
)
pure virtual

Add a Mean layer to the network.

Parameters
meanDescriptor- Parameters for the mean operation.
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddMergeLayer()

virtual IConnectableLayer* AddMergeLayer ( const char *  name = nullptr)
pure virtual

Adds a merge layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddMergerLayer()

virtual IConnectableLayer* AddMergerLayer ( const MergerDescriptor mergerDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a concat layer to the network.

Parameters
mergerDescriptor- MergerDescriptor (synonym for OriginsDescriptor) to configure the concatenation process. Number of Views must be equal to the number of inputs, and their order must match - e.g. first view corresponds to the first input, second view to the second input, etc....
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddMinimumLayer()

virtual IConnectableLayer* AddMinimumLayer ( const char *  name = nullptr)
pure virtual

Add a Minimum layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ AddMultiplicationLayer()

virtual IConnectableLayer* AddMultiplicationLayer ( const char *  name = nullptr)
pure virtual

Adds a multiplication layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddNormalizationLayer()

virtual IConnectableLayer* AddNormalizationLayer ( const NormalizationDescriptor normalizationDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a normalization layer to the network.

Parameters
normalizationDescriptor- NormalizationDescriptor to configure the normalization.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddOutputLayer()

virtual IConnectableLayer* AddOutputLayer ( LayerBindingId  id,
const char *  name = nullptr 
)
pure virtual

Adds an output layer to the network.

Parameters
id- User generated id to uniquely identify a particular output. The same id needs to be specified when passing the outputs to the IRuntime::EnqueueWorkload() function.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by BOOST_AUTO_TEST_CASE(), armnn::CompleteLeakyReluNetwork(), and armnnTfParser::OutputShapeOfSqueeze().

◆ AddPadLayer()

virtual IConnectableLayer* AddPadLayer ( const PadDescriptor padDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a fully pad layer to the network.

Parameters
paddings- n by 2 tensor, where n is the rank of the input tensor, such that paddings[i,0] indicates the amount of padding to add in front of dimonsion i, and paddings[i,1] indicates the amount of padding to add after the end of dimension i
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::CalculatePaddedOutputTensorInfo().

◆ AddPermuteLayer()

virtual IConnectableLayer* AddPermuteLayer ( const PermuteDescriptor permuteDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a permute layer to the network.

Parameters
permuteDescriptor- PermuteDescriptor to configure the permute.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddPooling2dLayer()

virtual IConnectableLayer* AddPooling2dLayer ( const Pooling2dDescriptor pooling2dDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a pooling layer to the network.

Parameters
pooling2dDescriptor- Pooling2dDescriptor to configure the pooling.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddPreluLayer()

virtual IConnectableLayer* AddPreluLayer ( const char *  name = nullptr)
pure virtual

Adds a PReLU layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddQuantizedLstmLayer()

virtual IConnectableLayer* AddQuantizedLstmLayer ( const QuantizedLstmInputParams params,
const char *  name = nullptr 
)
pure virtual

Add a QuantizedLstm layer to the network.

Parameters
params- The weights and biases for the Quantized LSTM cell
name- Optional name for the layer
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddQuantizeLayer()

virtual IConnectableLayer* AddQuantizeLayer ( const char *  name = nullptr)
pure virtual

Add a quantize layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddReshapeLayer()

virtual IConnectableLayer* AddReshapeLayer ( const ReshapeDescriptor reshapeDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a reshape layer to the network.

Parameters
reshapeDescriptor- Parameters for the reshape operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::CalculatePaddedOutputTensorInfo(), armnnTfParser::OutputShapeOfExpandDims(), and armnnTfParser::OutputShapeOfSqueeze().

◆ AddResizeBilinearLayer()

virtual IConnectableLayer* AddResizeBilinearLayer ( const ResizeBilinearDescriptor resizeDesc,
const char *  name = nullptr 
)
pure virtual

Adds a resize bilinear layer to the network.

Parameters
resizeDesc- Parameters for the resize operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddResizeLayer()

virtual IConnectableLayer* AddResizeLayer ( const ResizeDescriptor resizeDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a resize layer to the network.

Parameters
resizeDescriptor- Parameters for the resize operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::CalculatePaddedOutputTensorInfo().

◆ AddRsqrtLayer()

virtual IConnectableLayer* AddRsqrtLayer ( const char *  name = nullptr)
pure virtual

Add Reciprocal of square root layer to the network.

Parameters
name- Optional name for the layer. @ return - Interface for configuring the layer.

Implemented in Network.

◆ AddSliceLayer()

virtual IConnectableLayer* AddSliceLayer ( const SliceDescriptor sliceDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a slice layer to the network.

Parameters
sliceDescriptor- SliceDescriptor to configure the slice operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddSoftmaxLayer()

virtual IConnectableLayer* AddSoftmaxLayer ( const SoftmaxDescriptor softmaxDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a softmax layer to the network.

If the data type is QAsymm8, then the output quantization parameters must have a scale of 1/256 and an offset of 0

Parameters
softmaxDescriptor- SoftmaxDescriptor to configure the softmax.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddSpaceToBatchNdLayer()

virtual IConnectableLayer* AddSpaceToBatchNdLayer ( const SpaceToBatchNdDescriptor spaceToBatchNdDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a space to batch layer to the network.

Parameters
spaceToBatchNdDescriptor- Parameters for the space to batch operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddSpaceToDepthLayer()

virtual IConnectableLayer* AddSpaceToDepthLayer ( const SpaceToDepthDescriptor spaceToDepthDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a space to depth layer to the network.

Parameters
spaceToDepthDescriptor- Parameters for the space to depth operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddSplitterLayer()

virtual IConnectableLayer* AddSplitterLayer ( const ViewsDescriptor splitterDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a splitter layer to the network.

Parameters
splitterDescriptor- ViewsDescriptor to configure the splitting process. Number of Views must be equal to the number of outputs, and their order must match - e.g. first view corresponds to the first output, second view to the second output, etc....
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddStackLayer()

virtual IConnectableLayer* AddStackLayer ( const StackDescriptor descriptor,
const char *  name = nullptr 
)
pure virtual

Adds a stack layer to the network.

Parameters
descriptor- Description of the stack layer.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ AddStandInLayer()

virtual IConnectableLayer* AddStandInLayer ( const StandInDescriptor descriptor,
const char *  name = nullptr 
)
pure virtual

Add a stand-in layer for a type unknown to the Arm NN framework.

Note: Due to the nature of this layer, no validation can be performed by the framework. Furthermore, Any model containing this layer cannot make use of dynamic tensors since the tensor sizes cannot be inferred. - Descriptor for the StandIn layer.

Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddStridedSliceLayer()

virtual IConnectableLayer* AddStridedSliceLayer ( const StridedSliceDescriptor stridedSliceDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a strided slice layer to the network.

Parameters
StridedSliceDescriptor- Parameters for the strided slice operation.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfSqueeze().

◆ AddSubtractionLayer()

virtual IConnectableLayer* AddSubtractionLayer ( const char *  name = nullptr)
pure virtual

Adds a subtraction layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ AddSwitchLayer()

virtual IConnectableLayer* AddSwitchLayer ( const char *  name = nullptr)
pure virtual

Adds a switch layer to the network.

Parameters
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddTransposeConvolution2dLayer()

virtual IConnectableLayer* AddTransposeConvolution2dLayer ( const TransposeConvolution2dDescriptor descriptor,
const ConstTensor weights,
const Optional< ConstTensor > &  biases,
const char *  name = nullptr 
)
pure virtual

Adds a 2D transpose convolution layer to the network.

Parameters
descriptor- Description of the 2D transpose convolution layer.
weights- Tensor for the weights data.
biases- Optional tensor for the bias data.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

◆ AddTransposeLayer()

virtual IConnectableLayer* AddTransposeLayer ( const TransposeDescriptor transposeDescriptor,
const char *  name = nullptr 
)
pure virtual

Adds a transpose layer to the network.

Parameters
transposeDescriptor- TransposeDescriptor to configure the transpose.
name- Optional name for the layer.
Returns
- Interface for configuring the layer.

Implemented in Network.

Referenced by armnnTfParser::OutputShapeOfExpandDims().

◆ Create()

◆ CreateRaw()

armnn::INetwork * CreateRaw ( )
static

Definition at line 44 of file Network.cpp.

Referenced by INetwork::Create().

45 {
46  return new Network();
47 }

◆ Destroy()

void Destroy ( INetwork network)
static

Definition at line 54 of file Network.cpp.

Referenced by INetwork::Create().

55 {
56  delete boost::polymorphic_downcast<Network*>(network);
57 }

◆ GetGuid()

virtual profiling::ProfilingGuid GetGuid ( ) const
pure virtual

Implemented in Network.

◆ PrintGraph()

virtual Status PrintGraph ( )
pure virtual

Implemented in Network.


The documentation for this class was generated from the following files: