IP Library Granted Patent US 9,405,804
Granted Patent B1
US 9,405,804 · App. 13/890,364 · Granted Aug 2, 2016

Identification of subgroup interests

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,405,804
App. No.
13/890,364
Granted
Aug 2, 2016
Kind
B1
Abstract

This specification describes technologies relating to identification of interests of a subgroup of a larger group of users. One aspect of the subject matter described in this specification can be embodied in methods that include receiving data reflecting characteristics for users in a set of users of a social networking platform, wherein the data reflects endorsements of pages hosted on the social networking platform. A subset of the users within the set is identified by excluding users in the set with characteristics that do not match filter criteria. For each of some of the pages endorsed by members of the subset, a measure of the likelihood of a user in the subset endorsing the page relative to the likelihood of other users in the set endorsing the page is calculated. One or more content items are selected based on the measures and data specifying the selected content items is transmitted.

Claims (71)

1. A computer-implemented method performed by a data processing apparatus, the method comprising:

receiving data reflecting characteristics for users in a set of users, the characteristics for at least some of the users including indications of endorsements of content items by the users;

receiving one or more parameters for a first user filter;

identifying a subset of the set of users satisfying the one or more parameters of the first user filter by comparing the parameters of the first user filter to characteristics of users in the set;

determining, for each of a plurality of content items that are endorsed by one or more users in the subset, a difference between a first count of users in the subset that have endorsed the content item divided by a total number of users in the subset and a second count of users in the set that have endorsed the content item divided by a total number of users in the set;

identifying several content items based on the differences;

for each of the several content items, determining a score for the content item based on a first count of users in the subset that have endorsed the content item and based on a second count of users in the set that have endorsed the content item;

selecting one or more content items based on the scores; and

transmitting data specifying the selected one or more content items.

2. The method of claim 1 , wherein all users in the set are users of a social networking platform.

3. The method of claim 1 , wherein the several content items are pages hosted by a social networking platform.

4. The method of claim 1 , wherein the data specifying the selected one or more content items encodes a display for presentation to a user on a remote computing device, the display including a list of the selected one or more content items sorted based on one or more of the scores.

5. The method of claim 1 , wherein scores are used to select a content item for presentation to a user in the subset.

6. The method of claim 5 , wherein the content item selected for presentation is one of the several content items.

7. The method of claim 5 , wherein the content item selected for presentation is related to one of the several content items.

8. The method of claim 1 , further comprising:

receiving one or more parameters for a second user filter; and

identifying the set of users from a larger superset of users by comparing the one or more parameters of the second user filter to characteristics of each user in the superset.

9. The method of claim 8 , wherein the one or more parameters of the second user filter require users in the set to be users of an application.

10. The method of claim 8 , wherein the one or more parameters of the second user filter require users in the set to have endorsed at least one content item.

11. The method of claim 1 , wherein receiving data reflecting characteristics for users in the set of users comprises receiving data from a first user including characteristics for the first user and characteristics for other users that are connected with the first user in a social network.

12. The method of claim 1 , wherein determining the score for one of the several content items comprises determining a ratio of the first count times a total number of users in the set to the second count times a total number of users in the subset.

13. The method of claim 12 , further comprising:

checking if the ratio is less than one; and

if the ratio is less than one, inverting and negating the ratio.

14. The method of claim 1 , wherein identifying the several content items comprises selecting a fixed number of content items with the largest differences.

15. The method of claim 14 , wherein identifying the several content items comprises selecting content items for which the differences are above a threshold.

16. The method of claim 1 , wherein selecting the one or more content items comprises ranking the several content items based on the scores.

17. A system, comprising:

one or more processing devices; and

one or more non-transitory computer readable media storing instructions that are executable by the one or more processing device to perform operations comprising:

receiving data reflecting characteristics for users in a set of users, the characteristics for at least some of the users including indications of endorsements of content items by the users;

receiving one or more parameters for a first user filter;

identifying a subset of the set of users satisfying the one or more parameters of the first user filter by comparing the parameters of the first user filter to characteristics of users in the set;

determining, for each of a plurality of content items that are endorsed by one or more users in the subset, a difference between a first count of users in the subset that have endorsed the content item divided by a total number of users in the subset and a second count of users in the set that have endorsed the content item divided by a total number of users in the set;

identifying several content items based on the differences;

for each of the several content items, determining a score for the content item based on a first count of users in the subset that have endorsed the content item and based on a second count of users in the set that have endorsed the content item;

selecting one or more content items based on the scores; and

transmitting data specifying the selected one or more content items.

18. A non-transitory computer readable medium storing instructions executable by a processing device that upon such execution cause the processing device to perform operations comprising:

