.. index:: pair: class; QPanda::Variational::Optimizer .. _doxid-class_q_panda_1_1_variational_1_1_optimizer: class QPanda::Variational::Optimizer ==================================== .. toctree:: :hidden: :ref:`Optimizer ` base class. .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class Optimizer { public: // construction :target:`Optimizer`( :ref:`var` lost_function, double learning_rate = 0.01 ); // methods virtual std::unordered_set<:ref:`var`> :target:`get_variables`() = 0; virtual std::unordered_map<:ref:`var`, MatrixXd> :target:`compute_gradients`(std::unordered_set<:ref:`var`>& var_set) = 0; virtual double :target:`get_loss`() = 0; virtual bool :target:`run`( std::unordered_set<:ref:`var`>& leaves, size_t t = 0 ) = 0; }; // direct descendants class :ref:`AdaGradOptimizer`; class :ref:`AdamOptimizer`; class :ref:`MomentumOptimizer`; class :ref:`RMSPropOptimizer`; class :ref:`VanillaGradientDescentOptimizer`;