Pattern Memory Technology (PMT) - Description
Conventional Hashing
Algorithms:
Hashing algorithms are used in nearly every computer operating system
and database management system in the world. Their value is high speed
matching of patterns to data
associated with that pattern. For example; finding the data associated
with a 64 byte alpha-numeric
security code. By generating a random memory location
unique to the security code, hashing algorithms access the data
directly in one step rather than
searching millions of codes for a match. Even the slightest change in
the code will generate a randomly different memory location. Given the
random nature of the process, two randomly different patterns can
generate the same memory location (called a collision). Collisions are
resolved by storing and comparing colliding patterns to assure an exact
match. Conventional hashing algorithms work well when finding an exact
match. Obviously, an approximate
security code match would be unacceptable.
PMT's Similarities to Conventional Hashing Include:
* Each pattern generates random memory locations (where pattern ID
information is stored)
* Collisions occur (different patterns generating same memory locations)
* Pattern data (e.g. Pattern ID) is accessed in one step (i.e. O(1)
time); no searching is required
Important Differences from
Conventional Hashing:
The most important difference is that PMT can also
match similar patterns while maintaining the speed benefits of
conventional exact hashing. This is a sought after feature for a broad
range of pattern recognition applications. Raw pattern data, whether
from a video image or biomedical sensor, is rarely exact which makes
conventional exact hashing an unacceptable solution. When processing
similar patterns, PMT will generate memory locations that are localized
in a cluster of nearby memory locations. When collisions occur, they are
from similar patterns. This clustering of similar patterns occurs
automatically as the patterns are sampled and is unique to PMT.
Probably the biggest difference compared to
conventional hashing is the concept that originated PMT. PMT originated
from models of sensory information processing in biological systems.
Specifically, that patterns of information are represented
by means of neural oscillations.
PMT is the first practical implementation of neural oscillatory models.
Properties of this model account for its incomparable performance
features as listed below.
PMT Features:
* The process works simply by sampling the pattern
* The most complex computation is integer addition which sequences the
sampling
* Patterns never need to be directly compared for a match
* As a result, the actual patterns need not be stored
* Pattern parameter magnitudes do not require quantization (eliminating
quantization errors)
* Similar patterns are automatically mapped to a localized cluster of
nearby memory locations
* It dynamically learns new clusters in a continuous real time
environment
* Query times are 2 to 10 microseconds for training and/or just
recognizing (Windows 7, 2.60
GHz processor)
* It is implemented by 4 simple function calls that are easily scalable
to a broad range of applications
* Its simplicity and speed make it ideal for embedded real time
applications
How PMT Works:
Individual points within a pattern are sampled in a random sequence
determined by the value of each sample. This process automatically
converges to a repeating cycle of sample points determined by the entire
pattern. The cycle identifies memory locations where the pattern’s
identity is stored. Each unique pattern generates a single unique cycle
that identifies unique memory locations. Similar patterns will converge
to similar cycles that identify the same memory locations or a nearby
memory locations. As a result, similar patterns are automatically
clustered in a small area of nearby memory locations. By storing the
identity of any one pattern in its memory locations and its nearby
memory locations, similar patterns will automatically generate the same
identity. As a result, clustering of similar patterns is inherent to the
sampling process without the computational complexities of other methods
(e.g. Locality Sensitive Hashing).