Content Addressable Memories in Reproducing Kernel Hilbert Spaces Erion Hasanbelliu, and Jose C. Principe, Member, IEEE Abstract--Content addressable memories (CAM) are one of the few technologies that provide the capability to store and retrieve information based on content. Even more useful is their ability to recall data from noisy or incomplete inputs. However, the input data dimension limits the amount of data that CAMs can store and successfully retrieve. We propose to increase the amount of information that can be stored by implementing CAMs in a reproducing kernel Hilbert space where the input dimension is practically infinite, effectively lifting this CAM limitation. We show the advantages of kernel CAMs over CAMs by comparing their performance in information retrieval, generalization, storage, and online learning. I. INTRODUCTION H UMAN memory is believed to be associative where events are linked to one another in such a way that the occurrence of an event, stimulus, triggers the emergence of another event, response. This association is strengthened through time by the constant trigger of the response via the stimulus event; a learning process that is known as Hebb's rule [1]. There are two main types of associative memory: autoassociative memory where a stored pattern which most closely resembles the stimulus pattern is retrieved, and heteroassociative memory where the retrieved pattern is the response of a stored stimulus that closely matches the input pattern. The theory of associative memories is well researched by some of today's most renowned research scientist like Kohonen and Anderson. A well known type of autoassociative memory is the Hopfield model [2], which is an unsupervised recurrent neural network. The Hopfield network computes its output recursively in time until it reaches a stable (attractor) point which is one of the stored patterns. Heteroassociative memory, on the other hand, is simpler and the output pattern is computed immediately from the stimulus pattern and the association matrix (memory) [3]. A CAM can be thought as a linear network being trained Manuscript received August 7, 2008. This work was supported in part by the National Science Foundation under Grant ECS-0601271 and in part by the Office of Naval Research under Grant NOOOI4-07-1-0698. Erion Hasanbelliu is with the Computational NeuroEngineering Laboratory, ECE Department, University of Florida, Gainesville, FL 32611 USA (phone: 352-392-2682; fax: 352-392-0044; e-mail: erioni@cne1.ufl.edu). Jose C. Principe is with the Computational NeuroEngineering Laboratory, ECE Department, University of Florida, Gainesville, FL 32611 USA (e-mail: principe@cne1.ufl.edu). with input output patterns very similarly to regression. In order to avoid cross-talk amongst the stored patterns, the stored patterns must be orthogonal. Since an N dimensional vector space has only N orthogonal directions, it is only possible to store without crosstalk N memories with N components. This becomes the most fundamental limitation of CAMs. The advent of Reproducing Kernel Hilbert Spaces (RKHS) in machine learning and signal processing brings a new perspective to CAMs since for most kernels (like the Gaussian) the dimensionality of the RKHS is infinite. This yields the promise of CAMS with infinite storage, and attracted our attention. The rest of the paper is organized as follows. The next section describes heteroassociative memories in more detail and a way to improve its shortcomings. The third section explains associative memories using kernel methods. The fourth section presents several experimental results of comparing the kernel CAM against the original CAM. And, the last section concludes the paper with some comments on this work. II. CONTENT ADDRESSABLE MEMORIES A. Heteroassociative memory Content addressable memories utilize Hebb's learning rule to associate a certain input state vector x with an output state vector d. The connections between the input and output patterns are stored in a matrix W, which is computed using the outer product rule W =1] . d.x T The system is considered to have learned the association when whenever an input vector x is presented, the corresponding output vector d is retrieved. The output state vector is retrieved by multiplying the connection matrix with the input vector as follows: d, = W oX, = f d i ox/ oX, = f d i o(xi,x,)· (1) ;=1 ;=1 The heteroassociative memory works well when the input vectors are orthogonal (derivation is shown in appendix A). Thus, the system reconstructs the output pattern perfectly as long as the stored pairs are orthogonal. However, in general, the input vectors are not orthogonal, and as a result, there is potential for interference between the different association pairs. Another obvious limitation of associative memory is its limited capacity. The number of pairs that can be successfully stored in the connection matrix is dependent on the dimensionality of the state vectors; e.g., if the data 1-4244-2376-7/08/$20.00 ©2008 IEEE 9