Associative Memory Implementation for Object Recognition
Our approach is based on an efficient associative memory,
The basic operation we need is partial match association
over heterogeneous keys.
More specifically, we want a structure into which we can store
and access (key, association) pairs where the key and association
objects may be any of a number of disparate types.
Associated with each object type employed as a key is a distance metric.
The ideal query operation takes a reference key and returns all stored
(key, association) pairs where the key is of the correct type and within a
specified distance of the reference key in the appropriate metric.
In practice, this ideal may have to be modified somewhat for efficiency
In the current implementation, the memory is just a large array of buckets
each of which can hold a variable number of (key, association) pairs.
This allows a number of different access schemes to coexist.
In particular, hashing, array indexing and tree search can all
be implemented efficiently.
Associated with each key type are functions defining a distance metric
and a search procedure for locating keys in the memory.
This allows a large amount of flexibility in the system, and
permits new key types to be added in a modular fashion.
Randal Nelson's home page