OBJECT RECOMMENDATION BASED UPON SIMILARITY DISTANCES
First Claim
1. A computer-implemented method comprising:
- receiving a candidate object with which a user can interact within a communication system;
determining, for each of a plurality of objects with which the user has had an interaction, a value representing a commonality between the candidate object and each of the plurality of objects;
determining an aggregate distance using a plurality of the values, wherein the aggregate distance is determined by dividing a sum or average of the plurality of the values by an outlier value, the outlier value corresponding to an object with which the user has had an interaction and having less in common with the candidate object than each of the plurality of objects; and
recommending the candidate object to the user based upon the aggregate distance.
2 Assignments
0 Petitions
Accused Products
Abstract
Exemplary methods, apparatuses, and systems receive a candidate object with which a user can interact within a network service. For each of a first plurality of objects with which the user has had a positive interaction, a first value representing a commonality between the candidate object and each of the first plurality of objects is determined. For each of a second plurality of objects with which a user has had a negative interaction, a second value representing a commonality between the candidate object and each of the second plurality of objects is determined. An aggregate positive distance is determined using a plurality of the first values. An aggregate negative distance is determined using a plurality of the second values. The candidate object is displayed or not displayed to the user as a recommendation based upon a difference between the aggregate positive distance and the aggregate negative distance.
4 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
receiving a candidate object with which a user can interact within a communication system; determining, for each of a plurality of objects with which the user has had an interaction, a value representing a commonality between the candidate object and each of the plurality of objects; determining an aggregate distance using a plurality of the values, wherein the aggregate distance is determined by dividing a sum or average of the plurality of the values by an outlier value, the outlier value corresponding to an object with which the user has had an interaction and having less in common with the candidate object than each of the plurality of objects; and recommending the candidate object to the user based upon the aggregate distance.
-
-
2. The computer-implemented method of claim 1, wherein the interaction with each of the plurality of objects is a positive interaction.
-
3. The computer-implemented method of claim 1, wherein the interaction with each of the plurality of objects is a negative interaction.
-
4. The computer-implemented method of claim 1, further comprising:
selecting an object to be the candidate object based upon positive feedback from one or more users connected to the user within the network service.
-
5. The computer-implemented method of claim 1, wherein each value is based upon a combination of second and third values, the second value representing a commonality in metadata between the candidate object and a corresponding object within the plurality of objects, and the third value representing one or more other users having an interaction with both the candidate object and the corresponding object within the plurality of objects.
-
6. The computer-implemented method of claim 5, further comprising:
-
modifying each of the second values to the result of a mathematical operation between the determined third values and a first weighting value; and modifying each of the third values to the result of a mathematical operation between the determined fourth values and a second weighting value.
-
-
7. The computer-implemented method of claim 6, further comprising:
selecting one or more of the weighting values based upon an object type for the candidate object.
-
8. The computer-implemented method of claim 1, wherein a number of objects within the plurality of objects is limited to a number of objects determined to have a greatest amount in common with the candidate object.
-
9. The computer-implemented method of claim 1, wherein a number of objects within the plurality of objects is limited to a number of objects based upon an object type for the candidate object.
-
10. The computer-implemented method of claim 1, wherein one or more outlying values are omitted from the determination of the aggregate distance.
-
11. A non-transitory computer-readable medium storing instructions which, when executed by one or more processors in a processing device, cause the processing device to perform a method comprising:
-
receiving a candidate object with which a user can interact within a communication system; determining, for each of a plurality of objects with which the user has had an interaction, a value representing a commonality between the candidate object and each of the plurality of objects; determining an aggregate distance using a plurality of the values, wherein the aggregate distance is determined by dividing a sum or average of the plurality of the values by an outlier value, the outlier value corresponding to an object with which the user has had an interaction and having less in common with the candidate object than each of the plurality of objects; and recommending the candidate object to the user based upon the aggregate distance.
-
-
12. The non-transitory computer-readable medium of claim 11, wherein the interaction with each of the plurality of objects is a positive interaction.
-
13. The non-transitory computer-readable medium of claim 11, wherein the interaction with each of the plurality of objects is a negative interaction.
-
14. The non-transitory computer-readable medium of claim 11, the method further comprising:
selecting an object to be the candidate object based upon positive feedback from one or more users connected to the user within the network service.
-
15. The non-transitory computer-readable medium of claim 11, wherein each value is based upon a combination of second and third values, the second value representing a commonality in metadata between the candidate object and a corresponding object within the plurality of objects, and the third value representing one or more other users having an interaction with both the candidate object and the corresponding object within the plurality of objects.
-
16. The non-transitory computer-readable medium of claim 15, the method further comprising:
-
modifying each of the second values to the result of a mathematical operation between the determined third values and a first weighting value; and modifying each of the third values to the result of a mathematical operation between the determined fourth values and a second weighting value.
-
-
17. The non-transitory computer-readable medium of claim 16, the method further comprising:
selecting one or more of the weighting values based upon an object type for the candidate object.
-
18. The non-transitory computer-readable medium of claim 11, wherein a number of objects within the plurality of objects is limited to a number of objects determined to have a greatest amount in common with the candidate object.
-
19. The non-transitory computer-readable medium of claim 11, wherein a number of objects within the plurality of objects is limited to a number of objects based upon an object type for the candidate object.
-
20. The non-transitory computer-readable medium of claim 11, wherein one or more outlying values are omitted from the determination of the aggregate distance.
Specification