MachineIntelligenceCore:NeuralNets
|
Updates according to classical Hebbian rule (wij += ni * x * y). More...
#include <BinaryCorrelatorLearningRule.hpp>
Public Member Functions | |
BinaryCorrelatorLearningRule (size_t rows_, size_t cols_) | |
virtual | ~BinaryCorrelatorLearningRule () |
virtual mic::types::MatrixPtr< eT > | calculateUpdate (mic::types::MatrixPtr< eT > x_, mic::types::MatrixPtr< eT > y_, eT ni_aa=0.1) |
![]() | |
OptimizationFunction () | |
virtual | ~OptimizationFunction () |
Virtual destructor - empty. More... | |
virtual void | update (mic::types::MatrixPtr< eT > p_, mic::types::MatrixPtr< eT > dp_, eT learning_rate_, eT decay_=0.0) |
virtual void | update (mic::types::MatrixPtr< eT > p_, mic::types::MatrixPtr< eT > x_, mic::types::MatrixPtr< eT > y_, eT learning_rate_=0.001) |
Protected Attributes | |
mic::types::MatrixPtr< eT > | delta |
Calculated update. More... | |
Updates according to classical Hebbian rule (wij += ni * x * y).
Definition at line 43 of file BinaryCorrelatorLearningRule.hpp.
|
inline |
Constructor. Sets dimensions, momentum rates (beta1=0.9 and beta2=0.999) and eps(default=1e-8).
rows_ | Number of rows of the updated matrix/its gradient. |
cols_ | Number of columns of the updated matrix/its gradient. |
Definition at line 50 of file BinaryCorrelatorLearningRule.hpp.
References mic::neural_nets::learning::BinaryCorrelatorLearningRule< eT >::delta.
|
inlinevirtual |
Definition at line 56 of file BinaryCorrelatorLearningRule.hpp.
|
inlinevirtual |
Calculates the update according to the hebbian rule.
x_ | Pointer to the input data matrix. |
y_ | Pointer to the output data matrix. |
ni_aa | Learning rate for P({AA}) (default=0.1). |
Implements mic::neural_nets::optimization::OptimizationFunction< eT >.
Definition at line 65 of file BinaryCorrelatorLearningRule.hpp.
References mic::neural_nets::learning::BinaryCorrelatorLearningRule< eT >::delta.
|
protected |
Calculated update.
Definition at line 91 of file BinaryCorrelatorLearningRule.hpp.
Referenced by mic::neural_nets::learning::BinaryCorrelatorLearningRule< eT >::BinaryCorrelatorLearningRule(), and mic::neural_nets::learning::BinaryCorrelatorLearningRule< eT >::calculateUpdate().