![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <itkGradientDescentOptimizer2.h>
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::CostFunctionType | CostFunctionType |
typedef Superclass::DerivativeType | DerivativeType |
typedef Superclass::MeasureType | MeasureType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScaledCostFunctionPointer | ScaledCostFunctionPointer |
typedef Superclass::ScaledCostFunctionType | ScaledCostFunctionType |
typedef Superclass::ScalesType | ScalesType |
typedef GradientDescentOptimizer2 | Self |
enum | StopConditionType { MaximumNumberOfIterations, MetricError, MinimumStepSize } |
typedef ScaledSingleValuedNonLinearOptimizer | Superclass |
![]() | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::CostFunctionType | CostFunctionType |
typedef Superclass::DerivativeType | DerivativeType |
typedef Superclass::MeasureType | MeasureType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef ScaledCostFunctionType::Pointer | ScaledCostFunctionPointer |
typedef ScaledSingleValuedCostFunction | ScaledCostFunctionType |
typedef NonLinearOptimizer::ScalesType | ScalesType |
typedef ScaledSingleValuedNonLinearOptimizer | Self |
typedef SingleValuedNonLinearOptimizer | Superclass |
Public Member Functions | |
virtual void | AdvanceOneStep (void) |
virtual const char * | GetClassName () const |
virtual unsigned int | GetCurrentIteration () const |
virtual const DerivativeType & | GetGradient () |
virtual const double & | GetLearningRate () |
virtual const unsigned long & | GetNumberOfIterations () |
virtual const StopConditionType & | GetStopCondition () |
virtual const double & | GetValue () |
virtual void | MetricErrorResponse (ExceptionObject &err) |
virtual void | ResumeOptimization (void) |
virtual void | SetLearningRate (double _arg) |
virtual void | SetNumberOfIterations (unsigned long _arg) |
virtual void | StartOptimization (void) |
virtual void | StopOptimization (void) |
![]() | |
virtual const ParametersType & | GetCurrentPosition (void) const |
virtual bool | GetMaximize () const |
virtual const ScaledCostFunctionType * | GetScaledCostFunction () |
virtual const ParametersType & | GetScaledCurrentPosition () |
bool | GetUseScales (void) const |
virtual void | InitializeScales (void) |
virtual void | MaximizeOff () |
virtual void | MaximizeOn () |
virtual void | SetCostFunction (CostFunctionType *costFunction) |
virtual void | SetMaximize (bool _arg) |
virtual void | SetUseScales (bool arg) |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static Pointer | New () |
Protected Member Functions | |
GradientDescentOptimizer2 () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
virtual | ~GradientDescentOptimizer2 () |
![]() | |
virtual void | GetScaledDerivative (const ParametersType ¶meters, DerivativeType &derivative) const |
virtual MeasureType | GetScaledValue (const ParametersType ¶meters) const |
virtual void | GetScaledValueAndDerivative (const ParametersType ¶meters, MeasureType &value, DerivativeType &derivative) const |
void | PrintSelf (std::ostream &os, Indent indent) const |
ScaledSingleValuedNonLinearOptimizer () | |
virtual void | SetCurrentPosition (const ParametersType ¶m) |
virtual void | SetScaledCurrentPosition (const ParametersType ¶meters) |
virtual | ~ScaledSingleValuedNonLinearOptimizer () |
Protected Attributes | |
DerivativeType | m_Gradient |
double | m_LearningRate |
StopConditionType | m_StopCondition |
![]() | |
ScaledCostFunctionPointer | m_ScaledCostFunction |
ParametersType | m_ScaledCurrentPosition |
Private Member Functions | |
GradientDescentOptimizer2 (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
unsigned long | m_CurrentIteration |
unsigned long | m_NumberOfIterations |
bool | m_Stop |
double | m_Value |
Implement a gradient descent optimizer.
GradientDescentOptimizer2 implements a simple gradient descent optimizer. At each iteration the current position is updated according to
The learning rate is a fixed scalar defined via SetLearningRate(). The optimizer steps through a user defined number of iterations; no convergence checking is done.
Additionally, user can scale each component of the but setting a scaling vector using method SetScale().
The difference of this class with the itk::GradientDescentOptimizer is that it's based on the ScaledSingleValuedNonLinearOptimizer
Definition at line 49 of file itkGradientDescentOptimizer2.h.
typedef SmartPointer<const Self> itk::GradientDescentOptimizer2::ConstPointer |
Definition at line 57 of file itkGradientDescentOptimizer2.h.
typedef Superclass::CostFunctionType itk::GradientDescentOptimizer2::CostFunctionType |
Definition at line 69 of file itkGradientDescentOptimizer2.h.
Definition at line 68 of file itkGradientDescentOptimizer2.h.
typedef Superclass::MeasureType itk::GradientDescentOptimizer2::MeasureType |
Typedefs inherited from the superclass.
Definition at line 63 of file itkGradientDescentOptimizer2.h.
typedef Superclass::ParametersType itk::GradientDescentOptimizer2::ParametersType |
Definition at line 67 of file itkGradientDescentOptimizer2.h.
typedef SmartPointer<Self> itk::GradientDescentOptimizer2::Pointer |
Definition at line 56 of file itkGradientDescentOptimizer2.h.
typedef Superclass::ScaledCostFunctionPointer itk::GradientDescentOptimizer2::ScaledCostFunctionPointer |
Definition at line 72 of file itkGradientDescentOptimizer2.h.
typedef Superclass::ScaledCostFunctionType itk::GradientDescentOptimizer2::ScaledCostFunctionType |
Definition at line 71 of file itkGradientDescentOptimizer2.h.
typedef Superclass::ScalesType itk::GradientDescentOptimizer2::ScalesType |
Definition at line 70 of file itkGradientDescentOptimizer2.h.
Standard class typedefs.
Definition at line 54 of file itkGradientDescentOptimizer2.h.
Definition at line 55 of file itkGradientDescentOptimizer2.h.
Codes of stopping conditions The MinimumStepSize stopcondition never occurs, but may be implemented in inheriting classes
Enumerator | |
---|---|
MaximumNumberOfIterations | |
MetricError | |
MinimumStepSize |
Definition at line 77 of file itkGradientDescentOptimizer2.h.
|
protected |
|
inlineprotectedvirtual |
Definition at line 126 of file itkGradientDescentOptimizer2.h.
|
private |
|
virtual |
Advance one step following the gradient direction.
Reimplemented in itk::StandardGradientDescentOptimizer.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ScaledSingleValuedNonLinearOptimizer.
Reimplemented in elastix::AdaptiveStochasticGradientDescent< TElastix >, itk::AdaptiveStochasticGradientDescentOptimizer, elastix::StandardGradientDescent< TElastix >, and itk::StandardGradientDescentOptimizer.
|
virtual |
Get the current iteration number.
|
virtual |
Get current gradient.
|
virtual |
Get the learning rate.
|
virtual |
Get the number of iterations.
|
virtual |
Get Stop condition.
|
virtual |
Get the current value.
|
virtual |
Stop optimisation and pass on exception.
|
static |
Method for creation through the object factory.
|
private |
|
protected |
|
virtual |
Resume previously stopped optimization with current parameters
Reimplemented in elastix::AdaptiveStochasticGradientDescent< TElastix >.
|
virtual |
Set the learning rate.
|
virtual |
Set the number of iterations.
|
virtual |
Start optimization.
Reimplemented in elastix::AdaptiveStochasticGradientDescent< TElastix >, elastix::StandardGradientDescent< TElastix >, and itk::StandardGradientDescentOptimizer.
|
virtual |
Stop optimization.
|
private |
Definition at line 142 of file itkGradientDescentOptimizer2.h.
|
protected |
Definition at line 130 of file itkGradientDescentOptimizer2.h.
|
protected |
Definition at line 131 of file itkGradientDescentOptimizer2.h.
|
private |
Definition at line 141 of file itkGradientDescentOptimizer2.h.
|
private |
Definition at line 138 of file itkGradientDescentOptimizer2.h.
|
protected |
Definition at line 132 of file itkGradientDescentOptimizer2.h.
|
private |
Definition at line 139 of file itkGradientDescentOptimizer2.h.
Generated on 05-01-2014 for elastix by ![]() |
![]() |