Implementation of the Poisson negative log likelihood loss. More...
Public Member Functions | |
| PoissonNLLLoss (const bool logInput=true, const bool full=false, const typename InputDataType::elem_type eps=1e-08, const bool mean=true) | |
| Create the PoissonNLLLoss object. More... | |
template < typename InputType , typename TargetType , typename OutputType > | |
| void | Backward (const InputType &input, const TargetType &target, OutputType &output) |
| Ordinary feed backward pass of a neural network. More... | |
| InputDataType::elem_type | Eps () const |
| Get the value of eps. More... | |
| InputDataType::elem_type & | Eps () |
| Modify the value of eps. More... | |
template < typename InputType , typename TargetType > | |
| InputDataType::elem_type | Forward (const InputType &input, const TargetType &target) |
| Computes the Poisson negative log likelihood Loss. More... | |
| bool | Full () const |
| Get the value of full. More... | |
| bool & | Full () |
| Modify the value of full. More... | |
| InputDataType & | InputParameter () const |
| Get the input parameter. More... | |
| InputDataType & | InputParameter () |
| Modify the input parameter. More... | |
| bool | LogInput () const |
| Get the value of logInput. More... | |
| bool & | LogInput () |
| Modify the value of logInput. More... | |
| bool | Mean () const |
| Get the value of mean. More... | |
| bool & | Mean () |
| Modify the value of mean. More... | |
| OutputDataType & | OutputParameter () const |
| Get the output parameter. More... | |
| OutputDataType & | OutputParameter () |
| Modify the output parameter. More... | |
template < typename Archive > | |
| void | serialize (Archive &ar, const unsigned int) |
| Serialize the layer. More... | |
Implementation of the Poisson negative log likelihood loss.
This loss function expects input for each class. It also expects a class index, in the range between 1 and the number of classes, as target when calling the Forward function.
| 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 36 of file poisson_nll_loss.hpp.
| PoissonNLLLoss | ( | const bool | logInput = true, |
| const bool | full = false, |
||
| const typename InputDataType::elem_type | eps = 1e-08, |
||
| const bool | mean = true |
||
| ) |
Create the PoissonNLLLoss object.
| logInput | If true the loss is computed as , if false then the loss is . |
| full | Boolean value that determines whether to include Stirling's approximation term. |
| eps | A small value to prevent 0 in denominators and logarithms. |
| mean | When true, mean loss is computed otherwise total loss. |
| void Backward | ( | const InputType & | input, |
| const TargetType & | target, | ||
| OutputType & | output | ||
| ) |
Ordinary feed backward pass of a neural network.
The Poisson Negative Log Likelihood loss function expects the input for each class. It expects a class index, in the range between 1 and the number of classes, as target when calling the Forward function.
| input | The propagated input activation. |
| target | The target vector, that contains the class index in the range between 1 and the number of classes. |
| output | The calculated error. |
|
inline |
Get the value of eps.
eps is a small value required to prevent 0 in logarithms and denominators.
Definition at line 108 of file poisson_nll_loss.hpp.
|
inline |
Modify the value of eps.
eps is a small value required to prevent 0 in logarithms and denominators.
Definition at line 111 of file poisson_nll_loss.hpp.
| InputDataType::elem_type Forward | ( | const InputType & | input, |
| const TargetType & | target | ||
| ) |
Computes the Poisson negative log likelihood Loss.
| input | Input data used for evaluating the specified function. |
| target | The target vector, that contains the class index in the range between 1 and the number of classes. |
|
inline |
Get the value of full.
full is a boolean value that determines whether to include Stirling's approximation term.
Definition at line 101 of file poisson_nll_loss.hpp.
|
inline |
Modify the value of full.
full is a boolean value that determines whether to include Stirling's approximation term.
Definition at line 104 of file poisson_nll_loss.hpp.
|
inline |
Get the input parameter.
Definition at line 83 of file poisson_nll_loss.hpp.
|
inline |
Modify the input parameter.
Definition at line 85 of file poisson_nll_loss.hpp.
|
inline |
Get the value of logInput.
logInput is a boolean value that tells if logits are given as input.
Definition at line 94 of file poisson_nll_loss.hpp.
|
inline |
Modify the value of logInput.
logInput is a boolean value that tells if logits are given as input.
Definition at line 97 of file poisson_nll_loss.hpp.
|
inline |
Get the value of mean.
It's a boolean value that tells if mean of the total loss has to be taken.
Definition at line 115 of file poisson_nll_loss.hpp.
|
inline |
Modify the value of mean.
It's a boolean value that tells if mean of the total loss has to be taken.
Definition at line 118 of file poisson_nll_loss.hpp.
References Log::Fatal, and PoissonNLLLoss< InputDataType, OutputDataType >::serialize().
|
inline |
Get the output parameter.
Definition at line 88 of file poisson_nll_loss.hpp.
|
inline |
Modify the output parameter.
Definition at line 90 of file poisson_nll_loss.hpp.
| void serialize | ( | Archive & | ar, |
| const unsigned | int | ||
| ) |
Serialize the layer.
Referenced by PoissonNLLLoss< InputDataType, OutputDataType >::Mean().