# US 11,907,401 B2 · Systems and methods to maintain user privacy whtle providing recommendations

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

- Number: US 11,907,401 B2
- Document ID: US11907401B2
- Status: Granted
- Kind: B2
- Application number: 16/919,056
- Filed: 2020-07-01
- Published: 2021-01-14
- Granted: 2024-02-20
- Earliest claimed: 2019-07-01
- Assignees: Warner Bros. Entertainment Inc.
- Applicants: Warner Bros. Entertainment Inc.
- Inventors: Sarah J. Rich; Benjamin Recht
- Web page: https://patentgrep.com/patent/US11907401B2

## CPC

- G06F 21/6254: {by anonymising data, e.g. decorrelating personal data from the owner's identification}
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 21/6245: {Protecting personal data, e.g. for financial or medical purposes}
- G06F 21/6263: {during internet communication, e.g. revealing personal data from cookies}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A systematic method of introducing obfuscating “organic” noise to a user's content engagement history leverages a recommender system by creating a public history on a client device which is a superset of the user's true engagement history. The method builds up the superset history over time through a client's interaction with the recommender system by simulating organic growth in a user's actual engagement history. The organic superset prevents an adversary with access to the underlying recommendation model from readily distinguishing between signal and noise in a user's query and obfuscates the user's engagement history with the recommender system.

## Claims

### Claim 1

A method for obfuscating a request for transmitting to a recommender server, the method comprising:
presenting, by at least one processor, a first subset of a plurality of information items via an interface to a user, and receiving via the interface a first selection of at least one item by the user from the first subset of the plurality of items;
assembling, by the at least one processor, a first request containing the first selection and a selection of another subset of the plurality of items selected by the at least one processor, wherein each item of the first request defines one of a plurality of clusters;
transmitting the first request from a memory of the at least one processor to a recommender server; and
performing, by the at least one processor, recursive operations for assembling at least one subsequent request by the user containing at least one subsequent selection and selection noise indicating a superset of an actual selection history for the user; wherein the at least one processor generates the selection noise for each item in the subsequent selection at least in part by choosing from each cluster a selection noise item having a ranked measure proportional to a ranked measure of the at least one item selected by the user, and appending the selection noise item to the next subsequent request.

### Claim 2 (depends on 1)

The method of claim 1, wherein the at least one processor performs the recursive operations further comprising receiving, from the server, a plurality of recommendation items, wherein each item of the plurality of recommendation items is attributed to an item included in a prior request, and assigned a measure representing a closeness of the item to the attributed item.

### Claim 3 (depends on 2)

The method of claim 2, wherein the recursive operations further comprise receiving, via the interface, a subsequent selection of at least one item from a subset of the plurality of recommendation items, wherein each item of the subset of the plurality of recommendation items is attributed to at least one item in (i) the first selection or (ii) at least one subsequent selection by the user in a prior iteration of the recursive operations.

### Claim 4 (depends on 3)

The method of claim 3, wherein the recursive operations further comprise assembling a next subsequent request containing the at least one subsequent selection and the selection noise.

### Claim 5 (depends on 2)

The method of claim 2, wherein a cluster membership of each cluster is inherited through the attributed item.

### Claim 6 (depends on 1)

The method of claim 1, wherein the ranked measure of the selection noise item chosen by the at least one processor is equal to the ranked measure of the at least one item selected by the user.

### Claim 7 (depends on 2)

The method of claim 2, wherein the measure is a scaled weight representing a closeness of the recommended item to an associated item.

### Claim 8 (depends on 1)

The method of claim 1, wherein the at least one processor selects the subset of the plurality of items using a random selection method.

### Claim 9

An apparatus for generating noise to protect privacy of user selections, comprising at least one processor coupled to a memory, the memory holding program instructions that when executed by the at least one processor, cause the apparatus to perform:
presenting a first subset of a plurality of information items via an interface to a user, and receiving via the interface, a first selection of at least one item by the user from the first subset of the plurality of items;
assembling a first request containing the first selection and a selection of another subset of the plurality of items selected by the at least one processor, wherein each item of the first request defines one of a plurality of clusters;
transmitting the first request to a recommender server;
performing recursive operations for assembling at least one subsequent request by the user containing at least one subsequent selection and selection noise indicating a superset of an actual selection history for the user, and
generating the selection noise for each item in the subsequent selection at least in part by choosing from each cluster a selection noise item having a ranked measure proportional to a ranked measure of the at least one item selected by the user, and appending the selection noise item to the next subsequent request.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein the memory holds further instructions for the recursive operations further comprising receiving, from the server, a plurality of recommendation items, wherein each item of the plurality of recommendation items is attributed to an item included in a prior request, and assigned a measure representing a closeness of the item to the attributed item.

### Claim 11 (depends on 10)

The apparatus of claim 10, wherein the memory holds further instructions for performing the recursive operations at least in part by receiving, via the interface, a subsequent selection of at least one item from a subset of the plurality of recommendation items, wherein each item of the subset of the plurality of recommendation items is attributed to at least one item in (i) the first selection or (ii) at least one subsequent selection by the user in a prior iteration of the recursive operations.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the memory holds further instructions for performing the recursive operations at least in part by assembling a next subsequent request containing the at least one subsequent selection and the selection noise.

### Claim 13 (depends on 10)

The apparatus of claim 10, wherein the memory holds further instructions for determining a cluster membership of each cluster by inheritance through the attributed item.

### Claim 14 (depends on 13)

The apparatus of claim 13, wherein the memory holds further instructions for choosing the selection noise item by ranked measure equal to the ranked measure of the at least one item selected by the user.

### Claim 15 (depends on 10)

The apparatus of claim 10, wherein the memory holds further instructions evaluating the measure as a scaled weight representing a closeness of the recommended item to an associated item.

### Claim 16 (depends on 10)

The apparatus of claim 10, wherein the memory holds further instructions for selecting the subset of the plurality of items using a random selection method.

### Claim 17

An apparatus for generating noise to protect privacy of user selections, comprising:
means for presenting a first subset of a plurality of information items via an interface to a user and for receiving via the interface, a first selection of at least one item by the user from the first subset of the plurality of items;
means for assembling a first request containing the first selection and a selection of another subset of the plurality of items selected by the at least one processor, wherein each item of the first request defines one of a plurality of clusters;
means for transmitting the first request to a recommender server; and
means for performing recursive operations for assembling at least one subsequent request by the user containing at least one subsequent selection and selection noise indicating a superset of an actual selection history for the user; and
means for generating the selection noise for each item in the subsequent selection at least in part by choosing from each cluster a selection noise item having a ranked measure proportional to a ranked measure of the at least one item selected by the user, and appending the selection noise item to the next subsequent request.
