Synthetic data generation method, system and device
By iteratively evaluating and dynamically adjusting privacy budget parameters, the problems of inefficiency and insufficient privacy in data synthesis technology are solved, enabling the efficient generation of synthesized data that meets user requirements.
Patent Information
- Application Number
- CN202411126563.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-15
- Publication Date
- 2026-03-03
AI Technical Summary
Existing data synthesis techniques suffer from slow model convergence, low efficiency in synthesizing data, and difficulty in meeting user requirements for privacy and fidelity when using differential privacy.
The data synthesis model is generated through multiple iterations, and the privacy risks and data utility of the data in each iteration are evaluated. The privacy budget parameters are dynamically adjusted to ensure that the privacy and utility of the synthesized data meet user requirements, including adjusting or stopping the training task when the target value is not met.
It improves the efficiency of data synthesis, ensures that the generated synthetic data meets user expectations in terms of privacy and utility, and avoids the risks of privacy leakage and insufficient data fidelity.
Smart Images

Figure CN121598412A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of information technology, and specifically to a method, system, and apparatus for generating synthetic data. Background Technology
[0002] Data synthesis technology is considered a promising approach to addressing data privacy issues in business intelligence and AI services. This technology uses generative AI models to learn patterns and statistical properties of raw structured data, then generates artificially synthesized data to alleviate the pain point of difficulty in extracting customer data. For synthesized data, monitoring its quality to ensure privacy and fidelity is crucial. Current mainstream data synthesis techniques utilize neural network models such as generative adversarial networks (GANs) and variational auto-encoders (VAEs). These models possess powerful capabilities to represent the joint distribution and correlation of high-dimensional data, thus ensuring the fidelity of the generated synthetic data. However, data synthesis models still face the risk of neural network parameter inference attacks, leading to data privacy breaches. To address this issue, differential privacy has been introduced into the neural network training process, using random Gaussian noise added to the model gradient to protect model privacy.
[0003] However, adding differential privacy Gaussian random noise can lead to the following problems: the model converges slower than the model without differential privacy noise, and the data synthesis efficiency is low; in addition, the utility and privacy of the synthesized data often fail to meet the requirements. If too much differential privacy random noise is added, the synthesized data generated after the model is trained iteratively will have poor fidelity compared to the original data. If too little differential privacy random noise is added, the synthesized data will have a greater risk of privacy leakage compared to the original data.
[0004] Therefore, how to improve the efficiency of anonymized data synthesis while ensuring that the utility and privacy of the synthesized data meet user requirements is an urgent problem to be solved. Summary of the Invention
[0005] To address the aforementioned technical problems, this application provides a method, system, and apparatus for generating synthetic data.
[0006] In a first aspect, a method for generating synthetic data is provided. This method can be executed by an electronic device, or by a component in the electronic device (e.g., a processor, a chip, or a chip system), or by a logic module or software that can implement all or part of the functions of the electronic device.
[0007] The method includes: generating an i-th round data synthesis model based on i-th round privacy budget parameters, where i is an integer greater than or equal to 1; processing the data to be processed through the i-th round data synthesis model to obtain i-th round synthesized data; evaluating a first parameter and a second parameter of the i-th round synthesized data, wherein the first parameter is used to characterize the privacy risk of the data and the second parameter is used to characterize the utility of the data, wherein evaluating the first parameter and the second parameter of the i-th round synthesized data includes: determining whether the first parameter of the i-th round synthesized data satisfies a first target value and whether the second parameter of the i-th round synthesized data satisfies a second target value; when the first parameter of the i-th round synthesized data satisfies the first target value and the second parameter of the i-th round synthesized data satisfies the second target value, determining the i-th round synthesized data as the final synthesized data.
[0008] Based on the above scheme, by generating a data synthesis model through multiple iterations and evaluating the privacy risks and data utility of the anonymized data generated by the data synthesis model in each iteration, the utility and privacy of the generated anonymized data can be quickly identified, thereby improving the efficiency of data synthesis.
[0009] In some implementations, the method further includes: when the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data does not satisfy the second target value, or when the first parameter of the i-th round of synthesized data does not satisfy the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, adjusting the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round.
[0010] Based on the above scheme, new privacy budget parameters are generated according to the evaluation results for the next iteration, and finally synthetic data that meets user requirements in terms of data utility and privacy is generated.
[0011] In some implementations, the method further includes: when the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the i-th round of synthesized data does not meet the second target value, sending a failure indication message, the failure indication message indicating that data synthesis has failed.
[0012] Based on the above scheme, when the privacy risk and data utility of the anonymized data generated in this training round do not meet the target values, and the privacy risk and data utility cannot meet the user's expectations in all training cycles, the training task of the data synthesis model is stopped, and the user is informed that the synthesis data generation has failed.
[0013] In some implementations, when the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the method further includes: sending the i-th round of data synthesis model and the final synthesized data.
[0014] Based on the above scheme, if the privacy risk and data utility of the anonymized data generated in this round of training both meet the target values, it indicates that the privacy risk and data utility are within the user's expectations, and the successfully trained data synthesis model and the final anonymized data can be sent to the user.
[0015] In some implementations, adjusting the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round includes: decreasing the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round when the first parameter of the i-th round synthesized data does not meet the first target value and the second parameter of the final synthesized data meets the second target value; or increasing the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round when the first parameter of the i-th round synthesized data meets the first target value and the second parameter of the final synthesized data does not meet the second target value.
[0016] Based on the above scheme, the privacy budget parameters can be dynamically adjusted for the next iteration based on the evaluation results of the synthetic data, ultimately generating synthetic data that meets user requirements in terms of data utility and privacy.
[0017] In some implementations, the method further includes storing the i-th round data synthesis model and the i-th round synthesized data.
[0018] In some implementations, the method further includes storing the privacy budget parameters for the i-th round.
[0019] Based on the above scheme, the intermediate data synthesis model, the synthesized data, and the privacy budget parameters can be stored for easy subsequent use.
[0020] In some implementations, the method further includes: obtaining an initial privacy budget parameter, a first target value, and a second target value, wherein the initial privacy budget parameter is the privacy budget parameter for the i-th round when i=1.
[0021] In some implementations, evaluating the first and second parameters of the i-th round of synthesized data includes: evaluating the i-th round privacy budget parameter, wherein evaluating the i-th round privacy budget parameter includes: determining a first relationship between the first parameter and the privacy budget parameter based on the first parameters of the synthesized data from the first round to the (i-1)-th round; determining a second relationship between the second parameter and the privacy budget parameter based on the second parameters of the synthesized data from the first round to the (i-1)-th round; determining a maximum value of the privacy budget parameter based on the first relationship and the first target value; determining a minimum value of the privacy budget parameter based on the second relationship and the second target value; and evaluating the i-th round privacy budget parameter based on the maximum and the minimum values.
[0022] In some implementations, evaluating the privacy budget parameter for the i-th round based on the maximum and minimum values includes: when the privacy budget parameter for the i-th round is greater than the maximum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data for the i-th round does not satisfy the first target value and the second parameter of the synthesized data for the i-th round satisfies the second target value; or, when the privacy budget parameter for the i-th round is less than the minimum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data for the i-th round satisfies the first target value and the second parameter of the synthesized data for the i-th round does not satisfy the second target value; or, when the privacy budget parameter for the i-th round is less than the maximum value and greater than the minimum value, the first parameter of the synthesized data for the i-th round satisfies the first target value and the second parameter of the synthesized data for the i-th round satisfies the second target value; or, when the privacy budget parameter for the i-th round is less than the minimum value or greater than the maximum value, and the maximum value is less than the minimum value, the first parameter of the synthesized data for the i-th round does not satisfy the first target value and the second parameter of the synthesized data for the i-th round does not satisfy the second target value.
[0023] Secondly, a system for generating synthetic data is provided.
[0024] The system includes a processing module, which is configured to: generate an i-th round data synthesis model based on i-th round privacy budget parameters, where i is an integer greater than or equal to 1; process the data to be processed using the i-th round data synthesis model to obtain i-th round synthesized data; evaluate a first parameter and a second parameter of the i-th round synthesized data, wherein the first parameter is used to characterize the privacy risk of the data and the second parameter is used to characterize the utility of the data, wherein evaluating the first parameter and the second parameter of the i-th round synthesized data includes: determining whether the first parameter of the i-th round synthesized data meets a first target value and whether the second parameter of the i-th round synthesized data meets a second target value; and determining the i-th round synthesized data as the final synthesized data when the first parameter of the i-th round synthesized data meets the first target value and the second parameter of the i-th round synthesized data meets the second target value.
[0025] In some implementations, the processing module is further configured to: adjust the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round when the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data does not satisfy the second target value, or when the first parameter of the i-th round of synthesized data does not satisfy the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value.
[0026] In some implementations, the system further includes an interface module. When the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the i-th round of synthesized data does not meet the second target value, the processing module is further configured to control the interface module to send failure indication information, the failure indication information indicating that data synthesis has failed.
[0027] In some implementations, the system further includes an interface module. When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the processing module is further configured to control the interface module to send the i-th round of data synthesis model and the final synthesized data.
[0028] In some implementations, adjusting the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round includes: decreasing the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round when the first parameter of the i-th round synthesized data does not meet the first target value and the second parameter of the final synthesized data meets the second target value; or increasing the privacy budget parameter of the i-th round to obtain the privacy budget parameter of the (i+1)-th round when the first parameter of the i-th round synthesized data meets the first target value and the second parameter of the final synthesized data does not meet the second target value.
[0029] In some implementations, the system further includes a storage module for storing the i-th round data synthesis model and the i-th round synthesized data.
[0030] In some implementations, the system further includes a storage module for storing the privacy budget parameters for the i-th round.
[0031] In some implementations, the system further includes an interface module for obtaining an initial privacy budget parameter, a first target value, and a second target value, wherein the initial privacy budget parameter is the privacy budget parameter for the i-th round when i = 1.
[0032] In some implementations, evaluating the first and second parameters of the i-th round of synthesized data includes: evaluating the i-th round privacy budget parameter, wherein evaluating the i-th round privacy budget parameter includes: determining a first relationship between the first parameter and the privacy budget parameter based on the first parameters of the synthesized data from the first round to the (i-1)-th round; determining a second relationship between the second parameter and the privacy budget parameter based on the second parameters of the synthesized data from the first round to the (i-1)-th round; determining a maximum value of the privacy budget parameter based on the first relationship and the first target value; determining a minimum value of the privacy budget parameter based on the second relationship and the second target value; and evaluating the i-th round privacy budget parameter based on the maximum and the minimum values.
[0033] In some implementations, evaluating the privacy budget parameter for the i-th round based on the maximum and minimum values includes: when the privacy budget parameter for the i-th round is greater than the maximum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data for the i-th round does not satisfy the first target value and the second parameter of the synthesized data for the i-th round satisfies the second target value; or, when the privacy budget parameter for the i-th round is less than the minimum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data for the i-th round satisfies the first target value and the second parameter of the synthesized data for the i-th round does not satisfy the second target value; or, when the privacy budget parameter for the i-th round is less than the maximum value and greater than the minimum value, the first parameter of the synthesized data for the i-th round satisfies the first target value and the second parameter of the synthesized data for the i-th round satisfies the second target value; or, when the privacy budget parameter for the i-th round is less than the minimum value or greater than the maximum value, and the maximum value is less than the minimum value, the first parameter of the synthesized data for the i-th round does not satisfy the first target value and the second parameter of the synthesized data for the i-th round does not satisfy the second target value.
[0034] Thirdly, an apparatus for generating synthetic data is provided, comprising: a processor coupled to a memory for storing a computer program, the processor for running the computer program, such that the communication device performs the method described in the first aspect and any possible implementation thereof.
[0035] Fourthly, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a computer, causes the computer to perform the first aspect and any of the communication methods that can be implemented in the first aspect.
[0036] Fifthly, a computer program product containing instructions is provided, which, when run on a computer, causes the computer to perform the first aspect and any of the communication methods that can be implemented in the first aspect.
[0037] In a sixth aspect, a chip is provided, the chip including a processor and a data interface, the processor reading instructions stored in a memory through the data interface to execute the first aspect and any of the communication methods that can be implemented in the first aspect.
[0038] In conjunction with the sixth aspect, in one possible implementation, the processor is coupled to the memory via an interface.
[0039] In conjunction with the sixth aspect, in one possible implementation, the chip system also includes a memory in which computer programs or computer instructions are stored. Attached Figure Description
[0040] Figure 1 This is a schematic flowchart 100 of a method for generating synthetic data provided in this application.
[0041] Figure 2 This application provides a synthetic data generation system 200.
[0042] Figure 3 This is a schematic flowchart 300 of a method for generating synthetic data provided in this application.
[0043] Figure 4 This is a schematic block diagram of a synthetic data generation apparatus 400 provided in an embodiment of this application.
[0044] Figure 5 This is a schematic block diagram of the chip system 500 provided in the embodiments of this application. Detailed Implementation
[0045] To facilitate a better understanding of the technical solution of this application, some relevant concepts involved in the technical solution of this application will be introduced.
[0046] 1. Differential privacy
[0047] Differential privacy is a data privacy protection technique that, for a given dataset, removes or hides individual characteristics while preserving statistical features to protect user privacy and achieve anonymization. Differential privacy aims to ensure that individual privacy information is not leaked when analyzing or querying data. Its core idea is to add sufficient noise to the data query so that the query results are not significantly affected by any single individual's data, thereby protecting individual privacy. Specifically, for any individual's data contribution, regardless of whether they appear in the dataset, the change in the query results should be minimal and indistinguishable. This way, even if an attacker possesses other information, they cannot infer the individual's specific data from the query results.
[0048] 2. Privacy Budget
[0049] Privacy budget refers to the amount of privacy leakage that can be tolerated when applying differential privacy techniques. When using differential privacy mechanisms, to achieve sufficient data privacy protection, it is necessary to limit the amount of allowed random noise or add privacy protection measures; this is the concept of privacy budget. Privacy budget is usually represented by a numerical value, such as ε (epsilon), which measures the maximum risk of privacy leakage allowed in a single query or analysis. A smaller ε value indicates stronger privacy protection but may reduce the accuracy of data analysis; a larger ε value may improve the accuracy of data analysis but also increase the risk of individual privacy leakage.
[0050] 3. Decline in data utility
[0051] Introducing differential privacy techniques, such as noise reduction, will decrease the accuracy of the data, which in turn will reduce the utility of the data.
[0052] Data utility degradation is the decrease in evaluation metrics (precision / recall / F1 score) of synthetic anonymized data compared to the original data when training machine learning models. It reflects how much the accuracy of data analysis or query results will decrease after applying differential privacy technology compared to the original data. It is used to evaluate the performance of models trained on generated data. The smaller the data utility degradation value, the smaller the loss of accuracy in data analysis and the higher the practicality of the data.
[0053] 4. Privacy Risk Score
[0054] The comprehensive assessment score of the privacy risk of synthesized anonymized data compared to the original data is used to evaluate the risk of data leakage; the higher the score, the higher the risk of leakage.
[0055] Before introducing the scheme of this application, the following points should be noted.
[0056] (1) In this application, "send" and "receive" indicate the direction of signal transmission. For example, "send information to XX" can be understood as the destination of the information being XX, which may include direct transmission via the air interface or indirect transmission by other units or modules via the air interface. "Receive information from YY" can be understood as the source of the information being YY, which may include direct reception from YY via the air interface or indirect reception from YY by other units or modules via the air interface. "Send" can also be understood as the "output" of the chip interface, and "receive" can also be understood as the "input" of the chip interface. In other words, sending and receiving can occur between devices, such as between network devices and terminal devices, or within a device, such as between components, modules, chips, software modules, or hardware modules within the device via a bus, wiring, or interface.
[0057] (3) In the various embodiments of this application, unless otherwise specified or logically conflicting, the terms and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0058] (4) In this application, "first" and "second" are used for descriptive convenience only to distinguish objects and are not intended to limit the scope of the embodiments of this application. They are not used to describe the order or sequence of features. It should be understood that the objects described in this way can be interchanged where appropriate so as to describe solutions other than those in the embodiments of this application.
[0059] (5) In this application, “predefined” may mean a standard protocol predefined, or it may mean that the devices have agreed or negotiated in advance.
[0060] (6) In this application, the words “exemplary,” “for example,” etc., are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as an “example” in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of the word “example” is intended to present the concept in a concrete manner. In the embodiments of this application, “of,” “corresponding, relevant,” and “corresponding” may sometimes be used interchangeably, and it should be noted that their intended meanings are consistent unless their distinction is emphasized.
[0061] The methods provided in the embodiments of this application are described in detail below with reference to the accompanying drawings.
[0062] Figure 1This is a schematic flowchart 100 of a method for generating synthetic data provided in this application. The method can be executed by an electronic device, or by a component within the electronic device (e.g., a processor, chip, or chip system), or by a logic module or software capable of implementing all or part of the functions of the electronic device.
[0063] For example, electronic devices can be terminal devices or network devices. Terminal devices may include mobile phones, tablets, wearable devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPCs), netbooks, personal digital assistants (PDAs), or vehicles, etc.; network devices may include relay stations, access points, transmitting and receiving points (TRPs), transmitters, master stations, auxiliary stations, motor slide retainers (MSRs), home base stations, network controllers, access nodes, wireless nodes, access points (APs), transmission nodes, transceiver nodes, baseband units (BBUs), remote radio units (RRUs), active antenna units (AAUs), remote radio heads (RRHs), central units (CUs), distributed units (DUs), positioning nodes, etc.
[0064] Figure 1 The method 100 shown may include the following steps.
[0065] S110, obtain the initial privacy budget parameter, the first target value of the first parameter and the second target value of the second parameter, wherein the first parameter is used to characterize the privacy risk of the data and the second parameter is used to characterize the utility of the data.
[0066] Optionally, the first parameter is a privacy risk score.
[0067] Optionally, the second parameter is the data utility reduction value.
[0068] Optionally, obtaining the initial privacy budget parameter, the first target value of the first parameter, and the second target value of the second parameter can be understood as: obtaining the initial privacy budget parameter, the first target value of the privacy risk score, and the second target value of the data utility decline value.
[0069] Optionally, the aforementioned initialization privacy budget parameter, the first target value of the first parameter, and the second target value of the second parameter can be user input or pre-configured.
[0070] S120 processes the data to be processed through multiple iterations (or multiple rounds of training) to obtain the final synthetic data.
[0071] Step S120 may include the following steps:
[0072] S1201, Generate the first round of data synthesis model based on the above-mentioned initial privacy budget parameters.
[0073] It should be understood that the initial privacy budget parameters are the same as the privacy budget parameters for the first iteration, referred to as the first-round privacy budget parameters.
[0074] S1202, the data to be processed is processed through the first round of data synthesis model to obtain the first round of synthesized data.
[0075] It should be understood that the data to be processed is the raw data, which can be uploaded by users or collected data.
[0076] Optionally, the first round of data synthesis model and the first round of synthesized data can be stored.
[0077] S1203, evaluates the first and second parameters of the first round of synthetic data.
[0078] It should be understood that the evaluation determines whether the first parameter of the first round of synthesized data meets the first target value, and whether the second parameter of the first round of synthesized data meets the second target value.
[0079] For example, when the first parameter is a privacy risk score and the second parameter is a data utility decline value, the assessment determines whether the privacy risk score of the first round of synthesized data meets the first target value, and whether the data utility decline value of the first round of synthesized data meets the second target value. Specifically, a privacy risk score less than the first target value indicates that the privacy risk of the first round of synthesized data meets the target, and a data utility decline value less than the second target value indicates that the data utility of the first round of synthesized data meets the target.
[0080] The assessment may yield several results, which are described below.
[0081] In the first case, the first parameter of the first round of synthesized data satisfies the first target value, and the second parameter of the first round of synthesized data satisfies the second target value. In this case, it means that both the first and second parameters of the first round of synthesized data meet the user requirements, and the first round of synthesized data is the final synthesized data. Then, step S1204 (option 1) is executed.
[0082] S1204 (option 1): Send the first round of data synthesis model and the first round of synthesized data.
[0083] Optionally, the first round of data synthesis model and the first round of synthesized data can be sent to the user terminal device.
[0084] Optionally, the first round of data synthesis model and the first round of synthesized data can be saved for users to download.
[0085] In the second case, the first parameter of the first round of synthesized data does not meet the first target value, and the second parameter of the first round of synthesized data does not meet the second target value. In this case, it means that neither the first parameter nor the second parameter of the first round of synthesized data meets the user's requirements, and the first parameter and the second parameter cannot meet the user's expectations in all training cycles. Then, step S1204 (option 2) is executed.
[0086] S1204 (option 2): Send a failure indication message, which indicates that data synthesis has failed.
[0087] Optionally, the failure indication information can be sent to the user's terminal device.
[0088] In the third case, if one of the first and second parameters of the first round of synthesized data does not meet the user's requirements, the privacy budget parameter can be adjusted and the adjusted privacy budget parameter can be passed to the next iteration, i.e., step S1204 (option 3) is executed.
[0089] S1204 (option 3): Adjust the privacy budget parameters based on the evaluation results.
[0090] Specifically, if the first parameter of the first round of synthesized data does not meet the first target value and the second parameter of the first round of synthesized data meets the second target value, it means that the privacy risk of the first round of synthesized data meets the target but the data utility does not, and the privacy budget parameter is increased.
[0091] Alternatively, if the first parameter of the first round of synthesized data meets the first target value and the second parameter of the first round of synthesized data does not meet the second target value, it means that the data utility of the first round of synthesized data meets the target but the privacy risk does not, and the privacy budget parameter is reduced.
[0092] It should be understood that the privacy budget parameter used in the current iteration is the initial privacy budget parameter. Therefore, it can be reduced based on this initial privacy budget parameter to obtain the privacy budget parameter for the next iteration, i.e., the second-round privacy budget parameter. Optionally, this second-round privacy budget parameter can be stored.
[0093] This application assumes that when i = N, the first and second parameters of the synthesized data in the i-th round both meet the criteria, that is, a total of N iterations are performed, and the i-th iteration process of these N iterations is as follows.
[0094] S1205, Generate the i-th round data synthesis model based on the i-th round privacy budget parameters, where i is greater than 1. It should be understood that steps S1201 to S1204 (option 3) are the first iteration, i.e., i = 1.
[0095] For example, a second-round data synthesis model is generated based on the second-round privacy budget parameters.
[0096] S1206, The data to be processed is processed through the i-th round data synthesis model to obtain the i-th round of synthesized data.
[0097] For example, the data to be processed is processed through the second-round data synthesis model to obtain the second-round synthesized data.
[0098] Optionally, the data synthesis model for the i-th round and the synthesized data for the i-th round are stored.
[0099] S1207, evaluate the first and second parameters of the i-th round of synthetic data.
[0100] It should be understood that the evaluation determines whether the first parameter of the i-th round of synthesized data satisfies the first target value, and whether the second parameter of the i-th round of synthesized data satisfies the second target value.
[0101] The evaluation of the i-th round of synthetic data can refer to the evaluation of the first round of synthetic data.
[0102] Similarly, the assessment may yield several results, which are described below.
[0103] In the first case, the first parameter of the synthesized data in the i-th round satisfies the first target value, and the second parameter of the synthesized data in the i-th round satisfies the second target value. In this case, it means that both the first and second parameters of the synthesized data in the i-th round meet the user requirements, and the synthesized data in the i-th round is the final synthesized data. Then, step S1208 (option 1) is executed.
[0104] S1208 (option 1) sends the i-th round data synthesis model and the i-th round of synthesized data.
[0105] Optionally, the i-th round of data synthesis model and the i-th round of synthesized data can be sent to the user terminal device.
[0106] Optionally, the data synthesis model and the synthesized data of the i-th round can be saved for users to download.
[0107] In the second case, the first parameter of the synthesized data in the i-th round does not meet the first target value, and the second parameter of the synthesized data in the i-th round does not meet the second target value. In this case, it means that neither the first parameter nor the second parameter of the synthesized data in the i-th round meets the user's requirements, and the first parameter and the second parameter cannot meet the user's expectations in all training cycles. Then, step S1208 (option 2) is executed.
[0108] S1208 (option 2) sends a failure indication message, which indicates that data synthesis has failed.
[0109] Optionally, the failure indication information can be sent to the user's terminal device.
[0110] In the third case, if one of the first and second parameters of the synthesized data in the i-th round does not meet the user's requirements, the privacy budget parameter can be adjusted and the adjusted privacy budget parameter can be passed to the next iteration, i.e., step S1208 (option 3) is executed.
[0111] S1208 (option 3): Adjust the privacy budget parameters based on the evaluation results.
[0112] Specifically, if the first parameter of the synthesized data in the i-th round does not meet the first target value and the second parameter of the synthesized data in the i-th round meets the second target value, it means that the privacy risk of the synthesized data in the i-th round meets the target but the data utility does not meet the target. In this case, the privacy budget parameter is increased to obtain the privacy budget parameter for the next iteration, i.e., the privacy budget parameter for the (i+1)-th round.
[0113] Alternatively, if the first parameter of the synthesized data in the i-th round satisfies the first target value and the second parameter of the synthesized data in the i-th round does not satisfy the second target value, this means that the data utility of the synthesized data in the i-th round meets the target but the privacy risk does not meet the target. In this case, the privacy budget parameter is reduced to obtain the privacy budget parameter for the next iteration, i.e., the privacy budget parameter for the (i+1)-th round.
[0114] Optionally, the privacy budget parameters for the (i+1)th round can be stored.
[0115] It should be understood that by iterating through the above steps until the first and second parameters of the synthesized data in the i-th round both meet the criteria, the iteration can be completed. That is, if step S1208 is the first case, the iteration stops, and at this time i = N.
[0116] It should be understood that the Nth iteration is steps S1205 to S1208 (option 1), which will be described separately below for ease of understanding. It should be understood that steps S1209 to S1211 are a specific implementation of steps S1205 to S1208, and are not additional steps.
[0117] S1209, Generate the Nth round data synthesis model based on the Nth round privacy budget parameters.
[0118] It should be understood that the privacy budget parameter for the Nth round is generated in the (N-1)th iteration.
[0119] S1210, the data to be processed is processed through the Nth round data synthesis model to obtain the Nth round synthesized data, that is, the final synthesized data.
[0120] It should be understood that once the evaluation determines that the first and second parameters of the Nth round of synthetic data both meet the standards, the iteration can be stopped, i.e., the model training can be stopped.
[0121] S1211, send the Nth round of data synthesis model and the final synthesized data.
[0122] Optional, send the privacy budget parameters for the Nth round.
[0123] The following example, using privacy risk score as the first parameter and data utility decline value as the second parameter, further illustrates the method for evaluating the first and second parameters of the i-th round of synthetic data in the above steps.
[0124] The privacy risk score and data utility decline value of the i-th round of synthetic data are evaluated, including: the privacy budget parameters used to generate the i-th round of synthetic data are evaluated.
[0125] For example, when i=1, the first round of synthetic data is evaluated, including: evaluating the initial privacy budget parameters.
[0126] For example, when i is greater than 1, the synthetic data of the i-th round is evaluated, including the evaluation of the privacy budget parameters of the i-th round.
[0127] The evaluation of the privacy budget parameters for the i-th round includes:
[0128] 1) Determine the first relationship between the privacy risk score and the privacy budget parameter based on the first parameter of the first round of synthesized data to the (i-1)th round of synthesized data;
[0129] 2) Determine the second relationship between the data utility decline value and the privacy budget parameter based on the second parameter of the first round of synthesized data to the (i-1)th round of synthesized data;
[0130] For example, based on the privacy risk score and data utility decline value obtained from historical iterations, the correlation R between privacy budget ∈ and privacy risk score and the correlation U between privacy budget ∈ and data utility decline value can be calculated iteratively:
[0131] It should be understood that the privacy budget ∈ is inversely proportional to the gradient noise Φ. That is, the larger the privacy budget ∈ is, the smaller the noise is added. Therefore, the larger the privacy budget ∈ is, the higher the privacy risk score R is, and the lower the data utility reduction value U is.
[0132] Formula for calculating differential privacy noise during model training:
[0133] Φ=λ·1 / ∈
[0134] The data utility decline value U is inversely proportional to the privacy budget. The formula for calculating the data utility decline value is:
[0135] U = f(1 / ∈)
[0136] It should be understood that this formula is an example of the first relation.
[0137] The privacy risk score R is directly proportional to the privacy budget. The formula for calculating the privacy risk score is as follows:
[0138] R = f(∈)
[0139] It should be understood that this formula is an example of the second relation.
[0140] 3) Determine the maximum value of the privacy budget parameter based on the first relation and the first target value. max ;
[0141] For example, the privacy risk score R in historical iterations can be calculated using the first relation. i The maximum privacy budget value ∈ <privacy risk target value r (i.e., an example of the first target value)> max That is, the formula represents:
[0142] R i <r→∈<∈ max
[0143] 4) Determine the minimum value of the privacy budget parameter based on the second relation and the second objective value. min ;
[0144] For example, the data utility decrease value U in historical iterations can be calculated using the second relation. i The minimum privacy budget value ∈ <data utility reduction target value u (i.e., an example of the second target value)> min The formula represents:
[0145] U i<u→∈>∈ min
[0146] 5) Based on the maximum value ∈ max and minimum value ∈ min The privacy budget parameters for round i are evaluated.
[0147] In the first implementation, when the privacy budget parameter of the i-th round is greater than the maximum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data of the i-th round does not satisfy the first target value and the second parameter of the synthesized data of the i-th round satisfies the second target value.
[0148] Optionally, the privacy budget parameter for the i-th round is greater than the maximum value and the maximum value is greater than the minimum value, which can be expressed as:
[0149] In the second implementation, when the privacy budget parameter of the i-th round is less than the minimum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data of the i-th round satisfies the first target value and the second parameter of the synthesized data of the i-th round does not satisfy the second target value.
[0150] Optionally, the privacy budget parameter for the i-th round is less than the minimum value and the maximum value is greater than the minimum value, which can be expressed as:
[0151] In the third implementation, when the privacy budget parameter of the i-th round is less than the maximum value and greater than the minimum value, the first parameter of the synthesized data of the i-th round satisfies the first target value and the second parameter of the synthesized data of the i-th round satisfies the second target value.
[0152] Optionally, the privacy budget parameter for the i-th round is less than the maximum value and greater than the minimum value, which can be expressed as:
[0153] In the fourth implementation, when the privacy budget parameter of the i-th round is less than the minimum value or greater than the maximum value, and the maximum value is less than the minimum value, the first parameter of the synthesized data of the i-th round does not meet the first target value and the second parameter of the synthesized data of the i-th round does not meet the second target value.
[0154] Optionally, the privacy budget parameter for the i-th round is either less than the minimum or greater than the maximum, and the maximum is less than the minimum, which can be expressed as: (∈ i >∈ max or∈ i <∈ max )and(∈ max <∈ min ).
[0155] Figure 2A synthetic data generation system 200 is shown, which can execute the aforementioned method 100. The system 200 can be an electronic device or a computer program product. Figure 2 As shown, the system 200 includes an interface module and a processing module. Optionally, it may also include a storage module. It should be understood that the descriptions of relevant terms, concepts, and methods in the introduction of system 200 can be referred to method 100, and will not be repeated here.
[0156] The following text will use the example of N iterations in total for each iteration.
[0157] Optionally, the processing module may include a model training module, a data generation module, and an evaluation module.
[0158] The interface module is used to obtain the initial privacy budget parameters, the first target value of the first parameter, and the second target value of the second parameter. When the first parameter of the final synthesized data does not meet the first target value, and the second parameter of the final synthesized data does not meet the second target value, the interface module is also used to send a failure indication message, indicating that the data synthesis has failed. When the first parameter of the final synthesized data meets the first target value, and the second parameter of the final synthesized data meets the second target value, the interface module is also used to send the Nth round data synthesis model and the final synthesized data. Optionally, the interface module is also used to send the Nth round privacy budget parameters.
[0159] The model training module, data generation module, and evaluation module are used to process the data to be processed through multiple iterations to obtain the final synthetic data.
[0160] Specifically, the model training module generates the i-th round data synthesis model based on the i-th round privacy budget parameters, where the i-th round privacy budget parameters are the initial privacy budget parameters.
[0161] The data generation module processes the data to be processed through the i-th round data synthesis model to obtain the i-th round of synthesized data.
[0162] The evaluation module evaluates the first and second parameters of the synthetic data in the i-th round; and, when i is not equal to N, it is also used to adjust the privacy budget parameters in the i-th round based on the evaluation results to obtain the privacy budget parameters in the (i+1)-th round.
[0163] The storage module is used to store the data synthesis model and the synthesized data of the i-th round, and also to store the privacy budget parameters of the i-th round.
[0164] This application embodiment can divide the system 200 into functional modules according to the above method example. For example, each function can be divided into its own functional modules, or two or more functions can be integrated into one processing module. The integrated modules can be implemented in hardware or as software functional modules. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods. The following description uses the division of functional modules according to each function as an example.
[0165] The following is combined Figure 3 The purpose of each module in the system 200, which generates the synthetic data, is described in detail, and the method 100 is further introduced.
[0166] Figure 3 This is a schematic flowchart 300 of a method for generating synthetic data provided in this application. Method 300, i.e., method 100, is executed through the aforementioned system 200. It should be understood that the relevant terms and concepts, i.e., the descriptions of methods, in the introduction of system 200 can all refer to method 100, and will not be repeated here.
[0167] S310, the interface module obtains the initial privacy budget parameters, the first target value of the first parameter, and the second target value of the second parameter.
[0168] S320, the interface module determines the first configuration information and sends the first configuration information to the model training module, the first configuration information including the initialization privacy budget parameters.
[0169] Optionally, the first configuration information may also include a first target value and a second target value.
[0170] S330, the model training module, data generation module and evaluation module process the data to be processed through N iterations (or N rounds of training) to obtain the final synthetic data.
[0171] Specifically, for the i-th iteration in N iterations (when i is less than N), the model training module first generates the first round of data synthesis model and then sends it to the data generation module. The data generation module processes the data to be processed according to the i-th round of data synthesis model to obtain the i-th round of synthesized data and sends it to the evaluation module. The evaluation module evaluates the first and second parameters of the i-th round of synthesized data and sends the privacy budget parameters of the (i+1)-th round to the model training module for the (i+1)-th iteration.
[0172] Specifically, step S330 may include the following steps:
[0173] S3301, the model training module generates the i-th round data synthesis model based on the i-th round privacy budget parameters and sends the i-th round data synthesis model to the data generation module.
[0174] Optionally, the model training module may send the i-th round of data to the storage module of system 200, or to other databases.
[0175] Optionally, the storage module stores the data synthesis model for the i-th round.
[0176] Alternatively, the storage module sends the i-th round of data synthesis model to the data generation module.
[0177] S3302, the data generation module processes the data to be processed through the i-th round data synthesis model to obtain the i-th round of synthesized data, and sends the i-th round of synthesized data to the evaluation module.
[0178] Optionally, the data to be processed obtained by the data generation module or the evaluation module can be sent directly to the data generation module by the interface module, or it can be sent to the data generation module or the evaluation module by the interface module through other modules.
[0179] Optionally, the model training module may send the synthesized data from the i-th round to the storage module of system 200, or to another database.
[0180] Optionally, the storage module stores the synthesized data for the i-th round.
[0181] S3303, the evaluation module evaluates the first and second parameters of the synthetic data in the i-th round, adjusts the privacy budget parameters according to the evaluation results, obtains the privacy budget parameters in the (i+1)-th round, and sends the (i+1)-th round privacy budget parameters to the model training module.
[0182] For a detailed evaluation process, please refer to Method 100, which will not be repeated here.
[0183] Optionally, the evaluation module may send the privacy budget parameters for round i+1 to the storage module of system 200, or to other databases.
[0184] Optionally, the storage module stores the privacy budget parameters for the (i+1)th round.
[0185] Optionally, the first and second target values obtained by the evaluation module can be sent directly to the data generation module by the interface module, or they can be sent to the evaluation module by the interface module through other modules.
[0186] For the Nth iteration, step S330 may include the following steps:
[0187] S3304, The model training module generates the Nth round data synthesis model based on the Nth round privacy budget parameters and sends the Nth round data synthesis model to the data generation module.
[0188] Optionally, the model training module can send the Nth round of data to the system 200's storage module or to other databases.
[0189] Optionally, the storage module stores the Nth round of data synthesis model.
[0190] S3305, the data generation module processes the data to be processed through the Nth round data synthesis model to obtain the final synthesized data, and sends the Nth round of synthesized data to the evaluation module.
[0191] Optionally, the model training module sends the Nth round of synthetic data to the storage module of system 200, or to other databases.
[0192] Optionally, the storage module stores the synthesized data for the Nth round.
[0193] S3306, The evaluation module evaluates the first and second parameters of the Nth round of synthetic data.
[0194] S3307, the storage module or other database sends one or more of the following to the interface module: the Nth round privacy budget parameters, the final synthesized data, and the Nth round data synthesis model.
[0195] It should be understood that the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0196] It should also be understood that, in the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced by each other, and the technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.
[0197] It is understood that, in the above-described method embodiments, the methods and operations implemented by the system can also be implemented by components of the system (such as chips or circuits).
[0198] Those skilled in the art will recognize that, based on the units and algorithm steps described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is implemented in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0199] The following combination Figures 4 to 5 The apparatus provided in this application is described in detail. It should be understood that the description of the apparatus embodiments corresponds to the description of the method embodiments. Therefore, for content not described in detail, please refer to the method embodiments above; for the sake of brevity, some content will not be repeated.
[0200] Figure 4 This is a schematic diagram of a synthetic data generation apparatus 400 provided in an embodiment of this application. The synthetic data generation apparatus 400 includes a processor 410, which is used to execute computer programs or instructions stored in a memory 420, or to read data / signaling stored in the memory 420, to perform the methods in the above-described method embodiments. Optionally, there may be one or more processors 410.
[0201] Optionally, such as Figure 4 As shown, the device 400 also includes a memory 420 for storing computer programs or instructions and / or data. The memory 420 may be integrated with the processor 410 or may be disposed separately. Optionally, there may be one or more memories 420.
[0202] Optionally, such as Figure 4 As shown, the device 400 also includes a transceiver 430 for receiving and / or transmitting signals. For example, a processor 410 controls the transceiver 430 to receive and / or transmit signals.
[0203] As one approach, the device 400 is used to implement the operations performed by the data generation device in the various method embodiments described above.
[0204] It should be understood that the processor mentioned in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0205] It should also be understood that the memory mentioned in the embodiments of this application can be volatile memory and / or non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM). For example, RAM can be used as an external cache. By way of example and not limitation, RAM includes the following forms: static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0206] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA, or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, the memory (storage module) can be integrated into the processor.
[0207] It should also be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0208] Figure 5 This is a schematic diagram of a chip system 500 provided in an embodiment of this application. The chip system 500 (or may also be called a processing system) includes logic circuitry 510 and an input / output interface 520.
[0209] The logic circuit 510 can be a processing circuit in the chip system 500. The logic circuit 510 can be coupled to a memory unit, calling instructions from the memory unit, enabling the chip system 500 to implement the methods and functions of the embodiments of this application. The input / output interface 520 can be an input / output circuit in the chip system 500, outputting processed information or inputting data or signaling information to be processed into the chip system 500 for processing.
[0210] As one approach, the chip system 500 is used to implement the operations performed by the data generation apparatus in the various method embodiments described above.
[0211] For example, logic circuit 510 is used to implement processing-related operations performed by the data synthesis generating device in the above method embodiments; input / output interface 520 is used to implement sending and / or receiving-related operations performed by the data synthesis generating device in the above method embodiments.
[0212] This application also provides a computer-readable storage medium storing computer instructions for implementing the methods executed by the synthetic data generation apparatus in the above-described method embodiments.
[0213] For example, when the computer program is executed by a computer, the computer can implement the method performed by the synthetic data generation device in the various embodiments of the above method.
[0214] This application also provides a computer program product comprising instructions which, when executed by a computer, implement the methods performed by the synthetic data generation apparatus in the above-described method embodiments.
[0215] The explanations and beneficial effects of the relevant contents in any of the devices provided above can be found in the corresponding method embodiments provided above, and will not be repeated here.
[0216] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of apparatus or units may be electrical, mechanical, or other forms.
[0217] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0218] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0219] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0220] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0221] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0222] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, electronic device, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0223] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for generating synthetic data, characterized in that, include: Generate the data synthesis model for the i-th round based on the privacy budget parameters for the i-th round, where i is an integer greater than or equal to 1; The data to be processed is processed through the i-th round data synthesis model to obtain the i-th round synthesized data; The first and second parameters of the i-th round of synthesized data are evaluated. The first parameter characterizes the privacy risk of the data, and the second parameter characterizes the utility of the data. The evaluation of the first and second parameters of the i-th round of synthesized data includes: determining whether the first parameter of the i-th round of synthesized data satisfies a first target value and whether the second parameter of the i-th round of synthesized data satisfies a second target value; When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the i-th round of synthesized data is determined to be the final synthesized data.
2. The method according to claim 1, characterized in that, The method further includes: When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data does not satisfy the second target value, or when the first parameter of the i-th round of synthesized data does not satisfy the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the privacy budget parameter of the i-th round is adjusted to obtain the privacy budget parameter of the (i+1)-th round.
3. The method according to claim 1 or 2, characterized in that, The method further includes: When the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the i-th round of synthesized data does not meet the second target value, a failure indication message is sent, indicating that the data synthesis has failed.
4. The method according to any one of claims 1 to 3, characterized in that, When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the method further includes: sending the i-th round of data synthesis model and the final synthesized data.
5. The method according to claim 2, characterized in that, The step of adjusting the privacy budget parameters for the i-th round to obtain the privacy budget parameters for the (i+1)-th round includes: When the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the final synthesized data meets the second target value, the privacy budget parameter of the i-th round is reduced to obtain the privacy budget parameter of the (i+1)-th round; or... When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the final synthesized data does not satisfy the second target value, the privacy budget parameter of the i-th round is increased to obtain the privacy budget parameter of the (i+1)-th round.
6. The method according to any one of claims 1 to 5, characterized in that, The method further includes: Store the data synthesis model of the i-th round and the synthesized data of the i-th round.
7. The method according to any one of claims 1 to 6, characterized in that, The method further includes: Store the privacy budget parameters for the i-th round.
8. The method according to any one of claims 1 to 7, characterized in that, The method further includes: Obtain the initial privacy budget parameter, the first target value, and the second target value, wherein the initial privacy budget parameter is the privacy budget parameter for the i-th round when i=1.
9. The method according to any one of claims 1 to 8, characterized in that, The evaluation of the first and second parameters of the i-th round of synthesized data includes: evaluating the privacy budget parameters of the i-th round. The evaluation of the privacy budget parameters for the i-th round includes: The first relationship between the first parameter and the privacy budget parameter is determined based on the first parameter of the first round of synthesized data to the (i-1)th round of synthesized data; Determine the second relationship between the second parameter and the privacy budget parameter based on the second parameter of the first round of synthesized data to the (i-1)th round of synthesized data; The maximum value of the privacy budget parameter is determined based on the first relationship and the first target value; The minimum value of the privacy budget parameter is determined based on the second relationship and the second target value; The privacy budget parameters for the i-th round are evaluated based on the maximum and minimum values.
10. The method according to claim 9, characterized in that, The evaluation of the privacy budget parameters for the i-th round based on the maximum and minimum values includes: When the privacy budget parameter of the i-th round is greater than the maximum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data of the i-th round does not satisfy the first target value and the second parameter of the synthesized data of the i-th round satisfies the second target value; or... When the privacy budget parameter of the i-th round is less than the minimum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data of the i-th round satisfies the first target value and the second parameter of the synthesized data of the i-th round does not satisfy the second target value; or... When the privacy budget parameter of the i-th round is less than the maximum value and greater than the minimum value, the first parameter of the synthesized data of the i-th round satisfies the first target value and the second parameter of the synthesized data of the i-th round satisfies the second target value; or When the privacy budget parameter of the i-th round is less than the minimum value or greater than the maximum value, and the maximum value is less than the minimum value, the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the i-th round of synthesized data does not meet the second target value.
11. A system for generating synthetic data, characterized in that, Includes a processing module, the processing module being used for: Generate the data synthesis model for the i-th round based on the privacy budget parameters for the i-th round, where i is an integer greater than or equal to 1; The data to be processed is processed through the i-th round data synthesis model to obtain the i-th round synthesized data; The first and second parameters of the i-th round of synthesized data are evaluated. The first parameter characterizes the privacy risk of the data, and the second parameter characterizes the utility of the data. The evaluation of the first and second parameters of the i-th round of synthesized data includes: determining whether the first parameter of the i-th round of synthesized data satisfies a first target value and whether the second parameter of the i-th round of synthesized data satisfies a second target value; When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the i-th round of synthesized data is determined to be the final synthesized data.
12. The system according to claim 11, characterized in that, The processing module is also used for: When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data does not satisfy the second target value, or when the first parameter of the i-th round of synthesized data does not satisfy the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the privacy budget parameter of the i-th round is adjusted to obtain the privacy budget parameter of the (i+1)-th round.
13. The system according to claim 11 or 12, characterized in that, The system also includes an interface module. When the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the i-th round of synthesized data does not meet the second target value, the processing module is further configured to control the interface module to send failure indication information, the failure indication information indicating that the data synthesis has failed.
14. The system according to claim 11 or 12, characterized in that, The system also includes an interface module. When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the i-th round of synthesized data satisfies the second target value, the processing module is further configured to control the interface module to send the i-th round of data synthesis model and the final synthesized data.
15. The system according to claim 12, characterized in that, The step of adjusting the privacy budget parameters for the i-th round to obtain the privacy budget parameters for the (i+1)-th round includes: When the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the final synthesized data meets the second target value, the privacy budget parameter of the i-th round is reduced to obtain the privacy budget parameter of the (i+1)-th round; or... When the first parameter of the i-th round of synthesized data satisfies the first target value and the second parameter of the final synthesized data does not satisfy the second target value, the privacy budget parameter of the i-th round is increased to obtain the privacy budget parameter of the (i+1)-th round.
16. The system according to any one of claims 11 to 15, characterized in that, The system also includes: A storage module is used to store the data synthesis model of the i-th round and the synthesized data of the i-th round.
17. The system according to any one of claims 11 to 15, characterized in that, The system also includes: A storage module is used to store the privacy budget parameters for the i-th round.
18. The system according to any one of claims 11 to 17, characterized in that, The system also includes: An interface module is used to obtain an initial privacy budget parameter, a first target value, and a second target value, wherein the initial privacy budget parameter is the privacy budget parameter for the i-th round when i=1.
19. The system according to any one of claims 11 to 18, characterized in that, The evaluation of the first and second parameters of the i-th round of synthesized data includes: evaluating the privacy budget parameters of the i-th round. The evaluation of the privacy budget parameters for the i-th round includes: The first relationship between the first parameter and the privacy budget parameter is determined based on the first parameter of the first round of synthesized data to the (i-1)th round of synthesized data; Determine the second relationship between the second parameter and the privacy budget parameter based on the second parameter of the first round of synthesized data to the (i-1)th round of synthesized data; The maximum value of the privacy budget parameter is determined based on the first relationship and the first target value; The minimum value of the privacy budget parameter is determined based on the second relationship and the second target value; The privacy budget parameters for the i-th round are evaluated based on the maximum and minimum values.
20. The system according to claim 19, characterized in that, The evaluation of the privacy budget parameters for the i-th round based on the maximum and minimum values includes: When the privacy budget parameter of the i-th round is greater than the maximum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data of the i-th round does not satisfy the first target value and the second parameter of the synthesized data of the i-th round satisfies the second target value; or... When the privacy budget parameter of the i-th round is less than the minimum value and the maximum value is greater than the minimum value, the first parameter of the synthesized data of the i-th round satisfies the first target value and the second parameter of the synthesized data of the i-th round does not satisfy the second target value; or... When the privacy budget parameter of the i-th round is less than the maximum value and greater than the minimum value, the first parameter of the synthesized data of the i-th round satisfies the first target value and the second parameter of the synthesized data of the i-th round satisfies the second target value; or When the privacy budget parameter of the i-th round is less than the minimum value or greater than the maximum value, and the maximum value is less than the minimum value, the first parameter of the i-th round of synthesized data does not meet the first target value and the second parameter of the i-th round of synthesized data does not meet the second target value.
21. An apparatus for generating synthetic data, characterized in that, The apparatus is used to perform the method according to any one of claims 1 to 10.
22. A device for generating synthetic data, characterized in that, The apparatus includes at least one processor, the at least one memory for storing computer programs or instructions, and the at least one processor for executing the computer programs or instructions in the memory such that the method of any one of claims 1 to 10 is performed.
23. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program or instructions, and when the computer program or instructions are run on a computer, the method as described in any one of claims 1 to 10 is performed.
24. A computer program product, characterized in that, When the computer program product is run on a computer, the method as described in any one of claims 1 to 10 is performed.