Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TMVA::DNN::RNN::TBasicGRULayer< Architecture_t > Class Template Reference

template<typename Architecture_t>
class TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >

Definition at line 56 of file GRULayer.h.

Public Types

using HelperDescriptor_t = typename Architecture_t::DropoutDescriptor_t
 
using LayerDescriptor_t = typename Architecture_t::RecurrentDescriptor_t
 
using Matrix_t = typename Architecture_t::Matrix_t
 
using RNNDescriptors_t = typename Architecture_t::RNNDescriptors_t
 
using RNNWorkspace_t = typename Architecture_t::RNNWorkspace_t
 
using Scalar_t = typename Architecture_t::Scalar_t
 
using Tensor_t = typename Architecture_t::Tensor_t
 
using TensorDescriptor_t = typename Architecture_t::TensorDescriptor_t
 
using WeightsDescriptor_t = typename Architecture_t::FilterDescriptor_t
 

Public Member Functions

 TBasicGRULayer (const TBasicGRULayer &)
 Copy Constructor.
 
 TBasicGRULayer (size_t batchSize, size_t stateSize, size_t inputSize, size_t timeSteps, bool rememberState=false, bool returnSequence=false, bool resetGateAfter=false, DNN::EActivationFunction f1=DNN::EActivationFunction::kSigmoid, DNN::EActivationFunction f2=DNN::EActivationFunction::kTanh, bool training=true, DNN::EInitialization fA=DNN::EInitialization::kZero)
 Constructor.
 
void AddWeightsXMLTo (void *parent)
 Writes the information and the weights about the layer in an XML node.
 
void Backward (Tensor_t &gradients_backward, const Tensor_t &activations_backward)
 Backpropagates the error.
 
void CandidateValue (const Matrix_t &input, Matrix_t &dc)
 Decides the new candidate values (NN with Tanh)
 
Matrix_tCellBackward (Matrix_t &state_gradients_backward, const Matrix_t &precStateActivations, const Matrix_t &reset_gate, const Matrix_t &update_gate, const Matrix_t &candidate_gate, const Matrix_t &input, Matrix_t &input_gradient, Matrix_t &dr, Matrix_t &du, Matrix_t &dc)
 Backward for a single time unit a the corresponding call to Forward(...).
 
void CellForward (Matrix_t &updateGateValues, Matrix_t &candidateValues)
 Forward for a single cell (time unit)
 
bool DoesRememberState () const
 
bool DoesReturnSequence () const
 
void Forward (Tensor_t &input, bool isTraining=true)
 Computes the next hidden state and next cell state with given input matrix.
 
DNN::EActivationFunction GetActivationFunctionF1 () const
 
DNN::EActivationFunction GetActivationFunctionF2 () const
 
Matrix_tGetCandidateBias ()
 
const Matrix_tGetCandidateBias () const
 
Matrix_tGetCandidateBiasGradients ()
 
const Matrix_tGetCandidateBiasGradients () const
 
Matrix_tGetCandidateDerivativesAt (size_t i)
 
const Matrix_tGetCandidateDerivativesAt (size_t i) const
 
std::vector< Matrix_t > & GetCandidateGateTensor ()
 
const std::vector< Matrix_t > & GetCandidateGateTensor () const
 
Matrix_tGetCandidateGateTensorAt (size_t i)
 
const Matrix_tGetCandidateGateTensorAt (size_t i) const
 
Matrix_tGetCandidateValue ()
 
const Matrix_tGetCandidateValue () const
 
Matrix_tGetCell ()
 
const Matrix_tGetCell () const
 
std::vector< Matrix_t > & GetDerivativesCandidate ()
 
const std::vector< Matrix_t > & GetDerivativesCandidate () const
 
std::vector< Matrix_t > & GetDerivativesReset ()
 
const std::vector< Matrix_t > & GetDerivativesReset () const
 
std::vector< Matrix_t > & GetDerivativesUpdate ()
 
const std::vector< Matrix_t > & GetDerivativesUpdate () const
 
Tensor_tGetDX ()
 
Tensor_tGetDY ()
 
size_t GetInputSize () const
 Getters.
 
Matrix_tGetResetBiasGradients ()
 
const Matrix_tGetResetBiasGradients () const
 
Matrix_tGetResetDerivativesAt (size_t i)
 
const Matrix_tGetResetDerivativesAt (size_t i) const
 
Matrix_tGetResetGateBias ()
 
const Matrix_tGetResetGateBias () const
 
std::vector< Matrix_t > & GetResetGateTensor ()
 
const std::vector< Matrix_t > & GetResetGateTensor () const
 
Matrix_tGetResetGateTensorAt (size_t i)
 
const Matrix_tGetResetGateTensorAt (size_t i) const
 
Matrix_tGetResetGateValue ()
 
const Matrix_tGetResetGateValue () const
 
Matrix_tGetState ()
 
const Matrix_tGetState () const
 
size_t GetStateSize () const
 
size_t GetTimeSteps () const
 
Matrix_tGetUpdateBiasGradients ()
 
const Matrix_tGetUpdateBiasGradients () const
 
Matrix_tGetUpdateDerivativesAt (size_t i)
 
const Matrix_tGetUpdateDerivativesAt (size_t i) const
 
Matrix_tGetUpdateGateBias ()
 
const Matrix_tGetUpdateGateBias () const
 
std::vector< Matrix_t > & GetUpdateGateTensor ()
 
const std::vector< Matrix_t > & GetUpdateGateTensor () const
 
