A cortex-like learning machine, called a probabilistic associative memory (PAM), is disclosed for recognizing spatial and temporal patterns. A PAM is usually a multilayer or recurrent network of processing units (PUs). Each PU expands subvectors of a feature vector input to the PU into orthogonal vectors, and generates a probability distribution of the label of said feature vector, using expansion correlation matrices, which can be adjusted in supervised or unsupervised learning by a Hebbian-type rule. The PU also converts the probability distribution into a ternary vector to be included in feature subvectors that are input to PUs in the same or other layers. A masking matrix in each PU eliminates effect of corrupted components in query feature subvectors and enables maximal generalization by said PU and thereby that by the PAM. PAMs with proper learning can recognize rotated, translated and scaled patterns and are functional models of the cortex.
Cortex-like learning machine for temporal and hierarchical pattern recognition