AddMerge< InputDataType, OutputDataType, CustomLayers > Class Template Reference

Implementation of the AddMerge module class. More...

Public Member Functions

 AddMerge (const bool model=false, const bool run=true)
 Create the AddMerge object using the specified parameters. More...

 
 AddMerge (const bool model, const bool run, const bool ownsLayers)
 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 const & Delta () const
 Get the delta. More...

 
OutputDataType & Delta ()
 Modify 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 const & InputParameter () const
 Get the input parameter. More...

 
InputDataType & InputParameter ()
 Modify the input parameter. More...

 
std::vector< LayerTypes< CustomLayers... > > & Model ()
 Return 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...

 
bool Run () const
 Get the value of run parameter. More...

 
bool & Run ()
 Modify the value of run parameter. 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::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 const& Delta ( ) const
inline

Get the delta.

Definition at line 157 of file add_merge.hpp.

◆ Delta() [2/2]

OutputDataType& Delta ( )
inline

Modify the delta.

Definition at line 159 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 const& InputParameter ( ) const
inline

Get the input parameter.

Definition at line 147 of file add_merge.hpp.

◆ InputParameter() [2/2]

InputDataType& InputParameter ( )
inline

Modify the input parameter.

Definition at line 149 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 const& OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 152 of file add_merge.hpp.

◆ OutputParameter() [2/2]

OutputDataType& OutputParameter ( )
inline

Modify the output parameter.

Definition at line 154 of file add_merge.hpp.

◆ Parameters() [1/2]

OutputDataType const& Parameters ( ) const
inline

Get the parameters.

Definition at line 173 of file add_merge.hpp.

◆ Parameters() [2/2]

OutputDataType& Parameters ( )
inline

Modify the parameters.

Definition at line 175 of file add_merge.hpp.

◆ Run() [1/2]

bool Run ( ) const
inline

Get the value of run parameter.

Definition at line 178 of file add_merge.hpp.

◆ Run() [2/2]

bool& Run ( )
inline

Modify the value of run parameter.

Definition at line 180 of file add_merge.hpp.

References AddMerge< InputDataType, OutputDataType, CustomLayers >::serialize().

◆ serialize()

void serialize ( Archive &  ar,
const uint32_t   
)

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