Package topo :: Package responsefn :: Module projfn :: Class CFPRF_ActivityBased
[hide private]
[frames] | no frames]

Class CFPRF_ActivityBased

source code

                       object --+        
                                |        
param.parameterized.Parameterized --+    
                                    |    
                base.cf.CFPResponseFn --+
                                        |
                                       CFPRF_ActivityBased

Calculate the activity of each unit nonlinearly based on the input activity.

The activity is calculated from the input activity, the weights, and a strength that is a function of the input activity. This allows connections to have either an excitatory or inhibitory effect, depending on the activity entering the unit in question.

The strength function is a generalized logistic curve (Richards' curve), a flexible function for specifying a nonlinear growth curve:

y = l + ( u /(1 + b exp(-r (x - 2m)) ^ (1 / b)) )

This function has five parameters:

* l: the lower asymptote, i.e. the value at infinity;
* u: the upper asymptote minus l, i.e. (u + l) is the value at minus infinity;
* m: the time of maximum growth;
* r: the growth rate;
* b: affects near which asymptote maximum growth occurs.

Richards, F.J. 1959 A flexible growth function for empirical use. J. Experimental Botany 10: 290--300, 1959. http://en.wikipedia.org/wiki/Generalised_logistic_curve

Nested Classes [hide private]

Inherited from param.parameterized.Parameterized: __metaclass__

Instance Methods [hide private]
 
__call__(self, iterator, input_activity, activity, strength) source code

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_dynamic_time_fn, state_pop, state_push, verbose, warning

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

Class Methods [hide private]

Inherited from param.parameterized.Parameterized: params, print_param_defaults

Class Variables [hide private]
  l = param.Number(default=-1.3, doc= "Value at infinity")
Value at infinity
  u = param.Number(default= 1.2, doc= "(u + l) is the value at m...
(u + l) is the value at minus infinity
  m = param.Number(default= 0.25, doc= "Time of maximum growth.")
Time of maximum growth.
  r = param.Number(default=-200, doc= "Growth rate, controls the...
Growth rate, controls the gradient
  b = param.Number(default= 2, doc= "Controls position of maximu...
Controls position of maximum growth
  single_cf_fn = param.ClassSelector(ResponseFn, default= DotPro...
ResponseFn to apply to each CF individually.

Inherited from param.parameterized.Parameterized: name, print_level

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__call__(self, iterator, input_activity, activity, strength)
(Call operator)

source code 
Overrides: base.cf.CFPResponseFn.__call__

Class Variable Details [hide private]

u

(u + l) is the value at minus infinity
Value:
param.Number(default= 1.2, doc= "(u + l) is the value at minus infinity")

r

Growth rate, controls the gradient
Value:
param.Number(default=-200, doc= "Growth rate, controls the gradient")

b

Controls position of maximum growth
Value:
param.Number(default= 2, doc= "Controls position of maximum growth")

single_cf_fn

ResponseFn to apply to each CF individually.
Value:
param.ClassSelector(ResponseFn, default= DotProduct(), doc= """
        ResponseFn to apply to each CF individually.""")