IP Library Granted Patent US 11,902,259
Granted Patent B2
US 11,902,259 · App. 17/122,638 · Granted Feb 13, 2024

Pure differentially private algorithms for summation in the shuffled model

Inventors: Badih Ghazi (San Jose, CA); Noah Zeger Golowich (Lexington, MA); Shanmugasundaram Ravikumar (Piedmont, CA); Pasin Manurangsi (Mountain View, CA); Ameya Avinash Velingker (San Francisco, CA); Rasmus Pagh (Berkeley, CA)
Assignee: GOOGLE LLC
H04L63/0428G06N5/04G06N20/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,902,259
App. No.
17/122,638
Granted
Feb 13, 2024
Kind
B2
Abstract

An encoding method for enabling privacy-preserving aggregation of private data can include obtaining private data including a private value, determining a probabilistic status defining one of a first condition and a second condition, producing a multiset including a plurality of multiset values, and providing the multiset for aggregation with a plurality of additional multisets respectively generated for a plurality of additional private values. In response to the probabilistic status having the first condition, the plurality of multiset values is based at least in part on the private value, and in response to the probabilistic status having the second condition, the plurality of multiset values is a noise message. The noise message is produced based at least in part on a noise distribution that comprises a discretization of a continuous unimodal distribution supported on a range from zero to a number of multiset values included in the plurality of multiset values.

Claims (59)

1. A computer-implemented method for privacy-preserving aggregation of private data, the method comprising:

obtaining, by one or more computing devices, private data comprising a private value;

determining, by the one or more computing devices, a probabilistic status defining one of a first condition and a second condition;

producing, by the one or more computing devices, a multiset comprising a plurality of multiset values, wherein:

in response to the probabilistic status having the first condition, the plurality of multiset values is based at least in part on the private value; and

in response to the probabilistic status having the second condition, the plurality of multiset values comprises a noise message;

wherein the noise message is produced based at least in part on a noise distribution that comprises a discretization of a continuous unimodal distribution supported on a range from zero to a number of multiset values included in the plurality of multiset values;

wherein the noise message comprises a plurality of one values and a plurality of zero values;

wherein an amount of the plurality of one values is equivalent to a randomizer value sampled from the noise distribution and an amount of the plurality of zero values is equivalent to the randomizer value subtracted from the number of multiset values included in the plurality of multiset values; and

providing, by the one or more computing devices, the multiset for aggregation with a plurality of additional multisets respectively generated for a plurality of additional private values.

2. The computer-implemented method of claim 1 , wherein:

determining, by the one or more computing devices, the probabilistic status defining one of the first condition and the second condition comprises sampling a first probability distribution to receive a first value or a second value, wherein the first condition comprises receipt of the first value and the second condition comprises receipt of the second value; and

producing, by the one or more computing devices, the multiset comprising a plurality of multiset values comprises:

in the first condition wherein the first value is received, producing the multiset wherein the plurality of multiset values is based at least in part on the private value; and

in the second condition wherein the second value is received:

sampling the noise distribution to receive a randomizer value; and

producing the multiset wherein the plurality of multiset values comprises the noise message, wherein the noise message is based at least in part on the randomizer value.

3. The computer-implemented method of claim 2 , wherein the first probability distribution is a Bernoulli distribution.

4. The computer-implemented method of claim 2 , wherein the noise distribution is within a multiplicative factor of an underlying distribution of the private data.

5. The computer-implemented method of claim 1 , wherein the noise distribution is a truncated discrete Laplacian distribution.

6. The computer-implemented method of claim 1 , wherein the plurality of multiset values based at least in part on the private value comprises an amount of zero values greater by one than an amount of one values if the private value equals zero and an amount of one values fewer by one than an amount of zero values if the private value equals one.

7. The computer-implemented method of claim 1 , wherein providing, by the one or more computing devices, the multiset for aggregation comprises transmitting, by the one or more computing devices, the multiset to a shuffler model configured to shuffle the multiset with the plurality of additional multisets.

8. The computer-implemented method of claim 1 , wherein providing, by the one or more computing devices, the multiset for aggregation comprises adding half of a total amount of the plurality of additional multisets to the sum of the plurality of multiset values.

9. The computer-implemented method of claim 1 , wherein providing, by the one or more computing devices, the multiset for aggregation further comprises debiasing each of the plurality of multiset values.

10. A computer-implemented method to enable privacy-preserving aggregation of private data, the method comprising:

obtaining, by one or more computing devices, private data comprising a private vector, the private vector comprising an ordered plurality of private values;

