# US 12,192,587 B2 · Techniques for curating content items

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,192,587 B2
- Document ID: US12192587B2
- Status: Granted
- Kind: B2
- Application number: 17/525,574
- Filed: 2021-11-12
- Published: 2023-05-18
- Granted: 2025-01-07
- Earliest claimed: 2021-11-12
- Assignees: Disney Enterprises, Inc.
- Applicants: Disney Enterprises, Inc.
- Inventors: Madhav Thaker; Warren Michael Bruttell; Michael Halleen; Joshua David Schaffer; Meghan Melanie Toomayan
- Web page: https://patentgrep.com/patent/US12192587B2

## CPC

- H04N 21/4826: {using recommendation lists, e.g. of programmes or channels sorted out according to their score}
- H04N 21/44222: {Analytics of user selections, e.g. selection of programmes or purchase activity (monitoring of user selections in data processing systems G06F11/34; arrangements for monitoring the user's behaviour or opinions in broadcast systems H04H60/33)}
- H04N 21/4532: {involving end-user characteristics, e.g. viewer profile, preferences (monitoring of user activities for profile generation for accessing a video database G06F16/739; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18)}
- H04N 21/4668: {for recommending content, e.g. movies}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Techniques are disclosed for curating content items. In some embodiments, a content item group generator applies rules defining inclusion and exclusion criteria to content items and associated metadata in order to assign the content items to content item groups. Given the assignments of content items to content item groups, a list generator applies a machine learning technique to generate, for each content item, a representation of the content item that includes weights associating the content item with the content item groups. The list generator then computes a weighted sum of representations of content items that a user has purchased and/or otherwise engaged with in order to generate a representation of the user that includes weights indicating affinities of the user with the content item groups. The list generator further generates one or more lists for display to the user based on the representation of the user.

## Claims

### Claim 1

A computer-implemented method for curating content items, the method comprising:
generating, for each content item included in a plurality of content items, a representation of the content item, wherein the representation of the content item comprises a first plurality of weights associating the content item with a plurality of content item groups;
generating a representation of a user that comprises a second plurality of weights associating the user with the plurality of content item groups, wherein each weight included in the second plurality of weights corresponds to a different content item group in the plurality of content item groups and is computed based on combining (i) one or more of the representations of content items that belong to the corresponding content item group and that are associated with one or more first content items that the user has at least one of purchased or engaged with, and (ii) one or more time decays that are computed based on when the user at least one of purchased or engaged with the one or more first content items;
generating one or more lists of content items based on the representation of the user; and
causing the one or more lists of content items to be displayed to the user.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein generating the one or more lists of content items comprises:
selecting one or more content item groups based on the representation of the user and a threshold for the first plurality of weights included in the representation of the user; and
generating a first set of lists of content items, wherein each list included in the first set of lists comprises one or more second content items from a content item group included in the one or more content item groups, and wherein the one or more second content items have been at least one of purchased or engaged with by the user.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein generating the one or more lists of content items further comprises generating a second set of lists of content items, wherein each list included in the second set of lists comprises one or more third content items from a content item group that is not included in the one or more content item groups.

### Claim 4 (depends on 2)

The computer-implemented method of claim 2, wherein generating the one or more lists of content items further comprises generating a second set of lists of content items, wherein each list included in the second set of lists comprises one or more third content items that have not been purchased or engaged with by the user.

### Claim 5 (depends on 2)

The computer-implemented method of claim 2, further comprising:
ordering the first set of lists based on the first plurality of weights associating the content item with a plurality of content item groups; and
for each list included in the first set of lists, removing content items included in the list that are also included in one or more previous lists in the ordering of the first set of lists.

### Claim 6 (depends on 2)

The computer-implemented method of claim 2, further comprising:
ordering the first set of lists based on the first plurality of weights associating the content item with a plurality of content item groups; and
for each list included in the first set of lists, removing content items included in the list that are also included at least a threshold number of times in one or more previous lists in the ordering of the first set of lists, wherein the threshold number is based on a smallest list included in the one or more previous lists.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, further comprising:
generating a plurality of assignments of the plurality of content items to the plurality of content item groups based on metadata associated with the plurality of content items and rules indicating inclusion and exclusion criteria for the plurality of content item groups,
wherein the representations of the content items are generated based on the plurality of assignments.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein generating the representations of the content items comprises applying a text analysis technique to assignments of the plurality of content items to the plurality of content item groups.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8, wherein the text analysis technique is a term-frequency-inverse document frequency technique.

### Claim 10 (depends on 1)

The computer-implemented method of claim 1, wherein the plurality of content items comprise a plurality of media content titles.

### Claim 11

One or more non-transitory computer-readable storage media including instructions that, when executed by at least one processor, cause the at least one processor to perform steps for curating content items, the steps comprising:
generating, for each content item included in a plurality of content items, a representation of the content item, wherein the representation of the content item comprises a first plurality of weights associating the content item with a plurality of content item groups;
generating a representation of a user that comprises a second plurality of weights associating the user with the plurality of content item groups, wherein each weight included in the second plurality of weights corresponds to a different content item group in the plurality of content item groups and is computed based on combining (i) one or more of the representations of content items that belong to the corresponding content item group and that are associated with one or more first content items that the user has at least one of purchased or engaged with, and (ii) one or more time decays that are computed based on when the user at least one of purchased or engaged with the one or more first content items;
generating one or more lists of content items based on the representation of the user; and
causing the one or more lists of content items to be displayed to the user.

### Claim 12 (depends on 11)

The one or more non-transitory computer-readable storage media of claim 11, wherein generating the one or more lists of content items comprises:
selecting one or more content item groups based on the representation of the user and a threshold for the first plurality of weights included in the representation of the user; and
generating a first set of lists of content items, wherein each list included in the first set of lists comprises one or more second content items from a content item group included in the one or more content item groups, and wherein the one or more second content items have been at least one of purchased or engaged with by the user.

### Claim 13 (depends on 12)

The one or more non-transitory computer-readable storage media of claim 12, wherein generating the one or more lists of content items further comprises generating a second set of lists of content items, wherein each list included in the second set of lists comprises one or more third content items from a content item group that is not included in the one or more content item groups.

### Claim 14 (depends on 12)

The one or more non-transitory computer-readable storage media of claim 12, wherein generating the one or more lists of content items further comprises generating a second set of lists of content items, wherein each list included in the second set of lists comprises one or more third content items that have not been purchased or engaged with by the user.

### Claim 15 (depends on 12)

The one or more non-transitory computer-readable storage media of claim 12, wherein the instructions, when executed by the at least one processor, further cause the at least one processor to perform steps comprising:
ordering the first set of lists based on the first plurality of weights associating the content item with a plurality of content item groups; and
for each list included in the first set of lists, removing content items included in the list that are also included in at least a threshold number of previous lists in the ordering of the first set of lists, wherein the threshold number is based on a size of a smallest list included in the one or more previous lists.

### Claim 16 (depends on 15)

The one or more non-transitory computer-readable storage media of claim 15, wherein the instructions, when executed by the at least one processor, further cause the at least one processor to perform steps comprising determining the threshold number of previous lists as a multiple of the size of the smallest list.

### Claim 17 (depends on 11)

The one or more non-transitory computer-readable storage media of claim 11, wherein the instructions, when executed by the at least one processor, further cause the at least one processor to perform steps comprising:
generating a plurality of assignments of the plurality of content items to the plurality of content item groups based on metadata associated with the plurality of content items and rules indicating inclusion and exclusion criteria for the plurality of content item groups,
wherein the representations of the content items are generated based on the plurality of assignments.

### Claim 18 (depends on 11)

The one or more non-transitory computer-readable storage media of claim 11, wherein causing the one or more lists of content items to be displayed comprises:
generating a webpage or user interface that includes the one or more lists of content items; and
transmitting the webpage or user interface over a network to a computing device that displays the webpage or user interface.

### Claim 19

A system, comprising:
one or more memories storing instructions; and
one or more processors that are coupled to the one or more memories and, when executing the instructions, are configured to:
generate, for each content item included in a plurality of content items, a representation of the content item, wherein the representation of the content item comprises a first plurality of weights associating the content item with a plurality of content item groups,
generate a representation of a user that comprises a second plurality of weights associating the user with the second plurality of content item groups, wherein each weight included in the second plurality of weights corresponds to a different content item group in the plurality of content item groups and is computed based on combining (i) one or more of the representations of content items that belong to the corresponding content item group and that are associated with one or more first content items that the user has at least one of purchased or engaged with, and (ii) one or more time decays that are computed based on when the user at least one of purchased or engaged with the one or more first content items,
generate one or more lists of content items based on the representation of the user, and
cause the one or more lists of content items to be displayed to the user.

### Claim 20 (depends on 19)

The system of claim 19, wherein generating the one or more lists of content items comprises:
selecting one or more content item groups based on the representation of the user and a threshold for the first plurality of weights included in the representation of the user; and
generating a set of lists of content items, wherein each list included in the set of lists comprises one or more second content items from a content item group included in the one or more content item groups, and wherein the one or more second content items have been at least one of purchased or engaged with by the user.
