Abstract:
In one embodiment, a method includes receiving, from a client system of a first user of the communication system, an input from the first user to access a card-stack interface, generating a card cluster comprising a plurality of cards, each card comprising a suggested query referencing a query-domain and one or more query-filters, wherein each query-filter references one or more objects associated with the communication system, and wherein each card in the card cluster is ranked within the card cluster based on a predicted click-thru rate (CTR) for the card based on one or more user-engagement factors, and sending, to the client system in response to the input from the first user, the card-stack interface for display to the first user, wherein the card-stack interface comprises the card cluster, the cards of the card cluster being ordered based on the rankings associated with the cards.
Abstract:
Exemplary methods, apparatuses, and systems receive a candidate object with which a user can interact within a network service. For each of a first plurality of objects with which the user has had a positive interaction, a first value representing a commonality between the candidate object and each of the first plurality of objects is determined. For each of a second plurality of objects with which a user has had a negative interaction, a second value representing a commonality between the candidate object and each of the second plurality of objects is determined. An aggregate positive distance is determined using a plurality of the first values. An aggregate negative distance is determined using a plurality of the second values. The candidate object is displayed or not displayed to the user as a recommendation based upon a difference between the aggregate positive distance and the aggregate negative distance.
Abstract:
In one embodiment, one or more server computing devices receive, from a client computing device, a request for first information associated with a first node of a graph. The one or more server computing devices determine whether the first node is associated with a cluster of nodes. A cluster of nodes includes one or more concept nodes of the graph that are related to each other. When the first node is associated with a cluster of nodes, the one or more server computing devices access the cluster of nodes that the first node is associated with, obtain second information from one or more of the nodes in the cluster of nodes that the first node is associated with, and provide the second information for rendering by the client computing device.
Abstract:
Online systems, for example, social networking systems store features describing relations between entities represented in the online system. The information describing the features is represented as a graph. The online system maintains a cumulative feature graph and an incremental feature graph. Feature values based on recent user actions are stored in the incremental graph and feature values based on previous actions are stored in the cumulative graph. Periodically, the information stored in the incremental feature graph is merged with the information stored in the cumulative feature graph. The incremental graph is marked as inactive during the merge and information based on new user actions is stored in an active incremental feature graph. If a request for feature information is received, the feature information obtained from the cumulative feature graph, inactive incremental feature graph and the active incremental feature graph are combined to determine the feature information.
Abstract:
Online systems, for example, social networking systems evaluate expressions based on features describing relations between entities represented in the online system. These expressions are represented using an expression language. The expression language allows features to be specified as functions of attributes from user accounts. The expressions support use of variables to represent computations, for example, sub-expressions. The expressions are dynamic, since expressions can be specified and executed at call time. The same set of expressions is used many times, e.g., to compute the same function for multiple feature sets, for example, user accounts. Expressions are preferably represented using postfix representation. However some expressions, for example, expressions using variables are represented as trees. To optimize the expressions at runtime, the expressions are cached using a representation determined to be efficient for executing the expression. The cached representation of the expression is applied to multiple feature sets, for example, user accounts.
Abstract:
In one embodiment, a method includes receiving, from a client system of a first user of the communication system, an input from the first user to access a card-stack interface, generating a card cluster comprising a plurality of cards, each card comprising a suggested query referencing a query-domain and one or more query-filters, wherein each query-filter references one or more objects associated with the communication system, and wherein each card in the card cluster is ranked within the card cluster based on a predicted click-thru rate (CTR) for the card based on one or more user-engagement factors, and sending, to the client system in response to the input from the first user, the card-stack interface for display to the first user, wherein the card-stack interface comprises the card cluster, the cards of the card cluster being ordered based on the rankings associated with the cards.
Abstract:
Online systems, for example, social networking systems store features describing relations between entities represented in the online system. The information describing the features is represented as a graph. The online system maintains a cumulative feature graph and an incremental feature graph. Feature values based on recent user actions are stored in the incremental graph and feature values based on previous actions are stored in the cumulative graph. Periodically, the information stored in the incremental feature graph is merged with the information stored in the cumulative feature graph. The incremental graph is marked as inactive during the merge and information based on new user actions is stored in an active incremental feature graph. If a request for feature information is received, the feature information obtained from the cumulative feature graph, inactive incremental feature graph and the active incremental feature graph are combined to determine the feature information.
Abstract:
Exemplary methods, apparatuses, and systems receive a candidate object with which a user can interact within a network service. For each of a first plurality of objects with which the user has had a positive interaction, a first value representing a commonality between the candidate object and each of the first plurality of objects is determined. For each of a second plurality of objects with which a user has had a negative interaction, a second value representing a commonality between the candidate object and each of the second plurality of objects is determined. An aggregate positive distance is determined using a plurality of the first values. An aggregate negative distance is determined using a plurality of the second values. The candidate object is displayed or not displayed to the user as a recommendation based upon a difference between the aggregate positive distance and the aggregate negative distance.
Abstract:
Exemplary methods, apparatuses, and systems receive a candidate object with which a user can interact within a network service. For each of a first plurality of objects with which the user has had a positive interaction, a first value representing a commonality between the candidate object and each of the first plurality of objects is determined. For each of a second plurality of objects with which a user has had a negative interaction, a second value representing a commonality between the candidate object and each of the second plurality of objects is determined. An aggregate positive distance is determined using a plurality of the first values. An aggregate negative distance is determined using a plurality of the second values. The candidate object is displayed or not displayed to the user as a recommendation based upon a difference between the aggregate positive distance and the aggregate negative distance.
Abstract:
In one embodiment, a method includes receiving, from a client device of a user of an online social network, an input from the user to access a card-stack interface, generating a plurality of cards, where each card comprises a suggested query referencing a query-domain associated with the online social network and one or more query-filters, and where each query-filter references one or more objects of the online social network, each card further comprising one or more search results corresponding to the suggested query, and each search result referencing an object of the online social network matching the suggested query of the card; and sending, to the client device in response to the input from the first user, the card-stack interface for display to the first user, wherein the card-stack interface comprises one or more of the generated cards