RESOURCE MANAGEMENT OF SOCIAL NETWORK APPLICATIONS
First Claim
1. A computer implemented method comprising:
- storing, by a social networking system, an object representing an entity associated with a third party, wherein the social networking system receives requests to send messages associated with the entity via a channel resource of the social networking system;
receiving, by the social networking system, user interactions from each of a plurality of users, wherein the received interactions are indicative of an affinity of the users towards the entity;
aggregating, by the social networking system, the observed user interactions for each of a plurality of time intervals based on the observed interactions of the plurality of users during that time interval;
determining an affinity score value for the entity based on the aggregated observed interactions of the users of the social networking system for the plurality of time intervals;
determining an allocation of a channel resource for the entity based on the affinity score, the allocation specifying a threshold usage of the channel rescue resource by the entity; and
limiting a rate at which the social networking system sends messages associated with the entity via the channel resource, the rate limited to the threshold usage specified by the allocation.
1 Assignment
0 Petitions
Accused Products
Abstract
Applications in social networks support interaction between members through various types of channels such as notifications, newsfeed, and so forth. For each channel, applications are ranked based on their user affinity measures. User affinity is based on measuring positive and negative interactions by users as both senders and recipients of messages generated by applications. Metrics are computed for the different types of messages and interactions provided by applications. For each channel, an application receives user affinity score based on specific weighted combination of the metrics. Applications use channel resources to send messages to increase their user base. Given the large number of applications that are available, the extent to which applications are allowed to use channels is controlled, limiting their resource consumption. User affinity scores of applications calculated for a channel are used to decide the allocation of channel resources for an application.
3 Citations
20 Claims
-
1. A computer implemented method comprising:
-
storing, by a social networking system, an object representing an entity associated with a third party, wherein the social networking system receives requests to send messages associated with the entity via a channel resource of the social networking system; receiving, by the social networking system, user interactions from each of a plurality of users, wherein the received interactions are indicative of an affinity of the users towards the entity; aggregating, by the social networking system, the observed user interactions for each of a plurality of time intervals based on the observed interactions of the plurality of users during that time interval; determining an affinity score value for the entity based on the aggregated observed interactions of the users of the social networking system for the plurality of time intervals; determining an allocation of a channel resource for the entity based on the affinity score, the allocation specifying a threshold usage of the channel rescue resource by the entity; and limiting a rate at which the social networking system sends messages associated with the entity via the channel resource, the rate limited to the threshold usage specified by the allocation.
-
-
2. The method of claim 1, wherein using actions related to channel resources used to determine an affinity score comprises:
-
for each of a plurality of action types, computing a rate of occurrence of the action type; and determining a weighted aggregate of the rates of occurrence of the plurality of action types.
-
-
3. The method of claim 2, wherein computing the rate of occurrence comprises normalizing the rate of occurrence of the action type over a set of objects within the social networking system.
-
4. The method of claim 2, wherein determining a weighted aggregate of the rates of occurrence of the action type for each action type relevant to the channel resource further comprises:
-
assigning a weight to each action type, the weight representing the importance of the action type; and summing the product of the weight and the normalized rate of the action type for each action type relevant to the channel resource.
-
-
5. The method of claim 1, wherein the one or more messages comprise a request to a user of the social networking system to interact with the social networking system in relation to the entity.
-
6. The method of claim 1, wherein messages comprise a message for sending information describing the entity.
-
7. The method of claim 1, wherein a channel resource is a computer mediated mechanism for facilitating communication between users of a social networking system, the computer mediated mechanism comprising one or more of:
-
an email channel, a notification channel, an invitation channel, a wall post channel, a newsfeed channel, or a mini-feed channel.
-
-
8. The method of claim 1, wherein a user interaction provides a user feedback comprising one of:
- implicit feedback or explicit feedback.
-
9. The method of claim 1, wherein a user interaction providing implicit feedback comprises, responsive to being presented with a notification, refraining from interacting with the message.
-
10. The method of claim 1, wherein a user interaction providing explicit feedback comprises one of:
- unsubscribing from a service associated with the object, requesting additional information, forwarding content associated with the object to one or more connections.
-
11. The method of claim 1, wherein the threshold usage specifies a per-user maximum for a recipient of messages from the third party.
-
12. The method of claim 1, wherein the threshold usage specifies a per-day maximum of messages associated with the entity sent by the social networking system.
-
13. The method of claim 1, wherein user affinity is determined using user interactions comprising:
-
user actions independent of channel resources, comprising one of; uninstalling an application, running an application, minimizing an application, or maximizing an application; and user actions related to channel resources, comprising one of; subscribing to an email channel, clicking on a notification, forwarding an invitation, posting on wall post, interacting with newsfeed, or interacting with mini-feed.
-
-
14. The method of claim 1, wherein computations of user affinity scores include previously computed values of affinity scores, the previously computed values indicating a change in the behavior of the object.
-
15. The method of claim 1, further comprising:
-
restricting entities with affinity scores below a minimum are restricted from using a channel resource, the restriction comprising one of; setting a reduced quantity of messages, stopping all messages, or hiding the object from the users of the social networking system.
-
-
16. The method of claim 1, further comprising:
disabling access to the object responsive to determining that the affinity score for the entity associated with the object is below a threshold value.
-
17. The method of claim 1, further comprising:
storing channel resource allocation as a mapping from values of affinity scores to predetermined values of threshold usage.
-
18. A non-transitory computer readable storage medium storing instructions comprising:
-
storing, by a social networking system, an object representing an entity associated with a third party, wherein the social networking system receives requests to send messages associate with the entity via a channel resource of the social networking system; receiving, by the social networking system, user interactions from each of a plurality of users, wherein the received interactions are indicative of an affinity of the users towards the entity; aggregating, by the social networking system, the observed user interactions for each of a plurality of time intervals based on the observed interactions of the plurality of users during that time interval; determining an affinity score value for the entity based on the aggregated observed interactions of the users of the social networking system for the plurality of time intervals; determining an allocation of a channel resource for the entity based on the affinity score, the allocation specifying a threshold usage of the channel rescue resource by the entity; and limiting a rate at which the social networking system sends messages associated with the entity via the channel resource, the rate limited the threshold usage specified by the allocation.
-
-
19. The non-transitory computer readable storage medium of claim 18, wherein user affinity is determined using metrics comprising:
-
user actions independent of channel resources, comprising one of; uninstalling an application, running an application, minimizing an application, or maximizing an application; and user actions related to channel resources, comprising one of; subscribing to an email channel, clicking on a notification, forwarding an invitation, posting on wall post, interacting with newsfeed, or interacting with mini-feed.
-
-
20. The non-transitory computer readable storage medium of claim 18, wherein using actions related to channel resources to determine an affinity score comprises:
-
for each of a plurality of action types, computing a rate of occurrence of the action type; and determining a weighted aggregate of the rates of occurrence of the plurality of action types.
-
Specification