IP Library Granted Patent US 8,775,354
Granted Patent B2
US 8,775,354 · App. 13/864,982 · Granted Jul 8, 2014

Evaluating an item based on user reputation information

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,775,354
App. No.
13/864,982
Granted
Jul 8, 2014
Kind
B2
Abstract

Evaluating an item based on user reputation information is disclosed. Sharing event data is received. A graph is materialized from the received sharing event data. User reputation scores are determined based at least in part on the graph. A score is assigned to the item based at least in part on the user reputation scores of users associated with the item.

Claims (105)

1. A system for evaluating content items served by the system to multiple users who initiate sharing events regarding the content items, the system comprising:

a processor configured to:

generate a centrality matrix M based on sharing event data reflecting the sharing events initiated by the multiple users, wherein:

the matrix M comprises a number of rows and a number of columns equal to the number of users in the multiple users;

each row corresponds to a destination user in the multiple users;

each column corresponds to a source user in the multiple users;

each element in the matrix has a corresponding destination user and a corresponding source user, and contains either a zero value or a non-zero numerical value;

each zero value in the matrix indicates that for none of the content items did the corresponding destination user initiate a sharing event before the corresponding source user initiated a sharing event for the same content item;

each non-zero value in the matrix indicates that a sharing event regarding at least one content item was initiated by the corresponding destination user before a sharing event was initiated by the corresponding source user for the same content item; and

all values in each column sum to the value of one;

compute an eigenvector d such that Md=M;

assign the value of each index of eigenvector d as a user reputation score for a corresponding user among the multiple users; and

for each content item, combine the reputation scores of users that initiated sharing events regarding the content item, to produce an item reputation score for the content item; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system of claim 1 , wherein the processor is further configured to calculate the non-zero values in the matrix by:

for each source user who initiated a sharing event for a content item after a destination user initiated a sharing event for the same content item:

identifying a number of sharing events p initiated by the source user in which at least one destination user previously initiated a sharing event for the same content item;

for each destination user who initiated a sharing event for a content item before the source user initiated a sharing event for the same content item:

for each of N content items for which the destination user initiated a sharing event before the source user initiated a sharing event for the same content item:

identifying a number of users r, including the destination user, that initiated sharing events regarding the content item prior to the sharing event initiated by the source user; and

calculating

f

=

(

1

p

r

)

;

 and

summing f for each content item 1 through N to produce the non-zero value for the matrix element corresponding to the source user and the destination user.

3. The system of claim 1 , wherein the sharing event data includes multiple preference events initiated by the multiple users while viewing the content items.

4. The system of claim 3 , wherein each preference event is one of:

a positive preference event; and

a negative preference event.

5. The system of claim 4 , wherein:

a positive preference event is a digg; and

a negative preference event is a bury.

6. The system of claim 1 , wherein the sharing event data includes at least one sharing event in which one of the multiple users:

viewed a content item served by the system; and

activated a control served by the system to accompany the content item;

wherein activation of the control caused the content item to be shared with one or more other users.

7. The system of claim 1 , wherein the processor is further configured to log the sharing event data by recording, for each sharing event:

an identity of the user that initiated the sharing event;

a timestamp of the sharing event; and

an identity of the content item associated with the sharing event.

8. The system of claim 7 , wherein:

the system further comprises a database; and

sharing events of different types are stored in separate logs of the database.

9. The system of claim 7 , wherein the sharing events are stored as an ordered list ordered by the timestamps.

10. The system of claim 1 , wherein:

the processor is further configured to determine a time-based order of the sharing events reflected in the sharing event data by:

for each sharing event initiated by a given user for a given content item, identifying one or more of a pre-sharer and a post-sharer;

a pre-sharer is a user who initiated a sharing event for the given content item before the given user; and

a post-sharer is a user who initiated a sharing event for the given content item after the given user.

11. The system of claim 1 , wherein the processor is further configured to generate a graph based on the sharing event data, the graph comprising:

a separate node corresponding to each of the multiple users that initiated a sharing event; and

