Skip to content

qihongl/pylca

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The leaky, competing, accumulator (LCA)

this is a lightweight python implementation of the leaky, competing, accumulator, based on [1], [2] and [3].

how to use

here's an example that you can play with on google colab: Open in Colab

the script will generate the follwing plot, showing that more units got activated -> more competition -> reduce the activity level of the strongest unit == increase uncertainty. this is a desired property emerged from the competition across all accumulators.

cmpt

the effect of leak is straightforward: controlling for everything else, accumulators with bigger leak get less activated

leak

install

its on PyPI, so simply do pip install pylca

note

this implementation...

  • ... allows any non-negative self-excitation. [2] assumes the strength of self-excitation (for the accumulators) is zero.
  • ... doesn't terminate the LCA process when the (activity threshold) criterion is met, which is different from [2]. the user can truncate the activity time course post-hoc.
  • ... lower bound the output activity by 0 (i.e. ReLU), like [1, 2]. [3] can do other non-linear transformations
  • ... doesn't perform exponential weighted moving average of the inputs. [3] can do this.

references:

About

A python implementation of the leaky, competing, accumulator (Usher, & McClelland, 2001).

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors