18. A system for recognizing text, the system comprising: a memory storage: and a processing unit coupled to the memory storage, wherein the processing unit is operative to: create a plurality of hash buckets respectively corresponding to a plurality of hash values corresponding to a plurality of generated terms in a text string wherein each of the plurality of generated terms comprise individual strings; maintain a plurality of occurrence count values respectively corresponding to the plurality of hash buckets, each of the plurality of occurrence count values respectively indicating a number of times ones of the plurality of generated terms occur in the text string having a hash value that respectively correspond to the plurality of occurrence count values' respective hash bucket; discard ones of the plurality of hash buckets having respective occurrence count values less than a first predetermined value; add dictionary terms to a dictionary, the dictionary terms comprising ones of the plurality of generated terms having respective hash values corresponding to any of the plurality of hash values respectively corresponding to the remaining plurality of hash buckets, the dictionary including a plurality of frequency count values respectively indicating the number of times each of the dictionary terms occurred in the text string; removing at least on dictionary term that was added to the dictionary due to hash collisions, the at least one dictionary term not being a frequent term; and rank the dictionary terms using an evaluation function configured for keyword recognition wherein the dictionary terms are ranked based upon their respective frequency count values.
18. A system for recognizing text, the system comprising: a memory storage: and a processing unit coupled to the memory storage, wherein the processing unit is operative to: create a plurality of hash buckets respectively corresponding to a plurality of hash values corresponding to a plurality of generated terms in a text string wherein each of the plurality of generated terms comprise individual strings; maintain a plurality of occurrence count values respectively corresponding to the plurality of hash buckets, each of the plurality of occurrence count values respectively indicating a number of times ones of the plurality of generated terms occur in the text string having a hash value that respectively correspond to the plurality of occurrence count values' respective hash bucket; discard ones of the plurality of hash buckets having respective occurrence count values less than a first predetermined value; add dictionary terms to a dictionary, the dictionary terms comprising ones of the plurality of generated terms having respective hash values corresponding to any of the plurality of hash values respectively corresponding to the remaining plurality of hash buckets, the dictionary including a plurality of frequency count values respectively indicating the number of times each of the dictionary terms occurred in the text string; removing at least on dictionary term that was added to the dictionary due to hash collisions, the at least one dictionary term not being a frequent term; and rank the dictionary terms using an evaluation function configured for keyword recognition wherein the dictionary terms are ranked based upon their respective frequency count values. 20. The system of claim 18 , wherein the processing unit is further operative to calculate the plurality of hash values based upon a perfect hash algorithm.