Dynamically generating recommendations based on social graph information
First Claim
1. A method comprising:
- maintaining, by one or more computing systems, access to a data store of information corresponding to one or more of a plurality of users of a social network environment and one or more of a plurality of concepts and comprising;
a plurality of nodes including a set of user nodes that each correspond to a respective user, and a set of concept nodes that each correspond to a respective concept, each node of the sets of nodes being associated with a corresponding structured document; and
a plurality of edges that each define a connection between a corresponding pair of nodes from the plurality of nodes;
receiving, by the one or more computing systems, a request from a first user corresponding to a first user node for a structured document corresponding to a first concept node;
determining, by the one or more computing systems, a first data set that identifies concept nodes connected by respective edges with one or more user nodes that are each connected by respective edges with both the first user node and the first concept node;
determining, by the one or more computing systems, a second data set that identifies concept nodes connected by respective edges with the first concept node and one or more user nodes that are each connected to the first user node;
generating, by the one or more computing systems, a score for each concept node in the first and second data sets based at least in part on the number of user nodes connected to both the first user node and to the respective concept nodes in the first and second data sets;
selecting, by the one or more computing systems, one or more concept nodes based on their respective scores as recommended nodes; and
transmitting to the client device, by the one or more computing systems, the structured document corresponding to the first concept node, wherein the structured document comprises code executable by a client application to render node names or other identifiers of the recommended nodes for display.
2 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes maintaining access to information comprising nodes and edges; receiving a request from a first user corresponding to a first user node for a structured document corresponding to a first concept node; determining a first data set that identifies concept nodes connected by edges with user nodes that are each connected by edges with both the first user node and the first concept node; determining a second data set that identifies concept nodes connected by edges with the first concept node and user nodes that are each connected to the first user node; generating a score for each concept node in the data sets; selecting one or more concept nodes based on their scores as recommended nodes; and transmitting to the client device the structured document and code executable by a client application to render node names or identifiers of the recommended nodes for display.
373 Citations
20 Claims
-
1. A method comprising:
-
maintaining, by one or more computing systems, access to a data store of information corresponding to one or more of a plurality of users of a social network environment and one or more of a plurality of concepts and comprising; a plurality of nodes including a set of user nodes that each correspond to a respective user, and a set of concept nodes that each correspond to a respective concept, each node of the sets of nodes being associated with a corresponding structured document; and a plurality of edges that each define a connection between a corresponding pair of nodes from the plurality of nodes; receiving, by the one or more computing systems, a request from a first user corresponding to a first user node for a structured document corresponding to a first concept node; determining, by the one or more computing systems, a first data set that identifies concept nodes connected by respective edges with one or more user nodes that are each connected by respective edges with both the first user node and the first concept node; determining, by the one or more computing systems, a second data set that identifies concept nodes connected by respective edges with the first concept node and one or more user nodes that are each connected to the first user node; generating, by the one or more computing systems, a score for each concept node in the first and second data sets based at least in part on the number of user nodes connected to both the first user node and to the respective concept nodes in the first and second data sets; selecting, by the one or more computing systems, one or more concept nodes based on their respective scores as recommended nodes; and transmitting to the client device, by the one or more computing systems, the structured document corresponding to the first concept node, wherein the structured document comprises code executable by a client application to render node names or other identifiers of the recommended nodes for display. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
one or more processors; and logic encoded in one or more computer-readable tangible storage media that, when executed by the one or more processors, is operable to; maintain access to a data store of information corresponding to one or more of a plurality of users of a social network environment and one or more of a plurality of concepts and comprising; a plurality of nodes including a set of user nodes that each correspond to a respective user, and a set of concept nodes that each correspond to a respective concept, each node of the sets of nodes being associated with a corresponding structured document; and a plurality of edges that each define a connection between a corresponding pair of nodes from the plurality of nodes; receive a request from a first user corresponding to a first user node for a structured document corresponding to a first concept node; determine a first data set that identifies concept nodes connected by respective edges with one or more user nodes that are each connected by respective edges with both the first user node and the first concept node; determine a second data set that identifies concept nodes connected by respective edges with the first concept node and one or more user nodes that are each connected to the first user node; generate a score for each concept node in the first and second data sets based at least in part on the number of user nodes connected to both the first user node and to the respective concept nodes in the first and second data sets; select one or more concept nodes based on their respective scores as recommended nodes; and transmit to the client device the structured document corresponding to the first concept node, wherein the structured document comprises code executable by a client application to render node names or other identifiers of the recommended nodes for display. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification