Shared data determination method and apparatus, electronic device, and storage medium
By jointly updating the local discriminator network and the generator network, the problem of poor availability of shared data caused by ID mismatch between local datasets is solved, achieving efficient data sharing under privacy protection, and the generated shared data has high availability.
Patent Information
- Application Number
- CN202210892219.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-27
- Publication Date
- 2026-01-02
- Estimated Expiration
- 2042-07-27
AI Technical Summary
In existing technologies, the mismatch of IDs between different local datasets leads to poor availability of shared data in vertically segmented data sharing, and poses a risk of privacy leakage.
By receiving generated record data and sensitive record data, the local discriminator network is updated using the local discriminator network, and the generator network is updated by combining the real integrated record training data and synthetic integrated record training data from the data sharing platform. The generator network generates record data groups and constructs target shared data based on the weights of the generated record data.
This approach improves the availability of vertically segmented data sharing while avoiding privacy leaks, ensuring the efficiency and usability of shared data.
Smart Images

Figure CN115454949B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of data processing, and particularly relates to a shared data determination method and device, electronic equipment and a storage medium. BACKGROUND
[0002] In the related art, in order to realize vertical partitioning data sharing, a generative model is usually constructed by each data owner using his own local data set, then the learned generative model is used to generate data, and finally the data generated by each party is integrated to form a shared data set. However, the related art has the problem of poor availability of shared data due to ID mismatch between various local data sets. SUMMARY
[0003] Therefore, the purpose of the present application is to provide a shared data determination method and device, electronic equipment and a storage medium.
[0004] To achieve the above purpose, in a first aspect, the present application provides a shared data determination method, comprising:
[0005] S1: receiving a current batch of generated record data and sensitive record data;
[0006] S2: updating the local discriminator network according to the current batch of generated record data and sensitive record data using the local discriminator network;
[0007] S3: constructing a local discriminator response using the updated local discriminator network, and training a relationship discriminator using a data sharing platform according to pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response to update a generator network;
[0008] S4: inputting a random vector pre-acquired to the updated generator network to obtain a generated record data group; the generated record data group comprises a plurality of generated record data;
[0009] S5: constructing target shared data according to the weight of each generated record data.
[0010] In a possible implementation, the receiving a current batch of generated record data and sensitive record data comprises:
[0011] receiving the current batch of generated record data from the generator network;
[0012] sampling the current batch of sensitive record data from a pre-acquired sensitive data set.
[0013] In a possible implementation, the updating the local discriminator network according to the generated record data and the sensitive record data in the current batch by using the local discriminator network comprises:
[0014] determining a current batch loss function according to the generated record data and the sensitive record data in the current batch by using the local discriminator network;
[0015] determining gradient information of the local discriminator network according to the current batch loss function, and performing pruning processing on the gradient information;
[0016] performing perturbation on the pruned gradient information by using Gaussian noise sampled from a Gaussian distribution according to an adaptive noise generation technique to determine an updated parameter;
[0017] updating the local discriminator network according to the updated parameter.
[0018] In a possible implementation, before the determining the current batch loss function according to the generated record data and the sensitive record data in the current batch by using the local discriminator network, the method further comprises:
[0019] initializing parameters of the discriminator network; the parameters of the discriminator network comprise a first momentum estimation and a second momentum estimation
[0020] In a possible implementation, the performing perturbation on the pruned gradient information by using Gaussian noise sampled from a Gaussian distribution to determine an updated parameter comprises:
[0021] updating the first momentum estimation and the second momentum estimation according to an update formula to determine the updated parameter; wherein the update formula is represented as
[0022]
[0023]
[0024] wherein, represents an updated first momentum estimation, represents an updated second momentum estimation, β1 represents a first decay rate, and β2 represents a second decay rate, represents a first momentum estimation in the t-1th round, represents a second momentum estimation in the t-1th round, represents a gradient vector of the discriminator in the tth round.
[0025] In a possible implementation, the inputting the pre-collected random vector into the updated generator network to obtain generated record data sets comprises:
[0026] The pre-collected random vector is input into the updated generator network, and the updated generator network is used to determine generated record data.
[0027] The steps S1-S3 are repeatedly executed until the number of iterations reaches a threshold value, and the generated record data determined according to the generator network in each iteration is determined to obtain the generated record data set.
[0028] In a possible implementation, the constructing the target shared data according to the weight of each generated record data further comprises:
[0029] The weight of the generated record data determined according to the generator network in each iteration is saved.
[0030] The latent vector extracted according to the prior distribution is input into the generator network in each iteration to determine a plurality of synthetic record data.
[0031] Each synthetic record data is assigned a weight, and the update formula of the weight in each iteration is updated and represented as
[0032]
[0033] wherein w ri represents a weight, represents synthetic record data, represents the generated record of the rth generator, R represents the number of selected generator networks, and d j represents a distance function, and M represents the number of features.
[0034] The update formula of the synthetic record data in each iteration is updated and represented as
[0035]
[0036] wherein, represents the generated record of the rth generator.
[0037] In a second aspect, the present application provides a shared data determination device, comprising:
[0038] A receiving module configured to receive generated record data and sensitive record data in a current batch;
[0039] A first updating module configured to update a local discriminator network according to the generated record data and the sensitive record data in the current batch by using the local discriminator network;
[0040] a second updating module configured to construct a local discriminator response by using the updated local discriminator network, and train a relationship discriminator by using a data sharing platform according to the pre-acquired real integrated record training data, the synthetic integrated record training data and the discriminator response to update the generator network;
[0041] a determining module configured to input a pre-acquired random vector into the updated generator network to obtain a generated record data set; the generated record data set includes a plurality of generated record data;
[0042] a constructing module configured to construct target shared data according to a weight of each of the generated record data.
[0043] In a third aspect, the present application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor executes the program to realize the shared data determination method in the first aspect.
[0044] In a fourth aspect, the present application provides a non-transitory computer readable storage medium, which stores computer instructions for causing a computer to execute the shared data determination method in the first aspect.
[0045] As can be seen from the above, the shared data determination method, device, electronic device and storage medium provided by the present application receive a current batch of generated record data and sensitive record data; update a local discriminator network according to the current batch of generated record data and sensitive record data by using the local discriminator network; construct a local discriminator response by using the updated local discriminator network, and train a relationship discriminator by using a data sharing platform according to pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response to update a generator network; input a pre-acquired random vector into the updated generator network to obtain a generated record data set; the generated record data set includes a plurality of generated record data; and construct target shared data according to a weight of each of the generated record data. The data sharing of vertical segmentation can be realized while avoiding privacy leakage, and the final obtained shared data has high usability. BRIEF DESCRIPTION OF DRAWINGS
[0046] In order to more clearly illustrate the technical solutions in the present application or related art, the following will briefly introduce the drawings needed to be used in the embodiments or related art description. Obviously, the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor.
[0047] Figure 1 A scenario diagram of multi-party data sharing in the related art is shown.
[0048] Figure 2 An exemplary flow diagram of a shared data determination method provided by an embodiment of the present application is shown.
[0049] Figure 3 A diagram of a multi-party data sharing algorithm satisfying differential privacy according to an embodiment of the present application is shown.
[0050] FIG. 4(a) shows IS score comparison graphs of each algorithm matching a first MNIST dataset according to an embodiment of the present application.
[0051] FIG. 4(b) shows FID score comparison graphs of each algorithm matching the first MNIST dataset according to an embodiment of the present application.
[0052] FIG. 4(c) shows IS score comparison graphs of each algorithm matching a second MNIST dataset according to an embodiment of the present application.
[0053] FIG. 4(d) shows FID score comparison graphs of each algorithm matching the second MNIST dataset according to an embodiment of the present application.
[0054] FIG. 5(a) shows first experiment result comparison graphs of each algorithm under different privacy budgets according to an embodiment of the present application.
[0055] FIG. 5(b) shows second experiment result comparison graphs of each algorithm under different privacy budgets according to an embodiment of the present application.
[0056] FIG. 6(a) shows first experiment result comparison graphs of each algorithm under different numbers of participants according to an embodiment of the present application.
[0057] FIG. 6(b) shows second experiment result comparison graphs of each algorithm under different numbers of participants according to an embodiment of the present application.
[0058] Figure 7 An exemplary structural diagram of a shared data determination apparatus provided by an embodiment of the present application is shown.
[0059] Figure 8 An exemplary structural diagram of an electronic device provided by an embodiment of the present application is shown. DETAILED DESCRIPTION
[0060] To make the objectives, technical solutions and advantages of the present application clearer, the present application is further described in detail below with reference to the embodiments and the accompanying drawings.
[0061] It should be noted that, unless otherwise defined, technical terms or scientific terms used in the embodiments of the present application shall have the common meaning understood by one of ordinary skill in the art to which the embodiments of the present application belong. The terms "first", "second", and similar terms used in the embodiments of the present application do not denote any order, quantity, or importance, but are merely used to distinguish different components. The terms "include", "contain", and similar terms mean that the elements or objects before the terms encompass the elements or objects listed after the terms and their equivalents, and do not exclude other elements or objects. The terms "connect" or "connected" and similar terms do not mean physical or mechanical connection, but can include electrical connection, whether direct or indirect. The terms "upper", "lower", "left", "right", and the like are merely used to represent relative positional relationships, and when the absolute positions of the described objects change, the relative positional relationships can also change accordingly.
[0062] As described in the background section, data sharing helps to stimulate the economic value hidden in data. According to a report by McKinsey, if the data in the current seven industries (business, finance, health care, education, transportation, electricity, and oil and gas) were shared with each other, it would bring a lot of economic benefits. Data sharing helps to mine the knowledge contained in data, for example, sharing data between hospitals and disease control centers can be used to analyze disease transmission patterns and improve public health care; sharing data from multiple shopping platforms can be used for personalized product recommendations and improve the shopping experience of consumers; sharing data from multiple banks can better assess customer credit and monitor multi-party lending and financial fraud. However, in general, data is often distributed among multiple data owners (for example, hospitals have medical records of residents, and banks have account records of customers), and contains a large amount of sensitive information. If the data of different data owners is directly shared, it will cause serious privacy leakage problems.
[0063] Reference Figure 1 The scenario mainly involves three roles: a data sharing platform, data owners, and data users. Each data owner holds a local sensitive data set about different attributes of the same group of users. The sharing platform assists in sharing the local sensitive data sets, builds a data sharing model, and the new shared data generated by the data sharing model has the same statistical distribution characteristics as the integrated data set, while the local sensitive data sets are not directly shared, to some extent, the privacy of each data owner is protected. Data users can use the shared data to carry out various data analysis and mining tasks.
[0064] From the above processing, it can be seen that in the process of multi-party data sharing, the data sharing model and the final data user can avoid obtaining the privacy of the data owner, but before forming the multi-party data sharing model, the privacy data of each data owner may be leaked. Specifically, for each local sensitive data set, the following three roles may pose a threat to privacy: 1) data sharing platform; 2) data owner participating in data sharing; and 3) data user or other potential attackers who can obtain the final shared data.
[0065] The multi-party data sharing technology for privacy protection provides a feasible solution to solve the privacy leakage problem caused by multi-party data sharing. In recent years, the differential privacy (DP) technology provides a feasible solution to solve the privacy leakage problem caused by data sharing. Unlike traditional privacy models based on anonymity (for example, k-anonymity [1] and l-diversity), differential privacy provides a strict, quantifiable privacy protection method for sensitive data. By adding appropriate noise to the statistical results to ensure that modifying a record in the data set will not significantly affect the statistical results, the requirement for privacy protection is achieved.
[0066] The applicant found through research that in related technologies, an intuitive method for vertically partitioning data sharing is as follows: each data owner uses its own local data set to construct a generative model, such as GAN or Bayes Network, and then uses the learned generative model to generate data, and finally integrates the data generated by each party to form a shared data set. However, since the IDs of the local data sets do not match, it is difficult to ensure the usability of the final obtained data.
[0067] Therefore, the application provides a shared data determination method and device, electronic equipment and storage medium. The method receives a current batch of generated record data and sensitive record data; updates a local discriminator network using the local discriminator network according to the current batch of generated record data and sensitive record data; constructs a local discriminator response using the updated local discriminator network, and trains a relationship discriminator using a data sharing platform according to pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response to update a generator network; inputs a pre-acquired random vector to the updated generator network to obtain a generated record data group; the generated record data group includes a plurality of generated record data; and constructs target shared data according to the weight of each generated record data. The method can realize vertically partitioned data sharing while avoiding privacy leakage, thereby ensuring that the final obtained shared data has high usability.
[0068] The shared data determination method provided by the embodiments of the present application will be specifically described below through specific examples.
[0069] Reference Figure 2 The shared data determination method provided by the embodiments of the present application specifically comprises the following steps:
[0070] S1: receiving generated record data and sensitive record data of a current batch;
[0071] S2: updating a local discriminator network according to the generated record data and the sensitive record data of the current batch by using the local discriminator network;
[0072] S3: constructing a local discriminator response by using the updated local discriminator network, and training a relationship discriminator by using a data sharing platform according to pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response to update a generator network;
[0073] S4: inputting a random vector pre-acquired to the updated generator network to obtain a generated record data group; the generated record data group comprises: a plurality of generated record data;
[0074] S5: constructing target shared data according to a weight of each generated record data.
[0075] In some embodiments, the present application can be applied to the scene of multiple data owners and a data sharing platform. For example, each data owner k holds a discriminator network, and the data sharing platform holds a generator network G and two relationship discriminators.
[0076] In some embodiments, the latent variable z (usually random noise obeying Gaussian distribution) generates a generated sample through the generator network G. For the discriminator D, this is a binary classification problem, and V(D, G) is the cross-entropy loss commonly used in binary classification problems. In order to ensure that V(D, G) reaches the maximum value, the discriminator is trained for k iterations, and then the generator is trained for 1 iteration. The specific training process is as follows:
[0077] Initialize the parameters of the generator G and the discriminator D. Extract n samples from the training set, and the generator generates n samples using the defined noise distribution. Fix the generator G, and train the discriminator D to distinguish as much as possible between true and false. After updating the discriminator D for k times, update the generator G for 1 time, so that the discriminator cannot distinguish between true and false as much as possible. After multiple update iterations, in the ideal state, the final discriminator D cannot distinguish whether the picture is from the real training sample set or from the sample generated by the generator G, that is, the probability of discrimination is 0.5, and the training is completed.
[0078] In some embodiments, the DPGDAN algorithm proposed in this application involves two stages. In stage 1, the data sharing platform conducts 1 vs. K training with K data owners. Specifically, the discriminators and generators are trained alternately. Among them, each data owner updates the discriminator parameters it holds using the adaptive gradient perturbation method; while the data sharing platform updates the parameters of the generator network it holds using the received discriminator feedback that satisfies differential privacy. In stage 2, a random vector is sampled from a certain prior distribution and fed into the generator network obtained in the training process to construct a synthetic record, and the synthetic record is aggregated to obtain the final shared data record.
[0079] In some embodiments, the DPGDAN algorithm mentioned in this application involves the training of four neural networks, namely the local discriminator network held by each data owner, the generator network held by the data sharing platform, and the relationship discriminator network. Specifically, the local discriminator network discriminates between local sensitive data records and records generated by the generator, while the generator network aims to generate synthetic records that are considered "real" by the K discriminators. Given the above different objectives, the objective function of the generator can be written as follows:
[0080]
[0081] where m represents the batch size, represents the real record relationship discriminator, represents the synthetic record relationship discriminator, and represents the relationship discriminator, represents the integrated record of the generator, represents the local record of the generator about A, represents the local record of the generator about B.
[0082] The objective function of the synthetic record relationship discriminator is as follows:
[0083]
[0084] where m represents the batch size, represents the real record relationship discriminator, represents the synthetic record relationship discriminator, and represents the relationship discriminator, represents the integrated record after the confusion operation, represents the gradient of the integrated record, represents the integrated record generated by the generator.
[0085] The objective function of the real record relationship discriminator is as follows:
[0086]
[0087] wherein m represents a batch size, represents a real record relationship discriminator, represents a synthetic record relationship discriminator, and represents a relationship discriminator, represents integrated record data, represents the integrated record after confusion, x i represents the integrated record.
[0088] Two local discriminators and are used to distinguish real local record data and generated local record data, and the objective functions thereof are as follows, respectively:
[0089]
[0090]
[0091] wherein x iA and x iB represent local record data.
[0092] In some embodiments, gradient update of the generator network needs to perform gradient descent on its objective function, however, this contains sensitive information of the feedback of the discriminator. In order not to leak the privacy of each data owner, first, the generator network gradient calculation is decomposed, then the sensitive information related to the discriminator network is determined, and then desensitization processing is performed.
[0093] Based on the chain rule of calculus, the gradient calculation of the generator can be decomposed as follows:
[0094]
[0095] wherein represents an objective function, K represents the number of local discriminators, represents the response of the discriminator network, which contains sensitive information, represents a non-sensitive calculation factor.
[0096] After the above gradient calculation is decomposed, the following iterative process of steps can be used to desensitize the parameters of the generator network and generate a privacy-protected discriminator network feedback.
[0097] In some embodiments, the determining the current batch loss function by the local discriminator network according to the current batch of generated record data and sensitive record data further comprises: initializing parameters of the discriminator network; the parameters of the discriminator network comprise: a first momentum estimate and a second momentum estimate
[0098] In some embodiments, the receiving the current batch of generated record data and sensitive record data comprises: receiving the current batch of generated record data from the generator network; and sampling the current batch of sensitive record data from a pre-obtained sensitive data set.
[0099] In some embodiments, the updating the local discriminator network according to the current batch of generated record data and sensitive record data by the local discriminator network comprises: determining a current batch loss function by the local discriminator network according to the current batch of generated record data and sensitive record data; determining gradient information of the local discriminator network according to the current batch loss function, and performing pruning processing on the gradient information; performing perturbation on the pruned gradient information by using Gaussian noise sampled from a Gaussian distribution according to an adaptive noise generation technique to determine an updated parameter; and updating the local discriminator network according to the updated parameter.
[0100] After the decomposition of the above gradient calculation, the parameters of the generator network can be desensitized by using the following iterative processing procedure, and a privacy-protected discriminator network feedback can be generated.
[0101] Step 1: initializing parameters of the discriminator network, a first momentum estimate a second momentum estimate and a noise size σ0.
[0102] Step 2: each data owner receives a batch of synthetic record data from the generator
[0103] Step 3: each data owner extracts a batch of sensitive data record data from the local
[0104] Step 4: inputting the data records obtained in steps 1 and 2 into the generator network to calculate a loss function thereof:
[0105]
[0106] wherein, represents a mean value, D is a discriminator network, G is a generator network, z is a latent vector, x k is real record data.
[0107] Step 5: Calculate the gradient information of the discriminator network according to the loss function.
[0108] Step 6: According to the adaptive noise generation method, sample Gaussian noise from Gaussian distribution to disturb the gradient:
[0109]
[0110] Step 7: Update the first-order momentum estimate Second-order momentum estimate Update:
[0111]
[0112] wherein, denotes the updated first-order momentum estimate, denotes the updated second-order momentum estimate, β1 denotes the first decay rate, and β2 denotes the second decay rate, denotes the first-order momentum estimate of the t-1th round, denotes the second-order momentum estimate of the t-1th round, denotes the gradient vector of the tth round of the discriminator.
[0113] Step 8: Update the weights of the discriminator network.
[0114] In some embodiments, the method further comprises the steps of:
[0115] In some embodiments, the specific steps of snapshot aggregation include:
[0116] Saving the weight information of the generator network obtained in different iterations;
[0117] Feeding the hidden vector extracted from the prior distribution into the generator network to obtain the corresponding synthetic record data;
[0118] Assigning weights to each of the synthetic record data;
[0119] Updating the weights and shared data according to the update formula.
[0120] Specifically, the constructing the target shared data according to the weight of each generated record data further comprises: saving the weight of the generated record data determined by the generator network in each iteration; inputting the hidden vector extracted according to the prior distribution into the generator network in each iteration to determine a plurality of synthetic record data; and assigning a weight to each synthetic record data; wherein the update formula of the weight in each iteration is represented as
[0121]
[0122] wherein w ri represents the weight, represents the synthetic record data, represents the generated record of the rth generator, R represents the number of selected generator networks, and d j represents the distance function, and M represents the number of features.
[0123] The update formula of the synthetic record data in each iteration is represented as
[0124]
[0125] wherein, represents the generated record of the rth generator.
[0126] The snapshot aggregation method of the present application is based on the following idea: ideally, the trained generator can reproduce the real data distribution. The synthesis of shared records is completed by following the standard practice in GAN, that is, providing the hidden vector z_i sampled from the prior distribution to the trained generator network, and then taking the output of the generator as the shared data. However, due to the limited privacy budget, the generator network and the discriminator network may not have been trained for a long enough time. Therefore, using only the trained generator network to generate shared records will ignore the useful information of the generator during the training process. To this end, the present application proposes a snapshot aggregation method which utilizes the generator network obtained during the training process to improve the utility of the final shared data.
[0127] In the comparison, the widely used real data sets Adult and Bank are used for experimental verification. Table 2 lists the hyperparameter values in the experiment, the Adult data set contains 48842 U.S. census data records, and the Bank data set contains 45211 account records of Portuguese banking institutions. The statistics of the two data sets are shown in Table 1.
[0128] Table 1 Statistical analysis of Adult and Bank data sets
[0129]
[0130] Table 2 Hyperparameter Settings
[0131]
[0132]
[0133] Our method is evaluated following standard practices for data sharing tasks, namely, measuring the utility of the shared data through the effectiveness of machine learning. Specifically, we first train a predictive model using the shared data, and then test the trained model on a real test set. Higher accuracy of the predictive model indicates better data utility.
[0134] The following comparison of the accuracy experimental results of the proposed method with existing methods illustrates the effectiveness and performance of the proposed method. (Reference) Figure 3 This demonstrates the effectiveness of the shared data determination algorithm provided in this application. Experimental results are referenced. Figures 4(a)-4(d) , Figures 5(a)-5(b) and Figures 6(a)-6(b) Wherein, the DPGDAN algorithm represents the algorithm provided in the embodiments of this application, and the Nonprivat and Nosplit algorithms are algorithms in related technologies. Figures 4(a)-4(d) , Figures 5(a)-5(b) and Figures 6(a)-6(b) As can be seen, this application achieves performance close to the comparative algorithm under different prediction models, different privacy budgets, and different numbers of participants. This application can better preserve the original distribution characteristics of the original data under a given privacy budget. It should be noted that the comparative algorithm used in this application is only an indicator of the upper limit of performance and cannot be directly used for privacy-preserving vertically segmented data sharing tasks.
[0135] from Figures 4(a)-4(d) It can be seen that the shared data generated using this application can better support various data prediction or machine learning tasks. From Figures 5(a)-5(b) As can be seen, this application maintains good performance under different privacy budgets. This is because the snapshot aggregation method ensures a better trade-off between privacy and data utility, and the learning paradigm of this application can also utilize data from all parties to guide model updates. In addition, the 1-versus-K design of this application makes the generator network more likely to receive information signals from the discriminator network, thereby better guiding the generator to approximate the real data distribution.
[0136] from Figures 6(a)-6(b) As can be seen, the accuracy of this application decreases only slightly compared to the baseline. This is because increasing the number of discriminators reduces the variance of the min-maximum objective function throughout the operation and accelerates the convergence speed.
[0137] It can be seen from the above that the application provides a shared data determination method and device, an electronic device and a storage medium. The method comprises the following steps: receiving generated record data and sensitive record data of a current batch; updating a local discriminator network according to the generated record data and the sensitive record data of the current batch by using the local discriminator network; constructing a local discriminator response by using the updated local discriminator network, and training a relationship discriminator by using a data sharing platform according to pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response to update a generator network; inputting a random vector pre-acquired to the updated generator network to obtain a generated record data group; the generated record data group comprises a plurality of generated record data; and constructing target shared data according to a weight of each generated record data. The method can realize vertical partitioning data sharing while avoiding privacy leakage, and thus ensures that the shared data obtained finally has high usability.
[0138] To solve the problem that the single-party data publishing method satisfying differential privacy mentioned in the background cannot be directly applied to vertical partitioning data sharing, the applicant proposes a multi-party data sharing method (DPGDAN algorithm) satisfying differential privacy. The main idea of the method is that each data owner and a data sharing platform jointly train a customized generative adversarial network (GAN) to extract the distribution information of each local sensitive data set. In particular, each data owner holds a discriminator, which is trained using the local sensitive data set. Then, the feedback information of the discriminator is desensitized and uploaded to the data sharing platform. The data sharing platform updates the parameters of the generator using the collected feedback information of the discriminators and the feedback of the relationship discriminator. After training is completed, the generator generates shared data with the assistance of the discriminator. Since the feedback information from each data owner is used in the generator update process, the final shared data can have high utility.
[0139] It should be noted that the method of the embodiment of the application can be executed by a single device, such as a computer or a server. The method of the embodiment can also be applied to a distributed scenario, and can be completed by multiple devices cooperating with each other. In this distributed scenario, one of the multiple devices can only execute one or more steps in the method of the embodiment of the application, and the multiple devices can interact with each other to complete the method.
[0140] It is to be understood that the foregoing description is exemplary of the application only and is intended to provide an overview for the understanding of the present application. The description is not intended to provide exhaustive disclosure of the application. Other embodiments of the present application will be apparent to those of ordinary skill in the art in view of the foregoing description. Modifications and embodiments are intended to be included within the scope of the application. It is to be understood that the above description is intended to be illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the application should, therefore, be determined not with reference to the above description, but instead with reference to the appended claims, along with their full scope of equivalents.
[0141] Figure 7 An exemplary structure schematic diagram of a shared data determination apparatus provided by an embodiment of the present application is shown.
[0142] Based on the same inventive concept, the present application also provides a shared data determination apparatus corresponding to the method of any of the embodiments.
[0143] Reference Figure 7 The shared data determination apparatus comprises a receiving module, a first updating module, a second updating module, a determination module and a construction module, wherein
[0144] The receiving module is configured to receive generated record data and sensitive record data of a current batch.
[0145] The first updating module is configured to update a local discriminator network according to the generated record data and the sensitive record data of the current batch by using the local discriminator network.
[0146] The second updating module is configured to construct a local discriminator response by using the updated local discriminator network, and train a relationship discriminator by using pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response by using a data sharing platform to update a generator network.
[0147] The determination module is configured to input a random vector pre-acquired to the updated generator network to obtain a generated record data group; the generated record data group comprises a plurality of generated record data.
[0148] The construction module is configured to construct target shared data according to a weight of each of the generated record data.
[0149] In a possible implementation, the receiving module is further configured to:
[0150] receive the generated record data of the current batch from the generator network;
[0151] sample the sensitive record data of the current batch according to a pre-acquired sensitive data set.
[0152] In a possible implementation, the first updating module is further configured to:
[0153] determine a current batch loss function according to the current batch of generated record data and sensitive record data by using the local discriminator network;
[0154] determine gradient information of the local discriminator network according to the current batch loss function, and perform pruning processing on the gradient information;
[0155] determine an updated parameter by perturbing the pruned gradient information by using Gaussian noise sampled from a Gaussian distribution according to an adaptive noise generation technique;
[0156] update the local discriminator network according to the updated parameter.
[0157] In a possible implementation, the apparatus further includes an initialization module.
[0158] The initialization module is further configured to:
[0159] initialize parameters of the discriminator network; the parameters of the discriminator network include a first-order momentum estimate and a second-order momentum estimate
[0160] In a possible implementation, the second updating module is further configured to:
[0161] update the first-order momentum estimate and the second-order momentum estimate according to an updating formula to determine the updated parameter; wherein the updating formula is represented as
[0162]
[0163]
[0164] wherein, represents an updated first-order momentum estimate, represents an updated second-order momentum estimate, β1 represents a first decay rate, β2 represents a second decay rate, represents a first-order momentum estimate of a t-1th round, represents a second-order momentum estimate of the t-1th round, represents a gradient vector of the discriminator of a tth round.
[0165] In a possible implementation, the determining module is further configured to:
[0166] inputting the pre-collected random vector into the updated generator network, and determining generated record data by using the updated generator network;
[0167] repeating steps S1-S3 until the number of iterations reaches a threshold value, and determining generated record data according to the generator network in each iteration to obtain the generated record data group.
[0168] In a possible implementation, the apparatus further includes a third updating module.
[0169] The third updating module is further configured to:
[0170] save the weight of the generated record data determined according to the generator network in each iteration;
[0171] input the hidden vector extracted according to the prior distribution into the generator network in each iteration to determine a plurality of synthetic record data;
[0172] assign a weight to each of the synthetic record data; wherein the updating formula of the weight in each iteration is represented as
[0173]
[0174] wherein w ri represents the weight, represents the synthetic record data, represents the generated record of the rth generator, R represents the number of selected generator networks, and d j represents the distance function, and M represents the number of features.
[0175] The updating formula of the synthetic record data in each iteration is represented as
[0176]
[0177] wherein, represents the generated record of the rth generator.
[0178] For the convenience of description, the above apparatus is described in various modules according to functions. Of course, the functions of the modules can be implemented in one or more software and / or hardware in the implementation of the present application.
[0179] The apparatus of the embodiments is used to implement the corresponding shared data determination method in any of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be described herein.
[0180] Figure 8 An exemplary structural schematic diagram of an electronic device provided by the embodiments of the present application is shown.
[0181] Corresponding to the method of any of the embodiments, based on the same inventive concept, the application also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the data sharing determination method of any of the embodiments when executing the program. Figure 8 A more specific hardware structure of an electronic device is shown in the embodiment, which can include a processor 810, a memory 820, an input / output interface 830, a communication interface 840, and a bus 850. The processor 810, the memory 820, the input / output interface 830, and the communication interface 840 are connected to each other through the bus 850 for internal communication.
[0182] The processor 810 can be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an ASIC (Application Specific Integrated Circuit), or one or more integrated circuits, etc., for executing related programs to implement the technical solutions provided by the embodiments of the present specification.
[0183] The memory 820 can be implemented by a ROM (Read Only Memory), a RAM (Random Access Memory), a static storage device, a dynamic storage device, etc. The memory 820 can store an operating system and other application programs, and when the technical solutions provided by the embodiments of the present specification are implemented by software or firmware, the related program codes are stored in the memory 820 and called and executed by the processor 810.
[0184] The input / output interface 830 is used to connect input / output modules to realize information input and output. The input / output modules can be configured as components in the device (not shown in the figure) or externally connected to the device to provide corresponding functions. The input device can include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device can include a display, a speaker, a vibrator, an indicator light, etc.
[0185] The communication interface 840 is used to connect a communication module (not shown in the figure) to realize the communication interaction between the device and other devices. The communication module can realize communication through wired means (such as USB, network cable, etc.) or through wireless means (such as mobile network, WIFI, Bluetooth, etc.).
[0186] Bus 850 includes a path for transferring information between the various components (e.g., processor 810, memory 820, input / output interface 830, and communication interface 840) of the device.
[0187] It should be noted that although the device only shows the processor 810, the memory 820, the input / output interface 830, the communication interface 840 and the bus 850, in the specific implementation process, the device can also include other components necessary for normal operation. In addition, those skilled in the art can understand that the device can also only contain the components necessary to implement the embodiments of the present description, and does not necessarily contain all the components shown in the figure.
[0188] The electronic device of the embodiments is used to implement the corresponding shared data determination method in any of the preceding embodiments, and has the beneficial effects of the corresponding method embodiments, which are not repeated here.
[0189] Based on the same inventive concept, corresponding to the method of any of the embodiments, the present application also provides a non-transitory computer readable storage medium, which stores computer instructions for causing the computer to execute the shared data determination method according to any of the preceding embodiments.
[0190] The computer readable medium of the embodiments includes permanent and non-permanent, removable and non-removable media, which can be implemented by any method or technology to store information. The information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device, or any other non-transmission medium that can be used to store information that can be accessed by a computing device.
[0191] The storage medium of the embodiments stores computer instructions for causing the computer to execute the shared data determination method according to any of the preceding embodiments, and has the beneficial effects of the corresponding method embodiments, which are not repeated here.
[0192] Those of ordinary skill in the art will realize that the foregoing discussion of any of the embodiments has been presented for the purpose of illustration and description and is not intended to be exhaustive or to limit the application to the precise forms described, and that various adaptations and modifications are possible within the scope and spirit of the application. For example, while the embodiments discussed above have been described in the context of a memory device, other memory architectures (e.g., dynamic RAM (DRAM)) can use the embodiments discussed.
[0193] In addition, to simplify the description and discussion, and so as not to make the embodiments of the application difficult to understand, the well-known power / ground connections to integrated circuit (IC) chips and other components can or can not be shown in the provided drawings. Further, devices can be shown in block diagram form so as not to make the embodiments of the application difficult to understand, and this also takes into account the fact that details regarding implementation of these block diagram devices are highly dependent on the platform in which the embodiments of the application are to be implemented (i.e., these details should be well within the understanding of one of ordinary skill in the art). Where specific details (e.g., circuitry) are set forth in order to describe an illustrative embodiment of the application, it should be apparent to one of ordinary skill in the art that the embodiments of the application can be practiced without or with variations of these specific details. Thus, the description should not be viewed as limiting the application, but rather as merely describing illustrative embodiments.
[0194] While the application has been described in connection with specific embodiments thereof, it will be understood that many modifications, variations and alternatives will be apparent to those skilled in the art as a result of the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) can use the embodiments discussed.
[0195] It is therefore intended that the embodiments of the application embrace all such alternatives, modifications and variations as falling within the broad scope of the appended claims. Accordingly, any and all departures from the above described embodiments are intended to be included within the scope of the application as defined by the following claims.
Claims
1. A method of determining shared data, characterized by, The method comprises the following steps: S1: receiving generated record data and sensitive record data of a current batch; S2: updating a local discriminator network according to the generated record data and the sensitive record data of the current batch by using the local discriminator network; S3: constructing a local discriminator response by using the updated local discriminator network, and training a relationship discriminator by using a data sharing platform according to pre-acquired real integrated record training data, synthetic integrated record training data and the discriminator response to update a generator network; S4: inputting a random vector pre-acquired to the updated generator network to obtain a generated record data group; The generated record data group comprises a plurality of generated record data; S5: constructing target shared data according to a weight of each generated record data.
2. The method of claim 1, wherein, The receiving generated record data and sensitive record data of a current batch comprises: receiving the generated record data of the current batch from the generator network; sampling the sensitive record data of the current batch according to a pre-acquired sensitive data set.
3. The method of claim 1, wherein, The updating the local discriminator network according to the generated record data and the sensitive record data of the current batch by using the local discriminator network comprises: determining a current batch loss function according to the generated record data and the sensitive record data of the current batch by using the local discriminator network; determining gradient information of the local discriminator network according to the current batch loss function, and performing pruning processing on the gradient information; determining an update parameter by using Gaussian noise sampled from a Gaussian distribution to disturb the pruned gradient information according to an adaptive noise generation technology; and updating the local discriminator network according to the update parameter.
4. The method of claim 3, wherein, The determining a current batch loss function according to the generated record data and the sensitive record data of the current batch by using the local discriminator network further comprises: initializing parameters of the discriminator network; the parameters of the discriminator network including: a first order momentum estimate and a second order momentum estimate 5. The method of claim 4, wherein, The determining an update parameter by using Gaussian noise sampled from a Gaussian distribution to disturb the pruned gradient information comprises: updating the first-order momentum estimate and the second-order momentum estimate to determine the updated parameters; wherein the update formula is expressed as wherein, denotes the updated first momentum estimate, denotes the updated second momentum estimate, β1denotes the first decay rate, and β2denotes the second decay rate, denotes the first momentum estimate of the t-1th round, denotes the second momentum estimate of the t-1th round, denotes the gradient vector of the t-1th round.
6. The method of claim 1, wherein, The inputting a random vector pre-acquired to the updated generator network to obtain a generated record data group comprises: inputting a random vector pre-acquired to the updated generator network, and determining generated record data by using the updated generator network; repeating steps S1-S3 until the number of iterations reaches a threshold value, and determining generated record data determined according to the generator network in each iteration to obtain the generated record data group.
7. The method of claim 6, wherein, The constructing target shared data according to a weight of each generated record data further comprises: saving the weight of the generated record data determined according to the generator network in each iteration; inputting a latent vector extracted according to a prior distribution to the generator network in each iteration to determine a plurality of synthetic record data; allocating a weight to each synthetic record data; wherein an update formula of the weight in each iteration is represented as where w ri denotes the weight, denotes the synthetic record data, denotes the generated record of the rth generator, R denotes the number of selected generator networks, d j denotes the distance function, M denotes the number of features, an update formula of the synthetic record data in each iteration is represented as wherein, represents a generation record of the rth generator.
8. A shared data determination apparatus characterized by comprising: The method comprises the following steps: a receiving module configured to receive generated record data and sensitive record data of a current batch; a first updating module configured to update the local discriminator network according to the current batch of generated record data and sensitive record data by using the local discriminator network; a second updating module configured to construct a local discriminator response by using the updated local discriminator network, and train a relationship discriminator by using the data sharing platform, the pre-acquired true integrated record training data, the synthetic integrated record training data and the discriminator response to update the generator network; a determining module configured to input a random vector pre-acquired to the updated generator network to obtain a generated record data group; the generated record data group comprises a plurality of generated record data; a constructing module configured to construct target shared data according to a weight of each generated record data.
9. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the program to implement the method in any one of claims 1 to 7.
10. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to make the computer implement the method in any one of claims 1 to 7. The computer instructions are used to make the computer implement the method in any one of claims 1 to 7.