Introduction: Running a model and viewing responses
- Learn to run models on iModel.org
- Learn to use the nData Viewer to visualize responses
- Run and analyze responses to sinusoidal grating stimuli
- Register and Login
The iModel website currently uses Java Applets, which do not work with some browsers and may require updating your Java settings. If you have trouble getting the applets to show up and launch, please read this.
Go to www.iModel.org and click on the Login link at the left. If you already have an account, login, otherwise click Register and follow the instructions, which will eventually lead you back to the login page.
- Your iModel home page
Once you have logged in, you will be at the main page of your iModel account. From here, you can run experiments by selecting combinations of models and stimuli and submitting these for execution. You can also browse model results from previous runs.
- Preparing to run your first model
To prepare to run a model there are four steps, which are described in more detail below:
- Selecting the model
- Specifying the responses to be recorded
- Selecting the stimulus
- Specifying the simulation duration and other custom parameters
- Select the model
For this demonstration, we will test a classical Gabor filter model of a simple cell.
In the Model Execution table at the top of your iModel home page, click on the Select model link at the upper right.
The model selection page will appear. To select the GaborSimp model, click on its name in the selection box labeled Standard models. This will display the main page for the GaborSimp model to the right of the selection box. The model page describes the model, provides references to relevant literature, and shows a block diagram of the model at the far right.
To confirm this choice of model, and return to your iModel home page, click Confirm (button below the selection box). You should see that GaborSimp is listed as the chosen model in the execution table.
- Specify the responses to record
We will record the spiking output of the GaborSimp model by selecting a standard response file (we will not discuss the structure or contents of the response file here).
In the second row of the model execution table, click on the Select response link.
In the selection box that appears, click on std.rsp and click Confirm.
- Select the stimulus
We will test the GaborSimp model, which is a classical simple cell model, with a classical stimulus - a series of drifting gratings that define a direction tuning curve.In the third row of the model execution table, click on the Select stimulus link.
In the selection box that appears, click on sine_dir to select a stimulus that will test the direction selectivity of the model using a drifting sine wave stimulus. Click Confirm.
Back in the model executation table, the entry following "Stimulus:" should now contain a button that can launch the stimulus viewer. This viewer is a Java Applet, and you may be prompted by your Browser to give permission for the Applet to run. The purpose of this button is to allow you to view the stimulus that you have selected. To view the stimulus, click the button and proceed as follows:
When you are done examining the stimulus, you can kill the Stimulus Viewer window.
- A window should open that shows the title "sine_dir" above a small rectangular frame containing a circular patch of grating.
- Click the Play button near the upper left to animate the stimulus.
- While the stimulus is playing, click the up arrow on the "Stimulus" counter control below the stimulus frame to browse through the 17 stimulus movies defined by this sine_dir stimlus file.
- You can change values in the parameter spread sheet at the bottom to see the influence of any particular parameter, but these changes are not saved here. Values shown in red cannot be changed at all because they are the variable parameters that define the stimulus series. Simply type over an existing parameter value (in black) and press enter. For example, change the value of the spatial frequency, sf from 1.0 to 2.0, press enter, and see how this effects the stimulus.
- Specify parameters
The parameters for the model and for the stimulus are set by the model (.moo) and stimulus (.stm) files, respectively, that have been selected above. We can run the simulation with the existing parameter settings, or we change some of them by providing values that will override the values in the parameter files.
One important parameter to consider before any run is the duration of the simulation, and this is set by the parameter tn (number of time steps), which is specified in the model file. This sets the number of discrete time steps in the simulation, where each time step is typically 2 milliseconds. Thus, if you want to run a drifting grating stimulus that lasts about 2 seconds, then you would set tn to 1024 because tn must be a power of two for most simulations. Setting a value too low may not allow the stimulus to be completed, and setting a value too high will waste compute time and could possibly exceed the available memory (on the machines in the cloud where the model will execute).
To set tn to 1024, click change to the right of "Duration (tn):", then select 1024 from the combo-box and press confirm.
To change parameters other than tn, click change in the bottom row of the execution table, to the right of Custom params. Now, enter into the box a parameter name, followed by a SPACE, and followed by a value. For example,filter.spatial/theta 45would cause the Gabor filter to have an orientation of 45 degrees, instead of the current value, 0, in the model file. The parameter is referred to by the type of objects in which it appears within the model file. Here, the parameter lies within the <filter> object that is named spatial. This object is referred to with filter.spatial. Then, a '/' is added followed by the name of the parameter within the object, thus '/theta' in this case.
Press the verify button, which changes to Confirm if the parameter string passes the verification step.
- Press "RUN"
Finally, you can click the RUN link at the bottom of the table. You can then hit Confirm if everything looks good. This will take you to a confirmation page that shows the job number, and indicates that it has been "Submitted". Here, click on Home to return to your homepage and wait for the job to finish.
- Getting results from a model run
When you submit a simulation job, it is sent to be executed on a cluster of workstations in the cloud (i.e., not on your own computer), and an entry for the job is placed in your Results table with status listed as Pending. Once the job completes, the status will update automatically to say Results available. For very short jobs, this could happen within a few seconds.
To view the results, proceed as follows:
- Click on the Results available link.
*** Note, this may cause another query to appear about running a Java applet. You should accept to run the applet.
- The output for a successful run should result in the display of the following:
- A button to launch a viewer to see the resulting data file
- run.log.html - a link to the transcript of the model run, which may show errors if the model crashed.
- zz.nd - a link to download the response file in nData format (a binary file format).
- zz.t1 - a link to the response file in a text format (t1 format).
- To launch the nData Viewer, click on the "View zz.nd" button.
You will see a raster plot where the spike trains are ordered by the stimulus parameter that was varied (here, direction). To plot a tuning curve for the spike trains, select Tuning_Curve in the Analysis: combo box, and then in the Variable parameters panel, select "1" for contrast.
Take a moment to familiarize yourself with the panels and buttons on the nData Viewer. There are two Help buttons that provide basic documentation.
You should be able to observe several features of the response:
- In Raster (Analysis) mode, the responses last for just over 2000 ms, consistent with setting tn to 1024 above (yielding 1024 x 2 = 2048 ms stimulus duration).
- The preferred direction of motion is about 45 and 225 degrees.
- The neuron is clearly orientation tuned, but not direction tuned.
- The F1 response (amplitude of response modulation at the temporal frequency of the stimulus) is greater than the DC response (the mean spike rate), indicating that this model behaves like a simple cell, not a complex cell.
- In Raster mode, you can see that the periodic bursts of spikes have a timing that is consistent with the temporal frequency (TF) of the grating stimulus, which was set to 8 Hz.
- When you are finished viewing the results, click on the Home button, and you will be back at your iModel homepage, ready to run another simulation.