18 #ifndef __itkGradientDescentOptimizerv4_h
19 #define __itkGradientDescentOptimizerv4_h
76 template<
typename TInternalComputationValueType>
108 itkSetMacro(LearningRate, TInternalComputationValueType);
111 itkGetConstReferenceMacro(LearningRate, TInternalComputationValueType);
119 itkSetMacro(MaximumStepSizeInPhysicalUnits, TInternalComputationValueType);
122 itkGetConstReferenceMacro(MaximumStepSizeInPhysicalUnits, TInternalComputationValueType);
131 itkSetMacro(DoEstimateLearningRateAtEachIteration,
bool);
132 itkGetConstReferenceMacro(DoEstimateLearningRateAtEachIteration,
bool);
133 itkBooleanMacro(DoEstimateLearningRateAtEachIteration);
143 itkSetMacro(DoEstimateLearningRateOnce,
bool);
144 itkGetConstReferenceMacro(DoEstimateLearningRateOnce,
bool);
145 itkBooleanMacro(DoEstimateLearningRateOnce);
157 itkSetMacro(MinimumConvergenceValue, TInternalComputationValueType);
170 itkGetConstReferenceMacro( ConvergenceValue, TInternalComputationValueType);
183 itkSetMacro(ReturnBestParametersAndValue,
bool);
184 itkGetConstReferenceMacro(ReturnBestParametersAndValue,
bool);
185 itkBooleanMacro(ReturnBestParametersAndValue);
189 virtual void StartOptimization(
bool doOnlyInitialization =
false ) ITK_OVERRIDE;
249 GradientDescentOptimizerv4Template( const
Self & );
250 void operator=( const Self& );
258 #ifndef ITK_MANUAL_INSTANTIATION
259 #include "itkGradientDescentOptimizerv4.hxx"
Superclass::ScalesType ScalesType
TInternalComputationValueType m_LearningRate
virtual void ModifyGradientByScalesOverSubRange(const IndexRangeType &subrange) ITK_OVERRIDE
Light weight base class for most itk classes.
Superclass::IndexRangeType IndexRangeType
TInternalComputationValueType m_ConvergenceValue
Superclass::DerivativeType DerivativeType
Superclass::ParametersType ParametersType
SmartPointer< Self > Pointer
virtual void AdvanceOneStep(void)
Superclass::ScalesType ScalesType
Superclass::ParametersType ParametersType
SmartPointer< const Self > ConstPointer
virtual void PrintSelf(std::ostream &os, Indent indent) const
virtual void StopOptimization(void) ITK_OVERRIDE
GradientDescentOptimizerv4Template Self
unsigned long SizeValueType
GradientDescentOptimizerBasev4Template< TInternalComputationValueType > Superclass
virtual void ResumeOptimization() ITK_OVERRIDE
Superclass::MeasureType MeasureType
Superclass::DerivativeType DerivativeType
virtual void StartOptimization(bool doOnlyInitialization=false) ITK_OVERRIDE
ParametersType m_BestParameters
MeasureType m_CurrentBestValue
virtual void ModifyGradientByLearningRateOverSubRange(const IndexRangeType &subrange) ITK_OVERRIDE
TInternalComputationValueType InternalComputationValueType
virtual void EstimateLearningRate()
Control indentation during Print() invocation.
Superclass::MeasureType MeasureType
TInternalComputationValueType m_MinimumConvergenceValue
Gradient descent optimizer.
DerivativeType m_PreviousGradient
bool m_ReturnBestParametersAndValue
ThreadedIndexedContainerPartitioner::IndexRangeType IndexRangeType
Superclass::StopConditionType StopConditionType