AXTut InputData

From emergent
Jump to: navigation, search
← previous BuildNet AX Tutorial → next Programs

NOTE: Within emergent, you can return to this document by selecting the docs/InputData section of the left Navigator panel).

Input Data (Patterns to Present to the Network)

Figure 1: StdInputData table with (matrix) cell displayed in lower panel.

We return to the LeabraWizard_0 wizard tab, and find the Standard Data link in top Standard Everything section (available in emergent as StdData). This will bring up a dialog with mostly default information already filled in (some parameters cannot be modified), but there is one parameter we need to specify: n_patterns. Enter 6 -- one for each of the different input letters. Press OK.

A DataTable object (much like a spreadsheet or simple data base) is constructed that has columns automatically corresponding to the Input and Output layers of the network, with 6 rows where we can specify the different input patterns to the network, which define our simple target detection task. The Name column is useful for labeling our patterns. You will see (matrix) in the Input and Output columns, and if you click on (matrix) in any of those cells, an extra editor shows up at the bottom of the window to allow you to enter values for each "matrix" of input and output units. See an example in Figure 1 at right (after values have been entered). The Name column, in contrast, has a simple text value for each row (i.e., a "string"), so it can be edited directly in the main table view at the top.

This data table object is called StdInputData and it lives in the data → InputData → StdInputData subgroup in the left Navigator panel, in case you need to get back to it.

Within the StdInputData table, for the Output (matrix) we are calling the first output unit the "non-target" and the second output unit the "target". The active units (set to '1') within the Input (matrix) are ordered left-to-right, bottom-to-top. Here is what you should enter for the StdInputData table:

Name Input Output
A 000
100
01
B 000
010
10
C 000
001
10
X 100
000
01
Y 010
000
10
Z 001
000
10

NOTE: As a time saver, you can also just load in these data patterns from the file ax_tutorial_input_data.dtbl by doing Object/Load on the StdInputData object. This reloads the entire datatable. (For more on datatables, see the wiki DataTable page):

Visualizing the Data Patterns

Figure 2: Grid View of the StdInputData table as displayed in the Visualizer panel.

The best way to make sure you've entered the right patterns is to create a "Grid View" of your input data -- do this by selecting the View/New Grid View option from the View button at the bottom of the data table editor that you've been using to enter input patterns with. Go ahead and keep the "New Frame" default for the dialog that pops up (you can also add multiple view elements together in a single 'frame' in the 3D view -- we'll do that later).

This will create a StdInputData view tab in the right Visualizer panel, and display your input patterns, which should hopefully match those shown in Figure 2 at the right, corresponding to the above table of values. If not, you can correct them by clicking back on StdInputData data table object in the left browser.

There is now also a new StdInputData edit tab in the middle Editor panel, which corresponds to the new grid view and contains various parameters for controlling the configuration of the grid view display. You can mouse-over the fields to get more information. Note that many of these require you to hit the Apply button at the bottom before any changes can take effect in the grid view in the Visualizer.

NOTE: By default, in the Grid Table View edit options for the StdInputData view, the Click Vals option is turned off. If you select the Click Vals option, you can now use the Visualizer's red arrow tool to edit unit values in the grid view display.

The next step is to create programs to control the presentation of these input patterns to the network.

→ next Programs or Programs in emergent