Neural Networks for Face Recognition

This page is a modified version of: Mitchell, Tom. "Neural Networks for Face Recognition: Companion to Chapter 4 of the textbook Machine Learning", http://www.cs.cmu.edu/~tom/faces.html, Carnegie Mellon University, 16 Oct 1997. Accessed 2 Apr 2014. Jeff Shufelt created the initial implementation of the code linked here.

A neural network learning algorithm called Backpropagation is among the most effective approaches to machine learning when the data includes complex sensory input such as images. This web page provides an implementation of the Backpropagation algorithm described in Chapter 4 of the textbook Machine Learning by Tom Mitchell. It also includes the dataset discussed in Section 4.7 of the book, containing over 600 face images. Neural networks are discussed in Section 18.7 of the textbook Artificial Intelligence: A Modern Approach (3rd Ed).

Team

Here are the student teams for the project. One assignment should be turned in per team. As described in the assignment, each member of a team will confidentially evaluate the contributions of the other one or two team members.

Documentation

This documentation is in the form of a homework assignment (available in PDF or latex) that provides a step-by-step introduction to the code and data, and simple instructions on how to run it.

Code

The code directory (all files code.zip) contains the source code for the neural network Backpropagation algorithm described in Chapter 4 of the Mitchell textbook.

Data

The face images directory contains the face image data described in Chapter 4 of the Tom Mitchell textbook. It is stored in PGM format. You can download a zip file of all of the images. The trainset file contains the specifications of training and test sets referred to in the documentation above.

This webiste and associated files are modified versions of: Mitchell, Tom. "Neural Networks for Face Recognition: Companion to Chapter 4 of the textbook Machine Learning", http://www.cs.cmu.edu/~tom/faces.html, Carnegie Mellon University, 16 Oct 1997. Accessed 2 Apr 2014. The code has been updated to compile with error or warnings on circa 2014 versions of gcc. The homework assignment (documentation) files have been simplified. The trainset files have been modified to change the root directory names. The data files have been changed from tar.Z files to zip files.