Recurrent< InputDataType, OutputDataType, CustomLayers > Class Template Reference

Implementation of the RecurrentLayer class. More...

Public Member Functions

 Recurrent ()
 Default constructor—this will create a Recurrent object that can't be used, so be careful! Make sure to set all the parameters before use. More...

 
 Recurrent (const Recurrent &)
 Copy constructor. More...

 
template
<
typename
StartModuleType
,
typename
InputModuleType
,
typename
FeedbackModuleType
,
typename
TransferModuleType
>
 Recurrent (const StartModuleType &start, const InputModuleType &input, const FeedbackModuleType &feedback, const TransferModuleType &transfer, const size_t rho)
 Create the Recurrent object using the specified modules. 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 > &error, 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...

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

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

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

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

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

 
size_t const & Rho () const
 Get the number of steps to backpropagate through time. 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, typename... CustomLayers>
class mlpack::ann::Recurrent< InputDataType, OutputDataType, CustomLayers >

Implementation of the RecurrentLayer class.

Recurrent layers can be used similarly to feed-forward layers.

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 159 of file layer_types.hpp.

Constructor & Destructor Documentation

◆ Recurrent() [1/3]

Recurrent ( )

Default constructor—this will create a Recurrent object that can't be used, so be careful! Make sure to set all the parameters before use.

◆ Recurrent() [2/3]

Recurrent ( const Recurrent< InputDataType, OutputDataType, CustomLayers > &  )

Copy constructor.

◆ Recurrent() [3/3]

Recurrent ( const StartModuleType &  start,
const InputModuleType &  input,
const FeedbackModuleType &  feedback,
const TransferModuleType &  transfer,
const size_t  rho 
)

Create the Recurrent object using the specified modules.

Parameters
startThe start module.
inputThe input module.
feedbackThe feedback module.
transferThe transfer module.
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 130 of file recurrent.hpp.

◆ Delta() [2/2]

OutputDataType& Delta ( )
inline

Modify the delta.

Definition at line 132 of file recurrent.hpp.

◆ Deterministic() [1/2]

bool Deterministic ( ) const
inline

The value of the deterministic parameter.

Definition at line 115 of file recurrent.hpp.

◆ Deterministic() [2/2]

bool& Deterministic ( )
inline

Modify the value of the deterministic parameter.

Definition at line 117 of file recurrent.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 > &  error,
arma::Mat< eT > &   
)

◆ Gradient() [2/3]

OutputDataType const& Gradient ( ) const
inline

Get the gradient.

Definition at line 135 of file recurrent.hpp.

◆ Gradient() [3/3]

OutputDataType& Gradient ( )
inline

Modify the gradient.

Definition at line 137 of file recurrent.hpp.

◆ InputShape()

size_t InputShape ( ) const

Get the shape of the input.

Referenced by Recurrent< InputDataType, OutputDataType, CustomLayers >::Rho().

◆ Model()

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

Get the model modules.

Definition at line 112 of file recurrent.hpp.

◆ OutputParameter() [1/2]

OutputDataType const& OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 125 of file recurrent.hpp.

◆ OutputParameter() [2/2]

OutputDataType& OutputParameter ( )
inline

Modify the output parameter.

Definition at line 127 of file recurrent.hpp.

◆ Parameters() [1/2]

OutputDataType const& Parameters ( ) const
inline

Get the parameters.

Definition at line 120 of file recurrent.hpp.

◆ Parameters() [2/2]

OutputDataType& Parameters ( )
inline

Modify the parameters.

Definition at line 122 of file recurrent.hpp.

◆ Rho()

size_t const& Rho ( ) const
inline

Get the number of steps to backpropagate through time.

Definition at line 140 of file recurrent.hpp.

References Recurrent< InputDataType, OutputDataType, CustomLayers >::InputShape(), and Recurrent< InputDataType, OutputDataType, CustomLayers >::serialize().

◆ serialize()

void serialize ( Archive &  ar,
const uint32_t   
)

The documentation for this class was generated from the following files:
  • /home/ryan/src/mlpack.org/_src/mlpack-git/src/mlpack/methods/ann/layer/layer_types.hpp
  • /home/ryan/src/mlpack.org/_src/mlpack-git/src/mlpack/methods/ann/layer/recurrent.hpp