Package topo :: Package learningfn :: Module projfn :: Class CFPLF_Trace
[hide private]
[frames] | no frames]

Class CFPLF_Trace

source code


LearningFn that incorporates a trace of recent activity, not just the current activity.

Based on P. Foldiak (1991), "Learning Invariance from Transformation Sequences", Neural Computation 3:194-200. Also see Sutton and Barto (1981) and Wallis and Rolls (1997).

Incorporates a decay term to keep the weight vector bounded, and so it does not normally require any output_fn normalization for stability.

NOT YET TESTED.

Nested Classes [hide private]

Inherited from param.parameterized.Parameterized: __metaclass__

Instance Methods [hide private]
 
__call__(self, iterator, input_activity, output_activity, learning_rate, **params)
Apply this learning function to the given set of ConnectionFields, and input and output activities, using the given learning_rate.
source code

Inherited from base.cf.CFPLearningFn: constant_sum_connection_rate

Inherited from param.parameterized.Parameterized: __getstate__, __init__, __repr__, __setstate__, __str__, debug, defaults, force_new_dynamic_value, get_param_values, get_value_generator, inspect_value, message, print_param_values, script_repr, set_default, set_dynamic_time_fn, set_param, state_pop, state_push, verbose, warning

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __subclasshook__

Class Methods [hide private]

Inherited from param.parameterized.Parameterized: params, print_param_defaults

Class Variables [hide private]
  trace_strength = param.Number(default= 0.5, bounds= (0.0, 1.0)...
How much the learning is dominated by the activity trace, relative to the current value.
  single_cf_fn = param.ClassSelector(LearningFn, default= Hebbia...
LearningFn that will be applied to each CF individually.
  name = <param.parameterized.String object at 0xb28712c>
String identifier for this object.

Inherited from param.parameterized.Parameterized: print_level

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__call__(self, iterator, input_activity, output_activity, learning_rate, **params)
(Call operator)

source code 
Apply this learning function to the given set of ConnectionFields, and input and output activities, using the given learning_rate.
Overrides: base.cf.CFPLearningFn.__call__
(inherited documentation)

Class Variable Details [hide private]

trace_strength

How much the learning is dominated by the activity trace, relative to the current value.
Value:
param.Number(default= 0.5, bounds= (0.0, 1.0), doc= "How much the learning is domi\
nated by the activity trace, relative to the current value.")

single_cf_fn

LearningFn that will be applied to each CF individually.
Value:
param.ClassSelector(LearningFn, default= Hebbian(), doc= "LearningFn that will be \
applied to each CF individually.")