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... | |
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).
InputDataType | Type of the input data (arma::colvec, arma::mat, arma::sp_mat or arma::cube). |
OutputDataType | Type of the output data (arma::colvec, arma::mat, arma::sp_mat or arma::cube). |
Definition at line 38 of file softmax.hpp.
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.
input | The propagated input activation. |
gy | The backpropagated error. |
g | The calculated gradient. |
|
inline |
Get the delta.
Definition at line 79 of file softmax.hpp.
|
inline |
Modify the delta.
Definition at line 81 of file softmax.hpp.
References Softmax< InputDataType, OutputDataType >::serialize().
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.
input | Input data used for evaluating the specified function. |
output | Resulting output activation. |
|
inline |
Get the output parameter.
Definition at line 71 of file softmax.hpp.
|
inline |
Modify the output parameter.
Definition at line 73 of file softmax.hpp.
void serialize | ( | Archive & | , |
const uint32_t | |||
) |
Serialize the layer.
Referenced by Softmax< InputDataType, OutputDataType >::Delta().
|
inline |
Get the size of the weights.
Definition at line 76 of file softmax.hpp.