HOPFIELD NEURAL MODEL

The Hopfield neural model is used for recognition of incomplete or inexact patterns. It matches the test pattern on a set of comparison patterns and modifies it until convergence.

Let wi be the set of comparison patterns, for example the words in a vocabulary, and x a test pattern. A pattern is a finite sequence of binary items (with values either +1 or -1). Let D denote the dimension (length) of the patterns. The algorithm is

  1. save the state x in x'
  2. for each pattern k evaluate the scalar product of the pattern vector wk with the state of the network x, s(k) = wk x, and h(k) = (1/2) ( D - s(k) )
  3. evaluate a = (1/D) mink h(k) and a' = ln( a / (1-a) )
  4. compute the new x = sign( ∑k wk ea' h(k) ) where the sum is a vector sum over the patterns
  5. repeat until the new state equal the saved one, x=x'



Marco Corvi - 2001