Matrix_tGetUpdateGateTensorAt (size_t i)
 
const Matrix_tGetUpdateGateTensorAt (size_t i) const
 
Matrix_tGetUpdateGateValue ()
 
const Matrix_tGetUpdateGateValue () const
 
Tensor_tGetWeightGradientsTensor ()
 
const Tensor_tGetWeightGradientsTensor () const
 
Matrix_tGetWeightsCandidate ()
 
const Matrix_tGetWeightsCandidate () const
 
Matrix_tGetWeightsCandidateGradients ()
 
const Matrix_tGetWeightsCandidateGradients () const
 
Matrix_tGetWeightsCandidateState ()
 
const Matrix_tGetWeightsCandidateState () const
 
Matrix_tGetWeightsCandidateStateGradients ()
 
const Matrix_tGetWeightsCandidateStateGradients () const
 
Matrix_tGetWeightsResetGate ()
 
const Matrix_tGetWeightsResetGate () const
 
Matrix_tGetWeightsResetGateState ()
 
const Matrix_tGetWeightsResetGateState () const
 
Matrix_tGetWeightsResetGradients ()
 
const Matrix_tGetWeightsResetGradients () const
 
Matrix_tGetWeightsResetStateGradients ()
 
const Matrix_tGetWeightsResetStateGradients () const
 
Tensor_tGetWeightsTensor ()
 
const Tensor_tGetWeightsTensor () const
 
Matrix_tGetWeightsUpdateGate ()
 
const Matrix_tGetWeightsUpdateGate () const
 
Matrix_tGetWeightsUpdateGateState ()
 
const Matrix_tGetWeightsUpdateGateState () const
 
Matrix_tGetWeightsUpdateGradients ()
 
const Matrix_tGetWeightsUpdateGradients () const
 
Matrix_tGetWeightsUpdateStateGradients ()
 
const Matrix_tGetWeigthsUpdateStateGradients () const
 
Tensor_tGetX ()
 
Tensor_tGetY ()
 
virtual void Initialize ()
 Initialize the weights according to the given initialization method.
 
void InitState (DNN::EInitialization m=DNN::EInitialization::kZero)
 Initialize the hidden state and cell state method.
 
void Print () const
 Prints the info about the layer.
 
void ReadWeightsFromXML (void *parent)
 Read the information and the weights about the layer from XML node.
 
void ResetGate (const Matrix_t &input, Matrix_t &di)
 Decides the values we'll update (NN with Sigmoid)
 
void Update (const Scalar_t learningRate)
 
void UpdateGate (const Matrix_t &input, Matrix_t &df)
 Forgets the past values (NN with Sigmoid)
 
- Public Member Functions inherited from TMVA::DNN::VGeneralLayer< Architecture_t >
 VGeneralLayer (const VGeneralLayer &)
 Copy Constructor.
 
 VGeneralLayer (size_t BatchSize, size_t InputDepth, size_t InputHeight, size_t InputWidth, size_t Depth, size_t Height, size_t Width, size_t WeightsNSlices, size_t WeightsNRows, size_t WeightsNCols, size_t BiasesNSlices, size_t BiasesNRows, size_t BiasesNCols, size_t OutputNSlices, size_t OutputNRows, size_t OutputNCols, EInitialization Init)
 Constructor.
 
 VGeneralLayer (size_t BatchSize, size_t InputDepth, size_t InputHeight, size_t InputWidth, size_t Depth, size_t Height, size_t Width, size_t WeightsNSlices, std::vector< size_t > WeightsNRows, std::vector< size_t > WeightsNCols, size_t BiasesNSlices, std::vector< size_t > BiasesNRows, std::vector< size_t > BiasesNCols, size_t OutputNSlices, size_t OutputNRows, size_t OutputNCols, EInitialization Init)
 General Constructor with different weights dimension.
 
 VGeneralLayer (VGeneralLayer< Architecture_t > *layer)
 Copy the layer provided as a pointer.
 
virtual ~VGeneralLayer ()
 Virtual Destructor.
 
void CopyBiases (const std::vector< Matrix_t > &otherBiases)
 Copies the biases provided as an input.
 
template<typename Arch >
void CopyParameters (const VGeneralLayer< Arch > &layer)
 Copy all trainable weight and biases from another equivalent layer but with different architecture The function can copy also extra parameters in addition to weights and biases if they are return by the function GetExtraLayerParameters.
 
void CopyWeights (const std::vector< Matrix_t > &otherWeights)
 Copies the weights provided as an input.
 
Tensor_tGetActivationGradients ()
 
const Tensor_tGetActivationGradients () const
 
Matrix_t GetActivationGradientsAt (size_t i)
 
const Matrix_tGetActivationGradientsAt (size_t i) const
 
size_t GetBatchSize () const
 Getters.
 
std::vector< Matrix_t > & GetBiases ()
 
const std::vector< Matrix_t > & GetBiases () const
 
Matrix_tGetBiasesAt (size_t i)
 
const Matrix_tGetBiasesAt (size_t i) const
 
std::vector< Matrix_t > & GetBiasGradients ()
 
const std::vector< Matrix_t > & GetBiasGradients () const
 
Matrix_tGetBiasGradientsAt (size_t i)
 
const Matrix_tGetBiasGradientsAt (size_t i) const
 
size_t GetDepth () const
 
virtual std::vector< Matrix_tGetExtraLayerParameters () const
 
size_t GetHeight () const
 
EInitialization GetInitialization () const
 
