Ranking objects by social relevance
AssigneeFacebook, Inc.
InventorErick Tseng
Life of this patent
Estimating the term…
Abstract
In one embodiment, one or more computing systems may implement a social networking environment and may be operable to access, in a social graph associated with one or more computing systems of a social network environment, a user node representing a particular user, the user node connected to a plurality of attribute nodes. The social graph may comprise a plurality of object nodes in the social graph, each object node being connected to a plurality of attribute nodes. The systems may be further operable to calculate a match coefficient between the user node and an individual object node. The calculation may include operations to, for each attribute node in a set of all attribute nodes connected to both the user node and the object node, calculate a first coefficient between the user node and the attribute node.
Claims54
A method comprising:
- by a computer server, accessing, in a social graph associated with one or more computing systems of a social network environment, a first user node representing a particular user, the first user node connected to a plurality of attribute nodes;
- by the computer server, in response to receiving a search request from the particular user, determining a set of object nodes in the social graph with attributes matching the search request;
- by the computer server, for each object node in the set:
- calculating a match coefficient between the user node and the object node;
- analyzing a set of second user nodes that have interacted with the object node to determine an affinity between the second user nodes and other nodes associated with (1) the user node (2) the second user nodes and (3) the object node;
- and
- multiplying the match coefficient by a feedback weight based on a strength of the affinity between the second user nodes and the other nodes, wherein the multiplying results in a higher match coefficient when the user node and the second user nodes have both interacted with the other nodes;
- by the computer server, displaying a ranked list of the set of object nodes to the user, wherein the ranked list is ranked based on the match coefficient as modified by the feedback weight;
- and
- by the computer server, in response to detecting a new interaction between one of the second user nodes and one of the other nodes, updating the displayed ranked list based on the new interaction.
One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
- access, in a social graph associated with one or more computing systems of a social network environment, a first user node representing a particular user, the first user node connected to a plurality of attribute nodes;
- in response to receiving a search request from the particular user, determine a set of object nodes in the social graph with attributes matching the search request;
- for each object node in the set:
- calculate a match coefficient between the first user node and an object node;
- analyze a set of second user nodes that have interacted with the object node to determine an affinity between the second user nodes and other nodes associated with (1) the user node (2) the second user nodes and (3) the object node;
- and
- multiply the match coefficient by a feedback weight based on a strength of the affinity between the second user nodes and the other nodes, wherein the multiplying results in a higher match coefficient when the user node and the second user nodes have both interacted with the other nodes;
- display a ranked list of the set of object nodes to the user, wherein the ranked list is ranked based on the match coefficient as modified by the feedback weight;
- and
- in response to detecting a new interaction between one of the second user nodes and one of the other nodes, update the displayed ranked list based on the new interaction.
A system comprising:
- one or more processors;
- and a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to:
- access, in a social graph associated with one or more computing systems of a social network environment, a first user node representing a particular user, the first user node connected to a plurality of attribute nodes;
- in response to receiving a search request from the particular user, determine a set of object nodes in the social graph with attributes matching the search request;
- for each object node in the set:
- calculate a match coefficient between the first user node and an object node;
- analyze a set of second user nodes that have interacted with the object node to determine an affinity between the second user nodes and other nodes associated with (1) the user node (2) the second user nodes and (3) the object node;
- and
- multiply the match coefficient by a feedback weight based on a strength of the affinity between the second user nodes and the other nodes, wherein the multiplying results in a higher match coefficient when the user node and the second user nodes have both interacted with the other nodes;
- display a ranked list of the set of object nodes to the user, wherein the ranked list is ranked based on the match coefficient as modified by the feedback weight;
- and
- in response to detecting a new interaction between one of the second user nodes and one of the other nodes, update the displayed ranked list based on the new interaction.
Dependencies are inferred from the claim text.