User:Pyg/sandbox

An attractor network is a type of recurrent dynamical network, that evolves toward a stable pattern over time. Nodes in the attractor network tend toward a pattern that may either be fixed-point (converging towards a single state), cyclic (time-varying), or chaotic (stochastic). Attractor networks have largely been used in computational neuroscience to model neuronal processes such as associative memory and motor behavior, and also in biologically inspired methods of machine learning. An attractor network contains a set of n nodes, which can be represented as vectors in a d-dimensional space where n>d. Over time, the network state becomes drawn toward one of a set of predefined states on a d-manifold - these are the attractors.

Overview
In attractor networks, an attractor (or attracting set) is a closed subset of states A toward which the system of nodes evolves. A stationary attractor is a state or sets of states where the global dynamics of the network stabilize. Cyclic attractors evolve the network toward a set of states in a limit cycle, which is repeatedly traversed. Chaotic attractors are non-repeating bounded attractors that are continuously traversed. The network state space is the set of all possible node states. The attractor space is the set of nodes on the attractor. Attractor networks are initialized based on the input pattern. The dimensionality of the input pattern may differ from the dimensionality of the network nodes. The trajectory of the network consists of the set of states along the evolution path as the network converges toward the attractor state. The basin of attraction is the set of states that results in movement towards a certain attractor.

Types
Various types of attractors may be used to model different types of network dynamics. While fixed-point attractor networks are the most common (originating from Hopfield networks ), other types of networks are also examined.

Fixed point
The fixed point attractor naturally follows from the Hopfield network. Conventionally, fixed points in this model represent encoded memories. These models have been used to explain associative memory, classification, and pattern completion. Hopfield nets contain an underlying energy function that allow the network to asymptotically approach a stationary state. One class of point attractor network is initialized with an input, after which the input is removed and the network moves toward a stable state. Another class of attractor network features predefined weights that are probed by different types of input. If this stable state is different during and after the input, it serves as a model of associative memory. However, if the states during and after input do not differ, the network can be used for pattern completion.

Other stationary attractors
Line attractors and plane attractors are used in the study of oculomotor control. These line attractors, or neural integrators, describe eye position in response to stimuli. Ring attractors have been used to model rodent head direction.

Cyclic attractors
Cyclic attractors are instrumental in modelling central pattern generators, neurons that govern oscillatory activity in animals such as chewing, walking, and breathing.

Chaotic attractors
Chaotic attractors (also called strange attractors) have been hypothesized to reflect patterns in odor recognition. While chaotic attractors have the benefit of more quickly converging upon limit cycles, there is yet no experimental evidence to support this theory.

Implementations
Attractor networks have mainly been implemented as memory models using fixed-point attractors. However, they have been largely impractical for computational purposes because of difficulties in designing the attractor landscape and network wiring, resulting in spurious attractors and poorly conditioned basins of attraction. Furthermore, training on attractor networks is generally computationally expensive, compared to other methods such as k-nearest neighbor classifiers.

Hopfield Networks
Hopfield attractor networks are an early implementation of attractor networks with associative memory. These recurrent networks are initialized by the input, and tend toward a fixed-point attractor. The update function in discrete time is $$x(t+1)=f(Wx(t))$$, where $$x$$ is a vector of nodes in the network and $$W$$ is a matrix describing their connectivity. The continuous time update is $$\frac{dx}{dt}=-\lambda x+f(Wx)$$. Bidirectional networks are similar to Hopfield networks, with the special case that the matrix $$W$$ is symmetric.

Localist Attractor Networks
Zemel and Mozer (2001) proposed a method to reduce the number of spurious attractors that arise from the encoding of multiple attractors by each connection in the network. Localist attractor networks encode knowledge locally by implementing an expectation-maximization algorithm on a |mixture-of-gaussian attractors to minimize the free energy in the network and converge only the most relevant attractor. This results in the following update equations: ($$\pi_i$$ denotes basin strength, $$w_i$$ denotes the center of the basin. $$\xi$$ denotes input to the net.) The network is then re-observed, and the above steps repeat until convergence. The model also reflects two biologically relevant concepts. The change in $$\alpha$$ models stimulus priming by allowing quicker convergence toward a recently visited attractor. Furthermore, the summed activity of attractors allows a gang effect that causes two nearby attractors to mutually reinforce the other's basin.
 * 1) Determine the activity of attractors: $$q_i(t)=\frac{\pi_i(y(t),w_i,\sigma(t))}{\sum_jpi_jg(y(t),w_j,\sigma(t))}$$
 * 2) Determine the next state of the network: $$y(t+1)=\alpha(t)\xi+(1-\alpha(t))\sum_iq_i(t)w_i\,\!$$
 * 3) Determine the attractor width through network: $$\sigma^2_y(t)=\frac{1}{n}\sum_iq_i(t)|y(t)-w_i|^2$$

Reconsolidation Attractor Networks
Siegelmann (2008) generalized the localist attractor network model to include the tuning of attractors themselves. This algorithm uses the EM method above, with the following modifications: (1) early termination of the algorithm when the attractor's activity is most distributed, or when high entropy suggests a need for additional memories, and (2) the ability to update the attractors themselves: $$w_i(t+1)=vq_i(t)\cdot y(t)+[1-vq_i(t)]\cdot w_i(t)\,\!$$, where $$v$$ is the step size parameter of the change of $$w_i$$. This model reflects memory reconsolidation in animals, and shows some of the same dynamics as those found in memory experiments. Further developments in attractor networks, such as kernel based attractor networks, have improved the computational feasibility of attractor networks as a learning algorithm, while maintaining the high-level flexibility to perform pattern completion on complex compositional structures.