Artificial data generation for differential privacy
An embodiment configures a plurality of parameters, the parameters being usable to generate artificial data from original data, the configuring adjusting a level of privacy in the artificial data. An embodiment fits a distribution type to a variable of the original data. An embodiment adjusts, using a desired level of privacy and the distribution type, a level of noise, wherein the level of noise corresponds to the desired level of privacy. An embodiment generates, using the distribution type and the level of noise, the artificial data, the artificial data achieving the desired level of privacy by including noise data corresponding to the level of noise.
1 . A computer-implemented method comprising:
generating artificial data for differential privacy datasets and having a configurable degree of privacy protection, the generating comprising:
configuring a plurality of parameters, the parameters being usable to generate artificial data from original data, the configuring adjusting a level of privacy in the artificial data;
fitting a distribution type to a variable of the original data;
executing, as a part of an artificial data generation application, an adjustment code configured to perform adjusting, using a desired level of privacy and the distribution type, a level of noise, wherein the level of noise corresponds to the desired level of privacy, wherein executing the adjustment code sets the level of noise based on a local sensitivity, the local sensitivity being the largest difference between two analysis results of two corresponding datasets wherein the two corresponding datasets are the same except for one record;
generating from an execution of the artificial data generation application, using the distribution type and the level of noise, the artificial data, the artificial data achieving the desired level of privacy by including noise data corresponding to the level of noise; and
regenerating, by changing at least one of the plurality of parameters, and responsive to determining that a similarity between an original value of the variable and a generated value of the variable is less than a threshold value, new artificial data.
2 . The computer-implemented method of claim 1 , wherein configuring the plurality of parameters comprises setting an upper bound parameter of a continuous variable comprising the original data to a first value according to a statistical characteristic of the continuous variable.
3 . The computer-implemented method of claim 1 , wherein configuring the plurality of parameters comprises setting a lower bound parameter of a continuous variable comprising the original data to a second value according to a statistical characteristic of the continuous variable.
4 . The computer-implemented method of claim 1 , wherein the variable contributes to a privacy aspect of the original data.
5 . The computer-implemented method of claim 1 , wherein fitting a distribution type to the variable of the original data further comprises:
selecting, from a plurality of distribution type fittings according to a goodness of fit statistic computed on each distribution type fitting, the distribution type.
6 . The computer-implemented method of claim 1 , wherein the desired level of privacy is higher than a level of privacy in the original data.
7 . A computer program product comprising one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable by a processor to cause the processor to perform operations comprising:
generating artificial data for differential privacy datasets and having a configurable degree of privacy protection, the generating comprising:
configuring a plurality of parameters, the parameters being usable to generate artificial data from original data, the configuring adjusting a level of privacy in the artificial data;
fitting a distribution type to a variable of the original data;
executing, as a part of an artificial data generation application, an adjustment code configured to perform adjusting, using a desired level of privacy and the distribution type, a level of noise, wherein the level of noise corresponds to the desired level of privacy, wherein executing the adjustment code sets the level of noise based on a local sensitivity, the local sensitivity being the largest difference between two analysis results of two corresponding datasets wherein the two corresponding datasets are the same except for one record;
generating from an execution of the artificial data generation application, using the distribution type and the level of noise, the artificial data, the artificial data achieving the desired level of privacy by including noise data corresponding to the level of noise; and
regenerating, by changing at least one of the plurality of parameters, and responsive to determining that a similarity between an original value of the variable and a generated value of the variable is less than a threshold value, new artificial data.
8 . The computer program product of claim 7 , wherein the stored program instructions are stored in a computer readable storage device in a data processing system, and wherein the stored program instructions are transferred over a network from a remote data processing system.
9 . The computer program product of claim 7 , wherein the stored program instructions are stored in a computer readable storage device in a server data processing system, and wherein the stored program instructions are downloaded in response to a request over a network to a remote data processing system for use in a computer readable storage device associated with the remote data processing system, further comprising:
program instructions to meter use of the program instructions associated with the request; and
program instructions to generate an invoice based on the metered use.
10 . The computer program product of claim 7 , wherein configuring the plurality of parameters comprises setting an upper bound parameter of a continuous variable comprising the original data to a first value according to a statistical characteristic of the continuous variable.
11 . The computer program product of claim 7 , wherein configuring the plurality of parameters comprises setting a lower bound parameter of a continuous variable comprising the original data to a second value according to a statistical characteristic of the continuous variable.
12 . The computer program product of claim 7 , wherein the variable contributes to a privacy aspect of the original data.
13 . The computer program product of claim 7 , wherein fitting a distribution type to the variable of the original data further comprises:
selecting, from a plurality of distribution type fittings according to a goodness of fit statistic computed on each distribution type fitting, the distribution type.
14 . The computer program product of claim 7 , wherein the desired level of privacy is higher than a level of privacy in the original data.
15 . A computer system comprising a processor and one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable by the processor to cause the processor to perform operations comprising:
generating artificial data for differential privacy datasets and having a configurable degree of privacy protection, the generating comprising:
configuring a plurality of parameters, the parameters being usable to generate artificial data from original data, the configuring adjusting a level of privacy in the artificial data;
fitting a distribution type to a variable of the original data;
executing, as a part of an artificial data generation application, an adjustment code configured to perform adjusting, using a desired level of privacy and the distribution type, a level of noise, wherein the level of noise corresponds to the desired level of privacy, wherein executing the adjustment code sets the level of noise based on a local sensitivity, the local sensitivity being the largest difference between two analysis results of two corresponding datasets wherein the two corresponding datasets are the same except for one record;
generating from an execution of the artificial data generation application, using the distribution type and the level of noise, the artificial data, the artificial data achieving the desired level of privacy by including noise data corresponding to the level of noise; and
regenerating, by changing at least one of the plurality of parameters, and responsive to determining that a similarity between an original value of the variable and a generated value of the variable is less than a threshold value, new artificial data.
16 . The computer system of claim 15 , wherein configuring the plurality of parameters comprises setting an upper bound parameter of a continuous variable comprising the original data to a first value according to a statistical characteristic of the continuous variable.
17 . The computer system of claim 15 , wherein configuring the plurality of parameters comprises setting a lower bound parameter of a continuous variable comprising the original data to a second value according to a statistical characteristic of the continuous variable.
18 . The computer system of claim 15 , wherein the variable contributes to a privacy aspect of the original data.
19 . The computer system of claim 15 , wherein fitting a distribution type to the variable of the original data further comprises:
selecting, from a plurality of distribution type fittings according to a goodness of fit statistic computed on each distribution type fitting, the distribution type.
20 . The computer system of claim 15 , wherein the desired level of privacy is higher than a level of privacy in the original data.
21 . A data processing system comprising a processor and one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable by the processor to cause the processor to perform operations comprising:
generating artificial data for differential privacy datasets and having a configurable degree of privacy protection, the generating comprising:
configuring a plurality of parameters, the parameters being usable to generate artificial data from original data, the configuring adjusting a level of privacy in the artificial data;
fitting a distribution type to a variable of the original data;
executing, as a part of an artificial data generation application, an adjustment code configured to perform adjusting, using a desired level of privacy and the distribution type, a level of noise, wherein the level of noise corresponds to the desired level of privacy, wherein executing the adjustment code sets the level of noise based on a local sensitivity, the local sensitivity being the largest difference between two analysis results of two corresponding datasets wherein the two corresponding datasets are the same except for one record;
generating from an execution of the artificial data generation application, using the distribution type and the level of noise, the artificial data, the artificial data achieving the desired level of privacy by including noise data corresponding to the level of noise; and
regenerating, by changing at least one of the plurality of parameters, and responsive to determining that a similarity between an original value of the variable and a generated value of the variable is less than a threshold value, new artificial data.
22 . The data processing system of claim 21 , wherein configuring the plurality of parameters comprises setting an upper bound parameter of a continuous variable comprising the original data to a first value according to a statistical characteristic of the continuous variable.
23 . The data processing system of claim 21 , wherein configuring the plurality of parameters comprises setting a lower bound parameter of a continuous variable comprising the original data to a second value according to a statistical characteristic of the continuous variable.
24 . The data processing system of claim 21 , wherein the variable contributes to a privacy aspect of the original data.
25 . A virtualized computing environment in a cloud infrastructure comprising a virtualized processor resource and a cloud storage comprising one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media of the cloud storage, the program instructions executable by the virtualized processor resource to cause the virtualized processor resource to perform operations comprising:
generating artificial data for differential privacy datasets and having a configurable degree of privacy protection, the generating comprising:
configuring a plurality of parameters, the parameters being usable to generate artificial data from original data, the configuring adjusting a level of privacy in the artificial data;
fitting a distribution type to a variable of the original data;
executing, as a part of an artificial data generation application, an adjustment code configured to perform adjusting, using a desired level of privacy and the distribution type, a level of noise, wherein the level of noise corresponds to the desired level of privacy, wherein executing the adjustment code sets the level of noise based on a local sensitivity, the local sensitivity being the largest difference between two analysis results of two corresponding datasets wherein the two corresponding datasets are the same except for one record;
generating from an execution of the artificial data generation application, using the distribution type and the level of noise, the artificial data, the artificial data achieving the desired level of privacy by including noise data corresponding to the level of noise; and
regenerating, by changing at least one of the plurality of parameters, and responsive to determining that a similarity between an original value of the variable and a generated value of the variable is less than a threshold value, new artificial data.