1. A method of recognizing speech, comprising: generating a decoding network for decoding speech input, the decoding network comprising a primary sub-network and one or more classification sub-networks, wherein: the primary sub-network includes a plurality of classification nodes, each classification node corresponding to a respective classification sub-network of the one or more classification sub-networks, wherein each respective classification sub-network is distinct from the primary sub-network; and each classification sub-network of the one or more classification sub-networks corresponds to a group of uncommon words; receiving a speech input; and decoding the speech input by: instantiating a token corresponding to the speech input in the primary sub-network; passing the token through the primary sub-network; when the token reaches a respective classification node of the plurality of classification nodes, transferring the token to the corresponding classification sub-network; passing the token through the corresponding classification sub-network; when the token reaches an accept node of the classification sub-network, returning a result of the token passing through the classification sub-network to the primary sub-network, wherein the result includes one or more words in the group of uncommon words corresponding to the classification sub-network; outputting a string corresponding to the speech input that includes the one or more words.
1. A method of recognizing speech, comprising: generating a decoding network for decoding speech input, the decoding network comprising a primary sub-network and one or more classification sub-networks, wherein: the primary sub-network includes a plurality of classification nodes, each classification node corresponding to a respective classification sub-network of the one or more classification sub-networks, wherein each respective classification sub-network is distinct from the primary sub-network; and each classification sub-network of the one or more classification sub-networks corresponds to a group of uncommon words; receiving a speech input; and decoding the speech input by: instantiating a token corresponding to the speech input in the primary sub-network; passing the token through the primary sub-network; when the token reaches a respective classification node of the plurality of classification nodes, transferring the token to the corresponding classification sub-network; passing the token through the corresponding classification sub-network; when the token reaches an accept node of the classification sub-network, returning a result of the token passing through the classification sub-network to the primary sub-network, wherein the result includes one or more words in the group of uncommon words corresponding to the classification sub-network; outputting a string corresponding to the speech input that includes the one or more words. 2. The method of claim 1 , wherein the returned result is a respective result in a plurality of possible token-passing results through the classification sub-network, the returned result having a higher rollback probability than any other result in the plurality of possible token passing results through the classification sub-network.