Search augmentation
First Claim
1. A computer-implemented method, comprising:
- receiving a query from a user device as input for a search operation that uses the received query to identify search results responsive to the received query;
determining a transformation cost score for each of a plurality of candidate augmentation queries for the received query, the transformation cost score being based on a transformation cost value for each of one or more terms of the received query, the transformation cost value for a term of the received query being proportional to a term weight that measures an importance of the term in the received query;
selecting a candidate augmentation query from among the candidate augmentation queries based on the transformation cost score of the selected candidate augmentation query, the selecting comprising;
comparing each term of the received query to a set of non-transformable terms, each non-transformable term of the set of non-transformable terms being a term for which a matching term in the received query should not be transformed to another term;
identifying a proper subset of candidate augmentation queries from among the candidate augmentation queries, each candidate augmentation query identified for the proper subset being identified in response to a determination that the candidate augmentation query includes each term of the received query that matches a non-transformable term;
ranking the proper subset of candidate augmentation queries according to the transformation cost score of each candidate augmentation query of the proper subset; and
selecting the candidate augmentation query from among the proper subset of candidate augmentation queries based on the ranking of the proper subset;
identifying search results responsive to the selected candidate augmentation query;
augmenting the search results responsive to the received query with the search results responsive to the selected candidate augmentation query to form an augmented set of search results; and
providing the augmented set of search results to the user device as a set of search results responsive to the received query.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer program products, for generating or using augmentation queries. In one aspect, augmentation queries are identified from user interactions or are machine generated. The augmentation queries can be stored in an augmentation query data store. When a user submits a search query to a search engine, the terms of the query, and optionally additional information, such as the geographic location from which the query is received or the language of the query, can be used to identify stored augmentation queries and select one or more similar augmentation queries. The selected augmentation queries, in turn, can be used by the search engine perform an augmented search operation.
-
Citations
29 Claims
-
1. A computer-implemented method, comprising:
-
receiving a query from a user device as input for a search operation that uses the received query to identify search results responsive to the received query; determining a transformation cost score for each of a plurality of candidate augmentation queries for the received query, the transformation cost score being based on a transformation cost value for each of one or more terms of the received query, the transformation cost value for a term of the received query being proportional to a term weight that measures an importance of the term in the received query; selecting a candidate augmentation query from among the candidate augmentation queries based on the transformation cost score of the selected candidate augmentation query, the selecting comprising; comparing each term of the received query to a set of non-transformable terms, each non-transformable term of the set of non-transformable terms being a term for which a matching term in the received query should not be transformed to another term; identifying a proper subset of candidate augmentation queries from among the candidate augmentation queries, each candidate augmentation query identified for the proper subset being identified in response to a determination that the candidate augmentation query includes each term of the received query that matches a non-transformable term; ranking the proper subset of candidate augmentation queries according to the transformation cost score of each candidate augmentation query of the proper subset; and selecting the candidate augmentation query from among the proper subset of candidate augmentation queries based on the ranking of the proper subset; identifying search results responsive to the selected candidate augmentation query; augmenting the search results responsive to the received query with the search results responsive to the selected candidate augmentation query to form an augmented set of search results; and providing the augmented set of search results to the user device as a set of search results responsive to the received query. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system, comprising:
-
one or more computers; an augmentation query store storing augmentation queries; and software stored in a computer readable medium and comprising instructions executable by the one or more computers to cause the one or more computers to perform operations comprising; receiving a query from a user device as input for a search operation that uses the received query to identify search results responsive to the received query; determining a transformation cost score for each of a plurality of candidate augmentation queries for the received query, the transformation cost score being based on a transformation cost value for each of one or more terms of the received query, the transformation cost value for a term of the received query being proportional to a term weight that measures an importance of the term in the received query; selecting a candidate augmentation query from among the candidate augmentation queries based on the transformation cost score of the selected candidate augmentation query, the selecting comprising; comparing each term of the received query to a set of non-transformable terms, each non-transformable term of the set of non-transformable terms being a term for which a matching term in the received query should not be transformed to another term; identifying a proper subset of candidate augmentation queries from among the candidate augmentation queries, each candidate augmentation query identified for the proper subset being identified in response to a determination that the candidate augmentation query includes each term of the received query that matches a non-transformable term; ranking the proper subset of candidate augmentation queries according to the transformation cost score of each candidate augmentation query of the proper subset; and selecting the candidate augmentation query from among the proper subset of candidate augmentation queries based on the ranking of the proper subset; identifying search results responsive to the selected candidate augmentation query; augmenting the search results responsive to the received query with the search results responsive to the selected candidate augmentation query to form an augmented set of search results; and providing the augmented set of search results to the user device as a set of search results responsive to the received query. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer-implemented method, comprising:
-
receiving a query from a user device as input for a search operation that uses the received query to identify search results responsive to the received query; determining a transformation cost score for each of a plurality of candidate augmentation queries for the received query, the transformation cost score being based on a transformation cost value for each of one or more terms of the received query, the transformation cost value for a term of the received query being proportional to a term weight that measures an importance of the term in the received query; comparing each term of the received query to a set of non-transformable terms, each non-transformable term of the set of non-transformable terms being a term for which a matching term in the received query should not be transformed to another term; identifying a proper subset of candidate augmentation queries from among the candidate augmentation queries, each candidate augmentation query identified for the proper subset being identified in response to a determination that the candidate augmentation query includes each term of the received query that matches a non-transformable term; ranking the proper subset of candidate augmentation queries according to the transformation cost score of each candidate augmentation query of the proper subset; selecting one or more candidate augmentation queries from among the proper subset of candidate augmentation queries based on the ranking of the proper subset of the candidate augmentation queries; and performing an augmented search operation that uses the one or more candidate augmentation queries as input and that augments the search operation. - View Dependent Claims (26, 27, 28)
-
-
29. A computer-implemented method, comprising:
-
receiving a query from a user device as input for a search operation that uses the received query to identify search results responsive to the received query; determining a transformation cost score for each of a plurality of candidate augmentation queries for the received query, the transformation cost score being based on a transformation cost value for each of one or more terms of the received query, the transformation cost value for a term of the received query being proportional to a term weight that measures an importance of the term in the received query, wherein determining the transformation cost score for one of the candidate augmentation queries comprises; determining an edit distance score for the one candidate augmentation query, the edit distance score being a measure of edit distance between each of the one or more terms of the received query and a corresponding one of the one or more terms of the one candidate augmentation query; determining a synonym score for the one candidate augmentation query, the synonym score being a measure of similarity of meanings of the each of the one or more terms of the received query and a corresponding one of the one or more terms of the one candidate augmentation query; and determining whether the synonym score exceeds a synonym score threshold, wherein the transformation cost score of the one candidate augmentation query is further based on the synonym score irrespective of the edit distance score if the synonym score exceeds the synonym score threshold, and wherein the transformation cost score of the one candidate augmentation query is further based on the synonym score and the edit distance score if the synonym score does not exceed the synonym score threshold; selecting a candidate augmentation query from among the candidate augmentation queries based on the transformation cost score of the selected candidate augmentation query; identifying search results responsive to the selected candidate augmentation query; augmenting the search results responsive to the received query with the search results responsive to the selected candidate augmentation query to form an augmented set of search results; and providing the augmented set of search results to the user device as a set of search results responsive to the received query.
-
Specification