IP Library Granted Patent US 9,466,071
Granted Patent B2
US 9,466,071 · App. 13/297,988 · Granted Oct 11, 2016

Social media user recommendation system and method

Inventors: Marco Pennacchiotti (Mountain View, CA); Siva Gurumurthy (Fremont, CA)
Assignee: Yahoo! Inc.
G06Q30/0255G06N99/005G06Q50/01
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,466,071
App. No.
13/297,988
Granted
Oct 11, 2016
Kind
B2
Abstract

Each user is represented by a mixture of topics, e.g., one or more topics, and a probability of interest in each topic in the mixture, and given the target user, one or more other users can be recommended, each user that is recommended to the target user is determined to have a topical interest similarity with the target user, e.g., the target user's interest in one or more topics of the mixtures of topics is determined to be similar to a recommended interest in the one or more topics of the mixture of topics. The target user and the one or more recommended users can be said to have similar topical interests. The target user can use the user recommendation to establish an interactive dialogue, for example, with one or more users identified in the user recommendation.

Claims (58)

1. A method comprising:

generating, by at least one computing device having at least one processor, a plurality of social-media message aggregates, each social-media message aggregate corresponding to a user of a plurality of users, the user's social-media message aggregate being generated from a plurality of the user's social-media messages;

determining, by at least one computing device having at least one processor, a plurality of topics using the plurality of social-media message aggregates, each topic of the plurality identifying a set of words associated with the topic, each word in the set of words having an importance of the word to the topic, the importance of each word to the topic is determined using the plurality of social-media message aggregates;

generating, by at least one computing device having at least one processor, a plurality of interest distributions, each interest distribution corresponds to one of the users of the plurality of users and is generated using the user's social-media message aggregate of the user's social-media messages, each user's interest distribution comprising the plurality of topics and, for each topic of the plurality of topics, information indicating the user's level of interest in the topic determined using the user's social-media message aggregate and the plurality of topics;

identifying, by at least one computing device having at least one processor and for a target user, at least one other user of the plurality of users having a similar topical interest with the target user, the identifying using the interest distribution of the target user and the interest distribution of the at least one other user; and

causing, by at least one computing device having at least one processor, a user recommendation to be transmitted to the target user, the user recommendation identifying the at least one other user of the plurality of users having a similar topical interest with the target user.

2. The method of claim 1 , the identifying further comprising:

comparing, by at least one computing device having at least one processor, the target user's interest distribution with the interest distribution of each other user of the plurality of users, the comparing generating a plurality of topical interest similarity scores, each topical interest similarity score representing a level of topical interest similarity of the target user with another user of the plurality of users; and

selecting, by at least one computing device having at least one processor, the at least one other user of the plurality of users using the plurality of topical interest similarity scores.

3. The method of claim 1 , the user recommendation comprising at least one socially-related user of the plurality of users, the at least one socially-related user having a social relationship with the target user identified using a graph comprising a social network graph.

4. The method of claim 3 , the graph comprising a social network graph further comprising a topical interest graph, the social network graph comprising nodes representing users and each edge connecting user nodes in the social network graph representing a social relationship, the topical interest graph comprising topic nodes representing the plurality of topics, each edge connecting a user node and a topic node in the topical interest graph representing the user's interest in the topic.

5. The method of claim 4 , further comprising:

traversing, by at least one computing device having at least one processor, the graph to identify the at least one socially-related user and the at least one other user of the plurality of users having a similar topical interest with the target user.

6. The method of claim 3 , further comprising:

obtaining, by at least one computing device having at least one processor, a social relationship score for each other user of the plurality of users, each social relationship score corresponding to one of the other users of the plurality of users and indicating a level of social relationship of the other user with the target user;

obtaining, by at least one computing device having at least one processor, the topical interest similarity score for each other user of the plurality of users;

generating, by at least one computing device having at least one processor and for each other user of the plurality of users, a combined recommendation score by combining the social relationship score and the topical interest similarity score, the user recommendation comprising one or more users selected using the combined recommendation score.

7. The method of claim 1 , determining a plurality of topics using the plurality of social-media message aggregates further comprising:

determining, by at least computing device having at least one processor and for each topic of the plurality of topics, a plurality of words associated with the topic, the plurality of words being used with the user's interest distribution to identify a user's interest in the topic.

8. A system comprising:

at least one computing device, each computing device comprising one or more processors and a storage medium for tangibly storing thereon program logic for execution by the one or more processors, the stored program logic comprising:

generating logic executed by the one or more processors for generating a plurality of social-media message aggregates, each social-media message aggregate corresponding to a user of a plurality of users, the user's social-media message aggregate being generated from a plurality of the user's social-media messages;

determining logic executed by the one or more processors for determining a plurality of topics using the plurality of social-media message aggregates, each topic of the plurality identifying a set of words associated with the topic, each word in the set of words having an importance of the word to the topic, the importance of each word to the topic is determined using the plurality of social-media message aggregates;

generating logic executed by the one or more processors for generating a plurality of interest distributions, each interest distribution corresponds to one of the users of the plurality of users and is generated using the user's social-media message aggregate of the user's social-media messages, each user's interest distribution comprising the plurality of topics and, for each topic of the plurality of topics, information indicating the user's level of interest in the topic determined using the user's social-media message aggregate and the plurality of topics;

identifying logic executed by the one or more processors for identifying, for a target user, at least one other user of the plurality of users having a similar topical interest with the target user, the identifying using the interest distribution of the target user and the interest distribution of the at least one other user; and

causing logic executed by the one or more processors for causing a user recommendation to be transmitted to the target user, the user recommendation identifying the at least one other user of the plurality of users having a similar topical interest with the target user.

