SHOGUN  4.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
List of all members | Public Member Functions | Protected Attributes
InverseScalingLearningRate Class Reference

Detailed Description

The implements the inverse scaling learning rate.

The learning rate is computed in the following way:

\[ \frac{\eta_0}{{(a+b \times iter)}^k} \]

where \(\eta_0\) is the initial learning rate, \(a\) is the intercept term, \(b\) is the slope term, \(iter\) is the number of times to call get_learning_rate(), and \(k\) is the exponent term.

Definition at line 53 of file InverseScalingLearningRate.h.

Inheritance diagram for InverseScalingLearningRate:
Inheritance graph
[legend]

Public Member Functions

 InverseScalingLearningRate ()
 
virtual ~InverseScalingLearningRate ()
 
virtual float64_t get_learning_rate (int32_t iter_counter)
 
virtual void set_initial_learning_rate (float64_t initial_learning_rate)
 
virtual void set_exponent (float64_t exponent)
 
virtual void set_slope (float64_t slope)
 
virtual void set_intercept (float64_t intercept)
 
virtual void update_context (CMinimizerContext *context)
 
virtual void load_from_context (CMinimizerContext *context)
 

Protected Attributes

float64_t m_exponent
 
float64_t m_slope
 
float64_t m_intercept
 
float64_t m_initial_learning_rate
 

Constructor & Destructor Documentation

Definition at line 57 of file InverseScalingLearningRate.h.

virtual ~InverseScalingLearningRate ( )
virtual

Definition at line 60 of file InverseScalingLearningRate.h.

Member Function Documentation

virtual float64_t get_learning_rate ( int32_t  iter_counter)
virtual

Get the learning rate for descent direction

Parameters
iter_counterthe number of iterations
Returns
the learning rate (A.K.A step size/length)

Implements LearningRate.

Definition at line 67 of file InverseScalingLearningRate.h.

virtual void load_from_context ( CMinimizerContext context)
virtual

Return a context object which stores mutable variables Usually it is used in serialization.

Returns
a context object

Implements LearningRate.

Definition at line 129 of file InverseScalingLearningRate.h.

virtual void set_exponent ( float64_t  exponent)
virtual

Set the exponent term

Parameters
exponentexponent term should be positive

Definition at line 88 of file InverseScalingLearningRate.h.

virtual void set_initial_learning_rate ( float64_t  initial_learning_rate)
virtual

Set the initial learning rate

Parameters
initial_learning_rateinitial_learning_rate must be positive

Definition at line 77 of file InverseScalingLearningRate.h.

virtual void set_intercept ( float64_t  intercept)
virtual

Set the intercept term

Parameters
interceptintercept term should be positive

Definition at line 108 of file InverseScalingLearningRate.h.

virtual void set_slope ( float64_t  slope)
virtual

Set the slope term

Parameters
slopeslope term should be positive

Definition at line 98 of file InverseScalingLearningRate.h.

virtual void update_context ( CMinimizerContext context)
virtual

Update a context object to store mutable variables

Parameters
contexta context object

Implements LearningRate.

Definition at line 119 of file InverseScalingLearningRate.h.

Member Data Documentation

float64_t m_exponent
protected

exponent

Definition at line 135 of file InverseScalingLearningRate.h.

float64_t m_initial_learning_rate
protected

init_learning_rate

Definition at line 141 of file InverseScalingLearningRate.h.

float64_t m_intercept
protected

intercept

Definition at line 139 of file InverseScalingLearningRate.h.

float64_t m_slope
protected

slope

Definition at line 137 of file InverseScalingLearningRate.h.


The documentation for this class was generated from the following file:

SHOGUN Machine Learning Toolbox - Documentation