Recommendation engine
AssigneeLinkedIn Corporation
InventorAnton P. Kast
Life of this patent
Estimating the term…
Abstract
Determining an item to present to a first user is disclosed. Preference information is received that comprises the preferences of a plurality of users associated with one or more items. User correlations are determined from the received preference information. For the first user, a set of other users most correlated with the first user is determined. One or more items are presented to the first user based at least in part on the preferences of the other users.
Claims20
A system for determining an item to present to a first user, comprising:
- a processor configured to:
- receive preference information comprising the preferences of a plurality of users associated with one or more items;
- determine user correlations from the received preference information;
- determine, for the first user, a set of other users most correlated with the first user;
- and
- present one or more items to the first user based at least in part on preferences of the other users;
- and
- a memory coupled to the processor and configured to provide the processor with instructions;
- wherein determining a user correlation between the first user and a second user comprises:
- identifying a dugg set of items that both the first user and the second user have preferences for;
- identifying a buried set of items that both the first user and the second user have preferences against;
- identifying an exclusion set of items for which one of the first user and the second user has a preference for, and for which the other of the first user and the second user has a preference against;
- subtracting a size of the exclusion set from a size of a union of the dugg set and the buried set to yield a numerator;
- and
- dividing the numerator by a total number of preferences received from the first user and the second user, to yield the user correlation between the first user and the second user.
A computer-implemented method for determining an item to present to a first user, comprising:
- receiving preference information comprising the preferences of a plurality of users associated with one or more items;
- and
- operating a processor to:
- determine user correlations from the received preference information;
- determine, for the first user, a first set of users more correlated with the first user than a second set of users;
- present one or more items to the first user based at least in part on preferences of the first set of users;
- and
- for each of the one or more items, identify the user, in the first set of users, whose preference for the item was the basis for presenting the item;
- wherein determining a user correlation between the first user and a second user comprises:
- identifying a dugg set of items that both the first user and the second user have preferences for;
- identifying a buried set of items that both the first user and the second user have preferences against;
- identifying an exclusion set of items for which one of the first user and the second user has a preference for, and for which the other of the first user and the second user has a preference against;
- subtracting a size of the exclusion set from a size of a union of the dugg set and the buried set to yield a numerator;
- and
- dividing the numerator by a total number of preferences received from the first user and the second user, to yield the user correlation between the first user and the second user.
A non-transitory computer program product for determining an item to present to a first user, the computer program product being embodied in a computer readable storage medium and comprising computer instructions for:
- receiving preference information comprising the preferences of a plurality of users associated with one or more items;
- and
- operating a processor to:
- determine user correlations from the received preference information;
- determine, for the first user, a first set of users more correlated with the first user than a second set of users;
- and
- present one or more items to the first user based at least in part on preferences of the first set of users;
- and
- for each of the one or more items, identify the user, in the first set of users, whose preference for the item was the basis for presenting the item;
- wherein determining a user correlation between the first user and a second user comprises:
- identifying a dugg set of items that both the first user and the second user have preferences for;
- identifying a buried set of items that both the first user and the second user have preferences against;
- identifying an exclusion set of items for which one of the first user and the second user has a preference for, and for which the other of the first user and the second user has a preference against;
- subtracting a size of the exclusion set from a size of a union of the dugg set and the buried set to yield a numerator;
- and
- dividing the numerator by a total number of preferences received from the first user and the second user, to yield the user correlation between the first user and the second user.
Dependencies are inferred from the claim text.