CS 587  Artificial Neural Networks

Assignment #3: The Kohonen Architecture

Due:     March 30, 2005

 

Part I (50 pts)

 

1.  Implement the Kohonen architecture for the 2D to 2D grid transformation as shown in Figure 6.8.  Use 100 Kohonen units.  The input vectors are randomly selected from a uniform distribution over the unit square (do not create a training set, every pattern is only used once).  Experiment with different numbers of iterations, neighborhood sizes and learning rates.  Describe the results of these experiments in your report and include pictures of the various grids that were created. 

 

 

Part II (50 pts)

 

2.  Suppose you have a set of geometrical objects of different shapes, colors and sizes.  Each object is characterized by these three features, and features are represented by numerical values as follows:

 

            Attribute                                               Numerical Value

            Shape

                        Triangle                                                0.25

                        Rectangle                                             0.50

                        Square                                                 0.75

                        Circle                                                   1.00

 

            Color:  

                        Blue                                                     0.25

                        Green                                                   0.50

                        Yellow                                                 0.75

                        Red                                                      1.00

 

            Size

                        Tiny                                                      0.25

                        Small                                                    0.50

                        Medium                                                0.75

                        Large                                                   1.00

 

Each object is represented by the triplet (Shape, Color, Size).  For example, (0.75, 0.50, 1.00) is a large, green square.  However, the attributes may be fuzzy.  For example, (0.95, 0.20, 0.30) is a bluish object, almost circular in shape and with a size slightly bigger than tiny.

 

Create the set of crisp objects and train a suitable Kohonen architecture with this set.  Show the result as a labeled set of Kohonen units. For example, a unit labeled TBS corresponds to a Triangle which is Blue and Small.  This labeling is done after the network is completely trained by presenting all training patterns again and labeling the winning unit for each one.  It may happen that a unit receives more than a single label.  If many units end up with several labels then the Kohonen layer does not contain enough units for the classification task.  Describe the result in your report; include the picture showing the labeled units.  Note: you are not showing the weights in this case; they are three-dimensional and difficult to draw.  You simply show the arrangement of Kohonen units, each one with its appropriate label(s).

 

Next, create a large training and test set of fuzzy units (about 1000 patterns in each set is an appropriate size; you are creating two different sets).  Test your Kohonen network trained with the crisp training set with the new test set.  State performance as a percentage.  Retrain the Kohonen network with the fuzzy training set and retest with the same set used for testing before.  Compare the two test results obtained from the same data.

 

Hand in your report and the code.  You need not show training and test data but you should describe how training and test data were obtained and the sizes of the various sets.  Your report is the important part.  Be sure that your report contains all important information and that this information is organized in an appropriate manner.