receiving data reflecting characteristics for users in a set of users, the characteristics comprising endorsements of content items;

receiving one or more parameters for a first user filter;

identifying a subset of the set of users satisfying the one or more parameters of the first user filter by comparing the one or more parameters of the first user filter to characteristics of users in the set;

determining, for each of a plurality of content items that are endorsed by one or more users in the subset, a difference between a first count of users in the subset that have endorsed the content item divided by a total number of users in the subset and a second count of users in the set that have endorsed the content item divided by a total number of users in the set;

identifying several content items based on the differences;

for each of the several content items, determining a score for the content item based on a first count of users in the subset that have endorsed the content item and based on a second count of users in the set that have endorsed the content item;

selecting one or more content items based on the scores; and

transmitting data specifying the selected content items.

19. A computer-implemented method performed by a data processing apparatus, the method comprising:

receiving data reflecting characteristics for users in a set of users, the characteristics for at least some of the users including indications of endorsements of content items by the users;

receiving one or more parameters for a first user filter;

identifying a subset of the set of users satisfying the one or more parameters of the first user filter by comparing the parameters of the first user filter to characteristics of users in the set;

for each of several content items, determining a score for the content item based on a first count of users in the subset that have endorsed the content item and based on a second count of users in the set that have endorsed the content item based on determining a first logarithm of a ratio of the first count multiplied by a total number of users in the set to the second count multiplied by a total number users in the subset, determining a second logarithm of a ratio of a total number of users in the set to a total number users in the subset, and determining a ratio of the first logarithm to the second logarithm;

selecting one or more content items based on the scores; and

transmitting data specifying the selected one or more content items.

20. A system, comprising:

one or more processing devices; and

one or more non-transitory computer readable media storing instructions that are executable by the one or more processing device to perform operations comprising:

receiving data reflecting characteristics for users in a set of users, the characteristics for at least some of the users including indications of endorsements of content items by the users;

receiving one or more parameters for a first user filter;

identifying a subset of the set of users satisfying the one or more parameters of the first user filter by comparing the parameters of the first user filter to characteristics of users in the set;

for each of several content items, determining a score for the content item based on a first count of users in the subset that have endorsed the content item and based on a second count of users in the set that have endorsed the content item based on determining a first logarithm of a ratio of the first count multiplied by a total number of users in the set to the second count multiplied by a total number users in the subset, determining a second logarithm of a ratio of a total number of users in the set to a total number users in the subset, and determining a ratio of the first logarithm to the second logarithm;

selecting one or more content items based on the scores; and

transmitting data specifying the selected one or more content items.

21. One or more non-transitory computer readable media storing instructions that are executable by one or more processing device to perform operations comprising:

receiving data reflecting characteristics for users in a set of users, the characteristics for at least some of the users including indications of endorsements of content items by the users;

receiving one or more parameters for a first user filter;

identifying a subset of the set of users satisfying the one or more parameters of the first user filter by comparing the parameters of the first user filter to characteristics of users in the set;

for each of several content items, determining a score for the content item based on a first count of users in the subset that have endorsed the content item and based on a second count of users in the set that have endorsed the content item based on determining a first logarithm of a ratio of the first count multiplied by a total number of users in the set to the second count multiplied by a total number users in the subset, determining a second logarithm of a ratio of a total number of users in the set to a total number users in the subset, and determining a ratio of the first logarithm to the second logarithm;

selecting one or more content items based on the scores; and

transmitting data specifying the selected one or more content items.

Assignments (4)
CHANGE OF NAME Recorded Sep 19, 2025
From: MICROSTRATEGY INCORPORATED
To: STRATEGY INC
Reel/Frame 072909/0779 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT REEL/FRAME: 056647/0687, REEL/FRAME: 057435/0023, REEL/FRAME: 059256/0247, REEL/FRAME: 062794/0255 AND REEL/FRAME: 066663/0713 Recorded Sep 26, 2024
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS SUCCESSOR IN INTEREST TO U.S. BANK NATIONAL ASSOCIATION, IN ITS CAPACITY AS COLLATERAL AGENT FOR THE SECURED PARTIES
To: MICROSTRATEGY INCORPORATED; MICROSTRATEGY SERVICES CORPORATION
Reel/Frame 069065/0539 →
SECURITY INTEREST Recorded Jun 22, 2021
From: MICROSTRATEGY INCORPORATED
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 056647/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2015
From: DIDOMENICO, PETER JEROME, III; ALDRETE, JAVIER; XIAO, PENG; NORRIS, DAVID GLENN
To: MICROSTRATEGY INCORPORATED
Reel/Frame 035919/0205 →