class InferenceEngine::RNNCellBase¶
Overview¶
Base class for recurrent cell layers. More…
#include <ie_layers.h>
class RNNCellBase: public InferenceEngine::WeightableLayer
{
public:
// enums
enum CellType;
// fields
CellType cellType = LSTM;
int hidden_size = 0;
float clip = 0.0f;
std::vector<std::string> activations;
std::vector<float> activation_alpha;
std::vector<float> activation_beta;
// methods
WeightableLayer(const LayerParams& prms);
};
// direct descendants
class GRUCell;
class LSTMCell;
class RNNCell;
class RNNSequenceLayer;
Inherited Members¶
public:
// typedefs
typedef std::shared_ptr<CNNLayer> Ptr;
// fields
std::string name;
std::string type;
Precision precision;
std::vector<DataPtr> outData;
std::vector<DataWeakPtr> insData;
Ptr _fusedWith;
UserValue userValue;
std::string affinity;
std::map<std::string, std::string> params;
std::map<std::string, Blob::Ptr> blobs;
Blob::Ptr _weights;
Blob::Ptr _biases;
// methods
std::shared_ptr<ngraph::Node> getNode() const;
void fuse(Ptr& layer);
virtual const DataPtr input() const;
void parseParams();
float GetParamAsFloat(const char \* param, float def) const;
float GetParamAsFloat(const char \* param) const;
std::vector<float> GetParamAsFloats(const char \* param, std::vector<float> def) const;
std::vector<float> GetParamAsFloats(const char \* param) const;
int GetParamAsInt(const char \* param, int def) const;
int GetParamAsInt(const char \* param) const;
std::vector<int> GetParamAsInts(const char \* param, std::vector<int> def) const;
std::vector<int> GetParamAsInts(const char \* param) const;
unsigned int GetParamAsUInt(const char \* param, unsigned int def) const;
unsigned int GetParamAsUInt(const char \* param) const;
size_t GetParamAsSizeT(const char \* param, size_t def) const;
size_t GetParamAsSizeT(const char \* param) const;
std::vector<unsigned int> GetParamAsUInts(
const char \* param,
std::vector<unsigned int> def
) const;
std::vector<unsigned int> GetParamAsUInts(const char \* param) const;
bool GetParamAsBool(const char \* param, bool def) const;
bool GetParamAsBool(const char \* param) const;
std::string GetParamAsString(const char \* param, const char \* def) const;
bool CheckParamPresence(const char \* param) const;
std::string GetParamAsString(const char \* param) const;
std::string getBoolStrParamAsIntStr(const char \* param) const;
std::vector<std::string> GetParamAsStrings(
const char \* param,
std::vector<std::string> def
) const;
static float ie_parse_float(const std::string& str);
static std::string ie_serialize_float(float value);
CNNLayer(const LayerParams& prms);
CNNLayer(const CNNLayer& other);
Detailed Documentation¶
Base class for recurrent cell layers.
Deprecated Migrate to IR v10 and work with ngraph::Function directly. The method will be removed in 2021.1
Fields¶
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.
In case of batch output state tensor will have shape [N, hidden_size]
float clip = 0.0f
Clip data into range [-clip, clip] on input of activations.
clip==0.0f means no clipping
std::vector<std::string> activations
Activations used inside recurrent cell.
Valid values: sigmoid, tanh, relu
std::vector<float> activation_alpha
Alpha parameters of activations.
Respective to activation list.
std::vector<float> activation_beta
Beta parameters of activations.
Respective to activation list.
Methods¶
WeightableLayer(const LayerParams& prms)
A default constructor. Constructs a WeightableLayer instance and initiates layer parameters with the given values.
Parameters:
prms |
Initial layer parameters |