Linear< InputDataType, OutputDataType, RegularizerType > Class Template Reference

Implementation of the Linear layer class. More...

Public Member Functions

 Linear ()
 Create the Linear object. More...

 
 Linear (const size_t inSize, const size_t outSize, RegularizerType regularizer=RegularizerType())
 Create the Linear layer object using the specified number of units. 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...

 
arma::mat & Bias ()
 Modify the bias weights of the layer. More...

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

 
OutputDataType & Delta ()
 Modify the delta. 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 > &gradient)
 
OutputDataType const & Gradient () const
 Get the gradient. More...

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

 
InputDataType const & InputParameter () const
 Get the input parameter. More...

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

 
size_t InputSize () const
 Get the input size. More...

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

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

 
size_t OutputSize () const
 Get the output size. More...

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

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

 
void Reset ()
 
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
RegularizerType
=
NoRegularizer
>

class mlpack::ann::Linear< InputDataType, OutputDataType, RegularizerType >

Implementation of the Linear layer class.

The Linear class represents a single layer of a neural network.

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

Constructor & Destructor Documentation

◆ Linear() [1/2]

Linear ( )

Create the Linear object.

◆ Linear() [2/2]

Linear ( const size_t  inSize,
const size_t  outSize,
RegularizerType  regularizer = RegularizerType() 
)

Create the Linear layer object using the specified number of units.

Parameters
inSizeThe number of input units.
outSizeThe number of output units.
regularizerThe regularizer to use, optional.

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.

◆ Bias()

arma::mat& Bias ( )
inline

Modify the bias weights of the layer.

Definition at line 128 of file linear.hpp.

References Linear< InputDataType, OutputDataType, RegularizerType >::serialize().

◆ Delta() [1/2]

OutputDataType const& Delta ( ) const
inline

Get the delta.

Definition at line 112 of file linear.hpp.

◆ Delta() [2/2]

OutputDataType& Delta ( )
inline

Modify the delta.

Definition at line 114 of file linear.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 
)

◆ Gradient() [2/3]

OutputDataType const& Gradient ( ) const
inline

Get the gradient.

Definition at line 123 of file linear.hpp.

◆ Gradient() [3/3]

OutputDataType& Gradient ( )
inline

Modify the gradient.

Definition at line 125 of file linear.hpp.

◆ InputParameter() [1/2]

InputDataType const& InputParameter ( ) const
inline

Get the input parameter.

Definition at line 102 of file linear.hpp.

◆ InputParameter() [2/2]

InputDataType& InputParameter ( )
inline

Modify the input parameter.

Definition at line 104 of file linear.hpp.

◆ InputSize()

size_t InputSize ( ) const
inline

Get the input size.

Definition at line 117 of file linear.hpp.

◆ OutputParameter() [1/2]

OutputDataType const& OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 107 of file linear.hpp.

◆ OutputParameter() [2/2]

OutputDataType& OutputParameter ( )
inline

Modify the output parameter.

Definition at line 109 of file linear.hpp.

◆ OutputSize()

size_t OutputSize ( ) const
inline

Get the output size.

Definition at line 120 of file linear.hpp.

◆ Parameters() [1/2]

OutputDataType const& Parameters ( ) const
inline

Get the parameters.

Definition at line 97 of file linear.hpp.

◆ Parameters() [2/2]

OutputDataType& Parameters ( )
inline

Modify the parameters.

Definition at line 99 of file linear.hpp.

◆ Reset()

void Reset ( )

◆ serialize()

void serialize ( Archive &  ar,
const unsigned  int 
)

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