Suggesting filters for search on online social networks
First Claim
1. A method comprising, by one or more computing devices:
- receiving, from a client system of a first user, a search query inputted by the first user;
executing a query-analysis process, wherein the query-analysis process comprises;
parsing the search query to identify one or more n-grams, andcalculating one or more confidence-scores for one or more entities in a set of query-analysis-entities, respectively, wherein each confidence score is calculated based on an analysis of the identified n-grams, and wherein each confidence-score represents a probability that one or more of the identified n-grams are intended to reference a respective entity;
executing a results-analysis process, wherein the results-analysis process comprises;
determining one or more search results in a set of search results matching the search query, wherein the one or more search results correspond to one or more objects, respectively, and wherein each object is associated with one or more entities in a set of results-analysis-entities, andcalculating one or more entity-frequencies corresponding to one or more entities in the set of results-analysis-entities, respectively, wherein each entity-frequency is calculated based on a histogram analysis of the set of search results, wherein each entity-frequency corresponds to a number of occurrences of a respective entity associated with the search results;
calculating a filter-score for each entity in a set of prospective-entities, wherein the set of prospective-entities comprises one or more entities from the set of query-analysis-entities and the set of results-analysis-entities, and wherein the filter-score is calculated based on a respective confidence-score for the entity and a respective entity-frequency of the entity; and
sending, to the client system of the first user, one or more suggested filters corresponding to entities having a filter-score greater than a threshold filter-score, wherein each suggested filter is selectable by the first user to modify the set of search results based on the entity corresponding to the suggested filter.
3 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes receiving a search query from a client system of a first user; parsing the search query into n-grams, and calculating confidence-scores for entities in a set of query-analysis-entities based on the n-grams, each confidence-score representing a probability that one or more of the n-grams are intended to reference a respective entity; determining a set of search results matching the search query, and calculating entity-frequencies corresponding to entities in a set of results-analysis-entities based on a histogram analysis of the set of search results; calculating a filter-score entities in a set of prospective-entities, which includes entities from the set of query-analysis-entities and the set of results-analysis-entities, based on the respective confidence-score and entity-frequency; and sending, to the client system, suggested filters corresponding to entities having a filter-score greater than a threshold filter-score, the suggested filters being selectable to modify the set of search results.
-
Citations
20 Claims
-
1. A method comprising, by one or more computing devices:
-
receiving, from a client system of a first user, a search query inputted by the first user; executing a query-analysis process, wherein the query-analysis process comprises; parsing the search query to identify one or more n-grams, and calculating one or more confidence-scores for one or more entities in a set of query-analysis-entities, respectively, wherein each confidence score is calculated based on an analysis of the identified n-grams, and wherein each confidence-score represents a probability that one or more of the identified n-grams are intended to reference a respective entity; executing a results-analysis process, wherein the results-analysis process comprises; determining one or more search results in a set of search results matching the search query, wherein the one or more search results correspond to one or more objects, respectively, and wherein each object is associated with one or more entities in a set of results-analysis-entities, and calculating one or more entity-frequencies corresponding to one or more entities in the set of results-analysis-entities, respectively, wherein each entity-frequency is calculated based on a histogram analysis of the set of search results, wherein each entity-frequency corresponds to a number of occurrences of a respective entity associated with the search results; calculating a filter-score for each entity in a set of prospective-entities, wherein the set of prospective-entities comprises one or more entities from the set of query-analysis-entities and the set of results-analysis-entities, and wherein the filter-score is calculated based on a respective confidence-score for the entity and a respective entity-frequency of the entity; and sending, to the client system of the first user, one or more suggested filters corresponding to entities having a filter-score greater than a threshold filter-score, wherein each suggested filter is selectable by the first user to modify the set of search results based on the entity corresponding to the suggested filter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
receive, from a client system of a first user, a search query inputted by the first user; execute a query-analysis process, wherein the query-analysis process comprises; parsing the search query to identify one or more n-grams, and calculating one or more confidence-scores for one or more entities in a set of query-analysis-entities based on an analysis of the identified n-grams, wherein each confidence-score represents a probability that one or more of the identified n-grams are intended to reference a respective entity; execute a results-analysis process, wherein the results-analysis process comprises; determining a set of search results matching the search query, and calculating one or more entity-frequencies corresponding to one or more entities in a set of results-analysis-entities based on a histogram analysis of the set of search results, wherein each entity-frequency corresponds to a number of occurrences of a respective entity associated with the search results; calculate a filter-score for each entity in the set of query-analysis-entities and the set of results-analysis-entities based on its respective confidence-score and its respective entity-frequency; and send, to the client system of the first user, one or more suggested filters corresponding to entities having a filter-score greater than a threshold filter-score, wherein each suggested filter is selectable by the first user to modify the set of search result based on the entity corresponding to the suggested filter.
-
-
20. A system comprising:
- one or more processors; and
a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to;receive, from a client system of a first user, a search query inputted by the first user; execute a query-analysis process, wherein the query-analysis process comprises; parsing the search query to identify one or more n-grams, and calculating one or more confidence-scores for one or more entities in a set of query-analysis-entities based on an analysis of the identified n-grams, wherein each confidence-score represents a probability that one or more of the identified n-grams are intended to reference a respective entity; execute a results-analysis process, wherein the results-analysis process comprises; determining a set of search results matching the search query, and calculating one or more entity-frequencies corresponding to one or more entities in a set of results-analysis-entities based on a histogram analysis of the set of search results, wherein each entity-frequency corresponds to a number of occurrences of a respective entity associated with the search results; calculate a filter-score for each entity in the set of query-analysis-entities and the set of results-analysis-entities based on its respective confidence-score and its respective entity-frequency; and send, to the client system of the first user, one or more suggested filters corresponding to entities having a filter-score greater than a threshold filter-score, wherein each suggested filter is selectable by the first user to modify the set of search result based on the entity corresponding to the suggested filter.
- one or more processors; and
Specification