What is the difference between supervised and unsupervised learning?
If you train an HTM network using supervised learning, the network receives inputs at the bottom level and a category input (supervision) at the top level, and it learns which causes in the world belong to each category. If you train a network with unsupervised learning, a network only receives bottom-level inputs, and it devises categories of its own at the top level. But even during supervised learning, all nodes of a network except the top node still learn in an unsupervised fashion. HTM networks support both types of learning.