producing, by the one or more computing devices, an ordered plurality of multisets respective to the ordered plurality of private values, each of the ordered plurality of multisets respectively comprising a plurality of multiset values, wherein, for each of the ordered plurality of multisets, the method comprises:

determining, by the one or more computing devices, a probabilistic status defining one of a first condition and a second condition;

in response to the probabilistic status having the first condition, the plurality of multiset values is based at least in part on the private value; and

in response to the probabilistic status having the second condition, the plurality of multiset values comprises a noise message;

wherein the noise message is produced based at least in part on a noise distribution that comprises a discretization of a continuous unimodal distribution supported on a range from zero to a number of multiset values included in the plurality of multiset values;

wherein the noise message comprises a plurality of one values and a plurality of zero values;

wherein an amount of the plurality of one values is equivalent to a randomizer value sampled from the noise distribution and an amount of the plurality of zero values is equivalent to the randomizer value subtracted from the number of multiset values included in the plurality of multiset values; and

providing, by the one or more computing devices, the plurality of ordered multisets for ordered aggregation with an ordered plurality of additional multisets respectively generated for a plurality of additional private vectors.

11. The computer-implemented method of claim 10 , wherein:

determining, by the one or more computing devices, the probabilistic status defining one of the first condition and the second condition comprises sampling a first probability distribution to receive a first value or a second value, wherein the first condition comprises receipt of the first value and the second condition comprises receipt of the second value; and

in the first condition wherein the first value is received, producing the multiset wherein the plurality of multiset values is based at least in part on the private value; and

in the second condition wherein the second value is received:

sampling the noise distribution to receive a randomizer value; and

producing the multiset wherein the plurality of multiset values comprises the noise message, wherein the noise message is based at least in part on the randomizer value.

12. The computer-implemented method of claim 11 , wherein the first probability distribution is a Bernoulli distribution.

13. The computer-implemented method of claim 10 , wherein the noise distribution is within a multiplicative factor of an underlying distribution of the private data.

14. The computer-implemented method of claim 10 , wherein the noise distribution is a truncated discrete Laplacian distribution.

15. The computer-implemented method of claim 10 , wherein the plurality of multiset values based at least in part on the private value comprises an amount of zero values greater by one than an amount of one values if the private value equals zero and an amount of one values fewer by one than an amount of zero values if the private value equals one.

16. The computer-implemented method of claim 10 , wherein providing, by the one or more computing devices, the ordered plurality of multisets for ordered aggregation comprises transmitting, by the one or more computing devices, the ordered plurality of multisets to a shuffler model configured to shuffle the ordered plurality of multisets with the ordered plurality of additional multisets while maintaining an order of the ordered plurality of multisets and the ordered plurality of additional multisets.

17. The computer-implemented method of claim 10 , further comprising: generating a plurality of respective sums for each multiset in the ordered plurality of multisets, each of the plurality of respective sums comprising a sum of the plurality of multiset values from a respective multiset; and

providing a combinatorial sum of the respective sums for each of the plurality of private values, the combinatorial sum recombining the respective sums with respect to an order of the ordered plurality of multisets and the ordered plurality of additional multisets.

18. A computing system configured for privacy-preserving aggregation of private data, the computing system comprising:

one or more processors; and

one or more memory devices storing computer-readable instructions that, when implemented, cause the one or more processors to perform operations for privacy-preserving aggregation of private data, the operations comprising:

obtaining private data comprising a private value;

determining a probabilistic status defining one of a first condition and a second condition;

producing a multiset comprising a plurality of multiset values, wherein:

in response to the probabilistic status having the first condition, the plurality of multiset values is based at least in part on the private value; and

in response to the probabilistic status having the second condition, the plurality of multiset values comprises a noise message;

wherein the noise message is produced based at least in part on a noise distribution that comprises a discretization of a continuous unimodal distribution supported on a range from zero to a number of multiset values included in the plurality of multiset values;

wherein the noise message comprises a plurality of one values and a plurality of zero values;

wherein an amount of the plurality of one values is equivalent to a randomizer value sampled from the noise distribution and an amount of the plurality of zero values is equivalent to the randomizer value subtracted from the number of multiset values included in the plurality of multiset values; and

providing the multiset for aggregation with a plurality of additional multisets respectively generated for a plurality of additional private values.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 29, 2020
From: GHAZI, BADIH; GOLOWICH, NOAH ZEGER; RAVIKUMAR, SHANMUGASUNDARAM; MANURANGSI, PASIN; VELINGKER, AMEYA AVINASH; PAGH, RASMUS
To: GOOGLE LLC
Reel/Frame 054770/0288 →
Continuity (2)
Provisional Application 62970379 · Feb 5, 2020
Related Publication 20210243171A1 · Aug 5, 2021