mlpack  master
Public Member Functions | Private Attributes | List of all members
mlpack::ann::LogSoftMax< InputDataType, OutputDataType > Class Template Reference

Implementation of the log softmax layer. More...

Public Member Functions

 LogSoftMax ()
 Create the LogSoftmax object. More...
 
template<typename eT >
void Backward (const arma::Mat< eT > &&input, 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...
 
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...
 
InputDataType & InputParameter () const
 Get the input parameter. More...
 
InputDataType & InputParameter ()
 Modify the input parameter. More...
 
OutputDataType & OutputParameter () const
 Get the output parameter. More...
 
OutputDataType & OutputParameter ()
 Modify the output parameter. More...
 
template<typename Archive >
void Serialize (Archive &, const unsigned int)
 Serialize the layer. More...
 

Private Attributes

OutputDataType delta
 Locally-stored delta object. More...
 
InputDataType inputParameter
 Locally-stored input parameter object. More...
 
OutputDataType outputParameter
 Locally-stored output parameter object. More...
 

Detailed Description

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
class mlpack::ann::LogSoftMax< InputDataType, OutputDataType >

Implementation of the log softmax layer.

The log softmax loss layer computes the multinomial logistic loss of the softmax of its inputs. This layer is meant to be used in combination with the negative log likelihood layer (NegativeLogLikelihoodLayer), which expects that the input contains log-probabilities for each class.

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 36 of file log_softmax.hpp.

Constructor & Destructor Documentation

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::LogSoftMax ( )

Create the LogSoftmax object.

Member Function Documentation

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
template<typename eT >
void mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::Backward ( const arma::Mat< eT > &&  input,
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
inputThe propagated input activation.
gyThe backpropagated error.
gThe calculated gradient.
template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
InputDataType& mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::Delta ( ) const
inline

Get the delta.

Definition at line 79 of file log_softmax.hpp.

References mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::delta.

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
InputDataType& mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::Delta ( )
inline
template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
template<typename InputType , typename OutputType >
void mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::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.
template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
InputDataType& mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::InputParameter ( ) const
inline

Get the input parameter.

Definition at line 69 of file log_softmax.hpp.

References mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::inputParameter.

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
InputDataType& mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::InputParameter ( )
inline

Modify the input parameter.

Definition at line 71 of file log_softmax.hpp.

References mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::inputParameter.

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
OutputDataType& mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::OutputParameter ( ) const
inline

Get the output parameter.

Definition at line 74 of file log_softmax.hpp.

References mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::outputParameter.

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
OutputDataType& mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::OutputParameter ( )
inline

Modify the output parameter.

Definition at line 76 of file log_softmax.hpp.

References mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::outputParameter.

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
template<typename Archive >
void mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::Serialize ( Archive &  ,
const unsigned  int 
)

Member Data Documentation

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
OutputDataType mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::delta
private

Locally-stored delta object.

Definition at line 91 of file log_softmax.hpp.

Referenced by mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::Delta().

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
InputDataType mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::inputParameter
private

Locally-stored input parameter object.

Definition at line 94 of file log_softmax.hpp.

Referenced by mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::InputParameter().

template<typename InputDataType = arma::mat, typename OutputDataType = arma::mat>
OutputDataType mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::outputParameter
private

Locally-stored output parameter object.

Definition at line 97 of file log_softmax.hpp.

Referenced by mlpack::ann::LogSoftMax< InputDataType, OutputDataType >::OutputParameter().


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