Hopfield network
View on WikipediaA Hopfield network (or associative memory) is a form of recurrent neural network, or a spin glass system, that can serve as a content-addressable memory. The Hopfield network, named for John Hopfield, consists of a single layer of neurons, where each neuron is connected to every other neuron except itself. These connections are bidirectional and symmetric, meaning the weight of the connection from neuron i to neuron j is the same as the weight from neuron j to neuron i. Patterns are associatively recalled by fixing certain inputs, and dynamically evolve the network to minimize an energy function, towards local energy minimum states that correspond to stored patterns. Patterns are associatively learned (or "stored") by a Hebbian learning algorithm.
One of the key features of Hopfield networks is their ability to recover complete patterns from partial or noisy inputs, making them robust in the face of incomplete or corrupted data. Their connection to statistical mechanics, recurrent networks, and human cognitive psychology has led to their application in various fields, including physics, psychology, neuroscience, and machine learning theory and practice.
History
[edit]One origin of associative memory is human cognitive psychology, specifically the associative memory. Frank Rosenblatt studied "close-loop cross-coupled perceptrons", which are 3-layered perceptron networks whose middle layer contains recurrent connections that change by a Hebbian learning rule.[1]: 73–75 [2]: Chapter 19, 21
Another model of associative memory is where the output does not loop back to the input. W. K. Taylor proposed such a model trained by Hebbian learning in 1956.[3] Karl Steinbuch, who wanted to understand learning, and was inspired by watching his children learn,[4] published the Lernmatrix in 1961.[5][6] It was translated to English in 1963.[7] Similar research was done with the correlogram of D. J. Willshaw et al. in 1969.[8] Teuvo Kohonen trained an associative memory by gradient descent in 1974.[9]

