Privacy protection-based graph data analysis method and device, and electronic device
Patent Information
- Application Number
- CN202410641092.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-22
- Publication Date
- 2026-09-08
- Estimated Expiration
- 2044-05-22
AI Technical Summary
[0004]本发明提供一种基于隐私保护的图数据分析方法及装置、电子设备,用以解决现有技术中图数据分析过程中不能对多个目标进行协同分析的缺陷,实现图数据分析时能够对多个目标协同计算,对多个目标均衡优化,提高了图数据分析结果的精确度,并且还能够避免隐私预算额外消耗
[0018] The present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a privacy-preserving graph data analysis method as described above.
Smart Images

Figure CN118520144B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of graph data analysis technology, and in particular to a privacy-preserving graph data analysis method, apparatus, and electronic device. Background Technology
[0002] With the advent of the big data era, data collection, sharing, and analysis have become commonplace, and extracting useful information from data is a crucial task. Graph data, as an important data structure, can be used to describe common topological structures in life, such as social networks and transportation networks; therefore, analyzing graph data is a significant issue. However, graph data often contains private information, including but not limited to node identities and node relationships. Publishing graph data or its analysis results without protection infringes on user privacy. How to analyze graph data and obtain useful statistical information while protecting user privacy is a critical challenge.
[0003] Due to the richness of information contained in graph data, it is often necessary to analyze multiple objectives. However, current solutions tend to execute the analysis tasks of each objective in isolation, ignoring the connections between different analysis objectives. This not only leads to additional privacy budget consumption (when executing analysis tasks of different objectives in isolation, some data is collected repeatedly during the execution of analysis tasks of different objectives. Since each objective's analysis task requires a corresponding number of privacy budget consumptions, the number of privacy budget consumptions for this part of the data is the sum of the number of privacy budget consumptions during the execution of multiple objective analysis tasks that collect this data, thus resulting in additional privacy budget consumption), but also, because the analysis errors of different objectives are different, the accuracy of the analysis results of multiple objectives in the final graph data analysis results varies greatly, affecting the overall accuracy of the graph data analysis results. Summary of the Invention
[0004] This invention provides a privacy-preserving graph data analysis method, apparatus, and electronic device to address the shortcomings of existing graph data analysis methods that cannot perform collaborative analysis on multiple targets. It enables collaborative computation and balanced optimization of multiple targets during graph data analysis, improving the accuracy of graph data analysis results and avoiding additional consumption of privacy budget.
[0005] This invention provides a privacy-preserving graph data analysis method, comprising: acquiring dataset information, a total privacy budget, and noise-adding parameters; wherein the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average node degree; allocating the total privacy budget according to the dataset information, the noise-adding parameters, and the desired multi-target graph data analysis results, obtaining multiple privacy budgets corresponding one-to-one with multiple data to be noise-added; wherein the multiple data to be noise-added include: node degree and neighbor node vectors; sending the multiple privacy budgets to each node, and obtaining the noise-adding data returned by each node; obtaining the set target graph data analysis results in the multi-target graph data analysis results according to the noise-adding data and the multiple privacy budgets; obtaining other target graph data analysis results according to at least one process parameter in the calculation process of the set target graph data analysis results; wherein the precision of the set target graph data analysis results is greater than the precision of the other target graph data analysis results.
[0006] According to a privacy-preserving graph data analysis method provided by the present invention, a total privacy budget is allocated based on dataset information, noise-adding parameters, and the desired multi-target graph data analysis results to obtain multiple privacy budgets corresponding one-to-one with multiple data to be denoised. The method includes: setting an objective function and setting constraints on the multiple privacy budgets to be obtained based on the expected error of each target graph data analysis result and the obtained results; determining the privacy budget range for node degree among the multiple privacy budgets based on the objective function and constraints; determining the node degree privacy budget within the node degree privacy budget range based on the expected error of each target graph data analysis result; and determining the multiple privacy budgets corresponding one-to-one with the multiple data to be denoised based on the node degree privacy budget and the constraints.
[0007] According to a privacy-preserving graph data analysis method provided by the present invention, the multiple data to be denoised further include: truncated data; sending multiple privacy budgets to each node, and obtaining the denoised data returned by each node, including: obtaining a truncation threshold based on truncation error and Laplace noise error; obtaining a noise subgraph based on the noisy neighbor node vectors returned by each node after adding noise to the neighbor node vectors; sending the truncation threshold and the noise subgraph to each node; wherein the truncation threshold and the noise subgraph are used to instruct the nodes to calculate the truncated data; and obtaining the denoised truncated data returned by each node after adding noise to the truncated data.
[0008] According to a privacy-preserving graph data analysis method provided by the present invention, before obtaining the noisy truncated data returned by each node after adding noise to the truncated data, the method further includes: sending a limiting probability parameter to each node; wherein the limiting probability parameter is used to instruct the node to calculate the intermediate value; obtaining the noisy truncated data returned by each node after adding noise to the truncated data includes: obtaining the noisy truncated data returned by each node based on the intermediate value and the truncated data; wherein, if the truncated data is greater than the intermediate value, each node adds noise to the intermediate value to obtain the noisy truncated data.
[0009] According to a privacy-preserving graph data analysis method provided by the present invention, the multi-objective graph data analysis results include: global clustering coefficients; based on noisy data and multiple privacy budgets, the set target graph data analysis results in the multi-objective graph data analysis results include: obtaining the number of global 2-stars and the number of global triangles based on the privacy budget of each data to be noisy and the noisy data of each data to be noisy; and obtaining the global clustering coefficient as the set target graph data analysis result based on the number of global triangles and the number of global 2-stars.
[0010] According to a privacy-preserving graph data analysis method provided by the present invention, the multi-objective graph data analysis result further includes: local clustering coefficients, at least one process parameter including: the number of global triangles, and obtaining other target graph data analysis results in the multi-objective graph data analysis result based on at least one process parameter in the calculation process of the set target graph data analysis result, including: calculating the reciprocal of the local 2-star number of each node based on the privacy budget of the noise node degree and the node degree of all nodes; calculating the local triangle number of the target node; wherein, the target node is any one of all nodes; obtaining the local clustering coefficient of the target node based on the global triangle number, the reciprocal of the local 2-star number of the target node, the local triangle number of the target node, and the noise node degree of the target node; wherein, the target node is any one of all nodes in the dataset.
[0011] The present invention also provides a privacy-preserving graph data analysis device, comprising:
[0012] The first acquisition module is used to acquire dataset information, total privacy budget, and noise-adding parameters; among which, dataset information includes: number of nodes in the dataset, mode of node degree, and average node degree;
[0013] The allocation module is used to allocate the total privacy budget based on the dataset information, noise parameters, and the multi-object graph data analysis results to be obtained, and to obtain multiple privacy budgets that correspond one-to-one with multiple data to be noised; wherein, the multiple data to be noised include: node degree and neighbor node vectors;
[0014] The second acquisition module is used to send multiple privacy budgets to each node and acquire the noisy data returned by each node;
[0015] The first calculation module is used to obtain the target map data analysis results in the multi-target map data analysis results based on the noisy data and multiple privacy budgets;
[0016] The second calculation module obtains the data analysis results of other target maps in the multi-target map data analysis results based on at least one process parameter in the calculation process of the set target map data analysis results; wherein, the accuracy of the set target map data analysis results is greater than the accuracy of the other target map data analysis results.
[0017] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement a privacy-preserving graph data analysis method as described above.
[0018] The present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a privacy-preserving graph data analysis method as described above.
[0019] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements a privacy-preserving graph data analysis method as described above.
[0020] This invention provides a privacy-preserving graph data analysis method, apparatus, and electronic device. The method involves acquiring dataset information, a total privacy budget, and noise-adding parameters. The dataset information includes the number of nodes, the mode of node degrees, and the average node degree. Based on the dataset information, noise-adding parameters, and the desired multi-target graph data analysis results, the total privacy budget is allocated to obtain multiple privacy budgets corresponding one-to-one with multiple data points to be denoised. These multiple data points include node degrees and neighbor node vectors. The multiple privacy budgets are sent to each node, and the denoised data returned by each node is obtained. Based on the denoised data and the multiple privacy budgets, a target graph data analysis result is obtained from the multi-target graph data analysis results. Other target graph data analysis results are obtained based on at least one process parameter in the calculation process of the target graph data analysis result. The precision of the target graph data analysis result is greater than the precision of the other target graph data analysis results. Therefore, this invention can allocate the total privacy budget to multiple data sets to be denoised. After obtaining multiple denoised data sets by denoising the multiple data sets, it obtains a high-precision target graph data analysis result based on the denoised data sets and their corresponding privacy budgets. Then, based on at least one process parameter in the calculation process of the target graph data analysis result, it obtains other target graph data analysis results. This achieves the goal of obtaining graph data analysis results through multi-target collaborative computation, solving the defect in the prior art that multiple targets cannot be collaboratively analyzed in the graph data analysis process. It enables collaborative computation of multiple targets and balanced optimization of multiple targets during graph data analysis, improving the accuracy of graph data analysis results. Moreover, due to multi-target collaborative computation, data will not be repeatedly collected by different targets, thus effectively avoiding the additional consumption of privacy budget and achieving stronger privacy protection. Attached Figure Description
[0021] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0022] Figure 1 This is one of the flowcharts illustrating the privacy-preserving graph data analysis method provided by this invention;
[0023] Figure 2 This is the second flowchart of the privacy-preserving graph data analysis method provided by the present invention;
[0024] Figure 3 This is the third flowchart of the privacy-preserving graph data analysis method provided by the present invention;
[0025] Figure 4 This is the fourth flowchart of the privacy-preserving graph data analysis method provided by the present invention;
[0026] Figure 5 This is a schematic diagram of the relevant triangles in the privacy-preserving graph data analysis method provided by the present invention;
[0027] Figure 6 This is a schematic diagram of the relevant 2-path in the privacy-preserving graph data analysis method provided by the present invention;
[0028] Figure 7 This is a schematic diagram of the privacy-preserving graph data analysis device provided by the present invention;
[0029] Figure 8 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation
[0030] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0031] The following is combined Figures 1-6 This invention describes a privacy-preserving graph data analysis method.
[0032] Figure 1 This is one of the flowcharts illustrating the privacy-preserving graph data analysis method provided by this invention. For example... Figure 1 As shown, the method includes the following steps S110 to S150.
[0033] S110: Obtain dataset information, total privacy budget, and noise parameters; where the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average number of node degrees.
[0034] The total privacy budget can be preset. Noise-adding parameters include, for example, the Asymmetric Randomized Response (ARR) parameter.
[0035] S120: Based on the dataset information, noise parameters, and the analysis results of the multi-object graph data to be obtained, allocate the total privacy budget to obtain multiple privacy budgets that correspond one-to-one with multiple data to be noised; among them, the multiple data to be noised include: node degree and neighbor node vectors.
[0036] The desired results of multi-objective graph data analysis may include, for example, the global clustering coefficient (GCC) and the local clustering coefficient (LCC).
[0037] Of course, it is understandable that the results of the multi-objective graph data analysis to be obtained include, but are not limited to, the global clustering coefficients and local clustering coefficients listed above, and may also include node degree distribution, number of 4-cycles, etc.
[0038] In some embodiments, such as Figure 2 As shown, S120 can be implemented through S210 to S240.
[0039] S210: Based on the expected error of each target graph data analysis result in the multi-target graph data analysis results to be obtained and the obtained results, set the objective function and set constraints for the multiple privacy budgets to be obtained.
[0040] The results obtained are the dataset information, total privacy budget, and noise parameters obtained in S110.
[0041] Multi-objective graph data analysis results include, for example, GCC and LCC as described above. When setting the objective function, the expected error of GCC and LCC can be set based on the relevant parameters obtained from the above results. For details, please refer to the Global Clustering Coefficient Error Expectation (ERR) example listed in the privacy budget allocation example below. Gcc Objective function 1 and expected error of local clustering coefficients (ERR) Lcc Objective function 2.
[0042] To set constraints for the multiple privacy budgets obtained, you can refer to the privacy budget allocation example for setting constraints for privacy budget ε0 (adding noise to node degree), privacy budget ε1 (adding noise to neighbor node vectors), and privacy budget ε2 (adding noise to truncated data).
[0043] S220: Based on the objective function and constraints, determine the range of privacy budget values for the node degree in multiple privacy budgets.
[0044] Based on the objective function, the privacy budget of the node degree with the smallest expected error of each objective graph data analysis result in the multi-objective graph data analysis results can be obtained, thus obtaining the privacy budget of multiple node degrees corresponding one-to-one with multiple objective graph data analysis results.
[0045] In the privacy budget of multiple node degrees, the maximum value is taken as the upper limit of the interval and the minimum value is taken as the lower limit of the interval to obtain the range of privacy budget values for the node degree.
[0046] For details, please refer to the privacy budget allocation example, which illustrates the process of obtaining the privacy budget value range of ε0 for adding noise to the node degree.
[0047] S230: Based on the expected error of the data analysis results of each target graph, determine the privacy budget of the node degree within the range of values for the privacy budget of the node degree.
[0048] In some embodiments, a privacy budget equilibrium point for node degree can be obtained within the privacy budget value range of node degree based on the expected error of the data analysis results of each target graph. This equilibrium point can maximize the equalization of the expected error of the data analysis results of each target graph, and the value of this equilibrium point is used as the privacy budget for node degree. For details, refer to the process of determining the equilibrium point listed in the privacy budget allocation example (corresponding to the part in the privacy budget allocation example where ε0 is finally set to 0.41).
[0049] In other embodiments, after obtaining the equilibrium point, the privacy budget of the node degree corresponding to the equilibrium point and the target map data analysis result with the highest computational accuracy among multiple targets when the expected error is minimized can be averaged. The average result is used as the privacy budget of the node degree. Specifically, refer to the example in the last section for the expected error (ERR) based on the equilibrium point and global clustering coefficients. Gcc The process of determining the final value of ε0 when ε0 is at its minimum (corresponding to the part in the privacy budget allocation example where ε0 ultimately takes the value of 0.35).
[0050] S240: Based on the privacy budget of the node degree and the constraints, determine multiple privacy budgets that correspond one-to-one with multiple data points to be noisy.
[0051] Given the privacy budget for node degree, other privacy budgets can be calculated based on the relationship between the privacy budget for node degree and other privacy budgets in the constraints.
[0052] It should be noted that in some embodiments, the multiple data to be denoised include not only node degree and neighbor node vectors, but also truncated data. In this case, the denoising of the truncated data requires the use of a constraint probability parameter. The constraint probability parameter can be obtained at the same time when allocating the total privacy budget. For example, α is the constraint probability parameter in the privacy budget allocation example. α can also be set in the above constraints and calculated together with multiple privacy budgets.
[0053] α represents the probability that the noise in the added noise result is less than the noise in the original data. The purpose of calculating α is to ensure that, when ε0 is larger or smaller, setting a smaller or larger α maintains the expected number of truncations across different datasets. When ε0 is large, setting a smaller α can reduce k. i (See the section below for the calculation process of truncated data regarding k) iThe part that was introduced will not be repeated here. The value of α improves the final data usability. When ε0 is small, setting a larger α can keep the probability of truncation constant, avoiding large truncation errors, thus better adapting to different datasets and privacy budget allocations.
[0054] The following example illustrates the privacy budget allocation process described above, using multiple datasets to be noisy, including node degree, neighbor node vectors, and truncated data.
[0055] Example of privacy budget allocation:
[0056] The results obtained in S110 include: the number of nodes in the dataset n = 4039, and the degree mode of the nodes d. 0mode =8, average node degree d 0mean =44, Total privacy budget ε sum =2, the noise parameter is the ARR parameter μ, μ = 0.1.
[0057] The multi-objective framework includes GCC and LCC, with the following constraints set:
[0058] ε0+ε1+ε2=ε sum =2, ε1=ε2,
[0059] Where ε0 is the privacy budget for adding noise to node degree, ε1 is the privacy budget for adding noise to neighbor node vectors, ε2 is the privacy budget for adding noise to truncated data, and α is the constraint probability parameter.
[0060] In this case, the objective function is set as follows:
[0061]
[0062]
[0063] Substituting the data from the above results into the objective function set above, we can obtain the expected error (ERR) of the global clustering coefficients when ε0 = 0.29. GCC The minimum expected error (ERR) of local clustering coefficients is achieved when ε0 = 0.528. LCC The minimum means that Pareto optimality can be achieved when ε0∈[0.29, 0.528], based on GCC and LCC calculations. [0.29, 0.528] is taken as the range of privacy budget values for node degree.
[0064] After this, the equilibrium point value can be calculated using the following formula:
[0065]
[0066] Based on the above formula, the equilibrium point value of ε0 is 0.41, which can be used as the final value of ε0.
[0067] In some embodiments, in order to better utilize the number of global triangles to support the calculation of local clustering coefficients and improve the calculation accuracy, the value of ε0 when the expected error of global clustering coefficients is minimized can be averaged with the above equilibrium point value, thereby obtaining the final value of ε0 = (0.41 + 0.29) / 2 = 0.35.
[0068] If the final value of ε0 is 0.35, according to the constraints set above, we can obtain ε1 = 0.825, ε2 = 0.825, and α = 67.
[0069] Of course, it is understandable that the objective function is not limited to the expected error of the data analysis results of each objective graph, but can also be other parameters that can represent the error.
[0070] S130: Send multiple privacy budgets to each node and obtain the noisy data returned by each node.
[0071] In some embodiments, the multiple data to be noisy include: node degree and neighbor node vectors. In this case, after sending multiple privacy budgets to each node, the noisy node degree returned by each node after adding noise to the node degree according to the privacy budget of the node degree, and the noisy neighbor node vector returned by each node after adding noise to the neighbor node vector according to the privacy budget of the neighbor node vector.
[0072] For example, after receiving multiple privacy budgets from the server, node i can use Laplace to increase the node degree d. i Obtain the noise node degree The privacy budget is ε0, the sensitivity is 2, and node i uses a single-edge noise-adding technique on its neighbor node vector a (this ensures that the same edge is not repeatedly noise-added, saving the privacy budget). i Obtain the vector of noisy neighbor nodes With a privacy budget of ε1, node i will have a higher degree of noise. and noisy neighbor node vectors Return it to the server.
[0073] In some embodiments, the multiple data sets to be denoised further include truncated data. In this case, after sending multiple privacy budgets to each node to obtain the noisy neighbor node vectors and noisy node degrees of each node, it is first necessary to obtain a noise subgraph based on the noisy neighbor node vectors returned by each node, and then send a truncation threshold and the noise subgraph to each node; wherein, the truncation threshold and the noise subgraph are used to instruct the nodes to calculate the truncated data; finally, the denoised truncated data returned by each node after adding noise to the truncated data is obtained.
[0074] In some embodiments, since a constraint probability parameter can be obtained simultaneously when multiple privacy budgets are obtained, the constraint probability parameter can be sent to each node before obtaining the noisy truncated data returned by each node after adding noise to the truncated data; wherein, the constraint probability parameter is used to instruct the node to calculate the intermediate value. In specific implementations, the intermediate value is obtained based on the truncation threshold, the noise node degree, the asymmetric random response parameter, and the constraint probability parameter. Obtaining the noisy truncated data returned by each node after adding noise to the truncated data includes: obtaining the noisy truncated data returned by each node based on the intermediate value and the truncated data; wherein, if the truncated data is greater than the intermediate value, each node adds noise to the intermediate value to obtain the noisy truncated data; if the truncated data is less than or equal to the intermediate value, each node adds noise to the truncated data to obtain the noisy truncated data.
[0075] When obtaining a noisy subgraph based on the noisy neighbor node vectors returned by each node, graph construction can be performed on the noisy neighbor node vectors of each node to obtain a first processing result. Then, based on the pre-acquired ARR parameters, ARR post-processing sample is performed on the first processing result to obtain a second processing result. Finally, the noisy subgraph is obtained based on the second processing result.
[0076] It should be noted that using the first processing result as a parameter to calculate the global clustering coefficient results in a high overall computational cost; using the second processing result as a parameter to calculate the local clustering coefficient results in low accuracy. Therefore, both the first and second processing results are calculated simultaneously to select the appropriate parameters for different objectives (i.e., target graph data analysis results) within the multi-objective dataset (i.e., multi-objective graph data analysis results) based on the desired outcome (e.g., low cost and high accuracy). The truncated data obtained here is for calculating the global clustering coefficient; therefore, the noisy subgraph is obtained based on the second processing result to avoid the high overall computational cost that occurs when using the first processing result.
[0077] For example, the server receives the noise node degree returned by the node. and noisy neighbor node vectors Then, for all noise nodes... Aggregation is performed to obtain For all noisy neighbor node vectors Execution graph construction obtained (i.e., the first processing result mentioned above); the server... The post-processing sample of ARR with ARR parameter μ (μ = 0.1) is obtained. (i.e., the second processing result mentioned above). Then the server... Obtain the noise submap.
[0078] It should be noted that by transferring the ARR noise-adding operation from the node side to the server side, the availability of LCC calculation can be reduced by directly adopting the ARR mechanism, while keeping the communication overhead generated by sending the noisy subgraph unchanged.
[0079] When obtaining truncated data based on the noise subgraph and truncation threshold, the noise subgraph and truncation threshold are first sent to each node. Each node then calculates the number of triangles within its viewing range that satisfy predetermined conditions based on the received noise subgraph and truncation threshold, thus obtaining the truncated data. These predetermined conditions include, for example, i>g>k, and V ig V ik Existence, V g V k It exists in the noise subgraph received by node i; where i, g, and k are the indices of the three vertices of the triangle, and V ig Let V be the edge formed by vertices i and g. ik Let be the edge formed by vertices i and k.
[0080] For example, the server according to Subgraph selection is performed to obtain a noisy subgraph. The noisy subgraph and a truncation threshold are then sent to the nodes. The nodes, based on the noisy subgraph and the truncation threshold, calculate the number of triangles within the viewing area that satisfy set conditions (see the description of the set conditions above). This number of triangles is used as the truncation data (or intermediate result). i .
[0081] To improve the accuracy of graph data analysis results and reduce calculation errors, a truncation threshold can be obtained based on truncation error and Laplace noise error.
[0082] For example, multiple alternative cutoff thresholds can be preset, such as 10. -1 10 -2 10 -3 10 -4 10 -5 10 -6 ...10 -m Where m is a positive integer, substitute multiple candidate cutoff thresholds into the following formula to calculate the total error Err(b,λ):
[0083]
[0084]
[0085] Err(b,λ)=b 2 +λ 2 ;
[0086] Where, λ 2Let be the sum of the variances of the Laplace noise, b be the truncation error, β be the truncation threshold, and k be the sum of the variances of the Laplace noise. i k can be calculated based on existing parameters and β. im It is β=10 -m k i The value of k, for example i6 It is β=10 -b k i The value of .
[0087] Substitute the multiple candidate cutoff thresholds into the above formula to calculate Err(b,λ), resulting in multiple Err(b,λ) corresponding to the multiple candidate cutoff thresholds. The candidate cutoff threshold corresponding to the smallest Err(b,λ) among the multiple Err(b,λ) is taken as the cutoff threshold.
[0088] Regarding the formulas used to obtain the aforementioned cutoff threshold, the variance of the superimposed Laplace noise is the sum of the variances of each individual Laplace noise term. Therefore, the variance of the Laplace noise term in the total error (i.e., Err(b,λ)) can be obtained by summing these variances, thus yielding Err(b,λ) = b 2 +λ 2 Secondly, the truncation error b is caused by the increased truncation that occurs after β increases. Assuming multiple candidate truncation thresholds include 10... -1 10 -2 10 -3 10 -4 10 -5 10 -6 These six alternative cutoff thresholds, β = 10 -6 If no truncation occurs, then the formula The total truncation error is represented by μ = 0.1 because the calculated truncation probability is the upper bound of the worst-case scenario, and can therefore be reduced by 0.1. Finally, the total error Err(b,λ) is composed of the Laplace noise error and the truncation error. From this, the relationship between the truncation threshold and the variance of the total error can be calculated, thus guiding the selection of the truncation threshold.
[0089] For example, when calculating intermediate values, nodes are defined with ARR parameters μ and d. i +α and the cutoff threshold β are parameters for executing a pruning value inference function. This function calculates an intermediate value k based on the KL (Kullback-Leibler) divergence probability formula. i The node is based on the intermediate value k. i The privacy budget ε2 for the truncated data is calculated using the following formula for the truncated data w obtained above. i Adding noise yields truncated data.
[0090]
[0091] Where w i Greater than k i Then w i Cut off to k i The reason for this is that the introduction of the ARR mechanism makes the use of d i +α is used for calculation The sensitivity doesn't need to be high; further reduce the sensitivity. Therefore, when w i Greater than k i , will k i As a sensitivity.
[0092] S140: Based on the noisy data and multiple privacy budgets, obtain the target map data analysis results in the multi-target map data analysis results.
[0093] The basis for selecting the target map data analysis results from the multi-target map data analysis results is that the accuracy of the target map data analysis results is greater than the accuracy of the other target map data analysis results in the multi-target map data analysis results.
[0094] In some embodiments, the results of multi-objective graph data analysis include global clustering coefficients and local clustering coefficients. The accuracy of the global clustering coefficients is greater than that of the local clustering coefficients. In this case, the global clustering coefficients are used as the results of the graph data analysis for the set objective, and the global clustering coefficients are calculated accordingly.
[0095] like Figure 3 As shown, the process of calculating the global clustering coefficients may include S310 to S320.
[0096] S310: Based on the privacy budget of each data to be denoised and the denoised data of each data to be denoised, obtain the number of global 2-stars and the number of global triangles.
[0097] Specifically, the global clustering coefficients include: the number of global k-stars (in the case of multi-objective graph data analysis results including global clustering coefficients and local clustering coefficients, the number of global k-stars is the number of global 2-stars) and the number of global triangles.
[0098] When calculating the global 2-star number, it can be based on the distribution integration of the probability density of the polynomial Laplace noise over all nodes. Summing yields the global 2-star count.
[0099] When calculating the global triangle, collect Performing the correction calculation yields the global number of triangles.
[0100] S320: Based on the number of global triangles and the number of global 2-stars, obtain the global clustering coefficient as the data analysis result of the target map.
[0101] Specifically, based on the above-obtained and Obtain the global clustering coefficient (GCC) to complete the calculation of the graph data analysis results with the set objectives.
[0102] S150: Based on at least one process parameter in the calculation process of the set target map data analysis results, obtain the other target map data analysis results in the multi-target map data analysis results; wherein, the accuracy of the set target map data analysis results is greater than the accuracy of the other target map data analysis results.
[0103] To improve the overall accuracy of the graph data analysis results, at least one process parameter in the calculation process of the target graph data analysis result with the highest accuracy can be used to obtain the analysis results of other target graph data, thereby effectively reducing the error of the analysis results of other target graph data.
[0104] In some embodiments, the results of multi-objective graph data analysis include global clustering coefficients and local clustering coefficients. Since the accuracy of global clustering coefficients is greater than that of local clustering coefficients, the global clustering coefficients are used as the set target graph data analysis results, and local clustering coefficients are obtained based on at least one process parameter (e.g., the number of global triangles) in the calculation of global clustering coefficients.
[0105] like Figure 4 As shown, the process of calculating local clustering coefficients based on global clustering coefficients may include S410 to S430.
[0106] S410: Calculate the reciprocal of the number of local 2-stars for each node based on the noise node degree and the privacy budget of the node degree for all nodes.
[0107] Local clustering coefficients include the number of local triangles and the number of local 2-stars.
[0108] In some embodiments, the process of calculating the reciprocal of the number of local 2-stars is as follows.
[0109] First, for each noise node degree calculate Noise added via Laplace probability This probability can be obtained by piecewise integration of the Laplace distribution probability density function.
[0110] based on Corresponding calculate For all We get q by accumulating the results. i For all Accumulate to get p i The reciprocal of the number of local 2-stars
[0111] S420: Calculate the number of local triangles of the target node; where the target node is any one of all nodes.
[0112] Based on the vectors of all noisy neighbor nodes The result of the execution graph construction Privacy budget ε1 for adding noise to neighbor node vectors, and degree over all noisy nodes. Aggregation is performed to obtain Calculate the number of local triangles at each node.
[0113] Specifically, with nodes in The number of related triangles Number of related 2-paths Noise node degree ε1 is a parameter, and the number of local triangles is obtained using the following formula.
[0114] in, γ is the edge density of the graph.
[0115] The meaning of the related triangles is as follows: Figure 5 As shown, there are edges between every pair of vertices among the three vertices. Figure 5 In the diagram, a solid line represents an edge between two points.
[0116] The meanings of related 2-paths are as follows: Figure 6 As shown, among the three vertices, one vertex has an edge between each of the other two vertices, but there is no edge between the other two vertices. Figure 6 In Chinese, dashed lines represent the absence of an edge between two points, while solid lines represent the presence of an edge between them.
[0117] Number of related triangles The calculation method is to take The calculation method is to take
[0118] for Each item in, Equals the distance from node i to node j in the adjacency matrix The number of paths of length n, where each path has a direction. This can represent the position of node i in the adjacency matrix. The number of related triangles is twice that of the number of triangles in the middle, because a triangle includes both forward and reverse paths, and It is from node i to any node in Sum of the number of paths of length 2. In reality, node i is in The degree of nodes in the system. Is node i in The number of paths of length 2 contained within the relevant triangles is calculated, and finally, duplicates and mismatches are removed to obtain the formula. This completes the calculation of the number of local triangles, yielding the number of local triangles corresponding to each node.
[0119] S430: Obtain the local clustering coefficient of the target node based on the number of global triangles, the reciprocal of the number of local 2-stars of the target node, the number of local triangles of the target node, and the noise node degree of the target node; where the target node is any one of all nodes in the dataset.
[0120] At least one process parameter includes, for example, the number of global triangles, in terms of the number of global triangles. Number of local triangles of the target node The reciprocal of the number of local 2-stars of the target node Noise node degree of the target node Using parameters, calculate the local clustering coefficients of the nodes.
[0121] First, obtain num using the following formula:
[0122]
[0123] Calculate the target node's According to Sure
[0124] Specifically, in In this case, exist In this case, exist In this case, At this point, the local clustering coefficients of all nodes are obtained. Complete the calculation tasks for GCC and LCC.
[0125] It is understandable that the above example only illustrates the process of obtaining the analysis results of other target graphs based on the analysis results of the target graph, using the GCC as the objective graph analysis result and the LCC as the LCC. In reality, the analysis results of multi-target graphs include not only GCC and LCC, but also graph data analysis results such as node degree distribution and the number of 4-cycles. In this case, the same approach can still be used to calculate the node degree distribution, the number of 4-cycles, and other graph data analysis results, reducing the overall error of graph data analysis and improving the accuracy of the calculation results.
[0126] This invention provides a privacy-preserving graph data analysis method. It involves acquiring dataset information, a total privacy budget, and noise-adding parameters. The dataset information includes the number of nodes, the mode of node degrees, and the average node degree. Based on the dataset information, noise-adding parameters, and the desired multi-target graph data analysis results, the total privacy budget is allocated, resulting in multiple privacy budgets corresponding one-to-one with multiple data points to be denoised. These multiple data points include node degrees and neighbor node vectors. The multiple privacy budgets are sent to each node, and the denoised data returned by each node is obtained. Based on the denoised data and the multiple privacy budgets, a target graph data analysis result is obtained from the multi-target graph data analysis results. Other target graph data analysis results are obtained from the multi-target graph data analysis results based on at least one process parameter in the calculation process of the target graph data analysis result. The precision of the target graph data analysis result is greater than the precision of the other target graph data analysis results. Therefore, this invention can allocate the total privacy budget to multiple data sets to be denoised. After obtaining multiple denoised data sets by denoising the multiple data sets, it obtains a high-precision target graph data analysis result based on the denoised data sets and their corresponding privacy budgets. Then, based on at least one process parameter in the calculation process of the target graph data analysis result, it obtains other target graph data analysis results. This achieves the goal of obtaining graph data analysis results through multi-target collaborative computation, solving the defect in the prior art that multiple targets cannot be collaboratively analyzed in the graph data analysis process. It enables collaborative computation of multiple targets and balanced optimization of multiple targets during graph data analysis, improving the accuracy of graph data analysis results. Moreover, due to multi-target collaborative computation, data will not be repeatedly collected by different targets, thus effectively avoiding the additional consumption of privacy budget and achieving stronger privacy protection.
[0127] The privacy-preserving graph data analysis apparatus provided by the present invention will be described below. The privacy-preserving graph data analysis apparatus described below can be referred to in correspondence with the privacy-preserving graph data analysis method described above.
[0128] Figure 7This is a schematic diagram of the privacy-preserving graph data analysis device provided by the present invention. Figure 7 As shown, the privacy-preserving graph data analysis device 700 includes:
[0129] The first acquisition module 701 is used to acquire dataset information, total privacy budget, and noise-adding parameters; wherein, the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average number of node degrees.
[0130] The allocation module 702 is used to allocate the total privacy budget based on the dataset information, noise parameters, and the analysis results of the multi-object graph data to be obtained, and to obtain multiple privacy budgets that correspond one-to-one with multiple data to be noised; wherein, the multiple data to be noised include: node degree and neighbor node vectors.
[0131] The second acquisition module 703 is used to send multiple privacy budgets to each node and acquire the noisy data returned by each node.
[0132] The first calculation module 704 is used to obtain the target map data analysis results in the multi-target map data analysis results based on the noisy data and multiple privacy budgets.
[0133] The second calculation module 705 obtains the data analysis results of other target maps in the multi-target map data analysis results based on at least one process parameter in the calculation process of the set target map data analysis results; wherein, the accuracy of the set target map data analysis results is greater than the accuracy of the other target map data analysis results.
[0134] This invention provides a privacy-preserving graph data analysis device. A first acquisition module acquires dataset information, a total privacy budget, and noise-adding parameters. The dataset information includes the number of nodes, the mode of node degrees, and the average node degree. An allocation module allocates the total privacy budget based on the dataset information, noise-adding parameters, and the desired multi-target graph data analysis results, obtaining multiple privacy budgets corresponding one-to-one with multiple data points to be denoised. These multiple data points include node degrees and neighbor node vectors. A second acquisition module sends the multiple privacy budgets to each node, acquiring the denoised data returned by each node. A first calculation module calculates the set target graph data analysis results based on the denoised data and the multiple privacy budgets. A second calculation module calculates at least one process parameter in the calculation process of the set target graph data analysis results to obtain other target graph data analysis results within the multi-target graph data analysis results. The precision of the set target graph data analysis results is greater than the precision of the other target graph data analysis results. Therefore, this invention can allocate the total privacy budget to multiple data sets to be denoised. After obtaining multiple denoised data sets by denoising the multiple data sets, it obtains a high-precision target graph data analysis result based on the denoised data sets and their corresponding privacy budgets. Then, based on at least one process parameter in the calculation process of the target graph data analysis result, it obtains other target graph data analysis results. This achieves the goal of obtaining graph data analysis results through multi-target collaborative computation, solving the defect in the prior art that multiple targets cannot be collaboratively analyzed in the graph data analysis process. It enables collaborative computation of multiple targets and balanced optimization of multiple targets during graph data analysis, improving the accuracy of graph data analysis results. Moreover, due to multi-target collaborative computation, data will not be repeatedly collected by different targets, thus effectively avoiding the additional consumption of privacy budget and achieving stronger privacy protection.
[0135] Figure 8 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 8As shown, the electronic device may include: a processor 810, a communication interface 820, a memory 830, and a communication bus 840, wherein the processor 810, the communication interface 820, and the memory 830 communicate with each other through the communication bus 840. The processor 810 can call logical instructions in the memory 830 to execute a privacy-preserving graph data analysis method. This method includes: acquiring dataset information, a total privacy budget, and noise-adding parameters; wherein the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average node degree; allocating the total privacy budget according to the dataset information, the noise-adding parameters, and the desired multi-target graph data analysis results, obtaining multiple privacy budgets corresponding one-to-one with multiple data to be denoised; wherein the multiple data to be denoised include: node degree and neighbor node vectors; sending the multiple privacy budgets to each node and obtaining the denoised data returned by each node; obtaining the set target graph data analysis result in the multi-target graph data analysis results based on the denoised data and the multiple privacy budgets; obtaining other target graph data analysis results in the multi-target graph data analysis results based on at least one process parameter in the calculation process of the set target graph data analysis result; wherein the precision of the set target graph data analysis result is greater than the precision of the other target graph data analysis results.
[0136] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part 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, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of the present invention. 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.
[0137] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the privacy-preserving graph data analysis method provided by the above methods. The method includes: acquiring dataset information, a total privacy budget, and noise-adding parameters; wherein the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average degree of nodes; allocating the total privacy budget according to the dataset information, the noise-adding parameters, and the desired multi-target graph data analysis results, to obtain multiple privacy budgets corresponding one-to-one with multiple data to be denoised; wherein the multiple data to be denoised include: node degree and neighbor node vectors; sending the multiple privacy budgets to each node and obtaining the denoised data returned by each node; obtaining the set target graph data analysis result in the multi-target graph data analysis results according to the denoised data and the multiple privacy budgets; obtaining other target graph data analysis results in the multi-target graph data analysis results according to at least one process parameter in the calculation process of the set target graph data analysis result; wherein the precision of the set target graph data analysis result is greater than the precision of the other target graph data analysis results.
[0138] In another aspect, the present invention also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements a method for performing the privacy-preserving graph data analysis apparatus provided by the methods described above. This method includes: acquiring dataset information, a total privacy budget, and noise-adding parameters; wherein the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average node degree; allocating the total privacy budget according to the dataset information, the noise-adding parameters, and the desired multi-target graph data analysis results, obtaining multiple privacy budgets corresponding one-to-one with multiple data to be noise-added; wherein the multiple data to be noise-added include: node degree and neighbor node vectors; sending the multiple privacy budgets to each node, and obtaining the noise-adding data returned by each node; obtaining a set target graph data analysis result from the multi-target graph data analysis results based on the noise-adding data and the multiple privacy budgets; obtaining other target graph data analysis results based on at least one process parameter in the calculation process of the set target graph data analysis result; wherein the precision of the set target graph data analysis result is greater than the precision of the other target graph data analysis results.
[0139] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and 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 modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0140] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., including several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods of various embodiments or some parts of embodiments.
[0141] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A privacy-preserving graph data analysis method, characterized in that, include: Obtain dataset information, total privacy budget, and noise-adding parameters; wherein, the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average node degree; Based on the dataset information, the noise-adding parameters, and the analysis results of the multi-object graph data to be obtained, the total privacy budget is allocated to obtain multiple privacy budgets corresponding one-to-one with multiple data to be noised; wherein, the multiple data to be noised include: node degree and neighbor node vectors; The multiple privacy budgets are sent to each node, and the noisy data returned by each node is obtained; Based on the noisy data and the multiple privacy budgets, the target map data analysis results are obtained from the multi-target map data analysis results; Based on at least one process parameter in the calculation process of the set target map data analysis results, other target map data analysis results are obtained in the multi-target map data analysis results; wherein, the precision of the set target map data analysis results is greater than the precision of the other target map data analysis results; The step of allocating the total privacy budget based on the dataset information, the noise-adding parameters, and the analysis results of the multi-object graph data to be obtained, to obtain multiple privacy budgets corresponding one-to-one with multiple data points to be noise-added, includes: Based on the expected error of each target graph data analysis result in the multi-target graph data analysis results to be obtained and the obtained results, set the objective function and set the constraints for the multiple privacy budgets to be obtained; Based on the objective function and the constraints, determine the range of privacy budget values for the node degree among the multiple privacy budgets; Based on the expected error of the data analysis results of each target graph, the privacy budget of the node degree is determined within the range of the privacy budget values of the node degree. Based on the privacy budget of the node degree and the constraints, determine multiple privacy budgets that correspond one-to-one with multiple data points to be noisy; The multi-objective graph data analysis results include: global clustering coefficients; the step of obtaining the target graph data analysis results in the multi-objective graph data analysis results based on the noisy data and the multiple privacy budgets includes: Based on the privacy budget of each of the data to be denoised and the denoised data of each of the data to be denoised, the number of global 2-stars and the number of global triangles are obtained; Based on the number of global triangles and the number of global 2-stars, the global clustering coefficient is obtained as the data analysis result of the set target map; The multi-objective map data analysis results also include: local clustering coefficients; the at least one process parameter includes: the number of global triangles; the process of obtaining other target map data analysis results in the multi-objective map data analysis results based on at least one process parameter in the calculation process of the set target map data analysis results includes: Based on the noisy node degree of all the nodes and the privacy budget of the node degree, calculate the reciprocal of the number of local 2-stars for each node; Calculate the number of local triangles of the target node; wherein the target node is any one of all the nodes. The local clustering coefficient of the target node is obtained based on the global number of triangles, the reciprocal of the local 2-star number of the target node, the local number of triangles of the target node, and the noise node degree of the target node; wherein the target node is any one of all nodes in the dataset.
2. The privacy-preserving graph data analysis method according to claim 1, characterized in that, The plurality of data to be noised also includes: truncated data; The step of sending the multiple privacy budgets to each node and obtaining the noisy data returned by each node includes: The truncation threshold is obtained based on the truncation error and the Laplace noise error; A noisy subgraph is obtained based on the noisy neighbor node vector returned by each of the nodes after adding noise to the neighbor node vector; The truncation threshold and the noise subgraph are sent to each node; wherein the truncation threshold and the noise subgraph are used to instruct the nodes to calculate the truncated data; Obtain the truncated data with added noise returned by each node after adding noise to the truncated data.
3. The privacy-preserving graph data analysis method according to claim 2, characterized in that, Before obtaining the noisy truncated data returned by each node after adding noise to the truncated data, the process also includes: The constraint probability parameter is sent to each node; wherein the constraint probability parameter is used to instruct the node to calculate the intermediate value; The step of obtaining the denoised truncated data returned by each node after adding noise to the truncated data includes: obtaining the denoised truncated data returned by each node based on the intermediate value and the truncated data; wherein, when the truncated data is greater than the intermediate value, each node adds noise to the intermediate value to obtain the denoised truncated data.
4. A privacy-preserving graph data analysis device, characterized in that, include: The first acquisition module is used to acquire dataset information, total privacy budget, and noise-adding parameters; wherein, the dataset information includes: the number of nodes in the dataset, the mode of node degree, and the average node degree; The allocation module is used to allocate the total privacy budget according to the dataset information, the noise-adding parameters, and the multi-object graph data analysis results to be obtained, so as to obtain multiple privacy budgets corresponding one-to-one with multiple data to be noised; wherein, the multiple data to be noised include: node degree and neighbor node vectors; The second acquisition module is used to send the multiple privacy budgets to each node and acquire the noisy data returned by each node; The first calculation module is used to obtain the target map data analysis result in the multi-target map data analysis result based on the noisy data and the multiple privacy budgets; The second calculation module obtains other target map data analysis results based on at least one process parameter in the calculation process of the set target map data analysis results; wherein, the accuracy of the set target map data analysis results is greater than the accuracy of the other target map data analysis results; The step of allocating the total privacy budget based on the dataset information, the noise-adding parameters, and the analysis results of the multi-object graph data to be obtained, to obtain multiple privacy budgets corresponding one-to-one with multiple data points to be noise-added, includes: Based on the expected error of each target graph data analysis result in the multi-target graph data analysis results to be obtained and the obtained results, set the objective function and set the constraints for the multiple privacy budgets to be obtained; Based on the objective function and the constraints, determine the range of privacy budget values for the node degree among the multiple privacy budgets; Based on the expected error of the data analysis results of each target graph, the privacy budget of the node degree is determined within the range of the privacy budget values of the node degree. Based on the privacy budget of the node degree and the constraints, determine multiple privacy budgets that correspond one-to-one with multiple data points to be noisy; The multi-objective graph data analysis results include: global clustering coefficients; the step of obtaining the target graph data analysis results in the multi-objective graph data analysis results based on the noisy data and the multiple privacy budgets includes: Based on the privacy budget of each of the data to be denoised and the denoised data of each of the data to be denoised, the number of global 2-stars and the number of global triangles are obtained; Based on the number of global triangles and the number of global 2-stars, the global clustering coefficient is obtained as the data analysis result of the set target map; The multi-objective map data analysis results also include: local clustering coefficients; the at least one process parameter includes: the number of global triangles; the process of obtaining other target map data analysis results in the multi-objective map data analysis results based on at least one process parameter in the calculation process of the set target map data analysis results includes: Based on the noisy node degree of all the nodes and the privacy budget of the node degree, calculate the reciprocal of the number of local 2-stars for each node; Calculate the number of local triangles of the target node; wherein the target node is any one of all the nodes. The local clustering coefficient of the target node is obtained based on the global number of triangles, the reciprocal of the local 2-star number of the target node, the local number of triangles of the target node, and the noise node degree of the target node; wherein the target node is any one of all nodes in the dataset.
5. An electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the privacy-preserving graph data analysis method as described in any one of claims 1 to 3.
6. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the privacy-preserving graph data analysis method as described in any one of claims 1 to 3.
7. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the privacy-preserving graph data analysis method as described in any one of claims 1 to 3.
Citation Information
Patent Citations
Social network-oriented collaborative personalized edge difference privacy protection method and device
CN117744139A
Method and apparatus for constructing relationship network based on privacy protection
WO2021114921A1