GClasses
GClasses::GActivationAlgebraic Class Reference

An algebraic activation function. (This is a hyperbola divided by x.) More...

#include <GActivation.h>

Inheritance diagram for GClasses::GActivationAlgebraic:
GClasses::GActivationFunction

Public Member Functions

virtual double center ()
 Returns 0.0. More...
 
virtual GActivationFunctionclone ()
 See the comment for GActivationFunction::clone. More...
 
virtual double derivative (double x)
 Returns 1.0/(sqrt(x*x+1))-(x*x)/pow(x*x+1,1.5) More...
 
virtual double halfRange ()
 Returns 1.0. More...
 
virtual double identityBias ()
 Returns 0.0. More...
 
virtual double identityDiag ()
 Returns 1.0. More...
 
virtual double inverse (double y)
 Returns y / (sqrt(1.0 - (y * y))) More...
 
virtual const char * name () const
 Returns the name of this activation function. More...
 
virtual double squash (double x)
 Returns x/(sqrt(x*x+1.0). The result is in the range -1 <= y <= 1. More...
 
- Public Member Functions inherited from GClasses::GActivationFunction
 GActivationFunction ()
 
virtual ~GActivationFunction ()
 
virtual double derivativeOfNet (double net, double activation)
 This computes the derivative of the net value. (Sometimes, such as with GActivationLogistic, it is more efficient to compute this from the activation value, so both are provided.) More...
 
GDomNodeserialize (GDom *pDoc) const
 Serialize this object. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from GClasses::GActivationFunction
static GActivationFunctiondeserialize (GDomNode *pNode)
 Deserialize this object. More...
 

Detailed Description

An algebraic activation function. (This is a hyperbola divided by x.)

Member Function Documentation

virtual double GClasses::GActivationAlgebraic::center ( )
inlinevirtual

Returns 0.0.

Implements GClasses::GActivationFunction.

virtual GActivationFunction* GClasses::GActivationAlgebraic::clone ( )
inlinevirtual
virtual double GClasses::GActivationAlgebraic::derivative ( double  x)
inlinevirtual

Returns 1.0/(sqrt(x*x+1))-(x*x)/pow(x*x+1,1.5)

Implements GClasses::GActivationFunction.

virtual double GClasses::GActivationAlgebraic::halfRange ( )
inlinevirtual

Returns 1.0.

Implements GClasses::GActivationFunction.

virtual double GClasses::GActivationAlgebraic::identityBias ( )
inlinevirtual

Returns 0.0.

Implements GClasses::GActivationFunction.

virtual double GClasses::GActivationAlgebraic::identityDiag ( )
inlinevirtual

Returns 1.0.

Implements GClasses::GActivationFunction.

virtual double GClasses::GActivationAlgebraic::inverse ( double  y)
inlinevirtual

Returns y / (sqrt(1.0 - (y * y)))

Implements GClasses::GActivationFunction.

virtual const char* GClasses::GActivationAlgebraic::name ( ) const
inlinevirtual

Returns the name of this activation function.

Implements GClasses::GActivationFunction.

virtual double GClasses::GActivationAlgebraic::squash ( double  x)
inlinevirtual

Returns x/(sqrt(x*x+1.0). The result is in the range -1 <= y <= 1.

Implements GClasses::GActivationFunction.