Quadratic-flat-log activation. More...
#include <quadratic-flat-log.hpp>
Public Types | |
typedef ActivationDataAbstractTpl< Scalar > | ActivationDataAbstract |
typedef ActivationModelAbstractTpl< Scalar > | Base |
typedef ActivationDataQuadFlatLogTpl< Scalar > | Data |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef MathBase::VectorXs | VectorXs |
![]() | |
typedef ActivationDataAbstractTpl< Scalar > | ActivationDataAbstract |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
ActivationModelQuadFlatLogTpl (const std::size_t nr, const Scalar alpha=Scalar(1.)) | |
virtual void | calc (const std::shared_ptr< ActivationDataAbstract > &data, const Eigen::Ref< const VectorXs > &r) override |
virtual void | calcDiff (const std::shared_ptr< ActivationDataAbstract > &data, const Eigen::Ref< const VectorXs > &r) override |
template<typename NewScalar > | |
ActivationModelQuadFlatLogTpl< NewScalar > | cast () const |
virtual std::shared_ptr< ActivationDataAbstract > | createData () override |
Scalar | get_alpha () const |
virtual void | print (std::ostream &os) const override |
Print relevant information of the quadratic flat-log model. | |
void | set_alpha (const Scalar alpha) |
![]() | |
ActivationModelAbstractTpl (const std::size_t nr) | |
std::size_t | get_nr () const |
Public Attributes | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
![]() | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Additional Inherited Members | |
![]() | |
std::size_t | nr_ |
Quadratic-flat-log activation.
This activation function describes a logarithmic quadratic activation depending on the quadratic norm of a residual vector, i.e.
\[ \begin{equation} log(1 + \|\mathbf{r}\|^2 / \alpha) \end{equation} \]
where \(\alpha\) defines the width of the quadratic basin, \(r\) is the scalar residual, \(nr\) is the dimension of the residual vector.
The computation of the function and it derivatives are carried out in calc()
and caldDiff()
, respectively.
calc()
, calcDiff()
, createData()
Definition at line 33 of file quadratic-flat-log.hpp.
typedef MathBaseTpl<Scalar> MathBase |
Definition at line 40 of file quadratic-flat-log.hpp.
typedef ActivationModelAbstractTpl<Scalar> Base |
Definition at line 41 of file quadratic-flat-log.hpp.
typedef ActivationDataAbstractTpl<Scalar> ActivationDataAbstract |
Definition at line 42 of file quadratic-flat-log.hpp.
typedef ActivationDataQuadFlatLogTpl<Scalar> Data |
Definition at line 43 of file quadratic-flat-log.hpp.
typedef MathBase::VectorXs VectorXs |
Definition at line 44 of file quadratic-flat-log.hpp.
typedef MathBase::MatrixXs MatrixXs |
Definition at line 45 of file quadratic-flat-log.hpp.
|
inlineexplicit |
Definition at line 56 of file quadratic-flat-log.hpp.
|
inlineoverridevirtual |
Implements ActivationModelAbstractTpl< _Scalar >.
Definition at line 71 of file quadratic-flat-log.hpp.
|
inlineoverridevirtual |
Implements ActivationModelAbstractTpl< _Scalar >.
Definition at line 89 of file quadratic-flat-log.hpp.
|
inlineoverridevirtual |
Reimplemented from ActivationModelAbstractTpl< _Scalar >.
Definition at line 109 of file quadratic-flat-log.hpp.
|
inline |
Definition at line 116 of file quadratic-flat-log.hpp.
|
inline |
Definition at line 122 of file quadratic-flat-log.hpp.
|
inline |
Definition at line 123 of file quadratic-flat-log.hpp.
|
inlineoverridevirtual |
Print relevant information of the quadratic flat-log model.
[out] | os | Output stream object |
Reimplemented from ActivationModelAbstractTpl< _Scalar >.
Definition at line 130 of file quadratic-flat-log.hpp.
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar |
Definition at line 39 of file quadratic-flat-log.hpp.