1. A method comprising: receiving an unknown utterance; generating a first sequence of feature vectors from the unknown utterance; removing, in a first recognition pass and using a parameter, at least a portion of irrelevant information from the first sequence of feature vectors resulting in a second sequence of feature vectors and performing parallel removal of the irrelevant information from the first sequence of feature vectors using, in parallel, multiple vector mapping functions having differing degrees of freedom; recognizing speech in the first recognition pass based at least in part on the second sequence of feature vectors to obtain a first result; updating the parameter used in the removing based at least in part on the first result; removing, in a second recognition pass, using the updated parameter, at least a portion of irrelevant information from the first sequence of feature vectors resulting in a third sequence of feature vectors; and recognizing speech in the second recognition pass based at least in part on the third sequence of feature vectors to determine a second result.