Professional Basis of AI Backprop Hypertext Documentation

Copyright (c) 1990-97 by Donald R. Tveter

Input

This menu window contains a number of different commands to read things in, commands, weights and patterns.

Echoing Input

When you are reading commands from a file it is sometimes worthwhile to see those commands echoed on the screen, this is especially true if there is some kind of error in the text. There is a button that will toggle this on and off or the typed commands are:

f e+   * echo on
f e-   * echo off

Pattern Input Formats

The programs are able to read pattern values in two different formats. Real numbers follow the C language notation and must be separated by a space. The letters `H' and 'h' used in recurrent networks is also allowed. The letter `x' (the unknown) with a default value of 0.5 is also allowed. Real input format is now the default.

The other format is the compressed format, a format consisting of 1s, 0s and the letters `x', 'h' and `H'. In compressed format each value is one character and it is not necessary to have blanks between the characters. For example, in compressed format the patterns for xor could be written out as:

101
000
011
110
Clicking the "Input Format" button will change the format to its other value. The typed commands are:

f ir     * input real
f ic     * input compressed

The Value of 'x'

A special input character for compressed and real patterns is the letter 'x', the unknown, its default value is 0.5 but it can be changed in the "Value of x in Patterns" entry box or it can be typed in as in:

f x -1   * sets x to -1 when the pattern is read

Problem Types

There are two different types of problems that back-propagation can handle, the general type of problem where every output unit can take on an arbitrary value and the classification type of problem where the goal is to turn on output unit i and turn off all the other output units when the pattern is of class i. The xor problem is an example of the general type of problem. For an example of a classification problem, suppose you have a number of data points scattered about through three-dimensional space and you have to classify the points as either class 1, class 2 or class 3. For a pattern of class 1 you can always set up the output: "1 0 0", for class 2: "0 1 0" and for class 3: "0 0 1", however doing the translation to bit patterns can be annoying so another notation can be used. Instead of specifying the bit patterns click the "Problem Type" button to classification and then the program will read data in the form:

   1.33   3.61   1   *  shorthand for 1 0 0
   0.42  -2.30   2   *  shorthand for 0 1 0
  -0.31   4.30   3   *  shorthand for 0 0 1
and translate it to the bit string form. Another benefit of the classification format is that when the program outputs a status line it will also include the percentage of correct patterns based on the maximum value rather than just on tolerance.

The typed commands are:

f pg     * the general type of problem
f pc     * the classification type of problem

The Other Buttons

The purpose of the remaining buttons should be pretty obvious, here are the typed versions of the commands:

Change Directory                  cd directory
Read Commands File:               i filename
Read Commands, List Files         i filename
Read Training Set Patterns        rt filename
Read More Training Set Patterns   rx filename
Read Weights From:                rw filename