2.1 Total Operation in 2-4 Clicks
2.2 The '5 by 7' Character Recognition Problem2.2.1 Step 1: Training and Testing Files
2.2.2 Step 2: Link the Two Files
2.2.3 Step 3: Set up ABM
2.2.4 Step 4: Running ABM
2. Total Operation in 2-4 Clicks
The detailed user's guide will be given in chapter 3 and 4. In this chapter, we will show you the minimum information to get started.
2.1 Total Operation in 2-4 Clicks
Prepare all your training data in one file and all your testing data in another file, then in 2-4 clicks, you will have your answer instantaneously. The procedure is
Step 1. Put your training data into a file, the training file; Put your problem or test data into another file, the testing file; together you prepare two files.
Step 2. Link the two files to the ABM by clicking "Data/Link" .
Step 3. Once the files are in the ABM, set up symmetry and output format for ABM if necessary;
Step 4. Click "Run/Classification" or "Run/Distribution".
2.2 The '5 by 7' Character Recognition Problem
In this section, we will introduce the '5 by 7' character
recognition problem.
Step 1: Training and Testing Files
Characters 0, 1, 2, 3, ... look like this:
01100
10010
10010
10010
10010
10010
01100
00100
01100
00100
00100
00100
00100
01110
01110
00001
00001
01110
10000
10000
01110
11110
00001
00001
11110
00001
00001
11110
...
These characters are converted into the one-dimensional patterns for ABM:
01100 10010 10010 10010 10010 10010 01100
00100 01100 00100 00100 00100 00100 01110
01110 00001 00001 01110 10000 10000 01110
11110 00001 00001 11110 00001 00001 11110
...
Their classifications are represented by class neurons. For example, we can use 11 neurons to represent the classes. Only one of the 11 neurons is '1' and the other ten are '0'. In particular,
01000 00000 0
00100
01100
00100
00100
00100
00100
01110
which indicates the pattern (character '1')
00100
01100
00100
00100
00100
00100
01110
is in class
01000 00000 0
The training file is a list of images like:
01000 00000 0
00100
01100
00100
00100
00100
00100
01110
which consists of a (pattern, class) pair. To test the neural network, only patterns like,
00100
01100
00100
00100
00100
00100
01110
are provided to the neural net; the classification, 01000 00000 0, is replaced by unknown bits:
xxxxx xxxxx x
The neural net has to determine that for the above pattern,
xxxxx xxxxx x is 01000 00000 0. The testing file is a list of images like:
xxxxx xxxxx x
00100
01100
00100
00100
00100
00100
01110
The unknown pattern xxx...xxx can be anywhere inside a test pattern. To see the complete training and testing files, click:
Example/5x7 Character.
This action will generate 46 training-characters, and
10 testing-characters. The two files will also be opened by this click.
You can link the two files by using 'Data/Link' (See Figure 2) and enter the file names (See Figure 3). The default names are
Training file: example1a.txtWhen you click "Example/5x7 characters", the training file and the testing file are linked for you by ABM.
Testing file: example1b.txt
Output file: example1c.txt
Figure 2. The Data Commands
Figure 3. The "Data/Link" Command
Before you can train the network, you have to set up the network. The setup deals with:
To set up the symmetry, use the command "Data/Symmetry". The character recognition problem has 2-dimensional x- and y-translation symmetries. Symmetry very is important for training the network.
When you click "Example/5x7 characters" (See Figure. 4)
, the output format and the symmetry are setup for you by ABM. Click
"Data/Symmetry" to see the symmetry settings. We will explain this later.
Figure 4. Click "Example/5x7 characters".
Now that the network is initialized and the data files are linked, it is the time to run. There are two commands for classification:
Figure 5. The Run Commands.
The first command simulates the Hopfield Model and will provide you with a classification. The second command simulates the Boltzmann Machine and will provide you with a distribution.
Click: Run/Classification. The results from this command are obtained immediately. The output file, which contains the results, will be opened at this point. It looks like this:
xxxxxxxxxxx
00100
01010
01010
01010
01010
00100
00000
10000000000
00100
01010
01010
01010
01010
00100
00000
8192 1
xxxxxxxxxxx
00000
00100
01010
01010
01010
01010
00100
10000000000
00000
00100
01010
01010
01010
01010
00100
8192 1
...
ABM first prints the testing pattern, then prints the classification. In this case, the pattern,
00100
01010
01010
01010
01010
00100
00000
is indeed in class '0', which is:
10000000000.
The classification is 100% correct in this example.