16. A system, comprising: a processor; a location determiner configured to determine, using the processor, geographical locations for a plurality of users that submitted search queries, and to annotate, using the processor, each submitted search query with a determined geographical location for a user that submitted the search query; a query grouper configured to group, using the processor, the annotated search queries according to the determined geographical locations into a plurality of location groups; and an index generator configured to assign, using the processor, a relevance score to each of the geographical locations, wherein each relevance score indicates a level of relevancy of a respective geographical location with a search query associated with the geographical location and is computed based on whether the search query is a location-specific search query, and to build, using the processor, an inverted index that relates each term of the submitted search queries in the location groups to one or more geographical locations determined for the users that submitted the search queries that include the terms, and to the relevance scores associated with the one or more geographical locations, wherein a geographical location of a new user who submits one of the search queries is determined based on the submitted one of the search queries according to the inverted index.
17. The system of claim 16 , wherein the inverted index includes a plurality of entries, each of the plurality of entries including: first information that identifies a term within a query; second information that identifies a geographical location associated with the term identified by the first information; and third information that identifies the relevance score of the geographical location identified by the second information to the term identified by the first information.