Another, subtler way an HTM exploits time is how it
decides what to learn. All of its parts learn on their
own, without a programmer or anyone else telling the
neurons what to do. It is tempting for us to try to
fill such a coordinating role by deciding in advance
what a node should do, for instance by saying, "Node A
will learn to recognize eyes and ears, and node B will
learn noses and fur." However, that approach does not
work. As nodes learn, they change their output-which
affects the input to other nodes. Because memory in an
HTM is dynamic, it is not possible to decide in advance
what a node should learn.
So how does a node know what to learn? This is where
time plays a critical role and is one of the unique
aspects of HTM. Patterns that occur close together in
time generally have a common cause. For instance, when
we hear a sequence of notes over and over, we learn to
recognize them as a single thing, a melody. We do the
same with visual and tactile patterns. Seeing a dog
moving in front of us, for example, is what teaches us
that a left-facing dog is actually the same as a
right-facing dog, in spite of the fact that the actual
information on the retina is different from moment to
moment. HTM nodes learn similarly; they use time as a
teacher. In fact, the only way to train an HTM is with
input that changes over time. How that is done is the
most challenging part of HTM theory and practice.
An HTM is dynamic- it doesn't decide in advance
what a node should learn
Because HTMs, like humans, can recognize spatial
patterns such as a static picture, you might think that
time is not essential. Not so. Strange though it may
seem, we cannot learn to recognize pictures without
first training on moving images. You can see why in your
own behavior. When you are confronted with a new and
confusing object, you pick it up and move it about in
front of your eyes. You look at it from different
directions and top and bottom. As the object moves and
the patterns on your retina change, your brain assumes
that the unknown object is not changing. Nodes in an HTM
assemble differing input patterns together under the
assumption that two patterns that repeatedly occur close
in time are likely to share a common cause. Time is the
teacher.
The final word in HTM is "memory." This attribute
distinguishes HTMs from systems that are programmed.
Most of the effort in building an HTM-based system is
spent in training the system by exposing it to sensory
data, not in writing code or configuring the network.
Some people assume memory means a single remembered
instance, such as "what I ate for lunch." Others
associate memory with computer memory. In the case of
HTM, it is neither. HTMs are hierarchical, dynamic,
memory systems.
What makes
HTM different from other approaches to
machine learning? HTMs are unique not because we have
discovered some new and miraculous concept. HTM combines
the best of several existing techniques, with a few
twists thrown in. For example, hierarchical
representations exist in a technique called Hierarchical
Hidden Markov Models. However, the hierarchies used in
HHMMs are simpler than those in HTM. Even though HHMMs
can learn complex temporal patterns, they do not handle
spatial variation well. It is as if you could learn
melodies but not be able to recognize them when played
in a different key. Still, the similarity between HTM
and other approaches is a good sign: it means that other
people have reached similar conclusions. A detailed
comparison to other techniques is available on Numenta's
Web site.
Another unique aspect of HTM is that it is a
biological model as well as a mathematical model. The
mapping between HTM and the detailed anatomy of the
neocortex is deep. As far as we know, no other model
comes close to HTM's level of biological accuracy. The
mapping is so good that we still look to neuroanatomy
and physiology for direction whenever we encounter a
theoretical or technical problem.
Finally, HTMs work. "If we really understand a system
we will be able to build it," said Carver Mead, the
famous Caltech electrical engineer. "Conversely, we can
be sure that we do not fully understand the system until
we have synthesized and demonstrated a working model."
We have built and tested enough HTMs of sufficient
complexity to know that they work. They work on at least
some difficult and useful problems, such as handling
distortion and variances in visual images. Thus we can
identify dogs as such, in simple images, whether they
face right or left, are big or small, are seen from the
front or the rear, and even in grainy or partially
occluded images.