IP Library › Granted Patent US 12,216,720
Granted Patent B2
US 12,216,720 · App. 18/112,304 · Granted Feb 4, 2025

Group recommendation for user-generated content

Inventors: Arnav Mittal (Noida, IN); Franklin Geo Francis (Bangalore, IN); Taruna Manchanda (Bangalore, IN)
Assignee: Microsoft Technology Licensing, LLC
G06F16/9535G06F16/9536
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 12,216,720
App. No.
18/112,304
Filed
Feb 21, 2023
Granted
Feb 4, 2025
Kind
B2
Art Unit
2151
USPC
707/749
Abstract

Methods, systems, and computer programs are presented for recommending a group for posting content generated by a user. One method includes an operation for detecting a post of a user being added to an online service. The method further includes an operation for determining post interest scores for the post. The post interest scores are for a plurality of interests and each interest is associated with a topic. A match score is calculated for a plurality of groups based on the post interest scores, where the match score for each group indicates a degree of relevance of the post to the group. The method further includes operations for determining whether to recommend a group, from the plurality of groups, for including the post of the user in a feed of the recommended group, and for causing presentation of the recommended group based on the determined recommendation.

Claims (76)

1. A computer-implemented method comprising:

detecting a post of a user being added to an online service;

determining post interest scores for the post, the post interest scores being for a plurality of interests, each interest being associated with a topic;

calculating a match score for a plurality of groups based on the post interest scores and group interest scores;

using an intent machine-learning (ML) model to calculate the group interest scores, wherein the intent ML model is trained with training data based on past content and assigned labels for corresponding intents;

determining whether to recommend a group, from the plurality of groups, for including the post of the user in a feed of the recommended group based on the match score; and

within an order or less of a hundred milliseconds of the post of the user being added, causing, by a real-time nudge system, a presentation of the recommended group based on the determined recommendation.

2. The method as recited in claim 1 , wherein calculating the match score for a group comprises:

determining group interest scores for the group for the plurality of interests; and

calculating the match score for the group as a dot product of the group interests scores and the post interest scores.

3. The method as recited in claim 1 , wherein determining whether to recommend comprises:

calculating, by the intent ML model, an intent of the post from a plurality of intents, the intent ML model taking the post as an input and generating as output one of the intents from the plurality of intents; and

determining not to generate a recommendation when the intent of the post is within a predefined subset of the plurality of intents.

4. The method as recited in claim 1 , wherein determining whether to recommend comprises:

for each group:

calculating a contribution of interests of a first level, in a hierarchy of interests, to the match score for the group; and

eliminating the group from a possible recommendation when the contribution of interests of the first level is above a predetermined threshold.

5. The method as recited in claim 1 , wherein determining whether to recommend comprises:

applying filtering criteria for the post and the plurality of groups;

if the post is a candidate for the recommendation after the filtering, selecting the group, from the groups remaining after the filtering, with a highest match score; and

recommending the group with the highest match score when the highest match score is above a predetermined threshold.

6. The method as recited in claim 1 , further comprising:

calculating group interest scores for the plurality of groups, wherein calculating the group interest scores for each group comprises:

identifying group posts that have interactions from group members;

calculating interests scores for the identified group posts; and

calculating the group interest scores based on the calculated interest scores for the identified group posts.

7. The method as recited in claim 6 , wherein calculating the group interest score further comprises:

selecting a predetermined number of the highest group interest scores and discarding the remaining group interest scores.

8. The method as recited in claim 1 , wherein causing presentation of the recommended group comprises:

presenting on a user interface a message that the post was successfully posted, a first option to add the post to the recommended group, and a second option to not add the post to the recommended group.

9. The method as recited in claim 1 , wherein the plurality of groups includes groups where the user is a member.

10. The method as recited in claim 1 , wherein the plurality of interests is part of an interest ontology with interests arranged in a hierarchical order, the plurality of interest comprising a subset of first-level interests and some interests having other sub-interests in a next level.

11. A system comprising:

a memory comprising instructions; and

one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the system to perform operations comprising:

detecting a post of a user being added to an online service;

determining post interest scores for the post, the post interest scores being for a plurality of interests, each interest being associated with a topic;

calculating a match score for a plurality of groups based on the post interest scores and group interest scores;

using an intent machine-learning (ML) model to calculate the group interest scores, wherein the intent ML model is trained with training data based on past content and assigned labels for corresponding intents;

determining whether to recommend a group, from the plurality of groups, for including the post of the user in a feed of the recommended group based on the match score; and

within an order or less of a hundred milliseconds of the post of the user being added, causing, by a real-time nudge system, a presentation of the recommended group based on the determined recommendation.

12. The system as recited in claim 11 , wherein calculating the match score for a group comprises:

determining group interest scores for the group for the plurality of interests; and

calculating the match score for the group as a dot product of the group interests scores and the post interest scores.

13. The system as recited in claim 11 , wherein determining whether to recommend comprises:

calculating, by the intent ML model, an intent of the post from a plurality of intents, the intent ML model taking the post as an input and generating as output one of the intents from the plurality of intents; and

determining not to generate a recommendation when the intent of the post is within a predefined subset of the plurality of intents.

