Sequence of recurrent cells. More...
#include <ie_layers.h>


Public Types | |
| enum | Direction { FWD, BWD, BDR } |
| Direction of iteration through sequence dimension. More... | |
Public Types inherited from InferenceEngine::RNNCellBase | |
| enum | CellType { LSTM, GRU, RNN, GRU_LBR } |
| Direct type of recurrent cell (including subtypes) Description of particular cell semantics is in LSTMCell, GRUCell, RNNCell. More... | |
Public Types inherited from InferenceEngine::CNNLayer | |
| using | Ptr = std::shared_ptr< CNNLayer > |
| A shared pointer to CNNLayer. | |
Data Fields | |
| unsigned int | axis = 1 |
| An axis by which iteration is performed axis=0 means first input/output data blob dimension is sequence axis=1 means first input/output data blob dimension is batch. | |
| Direction | direction = FWD |
| Direction of iteration through sequence dimension. | |
Data Fields inherited from InferenceEngine::RNNCellBase | |
| CellType | cellType = LSTM |
| Direct type of recurrent cell (including subtypes) Description of particular cell semantics is in LSTMCell, GRUCell, RNNCell. | |
| int | hidden_size = 0 |
| Size of hidden state data. More... | |
| float | clip = 0.0f |
| Clip data into range [-clip, clip] on input of activations. More... | |
| std::vector< std::string > | activations |
| Activations used inside recurrent cell. More... | |
| std::vector< float > | activation_alpha |
| Alpha parameters of activations. More... | |
| std::vector< float > | activation_beta |
| Beta parameters of activations. More... | |
Data Fields inherited from InferenceEngine::WeightableLayer | |
| Blob::Ptr | _weights |
| A pointer to a weights blob. | |
| Blob::Ptr | _biases |
| A pointer to a biases blob. | |
Data Fields inherited from InferenceEngine::CNNLayer | |
| std::string | name |
| Layer name. | |
| std::string | type |
| Layer type. | |
| Precision | precision |
| Layer base operating precision. | |
| std::vector< DataPtr > | outData |
| A vector of pointers to the output data elements of this layer in the di-graph (order matters) | |
| std::vector< DataWeakPtr > | insData |
| A vector of weak pointers to the input data elements of this layer in the di-graph (order matters) | |
| Ptr | _fusedWith |
| If suggested to fuse - a pointer to the layer which needs to be fused with this layer. | |
| UserValue | userValue |
| Convenience user values to store in this object as extra data. | |
| std::string | affinity |
| Layer affinity set by user. | |
| std::map< std::string, std::string > | params |
| Map of pairs: (parameter name, parameter value) | |
| std::map< std::string, Blob::Ptr > | blobs |
| Map of pairs: (name, weights/biases blob) | |
Additional Inherited Members | |
Public Member Functions inherited from InferenceEngine::WeightableLayer | |
| WeightableLayer (const LayerParams &prms) | |
| A default constructor. Constructs a WeightableLayer instance and initiates layer parameters with the given values. More... | |
Public Member Functions inherited from InferenceEngine::CNNLayer | |
| CNNLayer (const LayerParams &prms) | |
| A constructor. Creates a new CNNLayer instance and initializes layer parameters with the given values. More... | |
| virtual | ~CNNLayer ()=default |
| A virtual destructor. | |
| void | fuse (Ptr &layer) |
| Sets a layer to be fused with. More... | |
| virtual const DataPtr | input () const |
| Returns the first element of the input data for this layer. More... | |
| void | validateLayer () |
| Checks if the input data and layer data are legitimate. | |
| float | GetParamAsFloat (const char *param, float def) const |
| Gets float value for the given parameter. More... | |
| float | GetParamAsFloat (const char *param) const |
| Returns a float value for the given layer parameter. More... | |
| std::vector< float > | GetParamAsFloats (const char *param, std::vector< float > def) const |
| Returns a vector of float values for the given parameter or returns the default value. More... | |
| std::vector< float > | GetParamAsFloats (const char *param) const |
| Returns a vector of float values for the given parameter. More... | |
| int | GetParamAsInt (const char *param, int def) const |
| Returns an integer value for the given parameter or returns the default value. More... | |
| int | GetParamAsInt (const char *param) const |
| Returns an integer value for the given parameter. More... | |
| std::vector< int > | GetParamAsInts (const char *param, std::vector< int > def) const |
| Returns a vector of int values for the given parameter or returns the default value. More... | |
| std::vector< int > | GetParamAsInts (const char *param) const |
| Returns a vector of int values for the given parameter. More... | |
| unsigned int | GetParamAsUInt (const char *param, unsigned int def) const |
| Returns an unsigned integer value for the given parameter or returns the default value. More... | |
| unsigned int | GetParamAsUInt (const char *param) const |
| Returns an unsigned integer value for the given parameter. More... | |
| std::vector< unsigned int > | GetParamAsUInts (const char *param, std::vector< unsigned int > def) const |
| Returns a vector of unsigned int values for the given parameter or returns the default value. More... | |
| std::vector< unsigned int > | GetParamAsUInts (const char *param) const |
| Returns a vector of unsigned int values for the given parameter. More... | |
| bool | GetParamAsBool (const char *param, bool def) const |
| Returns an boolean value for the given parameter. The valid values are (true, false, 1, 0). More... | |
| bool | GetParamsAsBool (const char *param, bool def) const |
| std::string | GetParamAsString (const char *param, const char *def) const |
| Returns a string value for the given parameter or returns the default one. More... | |
| bool | CheckParamPresence (const char *param) const |
| Checks the param presence in the layer. More... | |
| std::string | GetParamAsString (const char *param) const |
| Returns a string value for the given parameter. Throws exception if parameter was not found. More... | |
| std::vector< std::string > | GetParamAsStrings (const char *param, std::vector< std::string > def) const |
Static Public Member Functions inherited from InferenceEngine::CNNLayer | |
| static float | ie_parse_float (const std::string &str) |
| Parse string with float in accordance with IE rules. More... | |
Sequence of recurrent cells.
N - batch size T - sequence size S - state size (=hidden_size) NS - num of state tensors (LSTM=2, GRU/RNN=1) ND - num of direction (BDR=2, WFD/BWD=1)
Inputs: [N,T,D] Xt - input data [ND,N,S] Ht-1 - initial hidden state [ND,N,S] Ct-1 - initial cell state // if NS==2 [N] SL - sequence length (optional input)
Outputs: [ND,N,T,S] Xt - input data [ND,N,S] Ht-1 - initial hidden state [ND,N,S] Ct-1 - initial cell state // if NS==2
NB! if axis==0 batch and sequense dimensions are swapped (N <-> T) for input and output tensors
Weights: