IP Library Granted Patent US 9,218,630
Granted Patent B2
US 9,218,630 · App. 13/427,584 · Granted Dec 22, 2015

Identifying influential users of a social networking service

Inventors: Hung-Chih Yang (Bellevue, WA); Danny B. Lange (Sammamish, WA); Xiong Zhang (Bellevue, WA)
Assignee: Microsoft Technology Licensing, LLC
G06Q50/01G06Q10/101G06Q30/0201G06Q30/0251G06Q30/0269G06Q30/0271G09B29/00
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 9,218,630
App. No.
13/427,584
Granted
Dec 22, 2015
Kind
B2
Abstract

Techniques for identifying influential users of a social networking service are provided. Influential users may be identified via an algorithm in which an influence score is assigned to each user based at least in part on other members of the community users having taken an affirmative step with respect to the user's communications. Iterative processing may be performed, with each user's influence score being determined by contributions from other users, and each contribution being determined by the contributor's influence score as of a prior iteration. A map-reduce framework may be employed, with data representing the community being partitioned into a plurality of discrete shards, a map process corresponding to each shard calculating an influence score for users represented in the shard, and reduce processes ranking users according to influence score across all shards.

Claims (89)

1. A method of analyzing a community of social networking service users to identify one or more influential users within the community, the social networking service providing a platform enabling a user within the community to communicate with at least one of a plurality of other users within the community, the method comprising:

by a computing device:

acquiring a dataset representing the community of users;

determining a contribution to a first user within the community by at least one second user of the plurality of other users within the community, the contribution by the at least one second user being defined at least in part by the following: at least a first affirmative step having been taken by the at least one second user with respect to repeating a communication by the first user received by the at least one second user, wherein the communication by the first user is also received by at least another user of the plurality of other users;

calculating an influence score for the first user based at least in part on the following: a total number of users within the community and a number of users of the plurality of other users that have taken at least a second affirmative step with respect to repeating the communication by the first user, the at least first affirmative step being different than the at least second affirmative step; and

revising the dataset based at least in part on the calculated influence score.

2. The method of claim 1 , wherein determining the contribution comprises determining a contribution to each of a plurality of first users by a respective at least one second user, and calculating the influence score comprises calculating an influence score for each of the plurality of first users, and the method further comprises:

ranking the plurality of first users based at least in part on the calculated influence score.

3. The method of claim 1 , wherein the social networking service is a service comprising social messaging, and the communication by the first user is a tweet.

4. The method of claim 3 , wherein the at least first affirmative step is the second user re-tweeting the communication.

5. The method of claim 1 , wherein the social networking service is a service comprising personal profiles, and the communication by the first user is a post to the first user's wall or timeline.

6. The method of claim 5 , wherein the at least first affirmative step is the second user re-sharing, commenting upon or liking the post.

7. The method of claim 1 , wherein determining the contribution and calculating the influence score are performed via application of a power iteration algorithm.

8. The method of claim 7 , wherein the power iteration algorithm is given by:

R

(

t

i

)

=

d

N

+

(

1

-

d

)

t

j

Reaffirm

(

t

i

)

R

(

t

j

)

w

(

t

j

,

t

i

)

Reaffirmed

(

t

j

)

wherein R(t i ) is an influence score assigned to first user t i , N is a number of users in the community, d is a damping factor, Reaffirm(t i ) represents a number of second users that have reaffirmed the communication by the first user, Reaffirmed(t j ) represents a number of users whose messages a second user t j has reaffirmed, and w(t j , t i ) represents a weight of an edge between users t j and t i equal to an influence score contribution from user t j to user t i .

9. At least one computer-readable memory having instructions encoded thereon which, when executed, perform a method of analyzing a community of social networking service users to identify one or more influential users within the community, the social networking service providing a platform enabling a user within the community to communicate with at least one of a plurality of other users within the community, the community comprising a first user and at least one second user of the plurality of other users, the first user having been assigned an initial influence score, the method comprising:

determining a contribution to the first user by the at least one second user, the contribution by the at least one second user of the plurality of other users being defined at least in part by at least a first affirmative step having been taken by the at least one second user with respect to repeating a communication by the first user received by the at least one second user, wherein the communication by the first user is also received by at least another user of the plurality of other users;

calculating an influence score for the first user based at least in part on a total number of users within the community and a number of users of the plurality of other users that have taken at least a second affirmative step with respect to repeating the communication by the first user, the at least first affirmative step being different than the at least second affirmative step; and

determining, based at least in part on a difference between the initial influence score for the first user and the influence score for the first user, whether the influence score for the first user is to be re-calculated.

10. The at least one computer-readable memory of claim 9 , further comprising:

if it is determined that the influence score is to be re-calculated, calculating a second influence score for the first user; and

determining, based at least in part on a difference between the influence score and the second influence score, whether the influence score for the first user is to be calculated again.

11. The at least one computer-readable memory of claim 9 , wherein the community comprises a plurality of first users, determining the contribution comprises determining a contribution to each of the plurality of first users by a respective at least one second user, calculating the influence score for the first user comprises calculating an influence score for each of the plurality of first users, and the method further comprises:

if it is determined that the influence score is not to be re-calculated, ranking the plurality of first users based at least in part on the calculated influence score for the first user, and updating a dataset with the social networking service users based on the ranking.

12. The at least one computer-readable memory of claim 9 , wherein the social networking service is a service comprising social messaging, and the communication by the first user is a tweet.

13. The at least one computer-readable memory of claim 12 , wherein the at least first affirmative step is the second user re-tweeting the communication.

14. The at least one computer-readable memory of claim 9 , wherein the social networking service is a service comprising personal profiles, and the communication by the first user is a post to the first user's wall or timeline.

15. The at least one computer-readable memory of claim 14 , wherein the at least first affirmative step is the second user re-sharing, commenting upon or liking the post.

16. A computer system to analyze a community of social networking service users to identify one or more influential users within the community, the social networking service providing a platform enabling a user within the community to communicate with at least one of a plurality of other users within the community, the computer system comprising:

at least one processor programmed to:

determine a contribution to a first user within the community by at least one second user of the plurality of other users within the community, the contribution by the at least one second user being defined at least in part by at least a first affirmative step having been taken by the at least one second user with respect to repeating a communication by the first user received by the at least one second user, wherein the communication by the first user is also received by at least another user of the plurality of other users; and

calculate an influence score for the first user based at least in part on a number of users of the plurality of other users that have taken at least a second affirmative step with respect to repeating the communication by the first user, a number of users of the plurality of other users whose communications the at least one second user has taken at least a third affirmative step to repeat, and a total number of users within the community, the at least first affirmative step being different than the at least second and third affirmative steps.

17. The computer system of claim 16 , wherein the at least one processor is programmed to determine a contribution to each of a plurality of first users by a respective at least one second user, calculate an influence score for each of the plurality of first users, and rank the plurality of first users based at least in part on the calculated influence score.

18. The computer system of claim 16 , wherein the at least one processor is programmed to determine the contribution and calculate the influence score via application of a power iteration algorithm.

19. The computer system of claim 16 , wherein the at least one processor is programmed to:

partition data representing the community of users into a plurality of discrete shards, a first shard of the plurality of shards including data representing the first user and the at least one second user; and

determine a contribution to, and calculate an influence score for, a user represented by data in each other of the plurality of shards.

20. The computer system of claim 19 , wherein the at least one processor is programmed to rank users across the plurality of shards according to calculated influence score.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034544/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2012
From: YANG, HUNG-CHIH; LANGE, DANNY B.; ZHANG, XIONG
To: MICROSOFT CORPORATION
Reel/Frame 028208/0603 →
Continuity (1)
Related Publication 20130254280A1 · Sep 26, 2013