1. A computer-implemented method for normalizing query words in web search, the method executable with a computer having a processor and memory, the method comprising: building, by the processor, a dictionary of a plurality of possible word normalizations from query words previously entered into a search engine, wherein the normalizations comprise candidates of splitting at least one query word and candidates of joining at least two query words; determining, by the processor, a confidence score with the split and join candidates based on a frequency of their occurrence in a plurality of query logs; building, by the processor, three sub-dictionaries within the dictionary comprising must-split, must-join, and normal based on the confidence scores; accepting a query including one or more words amenable to being split or joined; reformulating, by the processor, the query to generate based on the one or more words possible split candidates from the dictionary and possible candidates of join algorithmically; applying, by the processor, a language model to the possible split and join candidates to: rank highest the candidates that match words in the must-split and must-join dictionaries; and rank the candidates that match words in the normal sub-dictionary according to a probability of being located in the query logs; and submitting, by the computer, the highest ranked candidates as a reformulated query to the search engine to improve search results returned in response to the reformulated query.
1. A computer-implemented method for normalizing query words in web search, the method executable with a computer having a processor and memory, the method comprising: building, by the processor, a dictionary of a plurality of possible word normalizations from query words previously entered into a search engine, wherein the normalizations comprise candidates of splitting at least one query word and candidates of joining at least two query words; determining, by the processor, a confidence score with the split and join candidates based on a frequency of their occurrence in a plurality of query logs; building, by the processor, three sub-dictionaries within the dictionary comprising must-split, must-join, and normal based on the confidence scores; accepting a query including one or more words amenable to being split or joined; reformulating, by the processor, the query to generate based on the one or more words possible split candidates from the dictionary and possible candidates of join algorithmically; applying, by the processor, a language model to the possible split and join candidates to: rank highest the candidates that match words in the must-split and must-join dictionaries; and rank the candidates that match words in the normal sub-dictionary according to a probability of being located in the query logs; and submitting, by the computer, the highest ranked candidates as a reformulated query to the search engine to improve search results returned in response to the reformulated query. 3. The method of claim 1 , wherein the must-split sub-dictionary contains split candidates with a confidence score of “1,” the must-join sub-dictionary contains join candidates with a confidence score of “1,” and the normal sub-dictionary contains all other split or join candidates where confidence scores rank from zero (0) to (1).