Emoji frequency detection and deep link frequency
First Claim
1. A computer-implemented method practiced on a client device, comprising:
- receiving a term from an application on the client device by a differential privacy engine executing on the client device;
applying, by the differential privacy engine, a differential privacy algorithm to the term thereby generating a differentially private sketch of the term, the differentially private sketch having a plurality of rows;
selecting, by the differential privacy engine, a row from the differentially private sketch;
determining, by the differential privacy engine, a privacy budget of the client device for transmission of the row of the differentially private sketch to a term frequency server;
storing, by the differential privacy engine, the row of the differentially private sketch for transmission to the term frequency server in response to determining that there is privacy budget available to transmit the row of the differentially private sketch of the term to the term frequency server.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed for generating term frequencies of known terms based on crowdsourced differentially private sketches of the known terms. An asset catalog can be updated with new frequency counts for known terms based on the crowdsourced differentially private sketches. Known terms can have a classification. A client device can maintain a privacy budget for each classification of known terms. Classifications can include emojis, deep links, locations, finance terms, and health terms, etc. A privacy budget ensures that a client does not transmit too much information to a term frequency server, thereby compromising the privacy of the client device.
24 Citations
26 Claims
-
1. A computer-implemented method practiced on a client device, comprising:
-
receiving a term from an application on the client device by a differential privacy engine executing on the client device; applying, by the differential privacy engine, a differential privacy algorithm to the term thereby generating a differentially private sketch of the term, the differentially private sketch having a plurality of rows; selecting, by the differential privacy engine, a row from the differentially private sketch; determining, by the differential privacy engine, a privacy budget of the client device for transmission of the row of the differentially private sketch to a term frequency server; storing, by the differential privacy engine, the row of the differentially private sketch for transmission to the term frequency server in response to determining that there is privacy budget available to transmit the row of the differentially private sketch of the term to the term frequency server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer readable medium programmed with instructions that, when executed by a processing system, perform operations, comprising:
-
receiving a term from an application on the client device by a differential privacy engine executing on the client device; applying, by the differential privacy engine, a differential privacy algorithm to the term thereby generating a differentially private sketch of the term, the differentially private sketch having a plurality of rows; selecting, by the differential privacy engine, a row of the differentially private sketch; determining, by the differential privacy engine, a privacy budget of the client device for transmission of the row of the differentially private sketch to a term frequency server; storing, by the differential privacy engine, the row of the differentially private sketch for transmission to the term frequency server in response to determining that there is privacy budget available to transmit the row of the differentially private sketch of the term to the term frequency server. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system comprising:
-
a processing system coupled to a memory programmed with executable instructions that, when executed by the processing system perform operations, comprising; receiving a term from an application on the client device by a differential privacy engine executing on the client device; applying, by the differential privacy engine, a differential privacy algorithm to the term thereby generating a differentially private sketch of the term, the differentially private sketch having a plurality of rows; selecting, by the differential privacy engine, a row of the differentially private sketch; determining, by the differential privacy engine, a privacy budget of the client device for transmission of the row of the differentially private sketch to a term frequency server; storing, by the differential privacy engine, the row of the differentially private sketch for transmission to the term frequency server in response to determining that there is privacy budget available to transmit the row of the differentially private sketch of the term to the term frequency server. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26)
-
Specification