size_t GetInputDepth () const
 
size_t GetInputHeight () const
 
size_t GetInputWidth () const
 
Tensor_tGetOutput ()
 
const Tensor_tGetOutput () const
 
Matrix_t GetOutputAt (size_t i)
 
const Matrix_tGetOutputAt (size_t i) const
 
std::vector< Matrix_t > & GetWeightGradients ()
 
const std::vector< Matrix_t > & GetWeightGradients () const
 
Matrix_tGetWeightGradientsAt (size_t i)
 
const Matrix_tGetWeightGradientsAt (size_t i) const
 
std::vector< Matrix_t > & GetWeights ()
 
const std::vector< Matrix_t > & GetWeights () const
 
Matrix_tGetWeightsAt (size_t i)
 
const Matrix_tGetWeightsAt (size_t i) const
 
size_t GetWidth () const
 
bool IsTraining () const
 
void ReadMatrixXML (void *node, const char *name, Matrix_t &matrix)
 
virtual void ResetTraining ()
 Reset some training flags after a loop on all batches Some layer (e.g.
 
void SetBatchSize (size_t batchSize)
 Setters.
 
void SetDepth (size_t depth)
 
virtual void SetDropoutProbability (Scalar_t)
 Set Dropout probability.
 
virtual void SetExtraLayerParameters (const std::vector< Matrix_t > &)
 
void SetHeight (size_t height)
 
void SetInputDepth (size_t inputDepth)
 
void SetInputHeight (size_t inputHeight)
 
void SetInputWidth (size_t inputWidth)
 
void SetIsTraining (bool isTraining)
 
void SetWidth (size_t width)
 
void Update (const Scalar_t learningRate)
 Updates the weights and biases, given the learning rate.
 
void UpdateBiases (const std::vector< Matrix_t > &biasGradients, const Scalar_t learningRate)
 Updates the biases, given the gradients and the learning rate.
 
void UpdateBiasGradients (const std::vector< Matrix_t > &biasGradients, const Scalar_t learningRate)
 Updates the bias gradients, given some other weight gradients and learning rate.
 
void UpdateWeightGradients (const std::vector< Matrix_t > &weightGradients, const Scalar_t learningRate)
 Updates the weight gradients, given some other weight gradients and learning rate.
 
void UpdateWeights (const std::vector< Matrix_t > &weightGradients, const Scalar_t learningRate)
 Updates the weights, given the gradients and the learning rate,.
 
void WriteMatrixToXML (void *node, const char *name, const Matrix_t &matrix)
 
void WriteTensorToXML (void *node, const char *name, const std::vector< Matrix_t > &tensor)
 helper functions for XML
 

Private Attributes

std::vector< Matrix_tcandidate_gate_value
 Candidate gate value for every time step.
 
Matrix_tfCandidateBias
 Candidate Gate bias.
 
Matrix_tfCandidateBiasGradients
 Gradients w.r.t the candidate gate - bias weights.
 
Matrix_t fCandidateValue
 Computed candidate values.
 
Matrix_t fCell
 Empty matrix for GRU.
 
std::vector< Matrix_tfDerivativesCandidate
 First fDerivatives of the activations candidate gate.
 
std::vector< Matrix_tfDerivativesReset
 First fDerivatives of the activations reset gate.
 
std::vector< Matrix_tfDerivativesUpdate
 First fDerivatives of the activations update gate.
 
TDescriptorsfDescriptors = nullptr
 Keeps all the RNN descriptors.
 
Tensor_t fDx
 cached gradient on the input (output of backward) as T x B x I
 
Tensor_t fDy
 cached activation gradient (input of backward) as T x B x S
 
DNN::EActivationFunction fF1
 Activation function: sigmoid.
 
DNN::EActivationFunction fF2
 Activation function: tanh.
 
bool fRememberState
 Remember state in next pass.
 
Matrix_tfResetBiasGradients
 Gradients w.r.t the reset gate - bias weights.
 
bool fResetGateAfter = false
 GRU variant to Apply the reset gate multiplication afterwards (used by cuDNN)
 
Matrix_tfResetGateBias
 Input Gate bias.
 
Matrix_t fResetValue
 Computed reset gate values.
 
bool fReturnSequence = false
 Return in output full sequence or just last element.
 
Matrix_t fState
 Hidden state of GRU.
 
size_t fStateSize
 Hidden state size for GRU.
 
size_t fTimeSteps
 Timesteps for GRU.
 
Matrix_tfUpdateBiasGradients
 Gradients w.r.t the update gate - bias weights.
 
Matrix_tfUpdateGateBias
 Update Gate bias.
 
Matrix_t fUpdateValue
 Computed forget gate values.
 
Tensor_t fWeightGradientsTensor
 Tensor for all weight gradients.
 
Matrix_tfWeightsCandidate
 Candidate Gate weights for input, fWeights[4].
 
Matrix_tfWeightsCandidateGradients
 Gradients w.r.t the candidate gate - input weights.
 
Matrix_tfWeightsCandidateState
 Candidate Gate weights for prev state, fWeights[5].
 
Matrix_tfWeightsCandidateStateGradients
 Gradients w.r.t the candidate gate - hidden state weights.
 
Matrix_tfWeightsResetGate
 Reset Gate weights for input, fWeights[0].
 
Matrix_tfWeightsResetGateState
 Input Gate weights for prev state, fWeights[1].
 
Matrix_tfWeightsResetGradients
 Gradients w.r.t the reset gate - input weights.
 
Matrix_tfWeightsResetStateGradients
 Gradients w.r.t the reset gate - hidden state weights.
 
Tensor_t fWeightsTensor
 Tensor for all weights.
 
Matrix_tfWeightsUpdateGate
 Update Gate weights for input, fWeights[2].
 
Matrix_tfWeightsUpdateGateState
 Update Gate weights for prev state, fWeights[3].
 
Matrix_tfWeightsUpdateGradients
 Gradients w.r.t the update gate - input weights.
 
Matrix_tfWeightsUpdateStateGradients
 Gradients w.r.t the update gate - hidden state weights.
 
TWorkspacefWorkspace = nullptr
 
Tensor_t fX
 cached input tensor as T x B x I
 
Tensor_t fY
 cached output tensor as T x B x S
 
std::vector< Matrix_treset_gate_value
 Reset gate value for every time step.
 
std::vector< Matrix_tupdate_gate_value
 Update gate value for every time step.
 

Additional Inherited Members

- Protected Attributes inherited from TMVA::DNN::VGeneralLayer< Architecture_t >
Tensor_t fActivationGradients
 Gradients w.r.t. the activations of this layer.
 
size_t fBatchSize
 Batch size used for training and evaluation.
 
std::vector< Matrix_tfBiases
 The biases associated to the layer.
 
std::vector< Matrix_tfBiasGradients
 Gradients w.r.t. the bias values of the layer.
 
size_t fDepth
 The depth of the layer.
 
size_t fHeight
 The height of the layer.
 
EInitialization fInit
 The initialization method.
 
size_t fInputDepth
 The depth of the previous layer or input.
 
size_t fInputHeight
 The height of the previous layer or input.
 
size_t fInputWidth
 The width of the previous layer or input.
 
bool fIsTraining
 Flag indicating the mode.
 
Tensor_t fOutput
 Activations of this layer.
 
std::vector< Matrix_tfWeightGradients
 Gradients w.r.t. the weights of the layer.
 
std::vector< Matrix_tfWeights
 The weights associated to the layer.
 
size_t fWidth
 The width of this layer.
 

#include <TMVA/DNN/RNN/GRULayer.h>

Inheritance diagram for TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >:
[legend]

Member Typedef Documentation

◆ HelperDescriptor_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::HelperDescriptor_t = typename Architecture_t::DropoutDescriptor_t

Definition at line 68 of file GRULayer.h.

◆ LayerDescriptor_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::LayerDescriptor_t = typename Architecture_t::RecurrentDescriptor_t

Definition at line 65 of file GRULayer.h.

◆ Matrix_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Matrix_t = typename Architecture_t::Matrix_t

Definition at line 61 of file GRULayer.h.

◆ RNNDescriptors_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::RNNDescriptors_t = typename Architecture_t::RNNDescriptors_t

Definition at line 71 of file GRULayer.h.

◆ RNNWorkspace_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::RNNWorkspace_t = typename Architecture_t::RNNWorkspace_t

Definition at line 70 of file GRULayer.h.

◆ Scalar_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Scalar_t = typename Architecture_t::Scalar_t

Definition at line 62 of file GRULayer.h.

◆ Tensor_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Tensor_t = typename Architecture_t::Tensor_t

Definition at line 63 of file GRULayer.h.

◆ TensorDescriptor_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::TensorDescriptor_t = typename Architecture_t::TensorDescriptor_t

Definition at line 67 of file GRULayer.h.

◆ WeightsDescriptor_t

template<typename Architecture_t >
using TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::WeightsDescriptor_t = typename Architecture_t::FilterDescriptor_t

Definition at line 66 of file GRULayer.h.

Constructor & Destructor Documentation

◆ TBasicGRULayer() [1/2]

template<typename Architecture_t >
TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::TBasicGRULayer ( size_t  batchSize,
size_t  stateSize,
size_t  inputSize,
size_t  timeSteps,
bool  rememberState = false,
bool  returnSequence = false,
bool  resetGateAfter = false,
DNN::EActivationFunction  f1 = DNN::EActivationFunction::kSigmoid,
DNN::EActivationFunction  f2 = DNN::EActivationFunction::kTanh,
bool  training = true,
DNN::EInitialization  fA = DNN::EInitialization::kZero 
)

Constructor.

Definition at line 308 of file GRULayer.h.

◆ TBasicGRULayer() [2/2]

template<typename Architecture_t >
TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::TBasicGRULayer ( const TBasicGRULayer< Architecture_t > &  layer)

Copy Constructor.

Definition at line 344 of file GRULayer.h.

Member Function Documentation

◆ AddWeightsXMLTo()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::AddWeightsXMLTo ( void *  parent)
inlinevirtual

Writes the information and the weights about the layer in an XML node.

Implements TMVA::DNN::VGeneralLayer< Architecture_t >.

Definition at line 820 of file GRULayer.h.

◆ Backward()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Backward ( Tensor_t gradients_backward,
const Tensor_t activations_backward 
)
inlinevirtual

Backpropagates the error.

Must only be called directly at the corresponding call to Forward(...).

Implements TMVA::DNN::VGeneralLayer< Architecture_t >.

Definition at line 610 of file GRULayer.h.

◆ CandidateValue()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::CandidateValue ( const Matrix_t input,
Matrix_t dc 
)
inline

Decides the new candidate values (NN with Tanh)

Definition at line 459 of file GRULayer.h.

◆ CellBackward()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::CellBackward ( Matrix_t state_gradients_backward,
const Matrix_t precStateActivations,
const Matrix_t reset_gate,
const Matrix_t update_gate,
const Matrix_t candidate_gate,
const Matrix_t input,
Matrix_t input_gradient,
Matrix_t dr,
Matrix_t du,
Matrix_t dc 
)
inline

Backward for a single time unit a the corresponding call to Forward(...).

Definition at line 775 of file GRULayer.h.

◆ CellForward()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::CellForward ( Matrix_t updateGateValues,
Matrix_t candidateValues 
)
inline

Forward for a single cell (time unit)

Definition at line 590 of file GRULayer.h.

◆ DoesRememberState()

template<typename Architecture_t >
bool TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::DoesRememberState ( ) const
inline

Definition at line 204 of file GRULayer.h.

◆ DoesReturnSequence()

template<typename Architecture_t >
bool TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::DoesReturnSequence ( ) const
inline

Definition at line 205 of file GRULayer.h.

◆ Forward()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Forward ( Tensor_t input,
bool  isTraining = true 
)
inlinevirtual

Computes the next hidden state and next cell state with given input matrix.

Implements TMVA::DNN::VGeneralLayer< Architecture_t >.

Definition at line 494 of file GRULayer.h.

◆ GetActivationFunctionF1()

template<typename Architecture_t >
DNN::EActivationFunction TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetActivationFunctionF1 ( ) const
inline

Definition at line 207 of file GRULayer.h.

◆ GetActivationFunctionF2()

template<typename Architecture_t >
DNN::EActivationFunction TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetActivationFunctionF2 ( ) const
inline

Definition at line 208 of file GRULayer.h.

◆ GetCandidateBias() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateBias ( )
inline

Definition at line 269 of file GRULayer.h.

◆ GetCandidateBias() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateBias ( ) const
inline

Definition at line 268 of file GRULayer.h.

◆ GetCandidateBiasGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateBiasGradients ( )
inline

Definition at line 288 of file GRULayer.h.

◆ GetCandidateBiasGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateBiasGradients ( ) const
inline

Definition at line 287 of file GRULayer.h.

◆ GetCandidateDerivativesAt() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateDerivativesAt ( size_t  i)
inline

Definition at line 247 of file GRULayer.h.

◆ GetCandidateDerivativesAt() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateDerivativesAt ( size_t  i) const
inline

Definition at line 246 of file GRULayer.h.

◆ GetCandidateGateTensor() [1/2]

template<typename Architecture_t >
std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateGateTensor ( )
inline

Definition at line 258 of file GRULayer.h.

◆ GetCandidateGateTensor() [2/2]

template<typename Architecture_t >
const std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateGateTensor ( ) const
inline

Definition at line 257 of file GRULayer.h.

◆ GetCandidateGateTensorAt() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateGateTensorAt ( size_t  i)
inline

Definition at line 260 of file GRULayer.h.

◆ GetCandidateGateTensorAt() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateGateTensorAt ( size_t  i) const
inline

Definition at line 259 of file GRULayer.h.

◆ GetCandidateValue() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateValue ( )
inline

Definition at line 213 of file GRULayer.h.

◆ GetCandidateValue() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCandidateValue ( ) const
inline

Definition at line 212 of file GRULayer.h.

◆ GetCell() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCell ( )
inline

Definition at line 220 of file GRULayer.h.

◆ GetCell() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetCell ( ) const
inline

Definition at line 219 of file GRULayer.h.

◆ GetDerivativesCandidate() [1/2]

template<typename Architecture_t >
std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDerivativesCandidate ( )
inline

Definition at line 245 of file GRULayer.h.

◆ GetDerivativesCandidate() [2/2]

template<typename Architecture_t >
const std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDerivativesCandidate ( ) const
inline

Definition at line 244 of file GRULayer.h.

◆ GetDerivativesReset() [1/2]

template<typename Architecture_t >
std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDerivativesReset ( )
inline

Definition at line 237 of file GRULayer.h.

◆ GetDerivativesReset() [2/2]

template<typename Architecture_t >
const std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDerivativesReset ( ) const
inline

Definition at line 236 of file GRULayer.h.

◆ GetDerivativesUpdate() [1/2]

template<typename Architecture_t >
std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDerivativesUpdate ( )
inline

Definition at line 241 of file GRULayer.h.

◆ GetDerivativesUpdate() [2/2]

template<typename Architecture_t >
const std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDerivativesUpdate ( ) const
inline

Definition at line 240 of file GRULayer.h.

◆ GetDX()

template<typename Architecture_t >
Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDX ( )
inline

Definition at line 297 of file GRULayer.h.

◆ GetDY()

template<typename Architecture_t >
Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetDY ( )
inline

Definition at line 298 of file GRULayer.h.

◆ GetInputSize()

template<typename Architecture_t >
size_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetInputSize ( ) const
inline

Getters.

Definition at line 200 of file GRULayer.h.

◆ GetResetBiasGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetBiasGradients ( )
inline

Definition at line 276 of file GRULayer.h.

◆ GetResetBiasGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetBiasGradients ( ) const
inline

Definition at line 275 of file GRULayer.h.

◆ GetResetDerivativesAt() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetDerivativesAt ( size_t  i)
inline

Definition at line 239 of file GRULayer.h.

◆ GetResetDerivativesAt() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetDerivativesAt ( size_t  i) const
inline

Definition at line 238 of file GRULayer.h.

◆ GetResetGateBias() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateBias ( )
inline

Definition at line 265 of file GRULayer.h.

◆ GetResetGateBias() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateBias ( ) const
inline

Definition at line 264 of file GRULayer.h.

◆ GetResetGateTensor() [1/2]

template<typename Architecture_t >
std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateTensor ( )
inline

Definition at line 250 of file GRULayer.h.

◆ GetResetGateTensor() [2/2]

template<typename Architecture_t >
const std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateTensor ( ) const
inline

Definition at line 249 of file GRULayer.h.

◆ GetResetGateTensorAt() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateTensorAt ( size_t  i)
inline

Definition at line 252 of file GRULayer.h.

◆ GetResetGateTensorAt() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateTensorAt ( size_t  i) const
inline

Definition at line 251 of file GRULayer.h.

◆ GetResetGateValue() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateValue ( )
inline

Definition at line 211 of file GRULayer.h.

◆ GetResetGateValue() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetResetGateValue ( ) const
inline

Definition at line 210 of file GRULayer.h.

◆ GetState() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetState ( )
inline

Definition at line 218 of file GRULayer.h.

◆ GetState() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetState ( ) const
inline

Definition at line 217 of file GRULayer.h.

◆ GetStateSize()

template<typename Architecture_t >
size_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetStateSize ( ) const
inline

Definition at line 202 of file GRULayer.h.

◆ GetTimeSteps()

template<typename Architecture_t >
size_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetTimeSteps ( ) const
inline

Definition at line 201 of file GRULayer.h.

◆ GetUpdateBiasGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateBiasGradients ( )
inline

Definition at line 282 of file GRULayer.h.

◆ GetUpdateBiasGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateBiasGradients ( ) const
inline

Definition at line 281 of file GRULayer.h.

◆ GetUpdateDerivativesAt() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateDerivativesAt ( size_t  i)
inline

Definition at line 243 of file GRULayer.h.

◆ GetUpdateDerivativesAt() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateDerivativesAt ( size_t  i) const
inline

Definition at line 242 of file GRULayer.h.

◆ GetUpdateGateBias() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateBias ( )
inline

Definition at line 267 of file GRULayer.h.

◆ GetUpdateGateBias() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateBias ( ) const
inline

Definition at line 266 of file GRULayer.h.

◆ GetUpdateGateTensor() [1/2]

template<typename Architecture_t >
std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateTensor ( )
inline

Definition at line 254 of file GRULayer.h.

◆ GetUpdateGateTensor() [2/2]

template<typename Architecture_t >
const std::vector< Matrix_t > & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateTensor ( ) const
inline

Definition at line 253 of file GRULayer.h.

◆ GetUpdateGateTensorAt() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateTensorAt ( size_t  i)
inline

Definition at line 256 of file GRULayer.h.

◆ GetUpdateGateTensorAt() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateTensorAt ( size_t  i) const
inline

Definition at line 255 of file GRULayer.h.

◆ GetUpdateGateValue() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateValue ( )
inline

Definition at line 215 of file GRULayer.h.

◆ GetUpdateGateValue() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetUpdateGateValue ( ) const
inline

Definition at line 214 of file GRULayer.h.

◆ GetWeightGradientsTensor() [1/2]

template<typename Architecture_t >
Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightGradientsTensor ( )
inline

Definition at line 292 of file GRULayer.h.

◆ GetWeightGradientsTensor() [2/2]

template<typename Architecture_t >
const Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightGradientsTensor ( ) const
inline

Definition at line 293 of file GRULayer.h.

◆ GetWeightsCandidate() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidate ( )
inline

Definition at line 225 of file GRULayer.h.

◆ GetWeightsCandidate() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidate ( ) const
inline

Definition at line 224 of file GRULayer.h.

◆ GetWeightsCandidateGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidateGradients ( )
inline

Definition at line 284 of file GRULayer.h.

◆ GetWeightsCandidateGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidateGradients ( ) const
inline

Definition at line 283 of file GRULayer.h.

◆ GetWeightsCandidateState() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidateState ( )
inline

Definition at line 234 of file GRULayer.h.

◆ GetWeightsCandidateState() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidateState ( ) const
inline

Definition at line 233 of file GRULayer.h.

◆ GetWeightsCandidateStateGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidateStateGradients ( )
inline

Definition at line 286 of file GRULayer.h.

◆ GetWeightsCandidateStateGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsCandidateStateGradients ( ) const
inline

Definition at line 285 of file GRULayer.h.

◆ GetWeightsResetGate() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetGate ( )
inline

Definition at line 223 of file GRULayer.h.

◆ GetWeightsResetGate() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetGate ( ) const
inline

Definition at line 222 of file GRULayer.h.

◆ GetWeightsResetGateState() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetGateState ( )
inline

Definition at line 230 of file GRULayer.h.

◆ GetWeightsResetGateState() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetGateState ( ) const
inline

Definition at line 229 of file GRULayer.h.

◆ GetWeightsResetGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetGradients ( )
inline

Definition at line 272 of file GRULayer.h.

◆ GetWeightsResetGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetGradients ( ) const
inline

Definition at line 271 of file GRULayer.h.

◆ GetWeightsResetStateGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetStateGradients ( )
inline

Definition at line 274 of file GRULayer.h.

◆ GetWeightsResetStateGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsResetStateGradients ( ) const
inline

Definition at line 273 of file GRULayer.h.

◆ GetWeightsTensor() [1/2]

template<typename Architecture_t >
Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsTensor ( )
inline

Definition at line 290 of file GRULayer.h.

◆ GetWeightsTensor() [2/2]

template<typename Architecture_t >
const Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsTensor ( ) const
inline

Definition at line 291 of file GRULayer.h.

◆ GetWeightsUpdateGate() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateGate ( )
inline

Definition at line 227 of file GRULayer.h.

◆ GetWeightsUpdateGate() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateGate ( ) const
inline

Definition at line 226 of file GRULayer.h.

◆ GetWeightsUpdateGateState() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateGateState ( )
inline

Definition at line 232 of file GRULayer.h.

◆ GetWeightsUpdateGateState() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateGateState ( ) const
inline

Definition at line 231 of file GRULayer.h.

◆ GetWeightsUpdateGradients() [1/2]

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateGradients ( )
inline

Definition at line 278 of file GRULayer.h.

◆ GetWeightsUpdateGradients() [2/2]

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateGradients ( ) const
inline

Definition at line 277 of file GRULayer.h.

◆ GetWeightsUpdateStateGradients()

template<typename Architecture_t >
Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeightsUpdateStateGradients ( )
inline

Definition at line 280 of file GRULayer.h.

◆ GetWeigthsUpdateStateGradients()

template<typename Architecture_t >
const Matrix_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetWeigthsUpdateStateGradients ( ) const
inline

Definition at line 279 of file GRULayer.h.

◆ GetX()

template<typename Architecture_t >
Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetX ( )
inline

Definition at line 295 of file GRULayer.h.

◆ GetY()

template<typename Architecture_t >
Tensor_t & TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::GetY ( )
inline

Definition at line 296 of file GRULayer.h.

◆ Initialize()

template<typename Architecture_t >
void TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Initialize
virtual

Initialize the weights according to the given initialization method.

Reimplemented from TMVA::DNN::VGeneralLayer< Architecture_t >.

Definition at line 409 of file GRULayer.h.

◆ InitState()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::InitState ( DNN::EInitialization  m = DNN::EInitialization::kZero)

Initialize the hidden state and cell state method.

Definition at line 800 of file GRULayer.h.

◆ Print()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Print
virtual

Prints the info about the layer.

Implements TMVA::DNN::VGeneralLayer< Architecture_t >.

Definition at line 808 of file GRULayer.h.

◆ ReadWeightsFromXML()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::ReadWeightsFromXML ( void *  parent)
inlinevirtual

Read the information and the weights about the layer from XML node.

Implements TMVA::DNN::VGeneralLayer< Architecture_t >.

Definition at line 847 of file GRULayer.h.

◆ ResetGate()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::ResetGate ( const Matrix_t input,
Matrix_t di 
)
inline

Decides the values we'll update (NN with Sigmoid)

Definition at line 423 of file GRULayer.h.

◆ Update()

template<typename Architecture_t >
void TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::Update ( const Scalar_t  learningRate)

◆ UpdateGate()

template<typename Architecture_t >
auto TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::UpdateGate ( const Matrix_t input,
Matrix_t df 
)
inline

Forgets the past values (NN with Sigmoid)

Definition at line 441 of file GRULayer.h.

Member Data Documentation

◆ candidate_gate_value

template<typename Architecture_t >
std::vector<Matrix_t> TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::candidate_gate_value
private

Candidate gate value for every time step.

Definition at line 106 of file GRULayer.h.

◆ fCandidateBias

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fCandidateBias
private

Candidate Gate bias.

Definition at line 101 of file GRULayer.h.

◆ fCandidateBiasGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fCandidateBiasGradients
private

Gradients w.r.t the candidate gate - bias weights.

Definition at line 120 of file GRULayer.h.

◆ fCandidateValue

template<typename Architecture_t >
Matrix_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fCandidateValue
private

Computed candidate values.

Definition at line 87 of file GRULayer.h.

◆ fCell

template<typename Architecture_t >
Matrix_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fCell
private

Empty matrix for GRU.

Definition at line 122 of file GRULayer.h.

◆ fDerivativesCandidate

template<typename Architecture_t >
std::vector<Matrix_t> TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fDerivativesCandidate
private

First fDerivatives of the activations candidate gate.

Definition at line 110 of file GRULayer.h.

◆ fDerivativesReset

template<typename Architecture_t >
std::vector<Matrix_t> TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fDerivativesReset
private

First fDerivatives of the activations reset gate.

Definition at line 108 of file GRULayer.h.

◆ fDerivativesUpdate

template<typename Architecture_t >
std::vector<Matrix_t> TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fDerivativesUpdate
private

First fDerivatives of the activations update gate.

Definition at line 109 of file GRULayer.h.

◆ fDescriptors

template<typename Architecture_t >
TDescriptors* TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fDescriptors = nullptr
private

Keeps all the RNN descriptors.

Definition at line 134 of file GRULayer.h.

◆ fDx

template<typename Architecture_t >
Tensor_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fDx
private

cached gradient on the input (output of backward) as T x B x I

Definition at line 131 of file GRULayer.h.

◆ fDy

template<typename Architecture_t >
Tensor_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fDy
private

cached activation gradient (input of backward) as T x B x S

Definition at line 132 of file GRULayer.h.

◆ fF1

template<typename Architecture_t >
DNN::EActivationFunction TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fF1
private

Activation function: sigmoid.

Definition at line 82 of file GRULayer.h.

◆ fF2

template<typename Architecture_t >
DNN::EActivationFunction TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fF2
private

Activation function: tanh.

Definition at line 83 of file GRULayer.h.

◆ fRememberState

template<typename Architecture_t >
bool TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fRememberState
private

Remember state in next pass.

Definition at line 78 of file GRULayer.h.

◆ fResetBiasGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fResetBiasGradients
private

Gradients w.r.t the reset gate - bias weights.

Definition at line 114 of file GRULayer.h.

◆ fResetGateAfter

template<typename Architecture_t >
bool TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fResetGateAfter = false
private

GRU variant to Apply the reset gate multiplication afterwards (used by cuDNN)

Definition at line 80 of file GRULayer.h.

◆ fResetGateBias

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fResetGateBias
private

Input Gate bias.

Definition at line 93 of file GRULayer.h.

◆ fResetValue

template<typename Architecture_t >
Matrix_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fResetValue
private

Computed reset gate values.

Definition at line 85 of file GRULayer.h.

◆ fReturnSequence

template<typename Architecture_t >
bool TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fReturnSequence = false
private

Return in output full sequence or just last element.

Definition at line 79 of file GRULayer.h.

◆ fState

template<typename Architecture_t >
Matrix_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fState
private

Hidden state of GRU.

Definition at line 88 of file GRULayer.h.

◆ fStateSize

template<typename Architecture_t >
size_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fStateSize
private

Hidden state size for GRU.

Definition at line 75 of file GRULayer.h.

◆ fTimeSteps

template<typename Architecture_t >
size_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fTimeSteps
private

Timesteps for GRU.

Definition at line 76 of file GRULayer.h.

◆ fUpdateBiasGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fUpdateBiasGradients
private

Gradients w.r.t the update gate - bias weights.

Definition at line 117 of file GRULayer.h.

◆ fUpdateGateBias

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fUpdateGateBias
private

Update Gate bias.

Definition at line 97 of file GRULayer.h.

◆ fUpdateValue

template<typename Architecture_t >
Matrix_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fUpdateValue
private

Computed forget gate values.

Definition at line 86 of file GRULayer.h.

◆ fWeightGradientsTensor

template<typename Architecture_t >
Tensor_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightGradientsTensor
private

Tensor for all weight gradients.

Definition at line 126 of file GRULayer.h.

◆ fWeightsCandidate

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsCandidate
private

Candidate Gate weights for input, fWeights[4].

Definition at line 99 of file GRULayer.h.

◆ fWeightsCandidateGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsCandidateGradients
private

Gradients w.r.t the candidate gate - input weights.

Definition at line 118 of file GRULayer.h.

◆ fWeightsCandidateState

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsCandidateState
private

Candidate Gate weights for prev state, fWeights[5].

Definition at line 100 of file GRULayer.h.

◆ fWeightsCandidateStateGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsCandidateStateGradients
private

Gradients w.r.t the candidate gate - hidden state weights.

Definition at line 119 of file GRULayer.h.

◆ fWeightsResetGate

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsResetGate
private

Reset Gate weights for input, fWeights[0].

Definition at line 91 of file GRULayer.h.

◆ fWeightsResetGateState

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsResetGateState
private

Input Gate weights for prev state, fWeights[1].

Definition at line 92 of file GRULayer.h.

◆ fWeightsResetGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsResetGradients
private

Gradients w.r.t the reset gate - input weights.

Definition at line 112 of file GRULayer.h.

◆ fWeightsResetStateGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsResetStateGradients
private

Gradients w.r.t the reset gate - hidden state weights.

Definition at line 113 of file GRULayer.h.

◆ fWeightsTensor

template<typename Architecture_t >
Tensor_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsTensor
private

Tensor for all weights.

Definition at line 125 of file GRULayer.h.

◆ fWeightsUpdateGate

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsUpdateGate
private

Update Gate weights for input, fWeights[2].

Definition at line 95 of file GRULayer.h.

◆ fWeightsUpdateGateState

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsUpdateGateState
private

Update Gate weights for prev state, fWeights[3].

Definition at line 96 of file GRULayer.h.

◆ fWeightsUpdateGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsUpdateGradients
private

Gradients w.r.t the update gate - input weights.

Definition at line 115 of file GRULayer.h.

◆ fWeightsUpdateStateGradients

template<typename Architecture_t >
Matrix_t& TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWeightsUpdateStateGradients
private

Gradients w.r.t the update gate - hidden state weights.

Definition at line 116 of file GRULayer.h.

◆ fWorkspace

template<typename Architecture_t >
TWorkspace* TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fWorkspace = nullptr
private

Definition at line 135 of file GRULayer.h.

◆ fX

template<typename Architecture_t >
Tensor_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fX
private

cached input tensor as T x B x I

Definition at line 129 of file GRULayer.h.

◆ fY

template<typename Architecture_t >
Tensor_t TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::fY
private

cached output tensor as T x B x S

Definition at line 130 of file GRULayer.h.

◆ reset_gate_value

template<typename Architecture_t >
std::vector<Matrix_t> TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::reset_gate_value
private

Reset gate value for every time step.

Definition at line 104 of file GRULayer.h.

◆ update_gate_value

template<typename Architecture_t >
std::vector<Matrix_t> TMVA::DNN::RNN::TBasicGRULayer< Architecture_t >::update_gate_value
private

Update gate value for every time step.

Definition at line 105 of file GRULayer.h.

  • tmva/tmva/inc/TMVA/DNN/RNN/GRULayer.h