Smooth-abs activation. More...
#include <smooth-1norm.hpp>
Public Types | |
| typedef ActivationDataAbstractTpl< Scalar > | ActivationDataAbstract |
| typedef ActivationModelAbstractTpl< Scalar > | Base |
| typedef ActivationDataSmooth1NormTpl< Scalar > | Data |
| typedef MathBaseTpl< Scalar > | MathBase |
| typedef MathBase::MatrixXs | MatrixXs |
| typedef MathBase::VectorXs | VectorXs |
| Public Types inherited from ActivationModelAbstractTpl< _Scalar > | |
| typedef ActivationDataAbstractTpl< Scalar > | ActivationDataAbstract |
| typedef MathBaseTpl< Scalar > | MathBase |
| typedef MathBase::MatrixXs | MatrixXs |
| typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
| ActivationModelSmooth1NormTpl (const std::size_t nr, const Scalar eps=Scalar(1.)) | |
| Initialize the smooth-abs activation model. | |
| virtual void | calc (const std::shared_ptr< ActivationDataAbstract > &data, const Eigen::Ref< const VectorXs > &r) override |
| Compute the smooth-abs function. | |
| virtual void | calcDiff (const std::shared_ptr< ActivationDataAbstract > &data, const Eigen::Ref< const VectorXs > &r) override |
| Compute the derivatives of the smooth-abs function. | |
| template<typename NewScalar> | |
| ActivationModelSmooth1NormTpl< NewScalar > | cast () const |
| virtual std::shared_ptr< ActivationDataAbstract > | createData () override |
| Create the smooth-abs activation data. | |
| virtual void | print (std::ostream &os) const override |
| Print relevant information of the smooth-1norm model. | |
| Public Member Functions inherited from ActivationModelAbstractTpl< _Scalar > | |
| ActivationModelAbstractTpl (const std::size_t nr) | |
| std::size_t | get_nr () const |
Public Attributes | |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
| Public Attributes inherited from ActivationModelAbstractTpl< _Scalar > | |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Protected Attributes | |
| Scalar | eps_ |
| < Dimension of the residual vector | |
| std::size_t | nr_ |
| Protected Attributes inherited from ActivationModelAbstractTpl< _Scalar > | |
| std::size_t | nr_ |
Smooth-abs activation.
This activation function describes a smooth representation of an absolute activation (1-norm) for each element of a residual vector, i.e.
![\[\begin{equation} sum^nr_{i=0} \sqrt{\epsilon + \|r_i\|^2} \end{equation} \]](form_34.png)
where 



The computation of the function and it derivatives are carried out in calc() and caldDiff(), respectively.
Definition at line 34 of file smooth-1norm.hpp.
| typedef MathBaseTpl<Scalar> MathBase |
Definition at line 41 of file smooth-1norm.hpp.
| typedef ActivationModelAbstractTpl<Scalar> Base |
Definition at line 42 of file smooth-1norm.hpp.
| typedef ActivationDataAbstractTpl<Scalar> ActivationDataAbstract |
Definition at line 43 of file smooth-1norm.hpp.
| typedef ActivationDataSmooth1NormTpl<Scalar> Data |
Definition at line 44 of file smooth-1norm.hpp.
| typedef MathBase::VectorXs VectorXs |
Definition at line 45 of file smooth-1norm.hpp.
| typedef MathBase::MatrixXs MatrixXs |
Definition at line 46 of file smooth-1norm.hpp.
| inlineexplicit |
Initialize the smooth-abs activation model.
The default eps value is defined as 1.
| [in] | nr | Dimension of the residual vector |
| [in] | eps | Smoothing factor (default: 1.) |
Definition at line 56 of file smooth-1norm.hpp.
| inlineoverridevirtual |
Compute the smooth-abs function.
| [in] | data | Smooth-abs activation data |
| [in] | r | Residual vector ![]() |
Implements ActivationModelAbstractTpl< _Scalar >.
Definition at line 76 of file smooth-1norm.hpp.
| inlineoverridevirtual |
Compute the derivatives of the smooth-abs function.
| [in] | data | Smooth-abs activation data |
| [in] | r | Residual vector ![]() |
Implements ActivationModelAbstractTpl< _Scalar >.
Definition at line 95 of file smooth-1norm.hpp.
| inlineoverridevirtual |
Create the smooth-abs activation data.
Reimplemented from ActivationModelAbstractTpl< _Scalar >.
Definition at line 114 of file smooth-1norm.hpp.
| inline |
Definition at line 119 of file smooth-1norm.hpp.
| inlineoverridevirtual |
Print relevant information of the smooth-1norm model.
| [out] | os | Output stream object |
Reimplemented from ActivationModelAbstractTpl< _Scalar >.
Definition at line 130 of file smooth-1norm.hpp.
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar |
Definition at line 40 of file smooth-1norm.hpp.
| protected |
| protected |
Definition at line 68 of file activation-base.hpp.