3#if _MSC_VER >= 1900 && defined(_M_X64)
5#include "InternalOptimizerGradientDescent.h"
12 class CComputationalBase;
15 class CComputationalGraphPlaceholder;
18 class CComputationalGraphAugmentationBase;
21 class CClassEqualizerBase;
27 class FL_EXPORT CInternalOptimizerStochasticGradientDescent :
public CInternalOptimizerGradientDescent<T>
30 CInternalOptimizerStochasticGradientDescent();
31 CInternalOptimizerStochasticGradientDescent(
const CInternalOptimizerStochasticGradientDescent<T>& ob);
33 virtual ~CInternalOptimizerStochasticGradientDescent();
35 virtual const CResult
Assign(
const CInternalOptimizerStochasticGradientDescent<T>& ob);
36 virtual const CResult
Assign(
const CInternalOptimizerStochasticGradientDescent<T>* pOb);
38 virtual CInternalOptimizerBase<T>* Clone()
const override;
40 virtual const CResult Initialize()
override;
42 virtual const CResult Fit(T* pClippingThreshold =
nullptr, int32_t* pI32IterationFeedbackFeedback =
nullptr)
override;
43 virtual T Validate(int32_t* pI32Iteration =
nullptr)
override;
45 virtual const CResult SetMiniBatchSize(int64_t i64Size = 0);
46 virtual int64_t GetMiniBatchSize()
const;
48 virtual const CResult SetMiniBatchIteration(int64_t i64Size = 0);
49 virtual int64_t GetMiniBatchIteration()
const;
51 virtual int64_t GetTotalIteration()
const override;
53 virtual const CResult InitializeMiniBatch()
override;
55 virtual const CResult EnableAutoSubdivision(
bool bAutoSubdivision);
56 virtual bool IsAutoSubdivisionEnabled()
const;
58 virtual const CResult EnableIterationMode(
bool bIterationMode);
59 virtual bool IsIterationModeEnabled()
const;
61 virtual const CResult SetSubdivisionMultiplier(int64_t i64SubdivisionMultiplier = 1);
62 virtual int64_t GetSubdivisionMultiplier()
const;
64 DeclareGetClassType();
67 virtual int64_t GetRemainingIteration()
const;
68 virtual const CResult TerminateCurrentIteration();
70 virtual int64_t GetMaxMiniBatchSize()
const;
71 virtual int64_t GetActualMiniBatchSize()
const;
74 bool m_bBatchSizeInitialized;
76 bool m_bAutoSubdivision;
77 bool m_bIterationMode;
78 int64_t m_i64SubdivisionMultiplier;
79 int64_t m_i64IterationSize;
82 friend class CValidatorBase;
85 friend class CValidatorForClassifier;
88 friend class CValidatorForSemanticSegmentation;
91 friend class CValidatorForObjectDetection;
94 friend class COptimizer;
97 typedef CInternalOptimizerStochasticGradientDescent<float> CInternalOptimizerStochasticGradientDescentF;
98 typedef CInternalOptimizerStochasticGradientDescent<double> CInternalOptimizerStochasticGradientDescentD;
100 typedef CInternalOptimizerStochasticGradientDescent<float> CInternalOptimizerSGDF;
101 typedef CInternalOptimizerStochasticGradientDescent<double> CInternalOptimizerSGDD;
103 template <
typename T>
104 using CInternalOptimizerSGD = CInternalOptimizerStochasticGradientDescent<T>;
Definition AlgorithmAIBase.h:18
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.
Definition DefinitionsGUIView3D.h:2930