1. A method for determining temporal patterns in data sequences, comprising: constructing a hierarchical tree of nodes; associating each node with a composite hidden Markov model, in which the composite hidden Markov model has one independent path for each child node of a parent node of the hierarchical tree; training the composite hidden Markov models using training data sequences; decomposing the composite hidden Markov models associated with the nodes of the hierarchical tree into a single final composite Markov model; and employing the single final composite hidden Markov model for determining temporal patterns in unknown data sequences.