EIANN.rules.hebbian#
Classes#
Module Contents#
- class Ojas_rule(projection, learning_rate=None, forward_only=False)#
Bases:
EIANN.rules.base_classes.LearningRule
- forward_only = False#
- step()#
Perform one step of Oja’s rule weight update.
Updates weights according to Oja’s rule:
\[\Delta w = \eta (y \cdot x - y^2 \cdot w)\]where the weight decay term \((y^2 \cdot w)\) provides automatic normalization.
- class Supervised_BCM_4(projection, theta_tau, k, sign=1, max_pop_fraction=0.025, stochastic=False, learning_rate=None, relu_gate=False)#
Bases:
EIANN.rules.base_classes.LearningRule
- theta_tau#
- k#
- sign = 1#
- max_pop_fraction = 0.025#
- stochastic = False#
- relu_gate = False#
- reinit()#
- update()#
- step()#
- classmethod backward_update_layer_activity(layer, store_dynamics=False)#
Update somatic state and activity for all populations that receive projections with update_phase in [‘B’, ‘backward’, ‘A’, ‘all’]. :param layer: :param store_dynamics: bool
- classmethod backward_update_layer_dendritic_state(layer)#
Update dendritic state for all populations that receive projections that target the dendritic compartment.
- classmethod backward(network, output, target, store_history=False, store_dynamics=False)#
Integrate top-down inputs and update dendritic state variables. :param network: :param output: :param target: :param store_history: bool :param store_dynamics: bool
- class Hebb_WeightNorm(projection, sign=1, learning_rate=None, forward_only=False)#
Bases:
EIANN.rules.base_classes.LearningRule
- sign = 1#
- forward_only = False#
- step()#
- class Hebb_WeightNorm_4(projection, sign=1, learning_rate=None, forward_only=False)#
Bases:
EIANN.rules.base_classes.LearningRule
- sign = 1#
- forward_only = False#
- step()#
- class Hebbian_Temporal_Contrast(projection, max_pop_fraction=1.0, stochastic=False, learning_rate=None, relu_gate=True)#
Bases:
EIANN.rules.backprop_like.BP_like_2L
- step()#
- class Top_Down_Hebbian_Temporal_Contrast_1(projection, learning_rate=None, forward_only=False)#
Bases:
EIANN.rules.base_classes.LearningRule
- forward_only = False#
- step()#
- class Top_Down_Hebbian_Temporal_Contrast_3(projection, learning_rate=None)#
Bases:
EIANN.rules.base_classes.LearningRule
- step()#