Personalized term importance evaluation in queries
First Claim
1. A computer-implemented method, comprising:
- receiving a search query, the search query comprising a sequence of search terms and associated with a user identifier;
accessing a profile tree associated with the user identifier and including a hierarchy of nodes, the hierarchy of nodes including a root node and a plurality of child nodes, each child node descending from the root node or another child node, the profile tree defining a plurality of levels, each level including child nodes that descend from the root node at a same depth, and each node of the profile tree representing a respective topic that is derived from search history data associated with the user identifier, and each node of the profile tree corresponding to at least one of a term or a phrase, and wherein the terms and phrases of the profile tree correspond to the nodes of the profile tree according to the respective topics to which the terms and phrases belong;
for each of the search terms;
identifying in the profile tree one or more nodes that match the search term;
determining the respective levels of the one or more nodes that match the search term;
determining a respective child count for each of the one or more nodes that match the search term, the child count for each node being proportional to a number of child nodes descending directly from the node and a number of child nodes descending indirectly from the node; and
determining a respective importance score for the search term based on the respective levels of the one or more nodes that match the search term and the respective child counts of the one or more nodes that match the search term, wherein the importance score is directly proportional to depths of the respective levels of the one or more nodes that match the search term, and is inversely proportional to the respective child counts of the one or more nodes that match the search term;
identifying search terms in the search query that have respective importance scores exceeding a threshold; and
generating an alternative query from the identified search terms that have respective importance scores that exceed the threshold.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer program products, for personalized term importance evaluation in natural language queries are disclosed. The personalized term importance evaluation utilizes a personalized profile tree constructed using search history associated with a user. The personalized profile tree is a hierarchy of nodes representing categories of information that the user has previously searched or selected from search results. When a search query is received from the user, each term and phrase in the search query is compared against the nodes in the personalized profile tree, and an importance score is given to the search term or phrase based on the depth of a matching node in the tree, and a child count for the matching node. An alternative query can be generated from a subset of the search terms that have respective importance scores exceeding a predetermined threshold.
114 Citations
27 Claims
-
1. A computer-implemented method, comprising:
-
receiving a search query, the search query comprising a sequence of search terms and associated with a user identifier; accessing a profile tree associated with the user identifier and including a hierarchy of nodes, the hierarchy of nodes including a root node and a plurality of child nodes, each child node descending from the root node or another child node, the profile tree defining a plurality of levels, each level including child nodes that descend from the root node at a same depth, and each node of the profile tree representing a respective topic that is derived from search history data associated with the user identifier, and each node of the profile tree corresponding to at least one of a term or a phrase, and wherein the terms and phrases of the profile tree correspond to the nodes of the profile tree according to the respective topics to which the terms and phrases belong; for each of the search terms; identifying in the profile tree one or more nodes that match the search term; determining the respective levels of the one or more nodes that match the search term; determining a respective child count for each of the one or more nodes that match the search term, the child count for each node being proportional to a number of child nodes descending directly from the node and a number of child nodes descending indirectly from the node; and determining a respective importance score for the search term based on the respective levels of the one or more nodes that match the search term and the respective child counts of the one or more nodes that match the search term, wherein the importance score is directly proportional to depths of the respective levels of the one or more nodes that match the search term, and is inversely proportional to the respective child counts of the one or more nodes that match the search term; identifying search terms in the search query that have respective importance scores exceeding a threshold; and generating an alternative query from the identified search terms that have respective importance scores that exceed the threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable medium having instructions stored thereon, the instructions, when executed by one or more processors, cause the processors to perform operations comprising:
-
receiving a search query, the search query comprising a sequence of search terms and associated with a user identifier; accessing a profile tree associated with the user identifier and including a hierarchy of nodes, the hierarchy of nodes including a root node and a plurality of child nodes, each child node descending from the root node or another child node, the profile tree defining a plurality of levels, each level including child nodes that descend from the root node at a same depth, and each node of the profile tree representing a respective topic that is derived from search history data associated with the user identifier, and each node of the profile tree corresponding to at least one of a term or a phrase, and wherein the terms and phrases of the profile tree correspond to the nodes of the profile tree according to the respective topics to which the terms and phrases belong; for each of the search terms; identifying in the profile tree one or more nodes that match the search term; determining the respective levels of the one or more nodes that match the search term; determining a respective child count for each of the one or more nodes that match the search term, the child count for each node being proportional to a number of child nodes descending directly from the node and a number of child nodes descending indirectly from the node; and determining a respective importance score for the search term based on the respective levels of the one or more nodes that match the search term and the respective child counts of the one or more nodes that match the search term, wherein the importance score is directly proportional to depths of the respective levels of the one or more nodes that match the search term, and is inversely proportional to the respective child counts of the one or more nodes that match the search term; identifying search terms in the search query that have respective importance scores exceeding a threshold; and generating an alternative query from the identified search terms that have respective importance scores that exceed the threshold. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system, comprising:
-
one or more processors; and memory having instructions stored thereon, the instructions, when executed by the one or more processors cause the processors to perform operations comprising; receiving a search query, the search query comprising a sequence of search terms and associated with a user identifier; accessing a profile tree associated with the user identifier and including a hierarchy of nodes, the hierarchy of nodes including a root node and a plurality of child nodes, each child node descending from the root node or another child node, the profile tree defining a plurality of levels, each level including child nodes that descend from the root node at a same depth, and each node of the profile tree representing a respective topic that is derived from search history data associated with the user identifier, and each node of the profile tree corresponding to at least one of a term or a phrase, and wherein the terms and phrases of the profile tree correspond to the nodes of the profile tree according to the respective topics to which the terms and phrases belong; for each of the search terms; identifying in the profile tree one or more nodes that match the search term; determining the respective levels of the one or more nodes that match the search term; determining a respective child count for each of the one or more nodes that match the search term, the child count for each node being proportional to a number of child nodes descending directly from the node and a number of child nodes descending indirectly from the node; and determining a respective importance score for the search term based on the respective levels of the one or more nodes that match the search term and the respective child counts of the one or more nodes that match the search term, wherein the importance score is directly proportional to depths of the respective levels of the one or more nodes that match the search term, and is inversely proportional to the respective child counts of the one or more nodes that match the search term; identifying search terms in the search query that have respective importance scores exceeding a threshold; and generating an alternative query from the identified search terms that have respective importance scores that exceed the threshold. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
Specification