ArmNN
 22.05.01
LstmDescriptor Struct Reference

An LstmDescriptor for the LstmLayer. More...

#include <Descriptors.hpp>

Inheritance diagram for LstmDescriptor:
BaseDescriptor

Public Member Functions

 LstmDescriptor ()
 
bool operator== (const LstmDescriptor &rhs) const
 
- Public Member Functions inherited from BaseDescriptor
virtual bool IsNull () const
 
virtual ~BaseDescriptor ()=default
 

Public Attributes

uint32_t m_ActivationFunc
 The activation function to use. More...
 
float m_ClippingThresCell
 Clipping threshold value for the cell state. More...
 
float m_ClippingThresProj
 Clipping threshold value for the projection. More...
 
bool m_CifgEnabled
 Enable/disable cifg (coupled input & forget gate). More...
 
bool m_PeepholeEnabled
 Enable/disable peephole. More...
 
bool m_ProjectionEnabled
 Enable/disable the projection layer. More...
 
bool m_LayerNormEnabled
 Enable/disable layer normalization. More...
 
bool m_TimeMajor
 Enable/disable time major. More...
 
float m_InputIntermediateScale
 Input intermediate quantization scale. More...
 
float m_ForgetIntermediateScale
 Forget intermediate quantization scale. More...
 
float m_CellIntermediateScale
 Cell intermediate quantization scale. More...
 
float m_OutputIntermediateScale
 Output intermediate quantization scale. More...
 
int32_t m_HiddenStateZeroPoint
 Hidden State zero point. More...
 
float m_HiddenStateScale
 Hidden State quantization scale. More...
 

Detailed Description

An LstmDescriptor for the LstmLayer.

Definition at line 1083 of file Descriptors.hpp.

Constructor & Destructor Documentation

◆ LstmDescriptor()

LstmDescriptor ( )
inline

Definition at line 1085 of file Descriptors.hpp.

1086  : m_ActivationFunc(1) // 0: None, 1: Relu, 3: Relu6, 4: Tanh, 6: Sigmoid
1087  , m_ClippingThresCell(0.0)
1088  , m_ClippingThresProj(0.0)
1089  , m_CifgEnabled(true)
1090  , m_PeepholeEnabled(false)
1091  , m_ProjectionEnabled(false)
1092  , m_LayerNormEnabled(false)
1093  , m_TimeMajor(false)
1099  , m_HiddenStateScale(0.0)
1100  {}
bool m_ProjectionEnabled
Enable/disable the projection layer.
float m_ClippingThresProj
Clipping threshold value for the projection.
bool m_TimeMajor
Enable/disable time major.
float m_ForgetIntermediateScale
Forget intermediate quantization scale.
int32_t m_HiddenStateZeroPoint
Hidden State zero point.
float m_CellIntermediateScale
Cell intermediate quantization scale.
bool m_PeepholeEnabled
Enable/disable peephole.
float m_InputIntermediateScale
Input intermediate quantization scale.
uint32_t m_ActivationFunc
The activation function to use.
float m_ClippingThresCell
Clipping threshold value for the cell state.
float m_HiddenStateScale
Hidden State quantization scale.
bool m_CifgEnabled
Enable/disable cifg (coupled input & forget gate).
bool m_LayerNormEnabled
Enable/disable layer normalization.
float m_OutputIntermediateScale
Output intermediate quantization scale.

Member Function Documentation

◆ operator==()

bool operator== ( const LstmDescriptor rhs) const
inline

Definition at line 1102 of file Descriptors.hpp.

References LstmDescriptor::m_ActivationFunc, LstmDescriptor::m_CellIntermediateScale, LstmDescriptor::m_CifgEnabled, LstmDescriptor::m_ClippingThresCell, LstmDescriptor::m_ClippingThresProj, LstmDescriptor::m_ForgetIntermediateScale, LstmDescriptor::m_HiddenStateScale, LstmDescriptor::m_HiddenStateZeroPoint, LstmDescriptor::m_InputIntermediateScale, LstmDescriptor::m_LayerNormEnabled, LstmDescriptor::m_OutputIntermediateScale, LstmDescriptor::m_PeepholeEnabled, and LstmDescriptor::m_TimeMajor.

