Predicting user interests
First Claim
1. A method performed by data processing apparatus, the method comprising:
- accessing query log data storing queries and user identifiers, wherein the query log data specify, for each user identifier;
queries associated with the user identifier, each query associated with the user identifier being a query received from one or more user devices associated with the user identifier; and
for each query, a submission time of the query, the submission time related to a time that the query was received by a search system;
training, by a data processing apparatus, a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which the next query is predicted to belong, wherein the prediction model comprises a plurality of prediction functions that each generate a category prediction of the next query, wherein each category prediction is based on the query log data and category data defining, for each query of the set of queries, categories to which the query belongs, and wherein the prediction functions include a combination of;
one or more time-based prediction functions that generate a category prediction of the next query based on the category data and a difference of submission times of the queries of the set of queries, the one or more time-based prediction functions generating a category prediction of the next query by;
adjusting, for each particular query of the set of queries, a category weight for each category to which the particular query belongs based on an amount of time that has passed since the submission time of the particular query; and
generating a category prediction of the next query based on the adjusted category weights for each category and for each particular query;
one or more rank-based prediction functions that generate a category prediction of the next query based on the category data and a rank order by which the queries of the set of queries were received; and
one or more category-based prediction functions that generate a category prediction of the next query based on the category data and that is independent of the submission times of the queries of the set of queries.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for predicting user interests. In one aspect, a method includes training a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which a next query belongs, the prediction model comprising a plurality of prediction functions that each generate a category prediction of a next query, wherein the prediction functions include two or more of a time-based prediction functions that generate a category prediction based on the category data and a difference of submission times of the queries, a rank-based prediction functions that generate a category prediction based on the category data and a rank order by which the queries were received, and a category-based prediction function that generates a category prediction based on the category data.
25 Citations
22 Claims
-
1. A method performed by data processing apparatus, the method comprising:
-
accessing query log data storing queries and user identifiers, wherein the query log data specify, for each user identifier; queries associated with the user identifier, each query associated with the user identifier being a query received from one or more user devices associated with the user identifier; and for each query, a submission time of the query, the submission time related to a time that the query was received by a search system; training, by a data processing apparatus, a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which the next query is predicted to belong, wherein the prediction model comprises a plurality of prediction functions that each generate a category prediction of the next query, wherein each category prediction is based on the query log data and category data defining, for each query of the set of queries, categories to which the query belongs, and wherein the prediction functions include a combination of; one or more time-based prediction functions that generate a category prediction of the next query based on the category data and a difference of submission times of the queries of the set of queries, the one or more time-based prediction functions generating a category prediction of the next query by; adjusting, for each particular query of the set of queries, a category weight for each category to which the particular query belongs based on an amount of time that has passed since the submission time of the particular query; and generating a category prediction of the next query based on the adjusted category weights for each category and for each particular query; one or more rank-based prediction functions that generate a category prediction of the next query based on the category data and a rank order by which the queries of the set of queries were received; and one or more category-based prediction functions that generate a category prediction of the next query based on the category data and that is independent of the submission times of the queries of the set of queries. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 18, 19, 20)
-
-
13. A method performed by data processing apparatus, the method comprising:
-
accessing query log data storing queries and user identifiers, wherein the query log data specify, for each user identifier; queries associated with the user identifier, each query associated with the user identifier being a query received from one or more user devices associated with the user identifier; and for each query, a submission time of the query, the submission time related to a time that the query was received by a search system; training, by a data processing apparatus, a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which a next query is predicted to belong, wherein; the prediction model comprises a combination of two or more of; a time-based prediction function that generates a category prediction of a next query based on category data and a difference of submission times of the queries of the set of queries, the category data defining, for each query of the set of queries, categories to which the queries query belongs, the time-based prediction function including time-based prediction parameters, the time-based prediction function generating a category prediction of the next query by; adjusting, for each particular query of the set of queries, a category weight for each category to which the particular query belongs based on an amount of time that has passed since the submission time of the particular query; and generating a category prediction for the next query based on the adjusted category weight for each category and for each particular query; a rank-based prediction function that generates a category prediction of the next query based on a rank order by which the queries of the set of queries were received, and includes rank-based prediction parameters; and a category-based prediction function that generates a category prediction of the next query based on the category data of the queries of the set of queries and that is independent of the submission times of the queries of the set of queries, and includes category-based prediction parameters; and the training comprises iteratively generating category predictions for the prediction model and respectively adjusting two or more of the time-based prediction parameters, rank-based prediction parameters and category-based prediction parameters of the prediction functions for each iteration until a termination event occurs. - View Dependent Claims (14)
-
-
15. Software comprising instructions stored in a non-transitory computer readable storage device that upon execution cause a data processing apparatus to perform operations comprising:
-
accessing query log data storing queries and user identifiers, wherein the query log data specify, for each user identifier; queries associated with the user identifier, each query associated with the user identifier being a query received from one or more user devices associated with the user identifier; and for each query, a submission time of the query, the submission time related to a time that the query was received by a search system; training, by a data processing apparatus, a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which the next query is predicted to belong, wherein the prediction model comprises a plurality of prediction functions that each generate a category prediction of the next query based on the query log data and category data defining, for each query of the set of the set of queries, categories to which the queries query belong, wherein the prediction functions include a combination of; one or more time-based prediction functions that generate a category prediction of the next query based on the category data and a difference of submission times of the queries, the one or more time-based prediction functions generating a category prediction of the next query by; adjusting, for each particular query of the set of queries, a category weight for each category to which the particular query belongs based on an amount of time that has passed since the submission time of the particular query; and generating a category prediction of the next query based on the adjusted category weights for each category and for each particular query; one or more rank-based prediction functions that generate a category prediction of the next query based on the category data and a rank order by which the queries of the set of queries were received; and one or more category-based prediction functions that generate a category prediction of the next query based on the category data and that is independent of the submission times of the queries of the set of queries.
-
-
16. Software comprising instructions stored in a non-transitory computer readable storage device that upon execution cause a data processing apparatus to perform operations comprising:
-
accessing query log data storing queries and user identifier, wherein the query log data specify, for each user identifier; queries associated with the user identifier, each query associated with the user identifier being a query received from one or more user devices associated with the user identifier; and for each query, a submission time of the query, the submission time related to a time that the query was received by a search system; training, by a data processing apparatus, a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which a next query is predicted to belong, wherein; the prediction model comprises a combination of two or more of; a time-based prediction function that generates a category prediction of a next query based on category data and a difference of submission times of the queries, the category data defining, for each query of the set of queries, categories to which the queries query belongs, the time-based prediction function including time-based prediction parameters, the time-based prediction function generating a category prediction of the next query by; adjusting, for each particular query of the set of queries, a category weight for each category to which the particular query belongs based on an amount of time that has passed since the submission time of the particular query; and generating a category prediction for the next query based on the adjusted category weight for each category and for each particular query; a rank-based prediction function that generates a category prediction of the next query based on a rank order by which the queries of the set of queries were received, and includes rank-based prediction parameters; and a category-based prediction function that generates a category prediction of the next query based on the category data of the queries of the set of queries and that is independent of the submission times of the queries of the set of queries, and includes category-based prediction parameters; and the training comprises iteratively generating category predictions for the prediction model and adjusting the time-based prediction parameters, rank-based prediction parameters and category-based prediction parameters of the prediction functions for each iteration until a termination event occurs.
-
-
17. A system comprising:
-
a data processing apparatus; and a memory device in data communication with the data processing apparatus and storing instructions that cause the data processing apparatus to perform operations comprising; accessing query log data storing queries and user identifier, wherein the query log data specify, for each user identifier; queries associated with the user identifier, each query associated with the user identifier being a query received from one or more user devices associated with the user identifier; and for each query, a submission time of the query, the submission time related to a time that the query was received by a search system; training, by a data processing apparatus, a prediction model to generate a category prediction of a next query from a set of queries, the category prediction specifying categories to which a next query is predicted to belong, wherein; the prediction model comprises a combination of two or more of; a time-based prediction function that generates a category prediction of a next query based on category data and a difference of submission times of the queries, the category data defining, for each query of the set of queries, categories to which the queries query belongs, the time-based prediction function including time-based prediction parameters, the time-based prediction function generating a category prediction of the next query by; adjusting, for each particular query of the set of queries, a category weight for each category to which the particular query belongs based on an amount of time that has passed since the submission time of the particular query; and generating a category prediction for the next query based on the adjusted category weight for each category and for each particular query; a rank-based prediction function that generates a category prediction of the next query based on a rank order by which the queries of the set of queries were received, and includes rank-based prediction parameters; and a category-based prediction function that generates a category prediction of the next query based on the category data of the queries of the set of queries and that is independent of the submission times of the queries of the set of queries, and includes category-based prediction parameters; and the training comprises iteratively generating category predictions for the prediction model and adjusting the time-based prediction parameters, rank-based prediction parameters and category-based prediction parameters of the prediction functions for each iteration until a termination event occurs. - View Dependent Claims (21, 22)
-
Specification