US2016210301A1PendingUtilityA1
Context-Aware Query Suggestion by Mining Log Data
Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Feb 13, 2009Filed: Mar 28, 2016Published: Jul 21, 2016
Est. expiryFeb 13, 2029(~2.5 yrs left)· nominal 20-yr term from priority
G06F 17/30539G06F 17/30598G06F 17/3097G06F 16/332G06F 16/2425G06F 16/2465G06F 16/3322G06F 16/3349G06F 16/285G06F 16/3325G06F 16/90324
47
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Techniques described herein describe a context-aware query suggestion process. Context of a current query may be calculated by analyzing a sequence of previous queries. Historical search data may be mined to generate groups of query suggestion candidates. Using the context of the current query, the current query may be matched with the groups of query suggestion candidates to find a matching query suggestion candidate, which may be provided to the user.
Claims
exact text as granted — not AI-modified1 .- 20 . (canceled)
21 . A method comprising:
receiving a plurality of input queries; matching the plurality of input queries to a plurality of concepts, each concept of the plurality of concepts comprising one or more queries and an input query of the plurality of input queries being mapped to at most one concept of the plurality of concepts; and matching the plurality of concepts to one or more elements in a concept data structure to generate one or more matching query suggestions, wherein matching the plurality of concepts comprises:
traversing the concept data structure based at least in part on different and consecutive concepts of the plurality of concepts; and
obtaining the one or more matching query suggestions from a node of the concept data structure, the node being associated with a last matchable concept of the plurality of concepts.
22 . The method of claim 21 , further comprising mining historical data to generate a plurality of groups of query suggestion candidates.
23 . The method of claim 22 , wherein mining the historical data comprises:
finding one or more concepts associated with a plurality of queries in the historical data; finding one or more contexts in the historical data; and generating the groups of query suggestion candidates based at least in part on the one or more concepts and the one or more contexts.
24 . The method of claim 22 , wherein the historical data comprises a plurality of subsequences of sessions, wherein finding the one or more contexts in the historical data comprises enumerating the plurality of the subsequences of sessions.
25 . The method of claim 22 , wherein the historical data comprises multiple queries and multiple Uniform Resource Locators (URLs), and wherein finding the one or more concepts comprises:
relating each query of the multiple queries to respective one or more URLs of the multiple URLs to generate respective relationships between each of the multiple queries and the respective one or more URLs of the multiple URLs; and creating the one or more concepts based at least in part on the respective relationships.
26 . The method of claim 25 , further comprising creating the concept data structure based at least in part on the one or more contexts and the one or more concepts.
27 . The method of claim 25 , wherein relating each query of the multiple queries to the respective one or more URLs of the multiple URLs comprises creating a bipartite graph, wherein a first set of elements in the bipartite graph comprises the multiple queries, wherein a second set of elements in the bipartite graph comprises the multiple URLs, wherein an element of the first set of elements is related to one or more elements of the second set of elements in the bipartite graph.
28 . A system comprising:
one or more processors; and memory storing executable instructions that, when executed by the one or more processors, cause the one or more processors to perform acts comprising:
receiving a plurality of input queries;
matching the plurality of input queries to a plurality of concepts, each concept of the plurality of concepts comprising one or more queries and an input query of the plurality of input queries being mapped to at most one concept of the plurality of concepts; and
matching the plurality of concepts to one or more elements in a concept data structure to generate one or more matching query suggestions, wherein matching the plurality of concepts comprises:
traversing the concept data structure based at least in part on different and consecutive concepts of the plurality of concepts; and
obtaining the one or more matching query suggestions from a node of the concept data structure, the node being associated with a last matchable concept of the plurality of concepts.
29 . The system of claim 28 , the acts further comprising mining historical data to generate a plurality of groups of query suggestion candidates.
30 . The system of claim 29 , wherein mining the historical data comprises:
finding one or more concepts associated with a plurality of queries from the historical data; finding one or more contexts from the historical data; and generating the groups of query suggestion candidates based at least in part on the one or more concepts and the one or more contexts.
31 . The system of claim 29 , wherein the historical data comprises a plurality of subsequences of sessions, wherein finding the one or more contexts from the historical data comprises enumerating the plurality of the subsequences of sessions.
32 . The system of claim 29 , wherein the historical data comprises multiple queries and multiple Uniform Resource Locators (URLs), and wherein finding the one or more concepts comprises:
relating each query of the multiple queries to respective one or more URLs of the multiple URLs to generate respective relationships between each of the multiple queries and the respective one or more URLs of the multiple URLs; and creating the one or more concepts based at least in part on the respective relationships.
33 . The system of claim 32 , the acts further comprising creating the concept data structure based at least in part on the one or more contexts and the one or more concepts.
34 . The system of claim 32 , wherein relating each query of the multiple queries to the respective one or more URLs of the multiple URLs comprises creating a bipartite graph, wherein a first set of elements in the bipartite graph comprises the multiple queries, wherein a second set of elements in the bipartite graph comprises the multiple URLs, wherein an element of the first set of elements is related to one or more elements of the second set of elements in the bipartite graph.
35 . One or more storage devices storing executable instructions that, when executed by the one or more processors, cause the one or more processors to perform acts comprising:
receiving a plurality of input queries; matching the plurality of input queries to a plurality of concepts, each concept of the plurality of concepts comprising one or more queries and an input query of the plurality of input queries being mapped to at most one concept of the plurality of concepts; and matching the plurality of concepts to one or more elements in a concept data structure to generate one or more matching query suggestions, wherein matching the plurality of concepts comprises:
traversing the concept data structure based at least in part on different and consecutive concepts of the plurality of concepts; and
obtaining the one or more matching query suggestions from a node of the concept data structure, the node being associated with a last matchable concept of the plurality of concepts.
36 . The one or more storage devices of claim 35 , the acts further comprising mining historical data to generate a plurality of groups of query suggestion candidates.
37 . The one or more storage devices of claim 36 , wherein mining the historical data comprises:
finding one or more concepts associated with a plurality of queries from the historical data; finding one or more contexts from the historical data; and generating the groups of query suggestion candidates based at least in part on the one or more concepts and the one or more contexts.
38 . The one or more storage devices of claim 36 , wherein the historical data comprises a plurality of subsequences of sessions, wherein finding the one or more contexts from the historical data comprises enumerating the plurality of the subsequences of sessions.
39 . The one or more storage devices of claim 36 , wherein the historical data comprises multiple queries and multiple Uniform Resource Locators (URLs), and wherein finding the one or more concepts comprises:
relating each query of the multiple queries to respective one or more URLs of the multiple URLs to generate respective relationships between each of the multiple queries and the respective one or more URLs of the multiple URLs; and creating the one or more concepts based at least in part on the respective relationships.
40 . The one or more storage devices of claim 39 , the acts further comprising creating the concept data structure based at least in part on the one or more contexts and the one or more concepts.Join the waitlist — get patent alerts
Track US2016210301A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.