1103  {
1104  return m_ActivationFunc == rhs.m_ActivationFunc &&
1105  m_ClippingThresCell == rhs.m_ClippingThresCell &&
1106  m_ClippingThresProj == rhs.m_ClippingThresProj &&
1107  m_CifgEnabled == rhs.m_CifgEnabled &&
1108  m_PeepholeEnabled == rhs.m_PeepholeEnabled &&
1109  m_LayerNormEnabled == rhs.m_LayerNormEnabled &&
1110  m_TimeMajor == rhs.m_TimeMajor &&
1111  m_InputIntermediateScale == rhs.m_InputIntermediateScale &&
1112  m_ForgetIntermediateScale == rhs.m_ForgetIntermediateScale &&
1113  m_CellIntermediateScale == rhs.m_CellIntermediateScale &&
1114  m_OutputIntermediateScale == rhs.m_OutputIntermediateScale &&
1115  m_HiddenStateZeroPoint == rhs.m_HiddenStateZeroPoint &&
1116  m_HiddenStateScale == rhs.m_HiddenStateScale;
1117  }
float m_ClippingThresProj
Clipping threshold value for the projection.
bool m_TimeMajor
Enable/disable time major.
float m_ForgetIntermediateScale
Forget intermediate quantization scale.
int32_t m_HiddenStateZeroPoint
Hidden State zero point.
float m_CellIntermediateScale
Cell intermediate quantization scale.
bool m_PeepholeEnabled
Enable/disable peephole.
float m_InputIntermediateScale
Input intermediate quantization scale.
uint32_t m_ActivationFunc
The activation function to use.
float m_ClippingThresCell
Clipping threshold value for the cell state.
float m_HiddenStateScale
Hidden State quantization scale.
bool m_CifgEnabled
Enable/disable cifg (coupled input & forget gate).
bool m_LayerNormEnabled
Enable/disable layer normalization.
float m_OutputIntermediateScale
Output intermediate quantization scale.

Member Data Documentation

◆ m_ActivationFunc

◆ m_CellIntermediateScale

float m_CellIntermediateScale

Cell intermediate quantization scale.

Definition at line 1141 of file Descriptors.hpp.

Referenced by LstmDescriptor::operator==().

◆ m_CifgEnabled

bool m_CifgEnabled

Enable/disable cifg (coupled input & forget gate).

Definition at line 1127 of file Descriptors.hpp.

Referenced by TestLstmLayerVisitor::CheckDescriptor(), LstmLayer::CreateWorkload(), UnidirectionalSequenceLstmLayer::CreateWorkload(), RefLstmWorkload::ExecuteAsync(), RefUnidirectionalSequenceLstmWorkload::ExecuteAsync(), LstmLayer::ExecuteStrategy(), UnidirectionalSequenceLstmLayer::ExecuteStrategy(), armnnSerializer::GetFlatBufferArgMinMaxFunction(), IDeserializer::DeserializerImpl::GetLstmDescriptor(), IDeserializer::DeserializerImpl::GetUnidirectionalSequenceLstmDescriptor(), LstmLayer::InferOutputShapes(), RefLayerSupport::IsLstmSupported(), RefLayerSupport::IsUnidirectionalSequenceLstmSupported(), armnn::LstmImpl(), LstmDescriptor::operator==(), StringifyLayerParameters< LstmDescriptor >::Serialize(), TEST_SUITE(), armnn::TEST_SUITE(), UnidirectionalSequenceLstmInt8WithCifgWithPeepholeNoProjectionTest(), UnidirectionalSequenceLstmLayerInt8NoCifgWithPeepholeWithProjectionTest(), UnidirectionalSequenceLstmLayerInt8NoCifgWithPeepholeWithProjectionWithLayerNormTest(), UnidirectionalSequenceLstmLayerInt8Test(), UnidirectionalSequenceLstmLayerInt8TimeMajorTest(), UnidirectionalSequenceLstmLayerNoCifgWithPeepholeWithProjectionTest(), UnidirectionalSequenceLstmLayerNoCifgWithPeepholeWithProjectionWithLayerNormTest(), UnidirectionalSequenceLstmWithCifgWithPeepholeNoProjectionTest(), LstmLayer::ValidateTensorShapesFromInputs(), and UnidirectionalSequenceLstmLayer::ValidateTensorShapesFromInputs().

◆ m_ClippingThresCell

◆ m_ClippingThresProj

◆ m_ForgetIntermediateScale

float m_ForgetIntermediateScale

Forget intermediate quantization scale.

Definition at line 1139 of file Descriptors.hpp.

Referenced by LstmDescriptor::operator==().

◆ m_HiddenStateScale

float m_HiddenStateScale

Hidden State quantization scale.

Definition at line 1147 of file Descriptors.hpp.

Referenced by LstmDescriptor::operator==().

◆ m_HiddenStateZeroPoint

int32_t m_HiddenStateZeroPoint

Hidden State zero point.

Definition at line 1145 of file Descriptors.hpp.

Referenced by LstmDescriptor::operator==().

◆ m_InputIntermediateScale

float m_InputIntermediateScale

Input intermediate quantization scale.

Definition at line 1137 of file Descriptors.hpp.

Referenced by LstmDescriptor::operator==().

◆ m_LayerNormEnabled

◆ m_OutputIntermediateScale

float m_OutputIntermediateScale

Output intermediate quantization scale.

Definition at line 1143 of file Descriptors.hpp.

Referenced by LstmDescriptor::operator==().

◆ m_PeepholeEnabled

◆ m_ProjectionEnabled

◆ m_TimeMajor


The documentation for this struct was generated from the following file: