Generating and Using Social Brains
A method includes determining a plurality of social interactions associated with a plurality of people, grouping the determined social interactions into a plurality of groups, generating a social object matrix using the plurality of groups, and producing a singular value representation of the social object matrix by performing Singular Value Decomposition (SVD) on the social object matrix. The social object matrix includes a plurality of vectors, and each social interaction is a particular person interacting with a particular social object.
1 . A system, comprising:
one or more memory units; and
one or more processing units operable to:
determine a plurality of social interactions associated with a plurality of people, each social interaction comprising a particular person interacting with a particular social object of a plurality of social objects;
group the determined social interactions into a plurality of groups;
generate, using the plurality of groups, a social object matrix, the social object matrix comprising a plurality of vectors that provide an indication of a number of social interactions between the plurality of people and the plurality of the social objects; and
produce a singular value representation of the social object matrix by performing Singular Value Decomposition (SVD) on the social object matrix.
2 . The system of claim 1 , wherein grouping the determined social interactions into the plurality of groups comprises one of:
grouping the plurality of social interactions according to the plurality of people; and
grouping the plurality of social interactions according to the plurality of social objects.
3 . The system of claim 1 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
determining a number of occurrences of each social object across all of the plurality of people;
determining a subset of the plurality of social objects;
determining a weighting for each social object of the subset of social objects, the weighting based at least in part on a distribution of the social objects across all of the plurality of people; and
creating the plurality of vectors based on the determined number of occurrences of each social object for each of the plurality of people and the determined weighting for each social object.
4 . The system of claim 1 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
generating the plurality of vectors based in part on the determined number of occurrences of each social object for each of the plurality of people; and
clustering the plurality of vectors into a plurality of clusters, the plurality of clusters comprising a first and a second cluster, the first and second clusters each comprising two or more of the vectors.
5 . The system of claim 1 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
generating the plurality of vectors based in part on the determined number of occurrences of each social object for each of the plurality of people; and
determining a sample of the plurality of vectors.
6 . The system of claim 1 , the one or more processing units further operable to perform a query using the singular value representation of the social object matrix.
7 . The system of claim 1 , the one or more processing units further operable to classify each of the plurality of social interactions as either a positive interaction or a negative interaction.
8 . A computer-implemented method, comprising:
determining, by one or more computing systems, a plurality of social interactions associated with a plurality of people, each social interaction comprising a particular person interacting with a particular social object of a plurality of social objects;
grouping, by the one or more computing systems, the determined social interactions into a plurality of groups;
generating, by the one or more computing systems using the plurality of groups, a social object matrix, the social object matrix comprising a plurality of vectors that provide an indication of a number of social interactions between the plurality of people and the plurality of social objects; and
producing, by the one or more computing systems, a singular value representation of the social object matrix by performing Singular Value Decomposition (SVD) on the social object matrix.
9 . The computer-implemented method of claim 8 , wherein grouping the determined social interactions into the plurality of groups comprises one of:
grouping the plurality′ of social interactions according to the plurality of people; and
grouping the plurality of social interactions according to the plurality of social objects.
10 . The computer-implemented method of claim 8 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
determining a number of occurrences of each social object across all of the plurality of people;
determining a subset of the plurality of social objects;
determining a weighting for each social object of the subset of social objects, the weighting based at least in part on a distribution of the social objects across all of the plurality of people; and
creating the plurality of vectors based on the determined number of occurrences of each social object for each of the plurality of people and the determined weighting for each social object.
11 . The computer-implemented method of claim 8 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
generating the plurality of vectors based in part on the determined number of occurrences of each social object for each of the plurality of people; and
clustering the plurality of vectors into a plurality of clusters, the plurality of clusters comprising a first and a second cluster, the first and second clusters each comprising two or more of the vectors.
12 . The computer-implemented method of claim 8 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
generating the plurality of vectors based in part on the determined number of occurrences of each social object for each of the plurality of people; and
determining a sample of the plurality of vectors.
13 . The computer-implemented method of claim 8 , further comprising performing, by the one or more computing systems, a query using the singular value representation of the social object matrix.
14 . (canceled)
15 . A non-transitory computer-readable medium comprising software, the software when executed by one or more processing units operable to perform operations comprising:
determining a plurality of social interactions associated with a plurality of people, each social interaction comprising a particular person interacting with a particular social object of a plurality of social objects;
grouping the determined social interactions into a plurality of groups;
generating, using the plurality of groups, a social object matrix, the social object matrix comprising a plurality of vectors that provide an indication of a number of social interactions between the plurality of people and the plurality of social objects; and
producing a singular value representation of the social object matrix by performing Singular Value Decomposition (MID) on the social object matrix.
16 . The non-transitory computer-readable medium of claim 15 , wherein grouping the determined social interactions into the plurality of groups comprises one of:
grouping the plurality of social interactions according to the plurality of people; and
grouping the plurality of social interactions according to the plurality of social objects.
17 . The non-transitory computer-readable medium of claim 15 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
determining a number of occurrences of each social object across all of the plurality of people;
determining a subset of the plurality of social objects;
determining a weighting for each social object of the subset of social objects, the weighting based at least in part on a distribution of the social objects across all of the plurality of people; and
creating the plurality of vectors based on the determined number of occurrences of each social object for each of the plurality of people and the determined weighting for each social object.
18 . The non-transitory computer-readable medium of claim 15 , wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
generating the plurality of vectors based in part on the determined number of occurrences of each social object for each of the plurality of people; and
clustering the plurality of vectors into a plurality of clusters, the plurality of clusters comprising a first and a second cluster, the first and second clusters each comprising two or more of the vectors.
19 . The non-transitory computer-readable medium of claim wherein generating the social object matrix comprises:
determining a number of occurrences of each social object for each of the plurality of people;
generating the plurality of vectors based in part on the determined number of occurrences of each social object for each of the plurality of people; and
determining a sample of the plurality of vectors.
20 . The non-transitory computer-readable medium of claim 15 , the operations further comprising performing a query using the singular value representation of the social object matrix.
21 . The system of claim 1 , wherein:
the social object matrix comprises a vector space; and
the singular value representation of the social object matrix comprises:
a first matrix that provides a mapping of each of the plurality of social objects into a first dimensional space that is less than the vector space of the social object matrix; and
a second matrix that provides a mapping of each of the plurality of people into a second dimensional space that is less than the vector space of the social object matrix.