Blending by query classification on online social networks
First Claim
1. A method comprising:
- receiving, from a client system of a user, a search query;
identifying one or more objects that match the search query, each object having an object-type;
determining one or more search intents of the search query, the determined search intents being based on one or more topics associated with the identified objects and a ratio of one or more object-types of the identified objects that match the search query;
generating a plurality of search-result modules corresponding to the search query, the search-result modules being generated based on the determined search intents of the search query, each search-result module being associated with a particular object-type and comprising one or more search results, each search result comprising a reference to one of the identified objects having an object-type corresponding to the particular object-type of the respective search-result module; and
sending, responsive to receiving the search query, instructions for presenting a blended search-results interface to the client system of the user, the blended search-results interface comprising a threshold number of the generated search-result modules, the generated search-result modules being displayed in a blended order, the ordering of each search-result module being based on the determined search intents of the search query and a distribution of the one or more topics and one or more object-types of the determined search intents with respect to the particular object-type associated with the search-result module.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes receiving a search query from a user and identifying one or more objects that match the search query. The method includes determining one or more search intents of the search query based on one or more topics associated with the identified objects and a ratio of object-types of the identified objects. The method includes generating search-result modules corresponding to the search query based on the determined search intents. Each search-result module is associated with a particular object-type and includes search results of that object-type. The method includes sending instructions for presenting a search-results interface to the client system of the user for display. The search-results interface may include one or more of the search result modules displayed in a blended order based on the determined search intents.
94 Citations
19 Claims
-
1. A method comprising:
-
receiving, from a client system of a user, a search query; identifying one or more objects that match the search query, each object having an object-type; determining one or more search intents of the search query, the determined search intents being based on one or more topics associated with the identified objects and a ratio of one or more object-types of the identified objects that match the search query; generating a plurality of search-result modules corresponding to the search query, the search-result modules being generated based on the determined search intents of the search query, each search-result module being associated with a particular object-type and comprising one or more search results, each search result comprising a reference to one of the identified objects having an object-type corresponding to the particular object-type of the respective search-result module; and sending, responsive to receiving the search query, instructions for presenting a blended search-results interface to the client system of the user, the blended search-results interface comprising a threshold number of the generated search-result modules, the generated search-result modules being displayed in a blended order, the ordering of each search-result module being based on the determined search intents of the search query and a distribution of the one or more topics and one or more object-types of the determined search intents with respect to the particular object-type associated with the search-result module.
-
-
2. The method of claim 1, wherein the determined search intents indicate a query-type of the search query.
-
3. The method of claim 1, wherein the search-result modules are further generated based on the topics and object-types associated with the determined search intents.
-
4. The method of claim 1, further comprising:
accessing a social graph comprising a plurality of nodes and a plurality of edges connecting the nodes, the nodes comprising; a first node corresponding to the user; and a plurality of second nodes corresponding to a plurality of objects associated with an online social network, respectively, each object being of a particular object-type of a plurality of object-types, each second node being of a node-type corresponding to the object-type of the respective corresponding object.
-
5. The method of claim 1, wherein identifying one or more objects that match the search query comprises searching a plurality of verticals to identify a plurality of sets of objects in each vertical, respectively, that match the search query, wherein each set of objects corresponds to a search-result module, and wherein each vertical stores one or more objects associated with an online social network.
-
6. The method of claim 5, wherein each vertical of the plurality of verticals stores objects of a particular object-type, and wherein the particular object-type stored by a particular vertical is selected from a group consisting of:
- users, photos, posts, pages, applications, events, locations, and user groups.
-
7. The method of claim 1, wherein identifying one or more objects that match the search query comprises identifying at least one candidate node of an electronic topic index, the candidate node corresponding to the search query.
-
8. The method of claim 7, wherein identifying one or more objects that match the search query further comprises:
-
receiving an electronic topic index comprising a set of nodes, wherein each node represents a topic; identifying an anchor term in the search query; identifying one or more candidate nodes based on the anchor term, wherein candidate nodes comprise electronic-topic-index nodes representing subjects related to the anchor term; determining a context of the anchor term in the search query; determining a score for each of the one or more of the candidate nodes based on the determined context; and determining a candidate node to represent the meaning of the anchor term based on the determined scores.
-
-
9. The method of claim 8, wherein the determined search intent is further based on electronic-topic-index nodes associated with at least one candidate node that represents the meaning of the anchor term.
-
10. The method of claim 8, wherein receiving an electronic topic index comprises:
-
retrieving a database of articles, wherein one or more pairs of articles are linked; creating a node for each of the one or more of the articles, the node comprising the topic of the article; and for each pair of nodes corresponding to linked articles, connecting the pair of nodes with an edge.
-
-
11. The method of claim 10, wherein the database of articles comprises a web-based database, wherein each article is represented by a web page within the web-based database, and wherein two articles are linked if the web page representing one of the articles comprises a URL link to the other article.
-
12. The method of claim 1, wherein the one or more topics associated with the identified objects and the one or more topics associated with the determined search intents are determined based on a set of subjects associated with an electronic topic index.
-
13. The method of claim 1, further comprising scoring the search results based on the one or more determined search intents.
-
14. The method of claim 13, wherein each search-result module comprises one or more search results having a score satisfying a threshold score.
-
15. The method of claim 1, wherein the particular object-type associated with a particular search-result module is selected from a group consisting of:
- users, photos, posts, pages, applications, events, locations, and user groups.
-
16. The method of claim 1, wherein the determined search intent is further based on matching the search query to one or more grammars of a grammar model.
-
17. The method of claim 1, wherein the search-results interface is a user interface of a native application associated with an online social network on the client system of the user or a webpage of the online social network accessed by a browser client of the client system of the user.
-
18. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
receive, from a client system of a user, a search query; identify one or more objects that match the search query, each object having an object-type; determine one or more search intents of the search query, the determined search intents being based on one or more topics associated with the identified objects and a ratio of one or more object-types of the identified objects that match the search query; generate a plurality of search-result modules corresponding to the search query, the search-result modules being generated based on the determined search intents of the search query, each search-result module being associated with a particular object-type and comprising one or more search results, each search result comprising a reference to one of the identified objects having an object-type corresponding to the particular object-type of the respective search-result module; and send, responsive to receiving the search query, instructions for presenting a blended search-results interface to the client system of the user, the blended search-results interface comprising a threshold number of the generated search-result modules, the generated search-result modules being displayed in a blended order, the ordering of each search-result module being based on the determined search intents of the search query and a distribution of the one or more topics and one or more object-types of the determined search intents with respect to the particular object-type associated with the search-result module.
-
-
19. A system comprising:
- one or more processors; and
a 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 user, a search query; identify one or more objects that match the search query, each object having an object-type; determine one or more search intents of the search query, the determined search intents being based on one or more topics associated with the identified objects and a ratio of one or more object-types of the identified objects that match the search query; generate a plurality of search-result modules corresponding to the search query, the search-result modules being generated based on the determined search intents of the search query, each search-result module being associated with a particular object-type and comprising one or more search results, each search result comprising a reference to one of the identified objects having an object-type corresponding to the particular object-type of the respective search-result module; and send, responsive to receiving the search query, instructions for presenting a blended search-results interface to the client system of the user, the blended search-results interface comprising a threshold number of the generated search-result modules, the generated search-result modules being displayed in a blended order, the ordering of each search-result module being based on the determined search intents of the search query and a distribution of the one or more topics and one or more object-types of the determined search intents with respect to the particular object-type associated with the search-result module.
- one or more processors; and
Specification