mlpack  3.4.2
Public Member Functions | List of all members
AddMerge< InputDataType, OutputDataType, CustomLayers > Class Template Reference

Implementation of the AddMerge module class. More...

Public Member Functions

 AddMerge (const bool model, const bool run, const bool ownsLayers)
 Create the AddMerge object using the specified parameters. More...
 
 AddMerge (const bool model=false, const bool run=true)
 Create the AddMerge object using the specified parameters. More...
 
 ~AddMerge ()
 Destructor to release allocated memory. More...
 
template<class LayerType , class... Args>
void Add (Args... args)
 
void Add (LayerTypes< CustomLayers... > layer)
 
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...
 
template<typename eT >
void Backward (const arma::Mat< eT > &, const arma::Mat< eT > &gy, arma::Mat< eT > &g, const size_t index)
 This is the overload of Backward() that runs only a specific layer with the given input. More...
 
OutputDataType & Delta ()
 Modify the delta. More...
 
OutputDataType const & Delta () const
 Get the delta. More...
 
template<typename InputType , typename OutputType >
void Forward (const InputType &, OutputType &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 > &gradient)
 
template<typename eT >
void Gradient (const arma::Mat< eT > &input, const arma::Mat< eT > &error, arma::Mat< eT > &gradient, const size_t index)
 
InputDataType & InputParameter ()
 Modify the input parameter. More...
 
InputDataType const & InputParameter () const
 Get the input parameter. More...
 
std::vector< LayerTypes< CustomLayers... > > & Model ()
 Return the model modules. More...
 
OutputDataType & OutputParameter ()
 Modify the output parameter. More...
 
OutputDataType const & OutputParameter () const
 Get the output parameter. More...
 
OutputDataType & Parameters ()
 Modify the parameters. More...
 
OutputDataType const & Parameters () const
 Get the parameters. More...
 
bool & Run ()
 Modify the value of run parameter. More...
 
bool Run () const
 Get the value of run parameter. More...
 
template<typename Archive >
void serialize (Archive &ar, const unsigned int)
 Serialize the layer. More...
 

Detailed Description

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat, typename... CustomLayers>
class mlpack::ann::AddMerge< InputDataType, OutputDataType, CustomLayers >

Implementation of the AddMerge module class.

The AddMerge class accumulates the output of various modules.

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).
CustomLayersAdditional custom layers that can be added.

Definition at line 42 of file add_merge.hpp.

Constructor & Destructor Documentation

◆ AddMerge() [1/2]

AddMerge ( const bool  model = false,
const bool  run = true 
)

Create the AddMerge object using the specified parameters.

Parameters
modelExpose all the network modules.
runCall the Forward/Backward method before the output is merged.

◆ AddMerge() [2/2]

AddMerge ( const bool  model,
const bool  run,
const bool  ownsLayers 
)

Create the AddMerge object using the specified parameters.

Parameters
modelExpose all the network modules.
runCall the Forward/Backward method before the output is merged.
ownsLayersDelete the layers when this is deallocated.

◆ ~AddMerge()

~AddMerge ( )

Destructor to release allocated memory.

Member Function Documentation

◆ Add() [1/2]

void Add ( Args...  args)
inline

Definition at line 137 of file add_merge.hpp.

◆ Add() [2/2]

void Add ( LayerTypes< CustomLayers... >  layer)
inline

Definition at line 144 of file add_merge.hpp.

◆ Backward() [1/2]

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.

◆ Backward() [2/2]

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

This is the overload of Backward() that runs only a specific layer with the given input.

Parameters
*(input) The propagated input activation.
gyThe backpropagated error.
gThe calculated gradient.
indexThe index of the layer to run.

◆ Delta() [1/2]

OutputDataType& Delta ( )
inline

Modify the delta.

Definition at line 159 of file add_merge.hpp.

◆ Delta() [2/2]

OutputDataType const& Delta ( ) const
inline

Get the delta.

Definition at line 157 of file add_merge.hpp.

◆ Forward()

void Forward ( const InputType &  ,
OutputType &  output 
)

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

Parameters
*(input) Input data used for evaluating the specified function.
outputResulting output activation.

◆ Gradient() [1/2]

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

◆ Gradient() [2/2]

void Gradient ( const arma::Mat< eT > &  input,
const arma::Mat< eT > &  error,
arma::Mat< eT > &  gradient,
const size_t  index 
)

◆ InputParameter() [1/2]

InputDataType& InputParameter ( )
inline

Modify the input parameter.

Definition at line 149 of file add_merge.hpp.

◆ InputParameter() [2/2]

InputDataType const& InputParameter ( ) const
inline

Get the input parameter.

Definition at line 147 of file add_merge.hpp.

◆ Model()

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

Return the model modules.

Definition at line 162 of file add_merge.hpp.

◆ OutputParameter() [1/2]

OutputDataType& OutputParameter ( )
inline

Modify the output parameter.

Definition at line 154 of file add_merge.hpp.

◆ OutputParameter() [2/2]

OutputDataType const& OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 152 of file add_merge.hpp.

◆ Parameters() [1/2]

OutputDataType& Parameters ( )
inline

Modify the parameters.

Definition at line 175 of file add_merge.hpp.

◆ Parameters() [2/2]

OutputDataType const& Parameters ( ) const
inline

Get the parameters.

Definition at line 173 of file add_merge.hpp.

◆ Run() [1/2]

bool& Run ( )
inline

Modify the value of run parameter.

Definition at line 180 of file add_merge.hpp.

◆ Run() [2/2]

bool Run ( ) const
inline

Get the value of run parameter.

Definition at line 178 of file add_merge.hpp.

◆ serialize()

void serialize ( Archive &  ar,
const unsigned int   
)

Serialize the layer.


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