Levels of Modeling
Neural modeling takes place on a variety of levels, depending on the
purpose and resources available. More abstract models are easier to
analyze and understand, and can be implemented most efficiently on
conventional computers. More detailed models mirror biological reality
more faithfully, but this complexity reduces our ability to rigorously
analyze the system.
Four common levels of modeling, from abstract to detailed, are:
CONICAL's focus is on the most detailed type of model, the compartmental
model. However, the Spiker class does allow
functionality similar to an integrate-and-fire model. Additional support
for kernel-based modeling may be added in the future if there is demand
for it. Abstract neural networks are firmly outside
the realm of CONICAL's intended purpose, but there is a wide selection of
simulators available for them already.
Artificial Neural Networks
ANNs are generally composed of elements which sum their inputs,
apply an activation function, and generate an analog output. In
"feed-forward" neural networks, this is only done once; activity driven
by the input pattern is transformed into activity at the output pattern.
Recurrent networks have reciprocal synapses, and so the update cycle may
be repeated until the network reaches a stable state. Synaptic weights
are often set by using a gradient-descent algorithm to minimize the
output error over a training set. Elements in an ANN are only vaguely
analogous to real neurons.
In these models, the cells' output takes the form of discrete
events ("action potentials" or "spikes"). One cell affects the others
only when it spikes. At that point, the postsynaptic cells are updated
(usually in a simple manner, e.g. adding a constant to the membrane
potential), and their new firing times are calculated.
Integrate-and-fire models can generate very realistic-looking spike
trains, despite their very simple equations.
A modeling paradigm which is receiving increased attention is
based on kernels, which are simply arrays of numbers. Kernel 0 is a
single number which represents the cell's average firing rate (or average
membrane potential). Kernel 1 is a one-dimensional array, and determines
the cell's response to past input. Kernel 2 is two-dimensional, and sets
the cell response to combinations of inputs, and so on. Very realistic
cell simulations can often be obtained with only the first three
kernels. These simulations treat each neuron as a "black box" and can
produce very complicated behavior, but it can be hard to relate the
kernel numbers to any physiological values.
The most biologically detailed type of simulation is the
compartmental model, described in more detail in the next section. This model actually implements
the detailed morphology of a neuron. The neuron is divided into small
compartments, and membrane potential at each compartment is determined by
its neighbors, as well as active and passive ion channels. Compartmental
models have the advantage that real physiological values (e.g., channel
kinetics, cell morphology, etc.) can be directly implemented.