Boolean Hebbian learning framework
###Scripts: HebbianNetwork ####Arguments:
- rate: Learning Rate
- sigmoid: Defines how to sigmoid weights, options are 0, 1, 2, 3: see code.
- examples: Number of random boolean examples to present
- hidden: Hidden Units, 0 removes hidden layer
- variables: N variable boolean functions
- layers: 1 .. N layers
- rule: Learning rule can either be "oja" for Oja's rule or "hebbian" for basic Hebb rule.
- dropout: Edge drop out rate
####Example:
pypy HebbianNetwork.py --rate 0.01 --sigmoid 1 --examples 1000 --hidden 3 --variables 2 --layer 1 --rule oja --dropout 0.5###Tests HebbianTest Runs some basic test with unittest and mock library.
###Models: Stores current model by function. "hebb0.txt" is the first boolean function for n variable input. mkdir models in Hebbian directory.
###Data: Boolean Class creates a list of random examples for N variable boolean functions.
###SGE: Arguments: variables hidden layers dropout rate script_name Example: python CreateHebbSGE.py 2 3 1 0.5 0.01 2_3_submission
###HebbProfiler: pypy HebbProfiler.py Runs 3-5-1 network, and provides profiling statistics