Do-it-yourself Hopfield Neural Network
This simulation of a Hopfield network is written in a new programming language called Java. Unlike the older Hopfield network simulation in Mind and Machine it allows you to choose your own memory patterns to be learned by the network. Squares represent artificial neurons -- black indicates a non-firing neuron, red a firing neuron. Select a pattern by left-clicking on a set of squares. Right-clicking sets the neuron firing rate back to zero. Once selected the memory can be stored in the net by clicking on the impose button. You should see a minature version of the pattern appear on one of the boxes below the network. You can store up to 8 such patterns. You can clear a pattern to start a new one by using the clear button. The clear all clears both the current state of the network and the memory patterns.
Now you can pick up one of the stored patterns by clicking on its minature image. Try adding noise to the image by clicking on the noise button. Alternatively change the pattern by clicking on some more squares. You can think of this changed pattern as analogous to a partial memory or a corrupted memory. See if the network can find the true memory by clicking on the recall button. You may need to do this more than once to achieve full memory recall. You should see that the neural network can automatically relax its activity on to a stored pattern even for a rather noisy first image.