Simulated annealing in recommendation systems
First Claim
1. A method comprising:
- identifying, by one or more processors, a plurality of user interests from user activity associated with a user;
applying a weight to each of the user interests based on a frequency of user activity related to each of the user interests;
generating, by one or more processors, groups on a social network for the user, at least a first group from the set of the groups including a user interest;
generating, by the one or more processors, a query for content for the first group that includes the user interest;
receiving, by the one or more processors, the content for the first group;
generating, by the one or more processors, a set of ranked suggestions from the content for the first group based on relevancy to the user interest, the weight of the user interest and explicit feedback from the user, the explicit feedback including a first setting for how much the user wants a suggestion to stray from a center point of relevant choices, the first setting being different from a second setting provided by the user for a second group from the set of groups;
providing, by the one or more processors, at least one first suggestion from the set of ranked suggestions to the user;
receiving implicit feedback from the user in response to providing the at least one first suggestion, the implicit feedback including positive feedback; and
responsive to receiving the positive feedback, providing at least one second suggestion from the set of ranked suggestions to the user that stray from the center point of relevant choices for the user.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for generating suggestions to a user using simulated annealing is disclosed. The system includes a user activity processing unit, a recommendation engine, a ranking engine and a simulated annealing engine. The user activity processing unit receives user activities and generates user interests. The simulated annealing engine generates a temperature to control how far to stray from highly relevant suggestions. The recommendation engine generates a query for content and generates at least one suggestion for the user from received content. The ranking engine ranks the at least one suggestion based on a recency of user interests, frequency of actions associated with the user interests and social affinity of the user to other users that generated any of the at least one suggestions.
-
Citations
17 Claims
-
1. A method comprising:
-
identifying, by one or more processors, a plurality of user interests from user activity associated with a user; applying a weight to each of the user interests based on a frequency of user activity related to each of the user interests; generating, by one or more processors, groups on a social network for the user, at least a first group from the set of the groups including a user interest; generating, by the one or more processors, a query for content for the first group that includes the user interest; receiving, by the one or more processors, the content for the first group; generating, by the one or more processors, a set of ranked suggestions from the content for the first group based on relevancy to the user interest, the weight of the user interest and explicit feedback from the user, the explicit feedback including a first setting for how much the user wants a suggestion to stray from a center point of relevant choices, the first setting being different from a second setting provided by the user for a second group from the set of groups; providing, by the one or more processors, at least one first suggestion from the set of ranked suggestions to the user; receiving implicit feedback from the user in response to providing the at least one first suggestion, the implicit feedback including positive feedback; and responsive to receiving the positive feedback, providing at least one second suggestion from the set of ranked suggestions to the user that stray from the center point of relevant choices for the user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
one or more processors; a user activity processing unit stored on a memory and executable by the one or more processors, the user activity processing unit configured to identify a plurality of user interests from user activity associated with a user, apply a weight to each of the user interests based on a frequency of user activity related to each of the user interests and to generate groups on a social network for the user, at least a first group from the set of the groups including a user interest; a recommendation engine stored on the memory and executable by the one or more processors, the recommendation engine coupled to the user activity processing unit and configured to generate a query for content for the first group that includes the user interest and to receive the content for the first group; a ranking engine stored on the memory and executable by the one or more processors, the ranking engine coupled to the recommendation engine and configured to generate a set of ranked suggestions from the content for the first group based on relevancy to the user interest, the weight of the user interest and explicit feedback from the user, the explicit feedback including a first setting for how much the user wants a suggestion to stray from a center point of relevant choices, the first setting being different from a second setting provided by the user for a second group from the set of groups; and a simulated annealing engine stored on the memory and executable by the one or more processors, the simulated annealing engine coupled to the ranking engine and configured to provide at least one first suggestion from the set of ranked suggestions to the user, to receive implicit feedback from the user in response to providing the at least one first suggestion, the implicit feedback including positive feedback and responsive to receiving the positive feedback, to provide at least one second suggestions from the set of ranked suggestions for the user that stray from the center point of relevant choices for the user. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer program product stored on a non-transitory computer readable medium including a computer readable program, wherein the computer readable program when executed on a computer causes the computer to:
-
identify a plurality of user interests from user activity associated with a user; apply a weight to each of the user interests based on a frequency of user activity related to each of the user interests; generate groups on a social network for the user, at least a first group from the set of the groups including a user interest; generate a query for content for the first group that includes the user interest; receive the content for the first group; generate a set of ranked suggestions from the content for the first group based on relevancy to the user interest, the weight of the user interest and explicit feedback from the user, the explicit feedback including a first setting for how much the user wants a suggestion to stray from a center point of relevant choices, the first setting being different from a second setting provided by the user for a second group from the set of groups; provide the at least one first suggestion from the set of ranked suggestions to the user; receive implicit feedback from the user in response to providing the at least one first suggestion, the implicit feedback including positive feedback; and responsive to receiving the positive feedback, provide at least one second suggestion from the set of ranked suggestions for the user that stray from the center point of relevant choices for the user. - View Dependent Claims (16, 17)
-
Specification