9. The system of claim 8 , the program logic for execution by the one or more processors further comprising:

comparing logic executed by the one or more processors for comparing the target user's interest distribution with the interest distribution of each other user of the plurality of users, the comparing generating a plurality of topical interest similarity scores, each topical interest similarity score representing a level of topical interest similarity of the target user with another user of the plurality of users; and

selecting logic executed by the one or more processors for selecting the at least one other user of the plurality of users using the plurality of topical interest similarity scores.

10. The system of claim 8 , the user recommendation comprising at least one socially-related user of the plurality of users, the at least one socially-related user having a social relationship with the target user identified using a graph comprising a social network graph.

11. The system of claim 10 , the graph comprising a social network graph further comprising a topical interest graph, the social network graph comprising nodes representing users and each edge connecting user nodes in the social network graph representing a social relationship, the topical interest graph comprising topic nodes representing the plurality of topics, each edge connecting a user node and a topic node in the topical interest graph representing the user's interest in the topic.

12. The system of claim 11 , the program logic for execution by the one or more processors further comprising:

traversing logic executed by the one or more processors for traversing the graph to identify the at least one socially-related user and the at least one other user of the plurality of users having a similar topical interest with the target user.

13. The system of claim 10 , the program logic for execution by the one or more processors further comprising:

obtaining logic executed by the one or more processors for obtaining a social relationship score for each other user of the plurality of users, each social relationship score corresponding to one of the other users of the plurality of users and indicating a level of social relationship of the other user with the target user;

obtaining logic executed by the one or more processors for obtaining the topical interest similarity score for each other user of the plurality of users;

generating logic executed by the one or more processors for generating, for each other user of the plurality of users, a combined recommendation score by combining the social relationship score and the topical interest similarity score, the user recommendation comprising one or more users selected using the combined recommendation score.

14. The system of claim 8 , the determining logic executed by the one or more processors for determining a plurality of topics using the plurality of social-media message aggregates further comprising:

determining logic executed by the one or more processors for determining, for each topic of the plurality of topics, a plurality of words associated with the topic, the plurality of words being used with the user's interest distribution to identify a user's interest in the topic.

15. A computer readable non-transitory storage medium for tangibly storing thereon computer readable instructions that when executed cause at least one computing device having at least one processor to:

generate a plurality of social-media message aggregates, each social-media message aggregate corresponding to a user of a plurality of users, the user's social-media message aggregate being generated from a plurality of the user's social-media messages;

determine a plurality of topics using the plurality of social-media message aggregates, each topic of the plurality identifying a set of words associated with the topic, each word in the set of words having an importance of the word to the topic, the importance of each word to the topic is determined using the plurality of social-media message aggregates;

generate a plurality of interest distributions, each interest distribution corresponds to one of the users of the plurality of users and is generated using the user's social-media message aggregate of the user's social-media messages, each user's interest distribution comprising the plurality of topics and, for each topic of the plurality of topics, information indicating the user's level of interest in the topic determined using the user's social-media message aggregate and the plurality of topics;

identify, for a target user, at least one other user of the plurality of users having a similar topical interest with the target user, the identifying using the interest distribution of the target user and the interest distribution of the at least one other user; and

cause a user recommendation to be transmitted to the target user, the user recommendation identifying the at least one other user of the plurality of users having a similar topical interest with the target user.

16. The computer readable non-transitory storage medium of claim 15 , the instructions further comprising instructions when executed cause the at least one processor to:

compare the target user's interest distribution with the interest distribution of each other user of the plurality of users, the comparing generating a plurality of topical interest similarity scores, each topical interest similarity score representing a level of topical interest similarity of the target user with another user of the plurality of users; and

select the at least one other user of the plurality of users using the plurality of topical interest similarity scores.

17. The computer readable non-transitory storage medium of claim 15 , the user recommendation comprising at least one socially-related user of the plurality of users, the at least one socially-related user having a social relationship with the target user identified using a graph comprising a social network graph.

18. The computer readable non-transitory storage medium of claim 17 , the graph comprising a social network graph further comprising a topical interest graph, the social network graph comprising nodes representing users and each edge connecting user nodes in the social network graph representing a social relationship, the topical interest graph comprising topic nodes representing the plurality of topics, each edge connecting a user node and a topic node in the topical interest graph representing the user's interest in the topic.

19. The computer readable non-transitory storage medium of claim 18 , the instructions further comprising instructions when executed cause the at least one processor to:

traverse the graph to identify the at least one socially-related user and the at least one other user of the plurality of users having a similar topical interest with the target user.

20. The computer readable non-transitory storage medium of claim 17 , the instructions further comprising instructions when executed cause the at least one processor to:

obtain a social relationship score for each other user of the plurality of users, each social relationship score corresponding to one of the other users of the plurality of users and indicating a level of social relationship of the other user with the target user;

obtain the topical interest similarity score for each other user of the plurality of users;

generate, for each other user of the plurality of users, a combined recommendation score by combining the social relationship score and the topical interest similarity score, the user recommendation comprising one or more users selected using the combined recommendation score.

21. The computer readable non-transitory storage medium of claim 15 , the instructions to determine a plurality of topics using the plurality of social-media message aggregates further comprising instructions when executed cause the at least one processor to:

determine, for each topic of the plurality of topics, a plurality of words associated with the topic, the plurality of words being used with the user's interest distribution to identify a user's interest in the topic.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2011
From: PENNACCHIOTTI, MARCO; GURUMURTHY, SIVA
To: YAHOO! INC.
Reel/Frame 027238/0800 →
Continuity (1)
Related Publication 20130124437A1 · May 16, 2013