1. An hierarchical temporal memory (HTM) network comprising: a first node for receiving a first input data representing an object or a status of an object and generating first variables and second variables, the first variables representing information about patterns and sequences in the first input data corresponding to learned patterns and sequences, the second variables comprising category variables representing a correct cause of the first input data; and a second node associated with the first node for receiving the second variables, the second node generating third variables representing information about causes of the first input data.