Another origin of associative memory was statistical mechanics. The Ising model was published in 1920s as a model of magnetism, however it studied the thermal equilibrium, which does not change with time. Roy J. Glauber in 1963 studied the Ising model evolving in time, as a process towards thermal equilibrium (Glauber dynamics), adding in the component of time.[10][11]
The second component to be added was adaptation to stimulus. Described independently by Kaoru Nakano in 1971[12][13] and Shun'ichi Amari in 1972,[14] they proposed to modify the weights of an Ising model by Hebbian learning rule as a model of associative memory. The same idea was published by William A. Little in 1974,[15] who was acknowledged by Hopfield in his 1982 paper.
See Carpenter (1989)[16] and Cowan (1990)[17] for a technical description of some of these early works in associative memory.
The Sherrington–Kirkpatrick model of spin glass, published in 1975,[18] is the Hopfield network with random initialization. Sherrington and Kirkpatrick found that it is highly likely for the energy function of the SK model to have many local minima. In the 1982 paper, Hopfield applied this recently developed theory to study the Hopfield network with binary activation functions.[19] In a 1984 paper he extended this to continuous activation functions.[20] It became a standard model for the study of neural networks through statistical mechanics.[21][22]
A major advance in memory storage capacity was developed by Dimitry Krotov and Hopfield in 2016[23] through a change in network dynamics and energy function. This idea was further extended by Demircigil and collaborators in 2017.[24] The continuous dynamics of large memory capacity models was developed in a series of papers between 2016 and 2020.[23][25][26] Large memory storage capacity Hopfield Networks are now called Dense Associative Memories or modern Hopfield networks.
In 2024, John J. Hopfield and Geoffrey E. Hinton were awarded the Nobel Prize in Physics for their foundational contributions to machine learning, such as the Hopfield network.
Structure
[edit]
The units in Hopfield nets are binary threshold units, i.e. the units only take on two different values for their states, and the value is determined by whether or not the unit's input exceeds its threshold . Discrete Hopfield nets describe relationships between binary (firing or not-firing) neurons .[19] At a certain time, the state of the neural net is described by a vector , which records which neurons are firing in a binary word of bits.
The interactions between neurons have units that usually take on values of 1 or −1, and this convention will be used throughout this article. However, other literature might use units that take values of 0 and 1. These interactions are "learned" via Hebb's law of association, such that, for a certain state and distinct nodes
but .
(Note that the Hebbian learning rule takes the form when the units assume values in .)
Once the network is trained, no longer evolve. If a new state of neurons is introduced to the neural network, the net acts on neurons such that
- if
- if
where is the threshold value of the i'th neuron (often taken to be 0).[27] In this way, Hopfield networks have the ability to "remember" states stored in the interaction matrix, because if a new state is subjected to the interaction matrix, each neuron will change until it matches the original state (see the Updates section below).
The connections in a Hopfield net typically have the following restrictions:
- (no unit has a connection with itself)
- (connections are symmetric)
The constraint that weights are symmetric guarantees that the energy function decreases monotonically while following the activation rules.[28] A network with asymmetric weights may exhibit some periodic or chaotic behaviour; however, Hopfield found that this behavior is confined to relatively small parts of the phase space and does not impair the network's ability to act as a content-addressable associative memory system.
Hopfield also modeled neural nets for continuous values, in which the electric output of each neuron is not binary but some value between 0 and 1.[20] He found that this type of network was also able to store and reproduce memorized states.
Notice that every pair of units i and j in a Hopfield network has a connection that is described by the connectivity weight . In this sense, the Hopfield network can be formally described as a complete undirected graph , where is a set of McCulloch–Pitts neurons and is a function that links pairs of units to a real value, the connectivity weight.
Updating
[edit]Updating one unit (node in the graph simulating the artificial neuron) in the Hopfield network is performed using the following rule:
where:
- is the strength of the connection weight from unit j to unit i (the weight of the connection).
- is the state of unit i.
- is the threshold of unit i.
Updates in the Hopfield network can be performed in two different ways:
- Asynchronous: Only one unit is updated at a time. This unit can be picked at random, or a pre-defined order can be imposed from the very beginning.
- Synchronous: All units are updated at the same time. This requires a central clock to the system in order to maintain synchronization. This method is viewed by some as less realistic, based on an absence of observed global clock influencing analogous biological or physical systems of interest.
Neurons "attract or repel each other" in state space
[edit]The weight between two units has a powerful impact upon the values of the neurons. Consider the connection weight between two neurons i and j. If , the updating rule implies that:
- when , the contribution of j in the weighted sum is positive. Thus, is pulled by j towards its value
- when , the contribution of j in the weighted sum is negative. Then again, is pushed by j towards its value
Thus, the values of neurons i and j will converge if the weight between them is positive. Similarly, they will diverge if the weight is negative.
Convergence properties of discrete and continuous Hopfield networks
[edit]Bruck in his paper in 1990[29] studied discrete Hopfield networks and proved a generalized convergence theorem that is based on the connection between the network's dynamics and cuts in the associated graph. This generalization covered both asynchronous as well as synchronous dynamics and presented elementary proofs based on greedy algorithms for max-cut in graphs. A subsequent paper[30] further investigated the behavior of any neuron in both discrete-time and continuous-time Hopfield networks when the corresponding energy function is minimized during an optimization process. Bruck showed[29] that neuron j changes its state if and only if it further decreases the following biased pseudo-cut. The discrete Hopfield network minimizes the following biased pseudo-cut[30] for the synaptic weight matrix of the Hopfield net.
where and represents the set of neurons which are −1 and +1, respectively, at time . For further details, see the recent paper.[30]
The discrete-time Hopfield Network always minimizes exactly the following pseudo-cut[29][30]
The continuous-time Hopfield network always minimizes an upper bound to the following weighted cut[30]
where is a zero-centered sigmoid function.
The complex Hopfield network, on the other hand, generally tends to minimize the so-called shadow-cut of the complex weight matrix of the net.[31]
Energy
[edit]
Hopfield nets have a scalar value associated with each state of the network, referred to as the "energy", E, of the network, where:
This quantity is called "energy" because it either decreases or stays the same upon network units being updated. Furthermore, under repeated updating the network will eventually converge to a state which is a local minimum in the energy function (which is considered to be a Lyapunov function).[19] Thus, if a state is a local minimum in the energy function it is a stable state for the network. Note that this energy function belongs to a general class of models in physics under the name of Ising models; these in turn are a special case of Markov networks, since the associated probability measure, the Gibbs measure, has the Markov property.
Hopfield network in optimization
[edit]Hopfield and Tank presented the Hopfield network application in solving the classical traveling-salesman problem in 1985.[32] Since then, the Hopfield network has been widely used for optimization. The idea of using the Hopfield network in optimization problems is straightforward: If a constrained/unconstrained cost function can be written in the form of the Hopfield energy function E, then there exists a Hopfield network whose equilibrium points represent solutions to the constrained/unconstrained optimization problem. Minimizing the Hopfield energy function both minimizes the objective function and satisfies the constraints also as the constraints are "embedded" into the synaptic weights of the network. Although including the optimization constraints into the synaptic weights in the best possible way is a challenging task, many difficult optimization problems with constraints in different disciplines have been converted to the Hopfield energy function: Associative memory systems, Analog-to-Digital conversion, job-shop scheduling problem, quadratic assignment and other related NP-complete problems, channel allocation problem in wireless networks, mobile ad-hoc network routing problem, image restoration, system identification, combinatorial optimization, etc, just to name a few. However, while it is possible to convert hard optimization problems to Hopfield energy functions, it does not guarantee convergence to a solution (even in exponential time).[33]
Initialization and running
[edit]Initialization of the Hopfield networks is done by setting the values of the units to the desired start pattern. Repeated updates are then performed until the network converges to an attractor pattern. Convergence is generally assured, as Hopfield proved that the attractors of this nonlinear dynamical system are stable, not periodic or chaotic as in some other systems.[citation needed] Therefore, in the context of Hopfield networks, an attractor pattern is a final stable state, a pattern that cannot change any value within it under updating.[citation needed]
Training
[edit]Training a Hopfield net involves lowering the energy of states that the net should "remember". This allows the net to serve as a content addressable memory system, that is to say, the network will converge to a "remembered" state if it is given only part of the state. The net can be used to recover from a distorted input to the trained state that is most similar to that input. This is called associative memory because it recovers memories on the basis of similarity. For example, if we train a Hopfield net with five units so that the state (1, −1, 1, −1, 1) is an energy minimum, and we give the network the state (1, −1, −1, −1, 1) it will converge to (1, −1, 1, −1, 1). Thus, the network is properly trained when the energy of states which the network should remember are local minima. Note that, in contrast to Perceptron training, the thresholds of the neurons are never updated.
Learning rules
[edit]There are various different learning rules that can be used to store information in the memory of the Hopfield network. It is desirable for a learning rule to have both of the following two properties:
- Local: A learning rule is local if each weight is updated using information available to neurons on either side of the connection that is associated with that particular weight.
- Incremental: New patterns can be learned without using information from the old patterns that have been also used for training. That is, when a new pattern is used for training, the new values for the weights only depend on the old values and on the new pattern.[34]
These properties are desirable, since a learning rule satisfying them is more biologically plausible. For example, since the human brain is always learning new concepts, one can reason that human learning is incremental. A learning system that was not incremental would generally be trained only once, with a huge batch of training data.
Hebbian learning rule for Hopfield networks
[edit]Hebbian theory was introduced by Donald Hebb in 1949 in order to explain "associative learning", in which simultaneous activation of neuron cells leads to pronounced increases in synaptic strength between those cells.[35] It is often summarized as "Neurons that fire together wire together. Neurons that fire out of sync fail to link".
The Hebbian rule is both local and incremental. For the Hopfield networks, it is implemented in the following manner when learning binary patterns:
where represents bit i from pattern .
If the bits corresponding to neurons i and j are equal in pattern , then the product will be positive. This would, in turn, have a positive effect on the weight and the values of i and j will tend to become equal. The opposite happens if the bits corresponding to neurons i and j are different.
Storkey learning rule
[edit]This rule was introduced by Amos Storkey in 1997 and is both local and incremental. Storkey also showed that a Hopfield network trained using this rule has a greater capacity than a corresponding network trained using the Hebbian rule.[36] The weight matrix of an attractor neural network[clarification needed] is said to follow the Storkey learning rule if it obeys:
where is a form of local field[34] at neuron i.
This learning rule is local, since the synapses take into account only neurons at their sides. The rule makes use of more information from the patterns and weights than the generalized Hebbian rule, due to the effect of the local field.
Spurious patterns
[edit]Patterns that the network uses for training (called retrieval states) become attractors of the system. Repeated updates would eventually lead to convergence to one of the retrieval states. However, sometimes the network will converge to spurious patterns (different from the training patterns).[37] In fact, the number of spurious patterns can be exponential in the number of stored patterns, even if the stored patterns are orthogonal.[38] The energy in these spurious patterns is also a local minimum. For each stored pattern x, the negation -x is also a spurious pattern.
A spurious state can also be a linear combination of an odd number of retrieval states. For example, when using 3 patterns , one can get the following spurious state:
Spurious patterns that have an even number of states cannot exist, since they might sum up to zero[37]
Capacity
[edit]The Network capacity of the Hopfield network model is determined by neuron amounts and connections within a given network. Therefore, the number of memories that are able to be stored is dependent on neurons and connections. Furthermore, it was shown that the recall accuracy between vectors and nodes was 0.138 (approximately 138 vectors can be recalled from storage for every 1000 nodes) (Hertz et al., 1991). Therefore, it is evident that many mistakes will occur if one tries to store a large number of vectors. When the Hopfield model does not recall the right pattern, it is possible that an intrusion has taken place, since semantically related items tend to confuse the individual, and recollection of the wrong pattern occurs. Therefore, the Hopfield network model is shown to confuse one stored item with that of another upon retrieval. Perfect recalls and high capacity, >0.14, can be loaded in the network by Storkey learning method; ETAM,[39][40] ETAM experiments also in.[41] Ulterior models inspired by the Hopfield network were later devised to raise the storage limit and reduce the retrieval error rate, with some being capable of one-shot learning.[42]
The storage capacity can be given as where is the number of neurons in the net.
Human memory
[edit]The Hopfield network is a model for human associative learning and recall.[43][44] It accounts for associative memory through the incorporation of memory vectors. Memory vectors can be slightly used, and this would spark the retrieval of the most similar vector in the network. However, we will find out that due to this process, intrusions can occur. In associative memory for the Hopfield network, there are two types of operations: auto-association and hetero-association. The first being when a vector is associated with itself, and the latter being when two different vectors are associated in storage. Furthermore, both types of operations are possible to store within a single memory matrix, but only if that given representation matrix is not one or the other of the operations, but rather the combination (auto-associative and hetero-associative) of the two.
Hopfield's network model utilizes the same learning rule as Hebb's (1949) learning rule, which characterised learning as being a result of the strengthening of the weights in cases of neuronal activity.
Rizzuto and Kahana (2001) were able to show that the neural network model can account for repetition on recall accuracy by incorporating a probabilistic-learning algorithm. During the retrieval process, no learning occurs. As a result, the weights of the network remain fixed, showing that the model is able to switch from a learning stage to a recall stage. By adding contextual drift they were able to show the rapid forgetting that occurs in a Hopfield model during a cued-recall task. The entire network contributes to the change in the activation of any single node.
McCulloch and Pitts' (1943) dynamical rule, which describes the behavior of neurons, does so in a way that shows how the activations of multiple neurons map onto the activation of a new neuron's firing rate, and how the weights of the neurons strengthen the synaptic connections between the new activated neuron (and those that activated it). Hopfield would use McCulloch–Pitts's dynamical rule in order to show how retrieval is possible in the Hopfield network. However, Hopfield would do so in a repetitious fashion. Hopfield would use a nonlinear activation function, instead of using a linear function. This would therefore create the Hopfield dynamical rule and with this, Hopfield was able to show that with the nonlinear activation function, the dynamical rule will always modify the values of the state vector in the direction of one of the stored patterns.
Dense associative memory or modern Hopfield network
[edit]Hopfield networks[19][20] are recurrent neural networks with dynamical trajectories converging to fixed point attractor states and described by an energy function. The state of each model neuron is defined by a time-dependent variable , which can be chosen to be either discrete or continuous. A complete model describes the mathematics of how the future state of activity of each neuron depends on the known present or previous activity of all the neurons.
In the original Hopfield model of associative memory,[19] the variables were binary, and the dynamics were described by a one-at-a-time update of the state of the neurons. An energy function quadratic in the was defined, and the dynamics consisted of changing the activity of each single neuron only if doing so would lower the total energy of the system. This same idea was extended to the case of being a continuous variable representing the output of neuron , and being a monotonic function of an input current. The dynamics became expressed as a set of first-order differential equations for which the "energy" of the system always decreased.[20] The energy in the continuous case has one term which is quadratic in the (as in the binary model), and a second term which depends on the gain function (neuron's activation function). While having many desirable properties of associative memory, both of these classical systems suffer from a small memory storage capacity, which scales linearly with the number of input features.[19] In contrast, by increasing the number of parameters in the model so that there are not just pair-wise but also higher-order interactions between the neurons, one can increase the memory storage capacity.[45][46]
Dense Associative Memories[23] (also known as the modern Hopfield networks[25]) are generalizations of the classical Hopfield Networks that break the linear scaling relationship between the number of input features and the number of stored memories. This is achieved by introducing stronger non-linearities (either in the energy function or neurons' activation functions) leading to super-linear[23] (even an exponential[24]) memory storage capacity as a function of the number of feature neurons, in effect increasing the order of interactions between the neurons.[45][46] The network still requires a sufficient number of hidden neurons.[26]
The key theoretical idea behind dense associative memory networks is to use an energy function and an update rule that is more sharply peaked around the stored memories in the space of neuron's configurations compared to the classical model,[23] as demonstrated when the higher-order interactions and subsequent energy landscapes are explicitly modelled.[46]
Discrete variables
[edit]A simple example[23] of the modern Hopfield network can be written in terms of binary variables that represent the active and inactive state of the model neuron .In this formula the weights represent the matrix of memory vectors (index enumerates different memories, and index enumerates the content of each memory corresponding to the -th feature neuron), and the function is a rapidly growing non-linear function. The update rule for individual neurons (in the asynchronous case) can be written in the following form which states that in order to calculate the updated state of the -th neuron the network compares two energies: the energy of the network with the -th neuron in the ON state and the energy of the network with the -th neuron in the OFF state, given the states of the remaining neuron. The updated state of the -th neuron selects the state that has the lowest of the two energies.[23]
In the limiting case when the non-linear energy function is quadratic these equations reduce to the familiar energy function and the update rule for the classical binary Hopfield Network.[19]
The memory storage capacity of these networks can be calculated for random binary patterns. For the power energy function the maximal number of memories that can be stored and retrieved from this network without errors is given by[23]For an exponential energy function the memory storage capacity is exponential in the number of feature neurons[24]

Continuous variables
[edit]Modern Hopfield networks or dense associative memories can be best understood in continuous variables and continuous time.[25][26] Consider the network architecture, shown in Fig.1, and the equations for neuron's states evolution[26]
| 1 |
where the currents of the feature neurons are denoted by , and the currents of the memory neurons are denoted by ( stands for hidden neurons). There are no synaptic connections among the feature neurons or the memory neurons. A matrix denotes the strength of synapses from a feature neuron to the memory neuron . The synapses are assumed to be symmetric, so that the same value characterizes a different physical synapse from the memory neuron to the feature neuron . The outputs of the memory neurons and the feature neurons are denoted by and , which are non-linear functions of the corresponding currents. In general these outputs can depend on the currents of all the neurons in that layer so that and . It is convenient to define these activation functions as derivatives of the Lagrangian functions for the two groups of neurons
| 2 |
This way the specific form of the equations for neuron's states is completely defined once the Lagrangian functions are specified. Finally, the time constants for the two groups of neurons are denoted by and , is the input current to the network that can be driven by the presented data.

General systems of non-linear differential equations can have many complicated behaviors that can depend on the choice of the non-linearities and the initial conditions. For Hopfield Networks, however, this is not the case - the dynamical trajectories always converge to a fixed point attractor state. This property is achieved because these equations are specifically engineered so that they have an underlying energy function[26]
| 3 |
The terms grouped into square brackets represent a Legendre transform of the Lagrangian function with respect to the states of the neurons. If the Hessian matrices of the Lagrangian functions are positive semi-definite, the energy function is guaranteed to decrease on the dynamical trajectory[26]
| 4 |
This property makes it possible to prove that the system of dynamical equations describing temporal evolution of neurons' activities will eventually reach a fixed point attractor state.
In certain situations one can assume that the dynamics of hidden neurons equilibrates at a much faster time scale compared to the feature neurons, . In this case the steady state solution of the second equation in the system (1) can be used to express the currents of the hidden units through the outputs of the feature neurons. This makes it possible to reduce the general theory (1) to an effective theory for feature neurons only. The resulting effective update rules and the energies for various common choices of the Lagrangian functions are shown in Fig.2. In the case of log-sum-exponential Lagrangian function the update rule (if applied once) for the states of the feature neurons is the attention mechanism[25] commonly used in many modern AI systems (see Ref.[26] for the derivation of this result from the continuous time formulation).
Relationship to classical Hopfield network with continuous variables
[edit]Classical formulation of continuous Hopfield Networks[20] can be understood[26] as a special limiting case of the modern Hopfield networks with one hidden layer. Continuous Hopfield Networks for neurons with graded response are typically described[20] by the dynamical equations
| 5 |
and the energy function
| 6 |
where , and is the inverse of the activation function . This model is a special limit of the class of models that is called models A,[26] with the following choice of the Lagrangian functions
| 7 |
that, according to the definition (2), leads to the activation functions
| 8 |
If we integrate out the hidden neurons the system of equations (1) reduces to the equations on the feature neurons (5) with , and the general expression for the energy (3) reduces to the effective energy
| 9 |
While the first two terms in equation (6) are the same as those in equation (9), the third terms look superficially different. In equation (9) it is a Legendre transform of the Lagrangian for the feature neurons, while in (6) the third term is an integral of the inverse activation function. Nevertheless, these two expressions are in fact equivalent, since the derivatives of a function and its Legendre transform are inverse functions of each other. The easiest way to see that these two terms are equal explicitly is to differentiate each one with respect to . The results of these differentiations for both expressions are equal to . Thus, the two expressions are equal up to an additive constant. This completes the proof[26] that the classical Hopfield Network with continuous states[20] is a special limiting case of the modern Hopfield network (1) with energy (3).
General formulation of the modern Hopfield network
[edit]
Biological neural networks have a large degree of heterogeneity in terms of different cell types. This section describes a mathematical model of a fully connected modern Hopfield network assuming the extreme degree of heterogeneity: every single neuron is different.[47] Specifically, an energy function and the corresponding dynamical equations are described assuming that each neuron has its own activation function and kinetic time scale. The network is assumed to be fully connected, so that every neuron is connected to every other neuron using a symmetric matrix of weights , indices and enumerate different neurons in the network, see Fig.3. The easiest way to mathematically formulate this problem is to define the architecture through a Lagrangian function that depends on the activities of all the neurons in the network. The activation function for each neuron is defined as a partial derivative of the Lagrangian with respect to that neuron's activity
| 10 |
From the biological perspective one can think about as an axonal output of the neuron . In the simplest case, when the Lagrangian is additive for different neurons, this definition results in the activation that is a non-linear function of that neuron's activity. For non-additive Lagrangians this activation function can depend on the activities of a group of neurons. For instance, it can contain contrastive (softmax) or divisive normalization. The dynamical equations describing temporal evolution of a given neuron are given by[47]
| 11 |
This equation belongs to the class of models called firing rate models in neuroscience. Each neuron collects the axonal outputs from all the neurons, weights them with the synaptic coefficients and produces its own time-dependent activity . The temporal evolution has a time constant , which in general can be different for every neuron. This network has a global energy function[47]
| 12 |
where the first two terms represent the Legendre transform of the Lagrangian function with respect to the neurons' currents . The temporal derivative of this energy function can be computed on the dynamical trajectories leading to (see [47] for details)
| 13 |
The last inequality sign holds provided that the matrix (or its symmetric part) is positive semi-definite. If, in addition to this, the energy function is bounded from below the non-linear dynamical equations are guaranteed to converge to a fixed point attractor state. The advantage of formulating this network in terms of the Lagrangian functions is that it makes it possible to easily experiment with different choices of the activation functions and different architectural arrangements of neurons. For all those flexible choices the conditions of convergence are determined by the properties of the matrix and the existence of the lower bound on the energy function.

Hierarchical associative memory network
[edit]The neurons can be organized in layers so that every neuron in a given layer has the same activation function and the same dynamic time scale. If we assume that there are no horizontal connections between the neurons within the layer (lateral connections) and there are no skip-layer connections, the general fully connected network (11), (12) reduces to the architecture shown in Fig.4. It has layers of recurrently connected neurons with the states described by continuous variables and the activation functions , index enumerates the layers of the network, and index enumerates individual neurons in that layer. The activation functions can depend on the activities of all the neurons in the layer. Every layer can have a different number of neurons . These neurons are recurrently connected with the neurons in the preceding and the subsequent layers. The matrices of weights that connect neurons in layers and are denoted by (the order of the upper indices for weights is the same as the order of the lower indices, in the example above this means that the index enumerates neurons in the layer , and index enumerates neurons in the layer ). The feedforward weights and the feedback weights are equal. The dynamical equations for the neurons' states can be written as[47]
| 14 |
with boundary conditions
| 15 |
The main difference between these equations and those from the conventional feedforward networks is the presence of the second term, which is responsible for the feedback from higher layers. These top-down signals help neurons in lower layers to decide on their response to the presented stimuli. Following the general recipe it is convenient to introduce a Lagrangian function for the -th hidden layer, which depends on the activities of all the neurons in that layer.[47] The activation functions in that layer can be defined as partial derivatives of the Lagrangian
| 16 |
With these definitions the energy (Lyapunov) function is given by[47]
| 17 |
If the Lagrangian functions, or equivalently the activation functions, are chosen in such a way that the Hessians for each layer are positive semi-definite and the overall energy is bounded from below, this system is guaranteed to converge to a fixed point attractor state. The temporal derivative of this energy function is given by[47]
| 18 |
Thus, the hierarchical layered network is indeed an attractor network with the global energy function. This network is described by a hierarchical set of synaptic weights that can be learned for each specific problem.
See also
[edit]- Associative memory (disambiguation)
- Autoassociative memory
- Boltzmann machine – like a Hopfield net but uses annealed Gibbs sampling instead of gradient descent
- Dynamical systems model of cognition
- Ising model
- Hebbian theory
References
[edit]- ^ F. Rosenblatt, "Perceptual Generalization over Transformation Groups", pp. 63--100 in Self-organizing Systems: Proceedings of an Inter-disciplinary Conference, 5 and 6 May 1959. Edited by Marshall C. Yovitz and Scott Cameron. London, New York, [etc.], Pergamon Press, 1960. ix, 322 p.
- ^ Rosenblatt, Frank (1961-03-15). DTIC AD0256582: PRINCIPLES OF NEURODYNAMICS. PERCEPTRONS AND THE THEORY OF BRAIN MECHANISMS. Defense Technical Information Center.
- ^ W. K. Taylor, 1956. Electrical simulation of some nervous system functional activities. Information Theory 3, E. C. Cherry (ed.), pp. 314-328. London: Butterworths.
- ^ Eulogy: 1917 Karl Steinbuch 2005, by Bernard Widrow, Reiner Hartenstein, Robert Hecht-Nielsen, IEEE Computational Intelligence Society. page 5. August 2005.
- ^ Steinbuch, K. (1961-01-01). "Die Lernmatrix". Kybernetik (in German). 1 (1): 36–45. doi:10.1007/BF00293853. ISSN 1432-0770.
- ^ Steinbuch, Karl (1961). Automat und Mensch: über menschliche und maschinelle Intelligenz. Berlin: Springer. ISBN 978-3-642-53168-2. OL 27019478M.
{{cite book}}: ISBN / Date incompatibility (help) - ^ Steinbuch, K.; Piske, U. A. W. (December 1963). "Learning matrices and their applications". IEEE Transactions on Electronic Computers. EC-12 (6): 846–862. doi:10.1109/PGEC.1963.263588. ISSN 0367-7508.
- ^ Willshaw, D. J.; Buneman, O. P.; Longuet-Higgins, H. C. (June 1969). "Non-Holographic Associative Memory". Nature. 222 (5197): 960–962. Bibcode:1969Natur.222..960W. doi:10.1038/222960a0. ISSN 0028-0836. PMID 5789326.
- ^ Kohonen, T. (April 1974). "An Adaptive Associative Memory Principle". IEEE Transactions on Computers. C-23 (4): 444–445. doi:10.1109/T-C.1974.223960. ISSN 0018-9340.
- ^ Glauber, Roy J. (February 1963). "Roy J. Glauber "Time-Dependent Statistics of the Ising Model"". Journal of Mathematical Physics. 4 (2): 294–307. doi:10.1063/1.1703954. Retrieved 2021-03-21.
- ^ Süzen, Mehmet (29 September 2014). "Effective ergodicity in single-spin-flip dynamics". Physical Review E. 90 (3) 032141. arXiv:1405.4497. Bibcode:2014PhRvE..90c2141S. doi:10.1103/PhysRevE.90.032141. PMID 25314429. S2CID 118355454. Retrieved 2022-08-09.
- ^ Nakano, Kaoru (1971). "Learning Process in a Model of Associative Memory". Pattern Recognition and Machine Learning. pp. 172–186. doi:10.1007/978-1-4615-7566-5_15. ISBN 978-1-4615-7568-9.
- ^ Nakano, Kaoru (1972). "Associatron-A Model of Associative Memory". IEEE Transactions on Systems, Man, and Cybernetics. SMC-2 (3): 380–388. doi:10.1109/TSMC.1972.4309133.
- ^ Amari, Shun-Ichi (1972). "Learning patterns and pattern sequences by self-organizing nets of threshold elements". IEEE Transactions. C (21): 1197–1206.
- ^ Little, W. A. (1974). "The Existence of Persistent States in the Brain". Mathematical Biosciences. 19 (1–2): 101–120. doi:10.1016/0025-5564(74)90031-5.
- ^ Carpenter, Gail A (1989-01-01). "Neural network models for pattern recognition and associative memory". Neural Networks. 2 (4): 243–257. doi:10.1016/0893-6080(89)90035-X. ISSN 0893-6080.
- ^ Cowan, Jack D. (January 1990). "Discussion: McCulloch-Pitts and related neural nets from 1943 to 1989". Bulletin of Mathematical Biology. 52 (1–2): 73–97. doi:10.1007/BF02459569. ISSN 0092-8240.
- ^ Sherrington, David; Kirkpatrick, Scott (1975-12-29). "Solvable Model of a Spin-Glass". Physical Review Letters. 35 (26): 1792–1796. Bibcode:1975PhRvL..35.1792S. doi:10.1103/PhysRevLett.35.1792. ISSN 0031-9007.
- ^ a b c d e f g Hopfield, J. J. (1982). "Neural networks and physical systems with emergent collective computational abilities". Proceedings of the National Academy of Sciences. 79 (8): 2554–2558. Bibcode:1982PNAS...79.2554H. doi:10.1073/pnas.79.8.2554. PMC 346238. PMID 6953413.
- ^ a b c d e f g Hopfield, J. J. (1984). "Neurons with graded response have collective computational properties like those of two-state neurons". Proceedings of the National Academy of Sciences. 81 (10): 3088–3092. Bibcode:1984PNAS...81.3088H. doi:10.1073/pnas.81.10.3088. PMC 345226. PMID 6587342.
- ^ Engel, A.; Broeck, C. van den (2001). Statistical mechanics of learning. Cambridge, UK; New York, NY: Cambridge University Press. ISBN 978-0-521-77307-2.
- ^ Seung, H. S.; Sompolinsky, H.; Tishby, N. (1992-04-01). "Statistical mechanics of learning from examples". Physical Review A. 45 (8): 6056–6091. Bibcode:1992PhRvA..45.6056S. doi:10.1103/PhysRevA.45.6056. PMID 9907706.
- ^ a b c d e f g h i j Krotov, Dmitry; Hopfield, John (2016). "Dense Associative Memory for Pattern Recognition". Neural Information Processing Systems. 29: 1172–1180. arXiv:1606.01164.
- ^ a b c d Mete, Demircigil; et al. (2017). "On a model of associative memory with huge storage capacity". Journal of Statistical Physics. 168 (2): 288–299. arXiv:1702.01929. Bibcode:2017JSP...168..288D. doi:10.1007/s10955-017-1806-y. S2CID 119317128.
- ^ a b c d e Ramsauer, Hubert; et al. (2021). "Hopfield Networks is All You Need". International Conference on Learning Representations. arXiv:2008.02217.
- ^ a b c d e f g h i j k Krotov, Dmitry; Hopfield, John (2021). "Large associative memory problem in neurobiology and machine learning". International Conference on Learning Representations. arXiv:2008.06996.
- ^ Hopfield, J. J. (1982). "Neural networks and physical systems with emergent collective computational abilities". Proceedings of the National Academy of Sciences. 79 (8): 2554–2558. Bibcode:1982PNAS...79.2554H. doi:10.1073/pnas.79.8.2554. PMC 346238. PMID 6953413.
- ^ MacKay, David J. C. (2003). "42. Hopfield Networks". Information Theory, Inference and Learning Algorithms. Cambridge University Press. p. 508. ISBN 978-0521642989.
This convergence proof depends crucially on the fact that the Hopfield network's connections are symmetric. It also depends on the updates being made asynchronously.
- ^ a b c Bruck, J. (October 1990). "On the convergence properties of the Hopfield model". Proc. IEEE. 78 (10): 1579–85. doi:10.1109/5.58341.
- ^ a b c d e Uykan, Z. (September 2020). "On the Working Principle of the Hopfield Neural Networks and its Equivalence to the GADIA in Optimization". IEEE Transactions on Neural Networks and Learning Systems. 31 (9): 3294–3304. Bibcode:2020ITNNL..31.3294U. doi:10.1109/TNNLS.2019.2940920. PMID 31603804. S2CID 204331533.
- ^ Uykan, Z. (March 2021). "Shadow-Cuts Minimization/Maximization and Complex Hopfield Neural Networks". IEEE Transactions on Neural Networks and Learning Systems. 32 (3): 1096–1109. Bibcode:2021ITNNL..32.1096U. doi:10.1109/TNNLS.2020.2980237. PMID 32310787. S2CID 216047831.
- ^ Hopfield, J.J.; Tank, D.W. (1985). "Neural computation of decisions in optimization problems". Biological Cybernetics. 52 (3): 141–6. doi:10.1007/BF00339943. PMID 4027280. S2CID 36483354.
- ^ Bruck, Jehoshua; Goodman, Joseph W (1990-06-01). "On the power of neural networks for solving hard problems". Journal of Complexity. 6 (2): 129–135. doi:10.1016/0885-064X(90)90001-T. ISSN 0885-064X.
- ^ a b Storkey, A.J.; Valabregue, R. (1999). "The basins of attraction of a new Hopfield learning rule". Neural Networks. 12 (6): 869–876. CiteSeerX 10.1.1.19.4681. doi:10.1016/S0893-6080(99)00038-6. PMID 12662662.
- ^ Hebb 1949
- ^ Storkey, Amos (1997). "Increasing the capacity of a Hopfield network without sacrificing functionality". Artificial Neural Networks – ICANN'97. Lecture Notes in Computer Science. Vol. 1327. Springer. pp. 451–6. CiteSeerX 10.1.1.33.103. doi:10.1007/BFb0020196. ISBN 978-3-540-69620-9.
- ^ a b Hertz 1991
- ^ Bruck, J.; Roychowdhury, V.P. (1990). "On the number of spurious memories in the Hopfield model (neural network)". IEEE Transactions on Information Theory. 36 (2): 393–397. doi:10.1109/18.52486.
- ^ Liou, C.-Y.; Lin, S.-L. (2006). "Finite memory loading in hairy neurons" (PDF). Natural Computing. 5 (1): 15–42. doi:10.1007/s11047-004-5490-x. S2CID 35025761.
- ^ Liou, C.-Y.; Yuan, S.-K. (1999). "Error Tolerant Associative Memory". Biological Cybernetics. 81 (4): 331–342. doi:10.1007/s004220050566. PMID 10541936. S2CID 6168346.
- ^ Yuan, S.-K. (June 1997). Expanding basins of attraction of the associative memory (Master thesis). National Taiwan University. 991010725609704786.
- ^ ABOUDIB, Ala; GRIPON, Vincent; JIANG, Xiaoran (2014). "A study of retrieval algorithms of sparse messages in networks of neural cliques". COGNITIVE 2014 : The 6th International Conference on Advanced Cognitive Technologies and Applications. pp. 140–6. arXiv:1308.4506. Bibcode:2013arXiv1308.4506A.
- ^ Amit, D.J. (1992). Modeling Brain Function: The World of Attractor Neural Networks. Cambridge University Press. ISBN 978-0-521-42124-9.
- ^ Rolls, Edmund T. (2016). Cerebral Cortex: Principles of Operation. Oxford University Press. ISBN 978-0-19-878485-2.
- ^ a b Horn, D; Usher, M (1988). "Capacities of multiconnected memory models". Journal de Physique. 49 (3): 389–395. doi:10.1051/jphys:01988004903038900.
- ^ a b c Burns, Thomas; Fukai, Tomoki (2023). "Simplicial Hopfield networks". International Conference on Learning Representations. 11. arXiv:2305.05179.
- ^ a b c d e f g h i Krotov, Dmitry (2021). "Hierarchical Associative Memory". arXiv:2107.06446 [cs.NE].
- Hebb, D.O. (2005) [1949]. The Organization of Behavior: A Neuropsychological Theory. Psychology Press. ISBN 978-1-135-63190-1.
- Hertz, John A. (2018) [1991]. Introduction To The Theory Of Neural Computation. CRC Press. ISBN 978-0-429-96821-1.
- McCulloch, W.S.; Pitts, W.H. (1943). "A logical calculus of the ideas immanent in nervous activity". Bulletin of Mathematical Biophysics. 5 (4): 115–133. doi:10.1007/BF02478259.
- Polyn, S.M.; Kahana, M.J. (2008). "Memory search and the neural representation of context". Trends in Cognitive Sciences. 12 (1): 24–30. doi:10.1016/j.tics.2007.10.010. PMC 2839453. PMID 18069046.
- Rizzuto, D.S.; Kahana, M.J. (2001). "An autoassociative neural network model of paired-associate learning". Neural Computation. 13 (9): 2075–2092. CiteSeerX 10.1.1.45.7929. doi:10.1162/089976601750399317. PMID 11516358. S2CID 7675117.
- Kruse, Rudolf; Borgelt, Christian; Klawonn, Frank; Moewes, Christian; Steinbrecher, Matthias; Held, Pascal (2013). Computational Intelligence: A Methodological Introduction. Springer. ISBN 978-1-4471-5013-8.
External links
[edit]- Rojas, Raul (12 July 1996). "13. The Hopfield model" (PDF). Neural Networks – A Systematic Introduction. Springer. ISBN 978-3-540-60505-8.
- Hopfield Network Javascript
- The Travelling Salesman Problem Archived 2015-05-30 at the Wayback Machine – Hopfield Neural Network JAVA Applet
- Hopfield, John (2007). "Hopfield network". Scholarpedia. 2 (5): 1977. Bibcode:2007SchpJ...2.1977H. doi:10.4249/scholarpedia.1977.
- "Don't Forget About Associative Memories". The Gradient. November 7, 2020. Retrieved September 27, 2024.
Hopfield network
View on GrokipediaOverview
Definition and Purpose
A Hopfield network is a recurrent artificial neural network featuring symmetric, bidirectional connections among its neurons, designed primarily as a content-addressable memory system. This architecture allows the network to store multiple patterns and retrieve complete versions of them from partial, corrupted, or noisy inputs by iteratively updating neuron states until reaching a stable configuration.[1] Introduced by physicist John Hopfield in 1982, the model draws inspiration from physical systems like spin glasses to bridge concepts from statistical mechanics and computation, enabling tasks such as associative recall and optimization through collective dynamics that minimize an underlying energy function. For this foundational work on machine learning, Hopfield shared the 2024 Nobel Prize in Physics with Geoffrey Hinton.[1][8] In this framework, neurons operate as binary units—taking on/off states akin to spins in the Ising model—which evolve via feedback to settle into attractor states that encode memories. Unlike feedforward networks that process inputs in a single pass, Hopfield networks rely on recurrent loops for progressive refinement of representations.[1]Basic Components
A Hopfield network is composed of binary neurons, each of which can adopt one of two states, conventionally represented as or . These neurons are interconnected in a fully connected graph structure, where every neuron links to all others except itself, ensuring no self-loops are present. This architecture models a recurrent neural network without directional biases in connectivity, facilitating collective behavior among the units.[1] The interactions between neurons are governed by synaptic weights organized into an symmetric matrix , satisfying for all . The diagonal elements are initialized to zero (), preventing self-reinforcement. The symmetry of this weight matrix eliminates directed cycles, which inherently promotes the network's tendency toward stable configurations by avoiding asymmetric influences that could lead to perpetual motion.[1] Each neuron incorporates a threshold value, commonly set to zero to simplify the model and provide a neutral bias for activation decisions. This threshold determines the net input required for a neuron to switch states, influencing the overall responsiveness of the network.[1] The network processes information through its state vector , where each element denotes the state of the -th neuron. An initial state vector serves as input, and the network internally evolves this vector based on the weights and thresholds. These core elements collectively enable the network to function as an associative memory device, where partial or noisy inputs can retrieve complete stored patterns.[1]Mathematical Formulation
Network Structure
The Hopfield network consists of fully connected binary neurons, each representing a state that can take one of two values, typically or , analogous to spins in a physical system.[1] The state of the network at any time is described by a state vector , where each component .[1] This binary representation enables the network to model discrete attractors, facilitating associative memory functions.[1] The interactions between neurons are governed by a weight matrix , an symmetric matrix with zero diagonal elements ( for all ), ensuring no self-connections or self-loops.[1] The symmetry of () reflects the bidirectional nature of synaptic connections in the model, promoting collective dynamics.[1] This full connectivity, excluding self-loops, allows every neuron to receive inputs from all others, forming the basis for the network's recurrent structure.[1] The network is designed to store patterns, denoted as for , where each .[1] These patterns serve as stable attractors in the network's state space, enabling the retrieval of complete memories from partial or noisy inputs.[1] The input to each neuron , known as the local field , is computed as the weighted sum of the states of all other neurons:This pre-activation value determines the potential update of based on the current network configuration.[1] The structure of the Hopfield network draws inspiration from the Ising model in statistical physics, where neurons correspond to spins and weights to exchange interactions, allowing analysis through thermodynamic analogies.[1]
Energy Function
The energy function of a Hopfield network provides a Lyapunov function that governs the dynamics, ensuring that state transitions lead to stable configurations by monotonically decreasing the system's "energy." For a network with neuron states $ s_i = \pm 1 $ and symmetric weight matrix $ W $ (with zero diagonal elements), the energy is defined as the quadratic formUpdate Rules
The update rules in a Hopfield network define how the states of the neurons evolve over time to retrieve stored patterns, operating on binary neuron states $ s_i \in {-1, +1} $ for $ i = 1, \dots, N $, where $ N $ is the number of neurons.[9] The core mechanism uses an activation function that thresholds the local field $ h_i = \sum_{j=1}^N W_{ij} s_j W_{ii} = 0 $) and zero biases in the standard formulation.[1] The activation function is the sign function, $ s_i \leftarrow \operatorname{sign}(h_i) $, which sets $ s_i = +1 $ if $ h_i > 0 $ and $ s_i = -1 $ if $ h_i \leq 0 $, ensuring binary outputs.[9] In asynchronous updates, a single neuron $ i $ is selected randomly (or in a fixed order) and updated while keeping all other states fixed: $ s_i \leftarrow \operatorname{sign}\left( \sum_{j \neq i} W_{ij} s_j \right) $.[1] This mode processes one neuron at a time, mimicking sequential computation, and guarantees a non-increase in the network's energy function with each update.[9] Asynchronous updates are preferred for reliable convergence to stable fixed points, as they avoid potential cycles.[1] Synchronous updates, in contrast, revise all neurons simultaneously based on the current state: $ s_i(t+1) \leftarrow \operatorname{sign}\left( \sum_{j \neq i} W_{ij} s_j(t) \right) $ for all $ i $.[9] This parallel mode enables faster computation in hardware implementations but can lead to oscillations or limit cycles rather than fixed-point convergence.[9]Dynamics and Convergence
Synchronous and Asynchronous Updates
In Hopfield networks, synchronous updates involve computing the new state of all neurons simultaneously based on the states from the previous time step, enabling parallel processing that is computationally efficient in vectorized implementations.[9] This mode can lead to limit cycles, such as 2-cycles where the network oscillates between two states without converging to a fixed point, particularly when the weight matrix is symmetric.[10] For instance, in simulations of small networks with positive weights between connected neurons, synchronous updates may trap the system in periodic flipping between patterns, preventing stable retrieval. Asynchronous updates, in contrast, select and update one neuron at a time, either randomly or in a fixed sequence, ensuring that the network's energy function strictly decreases with each update until reaching a fixed point attractor.[1] This sequential approach guarantees convergence to stable states without oscillations, making it ideal for theoretical analyses of dynamics and optimization problems where avoiding cycles is critical, such as in constraint satisfaction tasks.[9][11] The trade-offs between these modes highlight their complementary uses: synchronous updates offer speed advantages in hardware or parallel simulations but risk spurious oscillations like 2-cycles that degrade performance in memory retrieval, while asynchronous updates provide reliable convergence at the cost of slower execution due to serial processing. In optimization applications, asynchronous modes are preferred to prevent trapping in cycles, ensuring progression toward global or local minima.[12] Modern implementations often employ relaxed synchronous variants, such as damped or probabilistic parallel updates, to balance efficiency with stability in large-scale computations.[13]Convergence Properties
In asynchronous updates, where only one neuron is updated at a time based on the sign of its local field $ h_k = \sum_{j \neq k} w_{kj} s_j $, the change in the network's energy function satisfies $ \Delta E = 2 s_k h_k \leq 0 $, with equality only if the neuron is already at a fixed point.[3] This decrease occurs because the update rule flips the state $ s_k $ only if $ s_k h_k < 0 $, ensuring the energy does not increase. Given the symmetric weight matrix $ W $ (where $ w_{ij} = w_{ji} w_{ii} = 0 $), the energy function serves as a Lyapunov function, guaranteeing that the dynamics are stable.[14] Since the state space is finite (with $ 2^N $ possible binary configurations for $ N $ neurons), the strictly decreasing energy implies convergence to a local minimum—a fixed point—in a finite number of steps.[14] For synchronous updates, where all neurons are updated simultaneously, convergence is not guaranteed in the same manner; the network may enter limit cycles, particularly of length 2, due to potential oscillations between two states.[14] Convergence to a fixed point occurs only if no such synchronous oscillations arise, which depends on the specific initial state and weight configuration, but the absence of cycles cannot be assured without additional constraints on $ W $.[14] The conditions of symmetric weights and no self-loops are essential for Lyapunov stability in both update modes, as they ensure the energy function is well-defined and non-increasing.[1] In discrete Hopfield networks, this leads to halting at a fixed point in finite time, unlike continuous variants where dynamics follow differential equations and approach equilibria asymptotically without necessarily reaching them in finite time.[5] From random initial states, the probability of converging to a desired attractor (rather than a spurious state) is high when the number of stored patterns is below the critical capacity $ \alpha_c \approx 0.14 $ and initial noise is low, as the basins of attraction encompass a significant portion of the state space under these conditions.[1]Attractors and State Space
The state space of a Hopfield network consists of all possible configurations of its N binary neurons, forming a discrete N-dimensional hypercube with 2^N vertices, where each vertex represents a unique binary state vector. This hypercube structure captures the instantaneous condition of the network, with dynamics evolving along its edges as neurons update their states based on interactions with others. Attractors in the Hopfield network are the stable fixed points or short cycles to which the system's trajectories converge from a wide range of initial conditions, serving as the stored memory patterns. The stored patterns are designed to be stable attractors, ensuring that the network settles into these configurations when dynamics are initiated near them, thereby enabling reliable recall of information. While fixed points predominate, simulations occasionally reveal simple cycles of length two, though these are less common in properly configured networks. Basins of attraction define the regions within the state space from which initial states flow toward a particular attractor, facilitating pattern completion even from partial or noisy inputs. This geometric partitioning of the hypercube allows the network to associate corrupted or incomplete patterns with the nearest stored memory, demonstrating the robustness of these basins to perturbations. In the state space, the dynamics exhibit an "attract or repel" behavior, where configurations similar to a stored pattern are drawn toward its attractor basin, while dissimilar ones are repelled away, guided by the underlying energy landscape.[15] Stable attractors pull nearby states inward, reinforcing the memory, whereas unstable regions push trajectories outward to prevent trapping in non-memory states.[16] For small networks, such as N=3 with 8 possible states forming a cube, trajectories can be visualized as directed paths converging to attractor vertices, illustrating how initial points midway along edges flow toward the nearest minimum, with basin boundaries separating regions of influence for each attractor. This low-dimensional view highlights the funnel-like structure of basins, where diverse starting configurations collapse into stable memories.[15]Learning Algorithms
Hebbian Learning Rule
The Hebbian learning rule forms the foundation for storing patterns in a Hopfield network, drawing from Donald Hebb's principle that synaptic connections between neurons strengthen when those neurons exhibit correlated activity, often summarized as "neurons that fire together wire together."[1] In the Hopfield model, this principle is applied to encode a set of M binary patterns , typically represented in states as for neuron i in pattern , treating simultaneous activation across neurons in a pattern as the correlated firing to be reinforced.[1] The rule computes the synaptic weights as the normalized sum of outer products over the stored patterns:Storkey Learning Rule
The Storkey learning rule, introduced as an enhancement to the foundational Hebbian learning rule for Hopfield networks, addresses pattern interference by incorporating local field corrections during weight updates.[17] Unlike the simple Hebbian approach, which directly correlates pattern components, the Storkey rule iteratively adjusts weights to minimize crosstalk between stored patterns, enabling better storage of non-orthogonal patterns.[17] The core update for the synaptic weight $ W_{ij} $ when incorporating a new pattern $ \xi^\nu $ (with components $ \xi_i^\nu = \pm 1 $) is given by:Initialization and Training Process
The initialization and training of a Hopfield network constitute a straightforward, one-shot offline procedure that sets the synaptic weights based on selected patterns, after which the weights remain fixed for all subsequent recall operations, without requiring iterative optimization or backpropagation as in modern neural networks. This process leverages unsupervised Hebbian-style learning to encode memories as stable attractors in the network's state space.[18] The first step involves selecting a set of $ p $ patterns to store, denoted as $ \xi^\mu $ for $ \mu = 1 $ to $ p $, where each pattern is a binary vector of length $ N $ (the number of neurons) with components $ \xi_i^\mu = \pm 1 $. These patterns should ideally be orthogonal or exhibit low correlation to optimize storage capacity and retrieval reliability; in practice, random or preprocessed patterns (e.g., from data compression) are often used.[18] The weight matrix $ \mathbf{W} $ is then initialized as an $ N \times N $ zero matrix. A learning rule is applied to compute the weights, such as the Hebbian rule, which accumulates outer products of the patterns: $ W_{ij} = \frac{1}{N} \sum_{\mu=1}^p \xi_i^\mu \xi_j^\mu $ for $ i \neq j $, with diagonal elements $ W_{ii} = 0 $ to avoid self-reinforcement. For enhanced capacity, the Storkey rule can be employed instead, which adjusts weights incrementally while preserving locality. In the standard model, biases are omitted, but they can be added if patterns require shifting (e.g., $ b_i = \frac{1}{N} \sum_\mu \xi_i^\mu $) to account for non-zero means. Patterns are typically already normalized to $ \pm 1 $, but for non-binary inputs, normalization ensures unit variance across components. Training concludes once weights are computed, yielding a fixed connectivity for associative recall. To evaluate performance, the network can be tested by initializing with random states or noisy versions of stored patterns and observing convergence behavior.[18] The recall phase operates by evolving an initial state vector $ \mathbf{s}^{(0)} $ (often a corrupted input) through iterative updates until reaching a fixed point, where no further state changes occur or the energy function $ E = -\frac{1}{2} \sum_{i,j} W_{ij} s_i s_j $ achieves a local minimum. Asynchronous updates—randomly selecting one neuron at a time—are common to guarantee convergence via energy decrease, though synchronous parallel updates (all neurons simultaneously) may be used for speed at the risk of oscillations. Updates follow $ s_i \leftarrow \operatorname{sgn}\left( \sum_j W_{ij} s_j \right) $, iterated until stability.[18] The following high-level pseudocode outlines the process (using the Hebbian rule for training): Training Phase# Inputs: patterns ξ^μ (p vectors of length N, each ±1)
W ← zeros(N, N) # Initialize weight matrix
for μ ← 1 to p do
for i ← 1 to N do
for j ← 1 to N do
if i ≠ j then
W[i, j] ← W[i, j] + (ξ^μ_i * ξ^μ_j) / N
# Diagonal already zero; weights now fixed
Recall Phase
# Input: initial state s (vector of length N, ±1 or partial)
s ← initial_state
changed ← true
while changed do
changed ← false
for each neuron i (in random order) do
h_i ← sum_{j=1 to N} W[i, j] * s_j
new_s_i ← sgn(h_i)
if new_s_i ≠ s_i then
s_i ← new_s_i
changed ← true
return s # Converged state
This algorithm ensures efficient one-pass training and iterative retrieval, with convergence typically reached in $ O(N) $ to $ O(N \log N) $ steps depending on the input.[18]