14. The system as recited in claim 11 , wherein determining whether to recommend comprises:

for each group:

calculating a contribution of interests of a first level, in a hierarchy of interests, to the match score for the group; and

eliminating the group from a possible recommendation when the contribution of interests of the first level is above a predetermined threshold.

15. The system as recited in claim 11 , wherein determining whether to recommend comprises:

applying filtering criteria for the post and the plurality of groups;

if the post is a candidate for the recommendation after the filtering, selecting the group, from the groups remaining after the filtering, with a highest match score; and

recommending the group with the highest match score when the highest match score is above a predetermined threshold.

16. A tangible machine-readable storage medium including instructions that, when executed by a machine, cause the machine to perform operations comprising:

detecting a post of a user being added to an online service;

determining post interest scores for the post, the post interest scores being for a plurality of interests, each interest being associated with a topic;

calculating a match score for a plurality of groups based on the post interest scores and group interest scores;

using an intent machine-learning (ML) model to calculate the group interest scores, wherein the intent ML model is trained with training data based on past content and assigned labels for corresponding intents;

determining whether to recommend a group, from the plurality of groups, for including the post of the user in a feed of the recommended group based on the match score; and

within an order or less of a hundred milliseconds of the post of the user being added, causing, by a real-time nudge system, a presentation of the recommended group based on the determined recommendation.

17. The tangible machine-readable storage medium as recited in claim 16 , wherein calculating the match score for the group comprises:

determining group interest scores for the group for the plurality of interests; and

calculating the match score for the group as a dot product of the group interests scores and the post interest scores.

18. The tangible machine-readable storage medium as recited in claim 16 , wherein determining whether to recommend comprises:

calculating, by the intent ML model, an intent of the post from a plurality of intents, the intent ML model taking the post as an input and generating as output one of the intents from the plurality of intents; and

determining not to generate a recommendation when the intent of the post is within a predefined subset of the plurality of intents.

19. The tangible machine-readable storage medium as recited in claim 16 , wherein determining whether to recommend comprises:

for each group:

calculating a contribution of interests of a first level, in a hierarchy of interests, to the match score for the group; and

eliminating the group from a possible recommendation when the contribution of interests of the first level is above a predetermined threshold.

20. The tangible machine-readable storage medium as recited in claim 16 , wherein determining whether to recommend comprises:

applying filtering criteria for the post and the plurality of groups;

if the post is a candidate for the recommendation after the filtering, selecting the group, from the groups remaining after the filtering, with a highest match score; and

recommending the group with the highest match score when the highest match score is above a predetermined threshold.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY NAME PREVIOUSLY RECORDED ON REEL 062757 FRAME 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 23, 2023
From: MITTAL, ARNAV; FRANCIS, FRANKLIN GEO; MANCHANDA, TARUNA
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 062841/0513 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2023
From: MITTAL, ARNAV; FRANCIS, FRANKLIN GEO; MANCHANDA, TARUNA
To: MICROSOFT TECHNOLOGY LICENSEING, LLC
Reel/Frame 062757/0624 →
Continuity (1)
Related Publication 20240281482A1 · Aug 22, 2024
References Cited (14)
US 9319479B2 · Canning · 2016 [cited by examiner]
US 10459997B1 · Agarwal · 2019 [cited by examiner]
US 11337036B1 · Schu · 2022 [cited by examiner]
US 20140181637A1 · Eldawy · 2014 [cited by examiner]
US 20230336805A1 · Xu · 2023 [cited by examiner]
“The Autonomous”, Retrieved From: https://www.the-autonomous.com/, Retrieved Date: Dec. 14, 2022, 10 Pages. [cited by applicant]
Arya, Naveen, “Naveen Arya's Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6847418566455631872, Retrieved Date: Dec. 14, 2022, 11 Pages. [cited by applicant]
Desai, Anish, “Dr. Anish Desai. MD.'s Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6848481813829087232, Retrieved Date: Dec. 14, 2022, 3 Pages. [cited by applicant]
Junior, Juarez, “Juarez Junior, MSc's Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6848208032984289280, Retrieved Date: Dec. 14, 2022, 10 Pages. [cited by applicant]
Khanna, Parag, “Dr. Parag Khanna's Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6849233903471992832, Retrieved Date: Dec. 14, 2022, 11 Pages. [cited by applicant]
Koabari, Said, “Said Koabari PharmD,BCPS,BCMTMS,MBA,Msc's Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6848511212309884928, Retrieved Date: Dec. 14, 2022, 3 Pages. [cited by applicant]
Sharpton, Dianam. , ““Our Dance” #Poetry #Photography #DianaMarySharpton w/Martin Garrix & Bebe Rexha—In The Name Of Love #MusicVideo #Love”, Retrieved From: https://www.dianamarysharpton.com/ds-blog/our-dance-poetry-ph… [cited by applicant]
Sharpton, Dianam. , “Diana Mary Sharpton's Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6849139476384509952, Retrieved Date: Dec. 14, 2022, 9 Pages. [cited by applicant]
Unseld, Robert, “Robert Unseld's Post”, Retrieved From: https://www.linkedin.com/feed/update/urn:li:activity:6848954621021437953, Retrieved Date: Dec. 14, 2022, 13 Pages. [cited by applicant]