Temporal features in a messaging platform
First Claim
1. A computer-implemented method comprising:
- receiving, from a computing device accessing a social media platform via a first account, a request for a first message stream, wherein the first message stream is for a second account and includes one or more messages provided by the second account, and wherein the social media platform is accessible by a plurality of accounts, including the first and second accounts;
retrieving two or more candidate messages;
computing, based on a first machine learning model and one or more temporal features of past engagements by the first account with messages received by the first account on the social media platform, an account weight associated with the first account;
for each of the candidate messages;
computing, based on a second machine learning model and one or more features of the respective candidate message, a message weight for the respective candidate message; and
computing, based on the respective message weight and the account weight, a value that represents a likelihood of engagement with the respective candidate message by a user of the first account;
selecting, based on the computed values representing the likelihood of engagement, one of the candidate messages and inserting the selected candidate message in the first message stream; and
sending the first message stream to the computing system for display via the first account.
4 Assignments
0 Petitions
Accused Products
Abstract
A real-time messaging platform allows advertiser accounts to pay to insert candidate messages into the message streams requested by account holders. To accommodate multiple advertisers, the messaging platform controls an auction process that determines which candidate messages are selected for inclusion in a requested account holder'"'"'s message stream. Selection is based on a bid for the candidate message, the message stream that is requested, and a variety of other factors that vary depending upon the implementation. The process for selection of candidate messages generally includes the following steps, though any given step may be omitted or combined into another step in a different implementation: targeting, filtering, prediction, ranking, and selection.
75 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
receiving, from a computing device accessing a social media platform via a first account, a request for a first message stream, wherein the first message stream is for a second account and includes one or more messages provided by the second account, and wherein the social media platform is accessible by a plurality of accounts, including the first and second accounts; retrieving two or more candidate messages; computing, based on a first machine learning model and one or more temporal features of past engagements by the first account with messages received by the first account on the social media platform, an account weight associated with the first account; for each of the candidate messages; computing, based on a second machine learning model and one or more features of the respective candidate message, a message weight for the respective candidate message; and computing, based on the respective message weight and the account weight, a value that represents a likelihood of engagement with the respective candidate message by a user of the first account; selecting, based on the computed values representing the likelihood of engagement, one of the candidate messages and inserting the selected candidate message in the first message stream; and sending the first message stream to the computing system for display via the first account. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable storage medium comprising instructions executable by a processor, the instructions when executed causing the processor to:
-
receive, from a computing device accessing a social media platform via a first account, a request for a first message stream, wherein the first message stream is for a second account and includes one or more messages provided by the second account, and wherein the social media platform is accessible by a plurality of accounts, including the first and second accounts; retrieve two or more candidate messages; compute, based on a first machine learning model and one or more temporal features of past engagements by the first account with messages received by the first account on the social media platform, an account weight associated with the first account; for each of the candidate messages; compute, based on a second machine learning model and one or more features of the respective candidate message, a message weight for the respective candidate message; and compute, based on the respective message weight and the account weight, a value that represents a likelihood of engagement with the respective candidate message by a user of the first account; select, based on the computed values representing the likelihood of engagement, one of the candidate messages and inserting the selected candidate message in the first message stream; and send the first message stream to the computing system for display via the first account. - View Dependent Claims (17, 18, 19)
-
-
20. A system comprising:
-
a processor; and a non-transitory computer-readable storage medium comprising instructions executable by the processor, the instructions when executed causing the processor to; receive, from a computing device accessing a social media platform via a first account, a request for a first message stream, wherein the first message stream is for a second account and includes one or more messages provided by the second account, and wherein the social media platform is accessible by a plurality of accounts, including the first and second accounts; retrieve two or more candidate messages; compute, based on a first machine learning model and one or more temporal features of past engagements by the first account with messages received by the first account on the social media platform, an account weight associated with the first account; for each of the candidate messages; compute, based on a second machine learning model and one or more features of the respective candidate message, a message weight for the respective candidate message; and compute, based on the respective message weight and the account weight, a value that represents a likelihood of engagement with the respective candidate message by a user of the first account; select, based on the computed values representing the likelihood of engagement, one of the candidate messages and inserting the selected candidate message in the first message stream; and send the first message stream to the computing system for display via the first account.
-
Specification