Introduction to Neural Computation 2011-12

Continuous Assessment Specification

This module is assessed by 80% examination and 20% continuous assessment. This document specifies the continuous assessment component.

The objective of this exercise is for you to gain practical experience in designing, implementing, training and optimizing a neural network designed to perform a real world task.

This year the task is Optical Recognition of Handwritten Digits, and the data sets you must use are provided by the UCI Machine Learning Repository.

The paper copy of your report and the accompanying CD/DVD must be handed in to the School Office by 12noon on Wednesday 11 January 2012. If you miss this deadline, your mark will be reduced by 5% (out of 100%) for each School working day (or part thereof) your hand-in is late.

Feedback with marks will be returned within four weeks of the hand-in deadline.

What You Need To Do

(1) Download the data sets and descriptions.

(2) Design a suitable Multiple-Layer Perceptron neural network that can learn from the training data set to generalize well to the testing data set. Hint: Some form of Back-Propagation learning algorithm will probably be most appropriate.

(3) Implement your neural network, using any programming language you like, or by setting it up in an existing neural network simulator. You may use any code or simulator you find on the internet, as long as you properly reference the sources in your report, or you can program your own neural network from scratch. If, like most students have done in the past, you decide to write your own code, you may find John Bullinaria's Step by Step Guide to Implementing a Simple Neural Network in C helpful to get you started. Hints: Writing your own code usually offers more flexibility than using someone else's simulator, though it may prove more time consuming, and there is limited credit/marks available for the implementation aspect of this exercise.

(4) Experiment systematically with the things that you think are most likely to improve the generalization performance you achieve. Hints: Consider how you are going to avoid under-fitting and over-fitting of the training data. Don't get carried away - aim to test two or three things well, rather than large numbers of things not very well.

(5) Write a report explaining what you did and what you found. You should include the following sections:

Don't forget that this exercise corresponds to only 20% of a 10 credit module. Spend an appropriate amount of time on it!

Assessment

You need to submit the written report as described above, plus a CD/DVD containing a .pdf version of your report, source files for your report (e.g., LaTeX or MS Word files), the source code of your neural network with instructions for using it, and any results files you think appropriate.

A reasonable length for the report would be between 2000 and 4000 words, plus as many diagrams, tables and graphs as you think appropriate. Marks will be awarded according to the percentage proportions indicated above, based on what you did and how well you described it.

Help and Advice

There will be an experienced Research Fellow available to advise you on all aspects of this exercise - Chris Bowers. He will be available for the rest of this term during his office hour on Thursdays at 10:00am in Room 223 of the School of Computer Science.


This page is maintained by John Bullinaria. Last updated on 24 October 2011.