Command line interface¶
The console script hetero is bound to hetero.cli.main(). The parser is
built by hetero.cli.get_parser(), whose flags are grouped into the
sections listed below; hetero.cli.create_param_dicts() turns the parsed
namespace into the nested parameter dictionary that
hetero.sim.Simulation consumes. Every default comes from
hetero.config.CFG, so the parser stays in sync with the config
automatically.
Input and output¶
--rootResult directory. Default:
hetero.config.res_root.--stypeStorage dtype of the simulated states (
float64for accurate forecasting,float16otherwise). Default:float16.--ncoreNumber of worker processes;
-1uses all cores. Default:-1.--seedRandom number seed. Default:
1234.
Stage skips¶
Each of these skips one stage of the run, so a finished run can be extended or inspected piecemeal.
--nointSkip integration and reuse the states on disk.
--nobmSkip benchmarking and reuse the scores on disk.
--nosvdSkip the SVD computation, i.e. skip the
svals/erank/anglecsv files. This is a computation flag, not a plot flag:--novizstill writes the numbers to disk.--novizSkip every figure of the run. Implies
--noconn,--notau,--nouvx,--noscore,--noangleand--nosumplot(seehetero.cli.PLOT_SKIP_FLAGS). The csv files are still computed. Use it while sweeping parameters.--replotRe-render every figure of a finished run, loading whatever is already on disk and computing only what is missing. Overrides
--novizand the individual--no*plot flags, and also recomputes missing integration/benchmark results even under--noint/--nobm.
The individual plot flags are --noconn (connectivity), --notau
(time-constant distribution), --nouvx (input/voltage/activation traces),
--noscore (readout score map), --noangle (angle-vs-score) and
--nosumplot (angle CDF, singular values, effective rank). The summary
figures aggregate every state on disk, so in a sweep they are re-rendered from
all previously computed cases after every single run.
Heterogeneity¶
--distroDistribution of the neuronal time constants, e.g.
lognormal,gamma,normal,uniform. Anynumpy.random-compatible distribution. Default:lognormal.--n_meansNumber of mean-timescale levels. Default:
3.--n_varsNumber of heterogeneity levels per mean level. Default:
3.--log_distanceLog-10 distance between two consecutive mean levels. Default:
0.5.
Network¶
--NNumber of neurons. Default:
250.--pConnection probability (sparsity). Default:
0.1.--fFraction of excitatory neurons. Default:
0.8.--mueMean excitatory synaptic weight. Default:
1.0.--sig0Standard deviation of the excitatory and inhibitory weights. Default:
1.0.--autapseWhether self-connections are allowed. Default:
False.--delaySynaptic delay in units of
dt. Default:0.
Gains¶
--JnGain of the white noise. Default:
0.1.--JGain of the recurrent weights. Default:
1.0.--JuGain of the feedforward weights. Default:
1.0.
Stimulation¶
--stimOne or more stimulus labels; the timeseries are concatenated. See the
stimblock ofhetero.config.CFGfor the available labels (lorenz,mackey_glass-10,mackey_glass-50,mackey_glass-80,sin,sin-5,sinabs,sign,sign-5,narma,constant) and their parameters.
Task¶
--tasktaylor,nostradamusortayloramus. Default:tayloramus.
Dataset¶
--n_trnLength of the training set, in units of the input base timescale. Default:
20.--n_tstLength of the test set, in the same units. Default:
10.--disable_scale_by_sizeTurn off the automatic scaling of the training-set size with the network size. By default enlarging the network by a factor of
xenlarges the training set by the same factor; the test set is unaffected.
Dynamics¶
--dynLI(leaky integrator, rate) orLIF(leaky integrate-and-fire,brian2). Default:LI.--solverSolver used by the rate dynamics. Default:
euler.
Readout¶
--readout_activationHow the neuronal state is turned into a readout signal. Rate networks take an activation function (
possig1,tanh1), spiking networks take a temporal kernel (array,g50,gnc50,d50,d10,a50,ma50). An incompatible choice is corrected with a warning; seehetero.config.VALID_ACTIVATIONS. Default:possig1.
Optimization¶
--algAny
scikit-learn-compatible regressor, e.g.ridge,ols,lasso,elasticnet. Default:ridge.--regRegularization strength, where the algorithm uses one. Default:
1e-6.--fit_biasWhether to fit an intercept. Default:
True.
Uncertainty quantification¶
--n_trialsNumber of non-overlapping contiguous intervals over which a readout is trained. The spread of the corresponding test scores estimates the performance uncertainty. Default:
3.--n_realizationsNumber of independent realizations of the topology and the weights. The spread of the scores across realizations estimates the network uncertainty. Default:
1.