23 #ifndef MLPACK_METHODS_ANN_LAYER_CELU_HPP 24 #define MLPACK_METHODS_ANN_LAYER_CELU_HPP 57 typename InputDataType = arma::mat,
58 typename OutputDataType = arma::mat
70 CELU(
const double alpha = 1.0);
79 template<
typename InputType,
typename OutputType>
80 void Forward(
const InputType& input, OutputType& output);
91 template<
typename DataType>
92 void Backward(
const DataType& input,
const DataType& gy, DataType& g);
100 OutputDataType
const&
Delta()
const {
return delta; }
102 OutputDataType&
Delta() {
return delta; }
105 double const&
Alpha()
const {
return alpha; }
120 template<
typename Archive>
121 void serialize(Archive& ar,
const uint32_t );
125 OutputDataType delta;
128 OutputDataType outputParameter;
131 arma::mat derivative;
144 #include "celu_impl.hpp" OutputDataType & OutputParameter()
Modify the output parameter.
OutputDataType const & Delta() const
Get the delta.
double & Alpha()
Modify the non zero gradient.
OutputDataType const & OutputParameter() const
Get the output parameter.
Linear algebra utility functions, generally performed on matrices or vectors.
The core includes that mlpack expects; standard C++ includes and Armadillo.
void Backward(const DataType &input, const DataType &gy, DataType &g)
Ordinary feed backward pass of a neural network, calculating the function f(x) by propagating x backw...
OutputDataType & Delta()
Modify the delta.
bool & Deterministic()
Modify the value of deterministic parameter.
void Forward(const InputType &input, OutputType &output)
Ordinary feed forward pass of a neural network, evaluating the function f(x) by propagating the activ...
The CELU activation function, defined by.
size_t WeightSize()
Get size of weights.
CELU(const double alpha=1.0)
Create the CELU object using the specified parameter.
double const & Alpha() const
Get the non zero gradient.
void serialize(Archive &ar, const uint32_t)
Serialize the layer.
bool Deterministic() const
Get the value of deterministic parameter.