CPC H04L 63/20 (2013.01) | 15 Claims |
1. A method comprising:
receiving a data stream comprising instances of count data collected over a time interval;
an instance of the count data represents an occurrence of a user interface interaction with a post;
the post is associated with an account in an online system;
using the count data, computing a true count breakdown comprising a set of sub-counts of non-public user interface interactions on the post;
wherein at least one of the sub-counts is a count associated with a particular value of an attribute that has a plurality of different possible values and the attribute is associated with the non-public user interface interactions on the post;
creating a noisy count breakdown by applying at least one differential privacy mechanism to the set of sub-counts;
wherein applying the at least one differential privacy mechanism to the set of sub-counts comprises:
creating a simulation of a binary table for each value of the plurality of different possible values of the attribute;
using the simulations of the binary tables, determining amounts of noise to be added to the set of sub-counts;
selecting, from the set of sub-counts, a set of top k true sub-counts;
k is a positive integer less than a total number of possible values of the attribute;
determining a set of noisy top k sub-counts by adding the amounts of noise to each true sub-count of the set of top k true sub-counts;
selecting, from the set of noisy top k sub-counts, at least one noisy sub-count that is greater than a threshold; and
including the selected at least one noisy sub-count in the noisy count breakdown; and
streaming the noisy count breakdown instead of the true count breakdown to a computing device associated with the account.
|