User experience using privatized crowdsourced data
First Claim
1. A non-transitory machine-readable medium storing instructions which, when executed by one or more processors of a computing device, cause the computing device to perform operations comprising:
- receiving, from a set of client devices, a privatized encoding of a representation of a webpage, wherein each webpage is selected for transmittal in response to exceeding a resource consumption threshold, wherein the privatized encoding comprises a vector including at least one value for the webpage at a position corresponding to a hash value, the hash value is created using a hash function, and the vector is changed at the position corresponding to the created hash value with a predefined probability;
accumulating privatized encodings received from the set of client devices;
estimating a frequency of a selected webpage exceeding the resource consumption threshold, wherein estimating the frequency of the selected webpage includes determining a count based on the accumulated privatized encodings; and
generating a record of the frequency of the selected webpage exceeding the resource consumption threshold based on the estimate of the frequency of the selected webpage.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments described herein provide a privacy mechanism to protect user data when transmitting the data to a server that estimates a frequency of such data amongst a set of client devices. One embodiment uses a differential privacy mechanism to enhance a user experience by identifying particular websites that exhibit particular characteristics. In one embodiment, websites that are associated with a high resource consumption are identified. High resource consumption can be identified based on threshold of particular resources such as processor, memory, network bandwidth, and power usage.
-
Citations
21 Claims
-
1. A non-transitory machine-readable medium storing instructions which, when executed by one or more processors of a computing device, cause the computing device to perform operations comprising:
-
receiving, from a set of client devices, a privatized encoding of a representation of a webpage, wherein each webpage is selected for transmittal in response to exceeding a resource consumption threshold, wherein the privatized encoding comprises a vector including at least one value for the webpage at a position corresponding to a hash value, the hash value is created using a hash function, and the vector is changed at the position corresponding to the created hash value with a predefined probability; accumulating privatized encodings received from the set of client devices; estimating a frequency of a selected webpage exceeding the resource consumption threshold, wherein estimating the frequency of the selected webpage includes determining a count based on the accumulated privatized encodings; and generating a record of the frequency of the selected webpage exceeding the resource consumption threshold based on the estimate of the frequency of the selected webpage. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An electronic device comprising:
-
one or more processors; and a memory coupled to the one or more processors, the memory storing instructions, which when executed by the one or more processors, cause the electronic device to; monitor a resource consumption of an application while presenting a webpage from a web site; determine the resource consumption exceeds a resource consumption threshold; generate a privatized encoding of a representation of the webpage, wherein to generate the privatized encoding includes to; create a hash value of the webpage using a hash function, encode an initialized vector by updating a value of the initialized vector at a position corresponding to the created hash value, and change at least some of the values of the vector with a predefined probability; and transmit the privatized encoding of the representation of the webpage to a server, wherein the server is to accumulate a sketch of privatized encodings from different devices to estimate a count of the webpages exceeding the resource consumption threshold amongst the different devices. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A data processing system comprising:
-
one or more processors; and a memory coupled to the one or more processors, the memory storing instructions which, when executed by the processor, cause the processor to perform operations comprising; receiving, from each of a set of client devices, a privatized encoding of a representation of a webpage, wherein each webpage is selected for transmittal in response to exceeding a resource consumption threshold wherein the privatized encoding comprises a vector including at least one value for the webpage at a position corresponding to a hash value, the hash value is created using a hash function, and the vector is changed at the position corresponding to the created hash value with a predefined probability; accumulating a sketch of the privatized encodings received from the set of client devices; estimating a count of a selected webpage amongst the webpages included in the sketch; and generating a record of the count of the selected webpage exceeding the resource consumption threshold based on the estimate of the count of the selected webpage. - View Dependent Claims (18, 19, 20, 21)
-
Specification