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.
|