GRU< InputDataType, OutputDataType > Class Template Reference

An implementation of a gru network layer. More...

Public Member Functions

 GRU ()
 Create the GRU object. More...

 
 GRU (const size_t inSize, const size_t outSize, const size_t rho=std::numeric_limits< size_t >::max())
 Create the GRU layer object using the specified parameters. More...

 
template
<
typename
eT
>
void Backward (const arma::Mat< eT > &, const arma::Mat< eT > &gy, arma::Mat< eT > &g)
 Ordinary feed backward pass of a neural network, calculating the function f(x) by propagating x backwards trough f. More...

 
OutputDataType const & Delta () const
 Get the delta. More...

 
OutputDataType & Delta ()
 Modify the delta. More...

 
bool Deterministic () const
 The value of the deterministic parameter. More...

 
bool & Deterministic ()
 Modify the value of the deterministic parameter. More...

 
template
<
typename
eT
>
void Forward (const arma::Mat< eT > &input, arma::Mat< eT > &output)
 Ordinary feed forward pass of a neural network, evaluating the function f(x) by propagating the activity forward through f. More...

 
template
<
typename
eT
>
void Gradient (const arma::Mat< eT > &input, const arma::Mat< eT > &, arma::Mat< eT > &)
 
OutputDataType const & Gradient () const
 Get the gradient. More...

 
OutputDataType & Gradient ()
 Modify the gradient. More...

 
size_t InputShape () const
 Get the shape of the input. More...

 
size_t InSize () const
 Get the number of input units. More...

 
std::vector< LayerTypes<> > & Model ()
 Get the model modules. More...

 
OutputDataType const & OutputParameter () const
 Get the output parameter. More...

 
OutputDataType & OutputParameter ()
 Modify the output parameter. More...

 
size_t OutSize () const
 Get the number of output units. More...

 
OutputDataType const & Parameters () const
 Get the parameters. More...

 
OutputDataType & Parameters ()
 Modify the parameters. More...

 
void ResetCell (const size_t size)
 
size_t Rho () const
 Get the maximum number of steps to backpropagate through time (BPTT). More...

 
size_t & Rho ()
 Modify the maximum number of steps to backpropagate through time (BPTT). More...

 
template
<
typename
Archive
>
void serialize (Archive &ar, const uint32_t)
 Serialize the layer. More...

 

Detailed Description


template
<
typename
InputDataType
=
arma::mat
,
typename
OutputDataType
=
arma::mat
>

class mlpack::ann::GRU< InputDataType, OutputDataType >

An implementation of a gru network layer.

This cell can be used in RNN networks.

Template Parameters
InputDataTypeType of the input data (arma::colvec, arma::mat, arma::sp_mat or arma::cube).
OutputDataTypeType of the output data (arma::colvec, arma::mat, arma::sp_mat or arma::cube).

Definition at line 58 of file gru.hpp.

Constructor & Destructor Documentation

◆ GRU() [1/2]

GRU ( )

Create the GRU object.

◆ GRU() [2/2]

GRU ( const size_t  inSize,
const size_t  outSize,
const size_t  rho = std::numeric_limits< size_t >::max() 
)

Create the GRU layer object using the specified parameters.

Parameters
inSizeThe number of input units.
outSizeThe number of output units.
rhoMaximum number of steps to backpropagate through time (BPTT).

Member Function Documentation

◆ Backward()

void Backward ( const arma::Mat< eT > &  ,
const arma::Mat< eT > &  gy,
arma::Mat< eT > &  g 
)

Ordinary feed backward pass of a neural network, calculating the function f(x) by propagating x backwards trough f.

Using the results from the feed forward pass.

Parameters
*(input) The propagated input activation.
gyThe backpropagated error.
gThe calculated gradient.

◆ Delta() [1/2]

OutputDataType const& Delta ( ) const
inline

Get the delta.

Definition at line 140 of file gru.hpp.

◆ Delta() [2/2]

OutputDataType& Delta ( )
inline

Modify the delta.

Definition at line 142 of file gru.hpp.

◆ Deterministic() [1/2]

bool Deterministic ( ) const
inline

The value of the deterministic parameter.

Definition at line 120 of file gru.hpp.

◆ Deterministic() [2/2]

bool& Deterministic ( )
inline

Modify the value of the deterministic parameter.

Definition at line 122 of file gru.hpp.

◆ Forward()

void Forward ( const arma::Mat< eT > &  input,
arma::Mat< eT > &  output 
)

Ordinary feed forward pass of a neural network, evaluating the function f(x) by propagating the activity forward through f.

Parameters
inputInput data used for evaluating the specified function.
outputResulting output activation.

◆ Gradient() [1/3]

void Gradient ( const arma::Mat< eT > &  input,
const arma::Mat< eT > &  ,
arma::Mat< eT > &   
)

◆ Gradient() [2/3]

OutputDataType const& Gradient ( ) const
inline

Get the gradient.

Definition at line 145 of file gru.hpp.

◆ Gradient() [3/3]

OutputDataType& Gradient ( )
inline

Modify the gradient.

Definition at line 147 of file gru.hpp.

◆ InputShape()

size_t InputShape ( ) const
inline

Get the shape of the input.

Definition at line 159 of file gru.hpp.

References GRU< InputDataType, OutputDataType >::serialize().

◆ InSize()

size_t InSize ( ) const
inline

Get the number of input units.

Definition at line 153 of file gru.hpp.

◆ Model()

std::vector<LayerTypes<> >& Model ( )
inline

Get the model modules.

Definition at line 150 of file gru.hpp.

◆ OutputParameter() [1/2]

OutputDataType const& OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 135 of file gru.hpp.

◆ OutputParameter() [2/2]

OutputDataType& OutputParameter ( )
inline

Modify the output parameter.

Definition at line 137 of file gru.hpp.

◆ OutSize()

size_t OutSize ( ) const
inline

Get the number of output units.

Definition at line 156 of file gru.hpp.

◆ Parameters() [1/2]

OutputDataType const& Parameters ( ) const
inline

Get the parameters.

Definition at line 130 of file gru.hpp.

◆ Parameters() [2/2]

OutputDataType& Parameters ( )
inline

Modify the parameters.

Definition at line 132 of file gru.hpp.

◆ ResetCell()

void ResetCell ( const size_t  size)

◆ Rho() [1/2]

size_t Rho ( ) const
inline

Get the maximum number of steps to backpropagate through time (BPTT).

Definition at line 125 of file gru.hpp.

◆ Rho() [2/2]

size_t& Rho ( )
inline

Modify the maximum number of steps to backpropagate through time (BPTT).

Definition at line 127 of file gru.hpp.

◆ serialize()

void serialize ( Archive &  ar,
const uint32_t   
)

Serialize the layer.

Referenced by GRU< InputDataType, OutputDataType >::InputShape().


The documentation for this class was generated from the following file:
  • /home/jenkins-mlpack/mlpack.org/_src/mlpack-git/src/mlpack/methods/ann/layer/gru.hpp