RMSProp Optimizer class.
This class represents the RMSProp Optimizer with options for applying momentum.
Public Types | |
| using | Matrix_t = typename Architecture_t::Matrix_t | 
| using | Scalar_t = typename Architecture_t::Scalar_t | 
  Public Types inherited from TMVA::DNN::VOptimizer< Architecture_t, Layer_t, DeepNet_t > | |
| using | Matrix_t = typename Architecture_t::Matrix_t | 
| using | Scalar_t = typename Architecture_t::Scalar_t | 
Public Member Functions | |
| TRMSProp (DeepNet_t &deepNet, Scalar_t learningRate=0.001, Scalar_t momentum=0.0, Scalar_t rho=0.9, Scalar_t epsilon=1e-7) | |
| Constructor.   | |
| ~TRMSProp ()=default | |
| Destructor.   | |
| std::vector< std::vector< Matrix_t > > & | GetBiasUpdates () | 
| std::vector< Matrix_t > & | GetBiasUpdatesAt (size_t i) | 
| Scalar_t | GetEpsilon () const | 
| Scalar_t | GetMomentum () const | 
| Getters.   | |
| std::vector< std::vector< Matrix_t > > & | GetPastSquaredBiasGradients () | 
| std::vector< Matrix_t > & | GetPastSquaredBiasGradientsAt (size_t i) | 
| std::vector< std::vector< Matrix_t > > & | GetPastSquaredWeightGradients () | 
| std::vector< Matrix_t > & | GetPastSquaredWeightGradientsAt (size_t i) | 
| Scalar_t | GetRho () const | 
| std::vector< std::vector< Matrix_t > > & | GetWeightUpdates () | 
| std::vector< Matrix_t > & | GetWeightUpdatesAt (size_t i) | 
  Public Member Functions inherited from TMVA::DNN::VOptimizer< Architecture_t, Layer_t, DeepNet_t > | |
| VOptimizer (Scalar_t learningRate, DeepNet_t &deepNet) | |
| Constructor.   | |
| virtual | ~VOptimizer ()=default | 
| Virtual Destructor.   | |
| size_t | GetGlobalStep () const | 
| Layer_t * | GetLayerAt (size_t i) | 
| std::vector< Layer_t * > & | GetLayers () | 
| Scalar_t | GetLearningRate () const | 
| Getters.   | |
| void | IncrementGlobalStep () | 
| Increments the global step.   | |
| void | SetLearningRate (size_t learningRate) | 
| Setters.   | |
| void | Step () | 
| Performs one step of optimization.   | |
Protected Member Functions | |
| void | UpdateBiases (size_t layerIndex, std::vector< Matrix_t > &biases, const std::vector< Matrix_t > &biasGradients) | 
| Update the biases, given the current bias gradients.   | |
| void | UpdateWeights (size_t layerIndex, std::vector< Matrix_t > &weights, const std::vector< Matrix_t > &weightGradients) | 
| Update the weights, given the current weight gradients.   | |
Protected Attributes | |
| std::vector< std::vector< Matrix_t > > | fBiasUpdates | 
| The accumulation of the past Biases for performing updates.   | |
| Scalar_t | fEpsilon | 
| The Smoothing term used to avoid division by zero.   | |
| Scalar_t | fMomentum | 
| The momentum used for training.   | |
| std::vector< std::vector< Matrix_t > > | fPastSquaredBiasGradients | 
| The sum of the square of the past bias gradients associated with the deep net.   | |
| std::vector< std::vector< Matrix_t > > | fPastSquaredWeightGradients | 
| The sum of the square of the past weight gradients associated with the deep net.   | |
| Scalar_t | fRho | 
| The Rho constant used by the optimizer.   | |
| std::vector< std::vector< Matrix_t > > | fWeightUpdates | 
| The accumulation of the past Weights for performing updates.   | |
| std::vector< std::vector< Matrix_t > > | fWorkBiasTensor1 | 
| working tensor used to keep a temporary copy of bias or bias gradients   | |
| std::vector< std::vector< Matrix_t > > | fWorkBiasTensor2 | 
| working tensor used to keep a temporary copy of bias or bias gradients   | |
| std::vector< std::vector< Matrix_t > > | fWorkWeightTensor1 | 
| working tensor used to keep a temporary copy of weights or weight gradients   | |
| std::vector< std::vector< Matrix_t > > | fWorkWeightTensor2 | 
| working tensor used to keep a temporary copy of weights or weight gradients   | |
  Protected Attributes inherited from TMVA::DNN::VOptimizer< Architecture_t, Layer_t, DeepNet_t > | |
| DeepNet_t & | fDeepNet | 
| The reference to the deep net.   | |
| size_t | fGlobalStep | 
| The current global step count during training.   | |
| Scalar_t | fLearningRate | 
| The learning rate used for training.   | |
#include <TMVA/DNN/RMSProp.h>
      
  | 
  default | 
Destructor.
      
  | 
  protectedvirtual | 
Update the biases, given the current bias gradients.
Implements TMVA::DNN::VOptimizer< Architecture_t, Layer_t, DeepNet_t >.
      
  | 
  protectedvirtual | 
Update the weights, given the current weight gradients.
Implements TMVA::DNN::VOptimizer< Architecture_t, Layer_t, DeepNet_t >.