Softmax< InputDataType, OutputDataType > Class Template Reference

Implementation of the Softmax layer. More...

Public Member Functions

 Softmax ()
 Create the Softmax object. More...

 
template
<
typename
eT
>
void Backward (const arma::Mat< eT > &input, 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 through f. More...

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

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

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

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

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

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

 
size_t WeightSize () const
 Get the size of the weights. More...

 

Detailed Description


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

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

Implementation of the Softmax layer.

The softmax function takes as input a vector of K real numbers, and normalizes it into a probability distribution consisting of K probabilities proportional to the exponentials of the input numbers. It should be used for inference only and not with NLL loss (use LogSoftMax instead).

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 38 of file softmax.hpp.

Constructor & Destructor Documentation

◆ Softmax()

Softmax ( )

Create the Softmax object.

Member Function Documentation

◆ Backward()

void Backward ( const arma::Mat< eT > &  input,
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 through f.

Using the results from the feed forward pass.

Parameters
inputThe propagated input activation.
gyThe backpropagated error.
gThe calculated gradient.

◆ Delta() [1/2]

InputDataType& Delta ( ) const
inline

Get the delta.

Definition at line 79 of file softmax.hpp.

◆ Delta() [2/2]

InputDataType& Delta ( )
inline

Modify the delta.

Definition at line 81 of file softmax.hpp.

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

◆ Forward()

void Forward ( const InputType &  input,
OutputType &  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.

◆ OutputParameter() [1/2]

OutputDataType& OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 71 of file softmax.hpp.

◆ OutputParameter() [2/2]

OutputDataType& OutputParameter ( )
inline

Modify the output parameter.

Definition at line 73 of file softmax.hpp.

◆ serialize()

void serialize ( Archive &  ,
const uint32_t   
)

Serialize the layer.

Referenced by Softmax< InputDataType, OutputDataType >::Delta().

◆ WeightSize()

size_t WeightSize ( ) const
inline

Get the size of the weights.

Definition at line 76 of file softmax.hpp.


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