CS 587  Artificial Neural Networks

Assignment #4: Back-propagation and the XOR problem

Due:  Wednesday, April 20, 2005

 

Part I (50 pts)

 

Implement a back-propagation network.  You may assume that the network has a single hidden layer, but the user should be able to set other parameters (number of units in input, hidden and output layer, learning rate, range of initial weights, termination error) without recompilation.  Test your code on the XOR problem.  Configure the network with 2 hidden units and experiment with different learning rates.  Select the best learning rate.  Configure the network with 2, 3, 4 and 5 hidden units.  Note the number of epochs required for termination in each case.  Write a report about your findings.  Include tables.

 

 

 

Part II (75 pts)

 

The next test case is called the weaves problem.  The training file is called weavestrn.dat and the test file is weavestst.dat.  Both can be down loaded from my home page.  The problem consists of distinguishing 9 different kinds of weave patterns.  Texture measures have been calculated from image segments showing these different weaves.  Each segment is represented by 6 features.  There are 90 patterns in the training set, 10 for each kind of weave and 90 different patterns in the test set.  Training and test sets are too small, but convergence would even be slower using a larger training set.

      Design a backpropagation network to solve this problem.  An important task is determining an appropriate number of hidden units.  The problem is difficult because some weaves are quite similar.  The success of the network is measured through its performance on the test set.  You are not likely to be able to converge to a real small error.

 

Write a detailed report of your findings.  Show error matrices for training and test sets.  Comment on which weaves are easy to learn and which are more difficult.  Also comment on producer’s versus user’s accuracies.  Calculate the  measure for training and test data.  Include a discussion of the difficulties and failures you encountered.