NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest::WeightOptimizerGradientDescent Class Reference

Base class implementing a gradient descent weight optimizer model. More...

#include <weight_optimizer.h>

Inheritance diagram for nest::WeightOptimizerGradientDescent:
[legend]
Collaboration diagram for nest::WeightOptimizerGradientDescent:
[legend]

Public Member Functions

 WeightOptimizerGradientDescent ()
 Default constructor.
 
 WeightOptimizerGradientDescent (const WeightOptimizerGradientDescent &)=default
 Copy constructor.
 
WeightOptimizerGradientDescent & operator= (const WeightOptimizerGradientDescent &)=delete
 Assignment operator.
 
- Public Member Functions inherited from nest::WeightOptimizer
 WeightOptimizer ()
 Default constructor.
 
virtual ~WeightOptimizer ()
 Destructor.
 
 WeightOptimizer (const WeightOptimizer &)=default
 Copy constructor.
 
WeightOptimizer & operator= (const WeightOptimizer &)=delete
 Assignment operator.
 
virtual void get_status (Dictionary &d) const
 Get parameter dictionary.
 
virtual void set_status (const Dictionary &d)
 Update values in parameter dictionary.
 
double optimized_weight (const WeightOptimizerCommonProperties &cp, const size_t idx_current_update, const double gradient, double weight)
 Return optimized weight based on current weight.
 

Private Member Functions

double optimize_ (const WeightOptimizerCommonProperties &cp, double weight, size_t current_opt_step) override
 Perform specific optimization.
 

Additional Inherited Members

- Protected Attributes inherited from nest::WeightOptimizer
double cumulative_gradient_
 Cumulative gradient over the current batch.
 
size_t optimization_step_
 Current optimization step, whereby optimization happens every batch_size_ steps.
 
double eta_current_
 Synapse-specific learning rate when the history for its upcoming weight update was archived.
 
long n_optimize_
 Number of optimizations.
 

Detailed Description

Base class implementing a gradient descent weight optimizer model.

Constructor & Destructor Documentation

◆ WeightOptimizerGradientDescent() [1/2]

nest::WeightOptimizerGradientDescent::WeightOptimizerGradientDescent ( )

Default constructor.

◆ WeightOptimizerGradientDescent() [2/2]

nest::WeightOptimizerGradientDescent::WeightOptimizerGradientDescent ( const WeightOptimizerGradientDescent &  )
default

Copy constructor.

Member Function Documentation

◆ operator=()

WeightOptimizerGradientDescent & nest::WeightOptimizerGradientDescent::operator= ( const WeightOptimizerGradientDescent &  )
delete

Assignment operator.

◆ optimize_()

double nest::WeightOptimizerGradientDescent::optimize_ ( const WeightOptimizerCommonProperties &  cp,
double  weight,
size_t  current_opt_step 
)
overrideprivatevirtual

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