Projection Overview

Projection components are instances of a program called HiSee. HiSee is a high dimensional visualizer. As a neural net operates its state travels along a path in its state space, which typically has many dimensions, Hisee can take the collection of states, which are visited by a neural net, projecting them down into two dimensions so that many of their geometric and topological properties are preserved. This gives users of Simbrain a way to visualize the behavior of the network component. More information about HiSee is available at the HiSee website: http://hisee.sourceforge.net .

This projection component represents the states (patterns of activity across the nodes of the network) that have occurred in a network with 40 neurons. Each blue dot corresponds to one of those states. The red dot represents the current state. For the most part, points that are close to each other in the projection component correspond to states that close to each other in the network's 40-dimensional state space.

When Simbrain is running users can add one or more projection component windows, each of which projects some subset of the network's state variables to two dimensions. This allows users to independently study different aspects of the network component. For example, one projection component might represent the activity at the input nodes of a network, another might represent activity at the hidden nodes, another might represent the aggregate activity of the entire network, and another might represent the changing values of the network's weights as it learns.

What the Dots Represent


Each "dot" in the projection component represents a state of the network. When a projection component is first opened, there are no dots, since no state information has been sent to the projection component yet. With each update of the network, state information is sent to the projection component, which is then displayed as a red dot. The set of dots that appear in the projection component window represent the states that have been visited by the associated network since the projection component was added. This representation of the history of a network's activity allows for the user to understand and analyze the network's behavior. As the network is updated the user can watch new dots appear as new states arise.

The projection component below represents the states that have occurred in a network with 20 neurons. Each dot corresponds to one of those states, where the red dot is current state, and the blue dots are all previous states (colors can be changed in the Datapoint Coloring). Points that are close to each other in the projection component correspond to patterns of activity that are similar. One can linger over a data point to reveal a tooltip that displays which high-dimensional position they correspond to.

When a projection component is created by pressing a network's Gauge button, they, by default, represent the activity of all the neurons across the network, though they can be set to represent any subset of the neurons of a neural network. Projection components can also be used to represent weight strengths.


Pan and Zoom

The projection component display is currently 2-dimensional. It is based on the Piccolo zoomable user interface (ZUI), which allows users to pan and zoom and graphical data. You can pan the visible data by left-dragging (dragging the mouse while holding the left-mouse button down), and you can zoom in or out on data by right-dragging (dragging the mouse while holding the right button down).