44template <
typename Architecture_t, 
typename Layer_t = VGeneralLayer<Architecture_t>,
 
   45          typename DeepNet_t = TDeepNet<Architecture_t, Layer_t>>
 
   48   using Matrix_t = 
typename Architecture_t::Matrix_t;
 
   49   using Scalar_t = 
typename Architecture_t::Scalar_t;
 
   53   std::vector<std::vector<Matrix_t>>
 
   55   std::vector<std::vector<Matrix_t>>
 
 
   85template <
typename Architecture_t, 
typename Layer_t, 
typename DeepNet_t>
 
   89   std::vector<Layer_t *> &layers = 
deepNet.GetLayers();
 
 
  113template <
typename Architecture_t, 
typename Layer_t, 
typename DeepNet_t>
 
  129   for (
size_t i = 0; i < weights.size(); i++) {
 
 
  135template <
typename Architecture_t, 
typename Layer_t, 
typename DeepNet_t>
 
  151   for (
size_t i = 0; i < 
biases.size(); i++) {
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Stochastic Batch Gradient Descent Optimizer class.
void UpdateWeights(size_t layerIndex, std::vector< Matrix_t > &weights, const std::vector< Matrix_t > &weightGradients)
Update the weights, given the current weight gradients.
~TSGD()=default
Destructor.
Scalar_t fMomentum
The momentum used for training.
typename Architecture_t::Scalar_t Scalar_t
TSGD(Scalar_t learningRate, DeepNet_t &deepNet, Scalar_t momentum)
Constructor.
std::vector< std::vector< Matrix_t > > & GetPastBiasGradients()
std::vector< std::vector< Matrix_t > > fPastBiasGradients
The sum of the past bias gradients associated with the deep net.
std::vector< std::vector< Matrix_t > > & GetPastWeightGradients()
void UpdateBiases(size_t layerIndex, std::vector< Matrix_t > &biases, const std::vector< Matrix_t > &biasGradients)
Update the biases, given the current bias gradients.
std::vector< Matrix_t > & GetPastWeightGradientsAt(size_t i)
std::vector< Matrix_t > & GetPastBiasGradientsAt(size_t i)
std::vector< std::vector< Matrix_t > > fPastWeightGradients
The sum of the past weight gradients associated with the deep net.
typename Architecture_t::Matrix_t Matrix_t
Scalar_t GetMomentum() const
Getters.
create variable transformations