Examples

Here are some quick tutorials on how to do specific things in Simbrain.    The basics of building a network and other simple examples are covered in the quick-start.

Plot the activation of a node over time with a time-series plot.

1) Create a neural network and a time series plot

2) Create  a coupling from a node in the neural network to a time series in the plot.   The easiest way to do this is as follows.  Right click on the node whose activation you want to plot, and in the context menu go to Send coupling to > TimeSeriesPlot1 > Series0.   (TimeSeriesPlot1 is the name of the time series plot. If you have multiple plots open it might be a different name.  Series0 is a particular time series in the plot.)   By repeating this for different nodes you can plot the activation of multiple neurons at once.  If you want to add more time series beyond the default 5, click "add" in the time series component. 

3) Now run your simulation and you should see a plot of the changing activation of the neuron.  For some purposes it helps to turn "auto range" off in the time series preferences, and manually set  upper and lower bounds.


Plot the activation of a set of nodes using a projection plot and the coupling manager

(There are other ways to do this, some of them simpler in some cases, but this technique also shows you how to use the coupling manager).  This assumes a network component is open in the desktop.

1) Open a projection plot.  To do this either press on the plot button in the desktop toolbar, which opens up a drop down menu with different plot components, or use the menu Insert > New Plot >...  Then select projection plot.  The will add a projection plot to your desktop with a default name like "Projection 1".
2) Open the coupling manager using the Couplings > Open Coupling Manager button.
3) On the left panel of the coupling manager, use the top drop down box (which allows you to select components) to select the network whose activity you want to plot.
4) On right panel of the coupling manager, select the plot component you added to the desktop in step 1, e.g. "Projection 1".
5) In the left panel, highlight rows corresponding the neurons whose activity you are interested in plotting (do this by clicking on rows while holding the shift key down).   Neurons are labelled by ids.  To find the neurons' ids in the network window you can hover over them and look at the tooltip.
6) In the right panel of the coupling manager,  highlight all the "dimension" attributes either using the mouse or by pressing command-a while that panel is in focus.
7) Click "add couplings" at the bottom of the coupling manager window.

Now when you run the workspace each new network state should produce a point in the projection plot.

Note that if you plot more than 25 neurons you will have to add more dimensions to the projection plot using the add dimension button in the projection plot, or the menu Edit > Set dimensions...   If you use less than 25 neurons you don't have to reset the projection plot but you can if you'd like.

Train a backprop network on a pattern association task

1) Create a backprop network, using the menu Insert > Insert Network > Backprop

2) Enter a topology (a layout for the network) in the dialog that appears.   For example, enter "4,5,4" for a backprop network with 4 input nodes, 5 hidden layer nodes, and 4 output nodes.

3) Now you have to create some a training set: set of input vectors and a set of target vectors which you want the network to associate.    To do either double click on the backprop tab or  right-click on it and select "Edit / Train Backprop...". 

4) In the input data and target data tabs, edit the cells of the tables to create a pattern assocation task.  Row 1 of input will be associated with row 1 of target, row 2 with row 2, etc.

5) Now all that's left to do is to actually train the network.  To do this,  go to the train tab and press the run button.   This runs the algorithm, which adjusts the weights to try to achieve the desired input output mapping.   As the trainer runs, the error should go down.  Once the error gets to an acceptable level (often something below .1), press the stop button.  If you have trouble getting a low value you can press the randomize button and try again. Note: Depending on the associate task you set up in step 4 you may not be able to achieve a sufficiently low error value.

7) Now you can test your network to see how well it did.  To do this go to the test data tab, and click the test row button.  This will send each row of data to the network.   The target data you trained it on should appear with each click of the test row button.