for each content item, for each given user that initiated a sharing event for the content item, other than the initial user who initiated the initial sharing event for the content item, at least one directed link from the given user's corresponding node to a node corresponding to another user who initiated a sharing event for the content item before the given user.

12. The system of claim 11 , wherein generating the graph comprises replacing multiple directed links from a first user to a second user with a single link.

13. The system of claim 11 , wherein generating the graph comprises:

weighting each directed link according to a type of sharing event between the users corresponding to the nodes connected by the directed link, wherein directed links corresponding to different types of sharing events have different weights.

14. The system of claim 1 , wherein the processor is further configured to:

calculate a first item reputation score for a first content item presented in a secondary area of a page of content associated with the system; and

if the first item reputation score exceeds a first threshold, promote the first content item by presenting it in a primary area of the page instead of the secondary area.

15. A method for evaluating content items served to multiple users who initiate sharing events regarding the content items, the method comprising:

generating a centrality matrix M, with a processor, based on sharing event data reflecting the sharing events initiated by the multiple users, wherein:

the matrix M comprises a number of rows and a number of columns equal to the number of users in the multiple users;

each row corresponds to a destination user in the multiple users;

each column corresponds to a source user in the multiple users;

each element in the matrix has a corresponding destination user and a corresponding source user, and contains either a zero value or a non-zero numerical value;

each zero value in the matrix indicates that for none of the content items did the corresponding destination user initiate a sharing event before the corresponding source user initiated a sharing event for the same content item;

each non-zero value in the matrix indicates that a sharing event regarding at least one content item was initiated by the corresponding destination user before a sharing event was initiated by the corresponding source user for the same content item; and

all values in each column sum to the value of one;

computing an eigenvector d such that Md=M;

assigning the value of each index of eigenvector d as a user reputation score for a corresponding user among the multiple users; and

for each content item, combining the reputation scores of users that initiated sharing events regarding the content item, to produce an item reputation score for the content item.

16. The method of claim 15 , further comprising calculating the non-zero values in the matrix by:

for each source user who initiated a sharing event for a content item after a destination user initiated a sharing event for the same content item:

identifying a number of sharing events p initiated by the source user in which at least one destination user previously initiated a sharing event for the same content item;

for each destination user who initiated a sharing event for a content item before the source user initiated a sharing event for the same content item:

for each of N content items for which the destination user initiated a sharing event before the source user initiated a sharing event for the same content item:

identifying a number of users r, including the destination user, that initiated sharing events regarding the content item prior to the sharing event initiated by the source user; and

calculating

f

=

(

1

p

r

)

;

 and

summing f for each content item 1 through N to produce the non-zero value for the matrix element corresponding to the source user and the destination user.

17. A non-transitory computer program product for evaluating content items served to multiple users who initiate sharing events regarding the content items, the computer program product being embodied in a computer readable storage medium and comprising computer instructions for:

generating a centrality matrix M based on sharing event data reflecting the sharing events initiated by the multiple users, wherein:

the matrix M comprises a number of rows and a number of columns equal to the number of users in the multiple users;

each row corresponds to a destination user in the multiple users;

each column corresponds to a source user in the multiple users;

each element in the matrix has a corresponding destination user and a corresponding source user, and contains either a zero value or a non-zero numerical value;

each zero value in the matrix indicates that for none of the content items did the corresponding destination user initiate a sharing event before the corresponding source user initiated a sharing event for the same content item;

each non-zero value in the matrix indicates that a sharing event regarding at least one content item was initiated by the corresponding destination user before a sharing event was initiated by the corresponding source user for the same content item; and

all values in each column sum to the value of one;

computing an eigenvector d such that Md=M;

assigning the value of each index of eigenvector d as a user reputation score for a corresponding user among the multiple users; and

for each content item, combining the reputation scores of users that initiated sharing events regarding the content item, to produce an item reputation score for the content item.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2017
From: LINKEDIN CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044746/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2014
From: DIGG, INC.
To: LINKEDIN CORPORATION
Reel/Frame 032402/0760 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2014
From: KAST, ANTON P.; AUGUR, WESLEY GRANT
To: DIGG, INC.
Reel/Frame 032353/0653 →