Method and apparatus for improving acoustic fast match speed using a cache for phone probabilities
First Claim
1. A method for performing a tree search based acoustic fast match in a speech recognition system for decoding a speech utterance, the tree having a tree root and tree nodes connected by tree branches, the tree nodes having phonetic models associated therewith, the method comprising the steps of:
- (a) providing a cache having cache cells for storing phone probabilities therein;
(b) selecting a first branch leading to a next node, said branch selection starting at the tree root;
(c) accessing the cache to select a particular cache cell where the probability of a particular match is stored;
(d) evaluating the phonetic model to obtain the probability and storing the probability and an associated end time in the cache cell, if the cache cell accessed in the accessing step does not contain the required probability;
(e) using the probability value and the associated end time stored in the cache cell, if the cache cell accessed in the accessing step contains the required probability;
(f) selecting a new branch to proceed to the next node; and
(g) iteratively continuing from the accessing step until the tree is traversed and the word candidates associated with the speech recognition system are evaluated.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for performing a tree search based acoustic fast match in a speech recognition system for decoding a speech utterance, the tree having a tree root and tree nodes connected by tree branches, the tree nodes having phonetic models associated therewith, are provided. An illustrative embodiment of the method comprises: providing a cache having cache cells for storing phone probabilities therein; selecting a first branch leading to a next node, said branch selection starting at the tree root; accessing the cache to select a particular cache cell where the probability of a particular match is stored; evaluating the phonetic model to obtain the probability and storing the probability and an associated end time in the cache cell, if the cache cell accessed in the accessing step does not contain the required probability; using the probability value and the associated end time stored in the cache cell, if the cache cell accessed in the accessing step contains the required probability; selecting a new branch to proceed to the next node; and iteratively continuing from the accessing step until the whole tree is traversed and all possible word candidates associated with the speech recognition system are evaluated.
-
Citations
18 Claims
-
1. A method for performing a tree search based acoustic fast match in a speech recognition system for decoding a speech utterance, the tree having a tree root and tree nodes connected by tree branches, the tree nodes having phonetic models associated therewith, the method comprising the steps of:
-
(a) providing a cache having cache cells for storing phone probabilities therein; (b) selecting a first branch leading to a next node, said branch selection starting at the tree root; (c) accessing the cache to select a particular cache cell where the probability of a particular match is stored; (d) evaluating the phonetic model to obtain the probability and storing the probability and an associated end time in the cache cell, if the cache cell accessed in the accessing step does not contain the required probability; (e) using the probability value and the associated end time stored in the cache cell, if the cache cell accessed in the accessing step contains the required probability; (f) selecting a new branch to proceed to the next node; and (g) iteratively continuing from the accessing step until the tree is traversed and the word candidates associated with the speech recognition system are evaluated. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus for performing a tree search based acoustic fast match, the tree having a tree root and tree nodes connected by tree branches, the tree nodes having phonetic models associated therewith, the apparatus comprising:
-
(a) a cache having cache cells for storing phone probabilities therein; (b) means for selecting a first branch leading to a next node, said branch selection starting at the tree root; (c) means for accessing the cache to select a particular cache cell where the probability of a particular match is stored; (d) means for evaluating the phonetic model to obtain the probability and storing the probability and an associated end time in the cache cell, if the cache cell accessed in the accessing step does not contain the required probability; (e) means for using the probability value and the associated end time stored in the cache cell, if the cache cell accessed in the accessing step contains the required probability; and (f) means for selecting a new branch to proceed to the next node and iteratively continuing from the accessing function of the accessing means until the tree is traversed and the word candidates associated with the speech recognition system are evaluated. - View Dependent Claims (13, 14)
-
-
15. An apparatus for performing a tree search based acoustic fast match, comprising:
-
means for performing an iterative search in a local time region; a cache having cache cells for storing phone probabilities therein; means for mapping an identity of a current phone and an identity of a previous phone into a di-phone index; means for quantizing and mapping an end time value; means for determining if, for a certain di-phone, an index exists; and means for selecting a cache cell with respect to a particular end time value if, for a certain di-phone, an index exists. - View Dependent Claims (16, 17)
-
-
18. A method for improving tree search based acoustic fast match speed using a cache for phone probabilities, comprising the steps of:
-
(a) inputting the identity of a current phone, the identity of a previous phone, and the end time of the previous phone; (b) mapping a cache cell; (c) determining whether a cell exists; (d) evaluating a phone model, if the cell determined at step (c) does not exist; (e) determining whether the value is valid, if the cell determined at step (c) exists; (f) using a cache value determined at step (e), if the value determined at step (e) is valid; (g) determining whether the previous phone was computed, if the value determined at step (e) is not valid; (h) evaluating the phone model and storing the results in cache, if the previous phone was computed at step (g); (i) moving one phone backward, if the previous phone determined at step (g) was not computed; (j) determining whether the previous phone was computed; (k) going back to step (i), if the previous phone determined at step (j) was not computed; (l) evaluating the phone model and moving one phone forward, if the previous phone determined at step (j) was computed; (m) determining whether the one move forward is back to the current phone; (n) going back to step (l), if the one move forward is not back to the current phone as determined in step (m); and (o) evaluating the phone model and storing the results in cache, if back to the current phone as determined in step (m).
-
Specification