ConvNet  1.0
A GPU-based C++ implementation of Convolutional Neural Nets
 All Classes Namespaces Functions Variables
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Optimizer Class Referenceabstract

Base class for all optimizers. More...

#include <optimizer.h>

Inheritance diagram for Optimizer:
LBFGSOptimizer SGDOptimizer

Public Member Functions

 Optimizer (const config::Optimizer &optimizer_config)
 
virtual void AllocateMemory (const int rows, const int cols)
 
virtual bool IsAllocated ()
 
virtual void Optimize (Matrix &gradient, Matrix &parameter)=0
 
virtual void ReduceLearningRate (float factor)
 
virtual void LoadParameters (hid_t file, const string &prefix)
 
virtual void SaveParameters (hid_t file, const string &prefix)
 

Static Public Member Functions

static OptimizerChooseOptimizer (const config::Optimizer &config)
 

Protected Member Functions

float GetDecayedEpsilon () const
 
void ApplyConstraints (Matrix &parameter)
 

Protected Attributes

const config::Optimizer::Decay epsilon_decay_type_
 
float epsilon_
 
float minimum_epsilon_
 
const int epsilon_decay_timescale_
 
const int start_optimization_after_
 
const float l2_decay_
 
const float weight_norm_limit_
 
const float weight_norm_constraint_
 
int step_
 

Detailed Description

Base class for all optimizers.


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