*********** Shapes.nns is a NeuNet Pro Sample File ***********

This file contains special properties that allow NeuNet Pro to recognize it
as authorized NeuNet sample data.  Anyone using the unlicensed version
of NeuNet Pro is welcome to experiment with this sample data.
Please do not modify this file, or it will lose its status as authorized sample data.

For further information about Neunet Pro and additional sample data,
please visit the NeuNet Pro website at http://www.cormactech.com/neunet

All of this data has been created by CorMac Technologies Inc.
CorMac Technologies Inc. does not guarantee the accuracy of the data.
This data is intended solely for experimental purposes.


    ***************  More about the Shapes Data *******************

This database is a demonstration of shape recognition.

Data:
-----
The data contains 2000 samples for each of six of two-dimensional shapes,
for a total of 12,000 rows:

The six shapes are 
1) Circle
2) Square
3) Triangle (equilateral)
4) Diamond (square rotated 45 degrees)
5) Line (horizontal)
6) Noise (8 random points)

Each shape is a random width between 100 and 1000 units wide.
Each shape is described by eight points located clockwise
around its perimeter.
Each shape is randomly located within a 10,000 x 10,000 grid system.


Field Descriptions:
-------------------
[ID]         Primary key field (1 through 12000)
[Shape]      Text description of shape(Circle, Square, Triangle, Diamond, Line, Noise)
[ShapeNum]   1=Circle, 2=Square, 3=Triangle, 4=Diamond, 5=Line, 6=Noise)
[Circle]     = 1 if Circle, otherwise zero.
[Square]     = 1 if Square, otherwise zero.
[Triangle]   = 1 if Triangle, otherwise zero.
[Diamond]    = 1 if Diamond, otherwise zero.
[Line]       = 1 if Line, otherwise zero.
[Noise]      = 1 if Noise, otherwise zero.
[Size]       Horizontal width of the shape (100 to 1000)
[X1]         X coordinate of leftmost, central point on this shape
[Y1]         Y coordinate of leftmost, central point on this shape
[X2][Y2]
...
[X8][Y8]     additional points located clockwise around perimeter
             of the shape. (Noise is randomly located within shape).

Discussion:
----------
All experiments were conducted with the first half of data
used for training and the second half used for testing.

SHAPENUM.NNP
This included NeuNet Pro project file uses backpropagation
to predict the shape number 1 to 6.  The project is slow to train
but the results are very good.  The training seems to stall for a long
time then suddenly picks up speed.  It learns in fits and bursts.
After 13,000 training cycles, the error on training set was 6 percent.
The subsequent report on the test set shows an error of 6 percent.
The project seems to have the most difficulty learning to tell 
the square from the circle. 
 
CIRCLE.NNP
This included NeuNet Pro project file uses backpropagation
to predict the [Circle] field.  The project is slow to train
but the results are very good.  The training seems to stall for a long
time around 30% error, then suddenly drops to 1% error. Training may
require several hours. The long training time seems to be caused
be difficulty in learning the difference between square and circle. 

SIZE.NNP
This included NeuNet Pro project file uses backpropagation
to predict the [Size] of every shape.  After only a few minutes
of training, the error on both training set and test set was
better than 5%.  As expected most of the error comes from the
random shapes. 

SHAPE_SFAM.NNP
The use of SFAM to classify [Shape] was not successful.
SFAM uses the values of the eight coordinates without
considering the internal relationship between these eight points.
The fact that all shapes are randomly located in the 
coordinate space means the location of the shape has nothing
to do with the classification of the shape.  SFAM correctly
classified the entire training set after only 2 cycles, but
it learned to classify based solely on the location of every
shape.  Therefore, the SFAM classifiction was useless on the
test set.