Determining query intent
First Claim
1. A method comprising:
- receiving item category data by a computing device, wherein the item category data comprises a plurality of nodes and each node is associated with an item category of a plurality of item categories;
receiving a plurality of queries by the computing device;
for each query of the plurality of queries, providing an indicator of one or more items that are responsive to the query of a plurality of items by the computing device, wherein the plurality of items comprise at least one of products or services;
for each query of the plurality of queries, receiving a selection of an item indicated by the provided indicator of one or more items by the computing device;
receiving item data that associates an item category of the plurality of item categories with each item of the plurality of items by the computing device;
based on the selected item for each query of the plurality of queries and the item category associated with each item, generating training data by the computing device, wherein the training data comprises a mapping of queries to item categories;
for each query and item category in the mapping, determining a count of the number of times that the item category is associated with the query in the mapping by the computing device;
combining the training data and item category data by, for each determined count for each item category, associating the determined count with the node of the plurality of nodes associated with the item category by the computing device;
receiving another query by the computing device;
receiving a classifier by the computing device, wherein the classifier, when applied to a node of the plurality of nodes using the received query by the computing device, results in a generated probability that the received query is intended for the item category associated with the node;
applying the classifier to the plurality of nodes using the received query by the computing device until a generated probability for a node is below a threshold probability resulting in a list of item categories and a generated probability for each item category;
ranking the item categories in the list of item categories based on the generated probabilities by the computing device; and
providing the item categories in a ranked order by the computing device through a network.
2 Assignments
0 Petitions
Accused Products
Abstract
A tree structure has a node associated with each category of a hierarchy of item categories. Child nodes of the tree are associated with sub-categories of the categories associated with parent nodes. Training data including received queries and indicators of a selected item category for each received query is combined with the tree structure by associating each query with the node corresponding to the selected category of the query. When a query is received, a classifier is applied to the nodes to generate a probability that the query is intended to match an item of the category associated with the node. The classifier is applied until the probability is below a threshold. One or more categories associated with the nodes that are closest to the intent of the received query are selected and indicators of items of those categories that match the received query are output.
17 Citations
20 Claims
-
1. A method comprising:
-
receiving item category data by a computing device, wherein the item category data comprises a plurality of nodes and each node is associated with an item category of a plurality of item categories; receiving a plurality of queries by the computing device; for each query of the plurality of queries, providing an indicator of one or more items that are responsive to the query of a plurality of items by the computing device, wherein the plurality of items comprise at least one of products or services; for each query of the plurality of queries, receiving a selection of an item indicated by the provided indicator of one or more items by the computing device; receiving item data that associates an item category of the plurality of item categories with each item of the plurality of items by the computing device; based on the selected item for each query of the plurality of queries and the item category associated with each item, generating training data by the computing device, wherein the training data comprises a mapping of queries to item categories; for each query and item category in the mapping, determining a count of the number of times that the item category is associated with the query in the mapping by the computing device; combining the training data and item category data by, for each determined count for each item category, associating the determined count with the node of the plurality of nodes associated with the item category by the computing device; receiving another query by the computing device; receiving a classifier by the computing device, wherein the classifier, when applied to a node of the plurality of nodes using the received query by the computing device, results in a generated probability that the received query is intended for the item category associated with the node; applying the classifier to the plurality of nodes using the received query by the computing device until a generated probability for a node is below a threshold probability resulting in a list of item categories and a generated probability for each item category; ranking the item categories in the list of item categories based on the generated probabilities by the computing device; and providing the item categories in a ranked order by the computing device through a network. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising:
-
receiving a search log by a computing device, wherein the search log comprises a plurality of queries and, for each query, an item of a plurality of items that was selected after the query was submitted, wherein the plurality of items comprise at least one of products or services; receiving item data that associates an item category of a plurality of item categories with each item of the plurality of items by the computing device; generating training data from the search log and the item data by the computing device, wherein generating the training data comprises; for each query of the search log and each item category of the training data, generating a count of a number of times that an item associated with the item category was selected after the query was submitted; receiving item category data by the computing device, wherein the item category data comprises a plurality of nodes comprising a node for each item category, and further wherein each node in the plurality of nodes is a child of another node, a parent of another node, or both; and combining the training data and the item category data by; for each of the nodes in the plurality of nodes, associating the count for each query associated with the item category of the node with the node by the computing device; and for each of the nodes in plurality of nodes, associating the count for each query associated with the item category of the node with one or more nodes that are parents of the node by the computing device. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system comprising:
-
at least one computing device; and a provider that; receives item category data, wherein the item category data comprises a plurality of nodes and each node is associated with an item category of a plurality of item categories; receives a plurality of queries; for each query of the plurality of queries, provides an indicator of one or more items that are responsive to the query of a plurality of items, wherein the plurality of items comprise at least one of products or services; for each query of the plurality of queries, receives a selection of an item indicated by the provided indicator of one or more items; receives item data that associates an item category of a plurality of item categories with each item of the plurality of items; based on the item selected for each query of the plurality of queries and the item category associated with each item, generates training data, wherein the training data comprises a mapping of queries to item categories; for each query and item category in the mapping, determines a count of the number of times that the item category is associated with the query in the mapping ; combine the training data and item category data by, for each determined count for each item category, associating the determined count with the node of the plurality of nodes associated with the item category; receives another query; receives a classifier, wherein the classifier, when applied to a node of plurality of nodes using the received query by the provider, results in a generated probability that the received query is intended for the item category associated with the node; applies the classifier to the plurality of nodes using the received query until a generated probability for a node is below a threshold probability resulting in list of item categories and a generated probability for each item category; ranks the item categories in the list of item categories based on the generated probabilities and a popularity associated with each item category; and provides the item categories in a ranked order. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification