Legal claims defining the scope of protection, as filed with the USPTO.
1. A tangible, non-transitory, machine readable medium storing instructions that when executed by one or more processors effectuate operations comprising: obtaining, with a computer system, information individually characterizing each of a plurality of users, the information individually characterizing each of the plurality of users comprising: at least five attributes of the respective user, each of the attributes being indicative of intensity of the respective attribute along a respective continuum, and identifiers of content or characters in content with which respective users have engaged; forming, with the computer system, vectors for each of the users based on the at least five attributes of each of the respective users, each vector having a plurality of dimensions, the vectors being defined in a vector space; clustering, with the computer system, the users based on the vectors by: determining distances between respective pairs of vectors, determining at least some of the distances are smaller than a first threshold distance for more than a threshold number of vectors and, in response, selecting a first subset of the vectors, determining at least some of the distances from vectors in the first subset are smaller than a second threshold distance and, in response, selecting a second subset of the vectors, and segmenting vectors in the first subset and vectors in the second subset into clusters in which vectors in respective clusters are determined to be reachable with respect to one another; selecting, with the computer system, content or a character in content to be recommended or provided to a given user based on the given user corresponding to one of the clusters and characters or content with which other users of the corresponding cluster have engaged; and storing, with the computer system, the selection in a memory.
2. The medium of claim 1 , wherein the clusters indicate shared affinities of users for content.
3. The medium of claim 1 , wherein the clusters indicate shared affinities of users for characters.
4. The medium of claim 1 , the operations further comprising: applying collaborative filtering to characters in content; and determining shared affinities of users for a given character based on the collaborative filtering.
5. The medium of claim 1 , wherein obtaining information individually characterizing each of the plurality of users comprises: obtaining results of self-reporting by users of how they describe themselves along at least some of the respective continua.
6. The medium of claim 1 , wherein obtaining information individually characterizing each of the plurality of users comprises: obtaining records of the given user's online actions; and determining at least some attributes of the given user along at least some of the respective continua based on the records of the given user's online actions.
7. The medium of claim 1 , wherein obtaining information individually characterizing each of the plurality of users comprises: obtaining a corpus of natural language text associated with the given user; and determining at least some attributes of the given user along at least some of the respective continua based on natural language processing of the natural language text.
8. The medium of claim 7 , wherein: the operations further comprise obtaining a trained natural-language-processing model; obtaining the corpus comprises obtaining natural language text expressed by the given user; the operations further comprise determined counts of n-grams in the natural language text expressed by the given user; and the at least some attributes of the given user are determined based on responses of the trained natural-language-processing model to the counts of n-grams in the natural language text.
9. The medium of claim 8 , wherein obtaining natural language text expressed by the given user comprises obtaining social media posts, email, memoirs, or reviews.
10. The medium of claim 7 , wherein: the at least some attributes are determined with a natural-language-processing model; and the operations comprise training the natural-language-processing model with training operations that comprise: determining, for a given model parameter, a direction of adjustment of the given model parameter that reduces error of the natural-language-processing model relative to at least part of a training set; and adjusting the given model parameter in the direction.
11. The medium of claim 10 , wherein the training operations comprise: selecting a subset of the training set to withhold, wherein the adjustment is not based on the subset; and validating the natural language processing model after the adjusting with the subset of the training set.
12. The medium of claim 1 , wherein the operations comprise: segmenting the clusters into sub-clusters corresponding to an archetype hierarchy that specifies a taxonomy to which users or characters are matched.
13. The medium of claim 1 , wherein determining distances between respective pairs of vectors comprises: increasing effects on the distances of at least some attributes at ends of a range relative to effects on the distances of attributes not at ends of the range by non-linearly transforming values corresponding to the at least some attributes.
14. The medium of claim 1 , wherein: the vectors are transformed into a format that represents values at ends of ranges of at least some dimensions of the vectors differently than values in middles of the ranges.
15. The medium of claim 1 , wherein selecting content or the character in content to be recommended or provided to the given user comprises: determining that the given user is in a given cluster of users; and determining that at least some other members of the given cluster have an affinity for a given character and, in response, selecting the given character or content in which the given character appears to be recommended to the given user.
16. The medium of claim 1 , wherein selecting content or the character in content to be recommended or provided to the given user comprises: determining that the given user is in a given cluster of users; and determining that at least some other members of the given cluster have an affinity for given content and, in response, selecting the given content to be recommended or provided to the given user.
17. The medium of claim 1 , wherein: the operations comprise obtaining, from an advertiser, information individually characterizing a target user or target character; and selecting content or the character in content to be recommended or provided to the given user comprises: determining that the given user is in a given cluster of users; and determining that the target user or target character is in the given cluster and, in response, selecting an advertisement of the advertiser as the selected content to be recommended or provided to the given user.
18. The medium of claim 1 , wherein segmenting comprises: determining that a first subset of the vectors have more than a threshold amount of other vectors within a first threshold distance in the vector space; and determining that a second subset of the vectors are within a second threshold distance in the vector space of members of the first subset of vectors.
19. The medium of claim 18 , wherein segmenting comprises: segmenting members of the first subset of vectors and members of the second subset of vectors into groups by determining which members of the first subset of vectors and which members of the second subset of vectors form groups in which members of the groups are reachable from one another.
20. The medium of claim 19 , wherein: vectors are determined to be reachable from one another in response to determining there is a path from one vector to another vector where every link in the path includes a member of the first subset and includes vectors within a threshold distance of one another.
21. The medium of claim 1 , the operations further comprising: steps for clustering non-fictional persons into audiences.
22. The medium of claim 1 , the operations further comprising: steps for matching users to fictional characters.
23. A method, comprising: obtaining, with a computer system, information individually characterizing each of a plurality of users, the information individually characterizing each of the plurality of users comprising: at least five attributes of the respective user, each of the attributes being indicative of intensity of the respective attribute along a respective continuum, and identifiers of content or characters in content with which respective users have engaged; forming, with the computer system, vectors for each of the users based on the at least five attributes of each of the respective users, each vector having a plurality of dimensions, the vectors being defined in a vector space; clustering, with the computer system, the users based on the vectors by: determining distances between respective pairs of vectors, determining at least some of the distances are smaller than a first threshold distance for more than a threshold number of vectors and, in response, selecting a first subset of the vectors, determining at least some of the distances from vectors in the first subset are smaller than a second threshold distance and, in response, selecting a second subset of the vectors, and segmenting vectors in the first subset and vectors in the second subset into clusters in which vectors in respective clusters are determined to be reachable with respect to one another; selecting, with the computer system, content or a character in content to be recommended or provided to a given user based on the given user corresponding to one of the clusters and characters or content with which other users of the corresponding cluster have engaged; and storing, with the computer system, the selection in a memory.
24. The method of claim 23 , wherein the clusters indicate shared affinities of users for content.
25. The method of claim 23 , wherein the clusters indicate shared affinities of users for characters.
26. The method of claim 23 , further comprising: applying collaborative filtering to characters in content; and determining shared affinities of users for a given character based on the collaborative filtering.
27. The method of claim 23 , wherein obtaining information individually characterizing each of the plurality of users comprises: obtaining results of self-reporting by users of how they describe themselves along at least some of the respective continua.
28. The method of claim 23 , wherein obtaining information individually characterizing each of the plurality of users comprises: obtaining records of the given user's online actions; and determining at least some attributes of the given user along at least some of the respective continua based on the records of the given user's online actions.
29. The method of claim 23 , wherein obtaining information individually characterizing each of the plurality of users comprises: obtaining a corpus of natural language text associated with the given user; and determining at least some attributes of the given user along at least some of the respective continua based on natural language processing of the natural language text.
30. The method of claim 29 , wherein: the method further comprises obtaining a trained natural-language-processing model; obtaining the corpus comprises obtaining natural language text expressed by the given user; the method further comprises determined counts of n-grams in the natural language text expressed by the given user; and the at least some attributes of the given user are determined based on responses of the trained natural-language-processing model to the counts of n-grams in the natural language text.
31. The method of claim 30 , wherein obtaining natural language text expressed by the given user comprises obtaining social media posts, email, memoirs, or reviews.
32. The method of claim 29 , wherein: the at least some attributes are determined with a natural-language-processing model; and the method further comprises training the natural-language-processing model with training operations that comprise: determining, for a given model parameter, a direction of adjustment of the given model parameter that reduces error of the natural-language-processing model relative to at least part of a training set; and adjusting the given model parameter in the direction.
33. The method of claim 32 , wherein the training operations comprise: selecting a subset of the training set to withhold, wherein the adjustment is not based on the subset; and validating the natural language processing model after the adjusting with the subset of the training set.
34. The method of claim 23 , comprising: segmenting the clusters into sub-clusters corresponding to an archetype hierarchy that specifies a taxonomy to which users or characters are matched.
35. The method of claim 23 , wherein determining distances between respective pairs of vectors comprises: increasing effects on the distances of at least some attributes at ends of a range relative to effects on the distances of attributes not at ends of the range by non-linearly transforming values corresponding to the at least some attributes.
36. The method of claim 23 , wherein: the vectors are transformed into a format that represents values at ends of ranges of at least some dimensions of the vectors differently than values in middles of the ranges.
37. The method of claim 23 , wherein selecting content or the character in content to be recommended or provided to the given user comprises: determining that the given user is in a given cluster of users; and determining that at least some other members of the given cluster have an affinity for a given character and, in response, selecting the given character or content in which the given character appears to be recommended to the given user.
38. The method of claim 23 , wherein selecting content or the character in content to be recommended or provided to the given user comprises: determining that the given user is in a given cluster of users; and determining that at least some other members of the given cluster have an affinity for given content and, in response, selecting the given content to be recommended or provided to the given user.
39. The method of claim 23 , wherein: the method further comprises obtaining, from an advertiser, information individually characterizing a target user or target character; and selecting content or the character in content to be recommended or provided to the given user comprises: determining that the given user is in a given cluster of users; and determining that the target user or target character is in the given cluster and, in response, selecting an advertisement of the advertiser as the selected content to be recommended or provided to the given user.
40. The method of claim 23 , wherein segmenting comprises: determining that a first subset of the vectors have more than a threshold amount of other vectors within a first threshold distance in the vector space; and determining that a second subset of the vectors are within a second threshold distance in the vector space of members of the first subset of vectors.
41. The method of claim 40 , wherein segmenting comprises: segmenting members of the first subset of vectors and members of the second subset of vectors into groups by determining which members of the first subset of vectors and which members of the second subset of vectors form groups in which members of the groups are reachable from one another.
42. The method of claim 41 , wherein: vectors are determined to be reachable from one another in response to determining there is a path from one vector to another vector where every link in the path includes a member of the first subset and includes vectors within a threshold distance of one another.
43. The method of claim 23 , comprising: steps for clustering non-fictional persons into audiences.
44. The method of claim 23 , comprising: steps for matching users to fictional characters.
Unknown
March 22, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.