Dynamic multi-dimensional medical privacy data protection method and system based on ferret optimization
Patent Information
- Application Number
- CN202210715787.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-22
- Publication Date
- 2026-08-18
- Estimated Expiration
- 2042-06-22
AI Technical Summary
[0007]针对现有技术的不足,本发明提供了一种基于猫鼬优化的动态多维医疗隐私数据保护方法及系统,解决了上述背景技术中提出的现有技术侧重于研究能够抵御推理攻击的静态K匿名算法,但是在实际匿名过程中一张医疗数据表存在数据添加、删除和修改等动态更新过程,静态K匿名算法没有考虑医疗数据表的动态更新,较难直接应用到动态多维医疗数据的医疗信息发布中断的问题
[0060] This invention provides a dynamic multidimensional medical privacy data protection method and system based on mongoose optimization. It has the following beneficial effects:
Smart Images

Figure CN115168891B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data protection technology, specifically to a dynamic multidimensional medical privacy data protection method and system based on mongoose optimization. Background Technology
[0002] The development of smart healthcare has promoted the interconnection and sharing of patient information among different institutions, improving the level of intelligence in medical services, and the smart healthcare industry is beginning to enter a period of rapid development. However, smart healthcare requires data sharing among multiple medical units. Directly publishing patients' raw medical data to achieve information sharing would lead to serious privacy breaches of sensitive patient information.
[0003] Regarding data privacy protection, K-anonymization technology can effectively solve the problem of patient privacy leakage in medical data sharing. The K-anonymization algorithm mainly anonymizes identifier attribute data and quasi-identifier attribute data before sharing through methods such as concealment and generalization, making the medical sensitive attribute data of at least K patients indistinguishable from each other (also known as equivalence classes). Identifier attribute data refers to information that can directly identify a patient, such as ID card number, mobile phone number, and medical card number. Quasi-identifier attribute data refers to information that, while not directly identifying an individual, can be used to determine a patient's identity through association of multiple quasi-identifier attribute data, such as age, gender, and ethnicity. Medical sensitive attribute data refers to specific information involving patient privacy, such as illness, consultation date, and consultation results, which cannot be associated with the patient's identity when published.
[0004] Although K-anonymization technology can effectively solve the problem of patient privacy leakage in medical data sharing, attackers, in order to gain illegal benefits, carry out a series of reasoning attacks on the published medical anonymization data tables, such as homogeneity attacks, similarity attacks, and skew attacks.
[0005] Existing technologies focus on researching static K-anonymity algorithms that can resist inference attacks. However, in actual anonymization processes, a medical data table undergoes dynamic updates such as data addition, deletion, and modification. Static K-anonymity algorithms do not consider the dynamic updates of medical data tables, making it difficult to directly apply them to the dissemination of medical information based on dynamic, multi-dimensional medical data. Summary of the Invention
[0006] (a) Technical problems to be solved
[0007] To address the shortcomings of existing technologies, this invention provides a dynamic multidimensional medical privacy data protection method and system based on mongoose optimization. This solves the problem that existing technologies, as mentioned in the background, focus on researching static K-anonymity algorithms that can resist inference attacks. However, in actual anonymization processes, a medical data table undergoes dynamic updates such as data addition, deletion, and modification. Static K-anonymity algorithms do not consider the dynamic updates of medical data tables and are difficult to directly apply to the problem of interrupted medical information dissemination in dynamic multidimensional medical data.
[0008] (II) Technical Solution
[0009] To achieve the above objectives, the present invention provides the following technical solution: a dynamic multidimensional medical privacy data protection method based on mongoose optimization, comprising:
[0010] Read the original multidimensional medical data table and perform parameter initialization operations;
[0011] Perform data preprocessing;
[0012] Equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values;
[0013] Data generalization and anonymized data redistribution.
[0014] Preferably, the parameter initialization operation includes: initializing the current iteration number it = 1, the maximum iteration number Maxit, the number of categories K, the parameter L, the maximum information loss Maxloss, the minimum sensitive attribute data difference value Minsadv, and the solution count count(cs) = 0 (cs = 0, 1, ..., m).
[0015] Preferably, the data preprocessing includes:
[0016] Determine if an anonymous operation has already been performed on the current data table;
[0017] If not, delete the incomplete multidimensional medical records and all patients' medical identifier attribute data in the multidimensional medical data table, and calculate the distance between any two multidimensional medical records' medical sensitive attribute data.
[0018] If so, determine whether there are any update operations such as adding, deleting, or modifying in the current multidimensional medical data table; if a multidimensional medical record deletion operation is performed in the current multidimensional medical data table, find the equivalence class corresponding to the deleted record, randomly copy the medical records in the equivalence class, and ensure that all equivalence classes contain k multidimensional medical records and satisfy the constraints of equivalence class partitioning; if a multidimensional medical record addition operation is performed in the current multidimensional medical data table, calculate the newly added multidimensional medical record and add it to the equivalence class with the shortest distance to its medical quasi-identifier attribute.
[0019] If the current multidimensional medical data table remains unchanged, directly publish its corresponding multidimensional medical anonymous data table and wait to receive multidimensional medical data tables that require anonymization.
[0020] Preferably, the step of determining whether the current data table has already undergone anonymization; if not, deleting incomplete multidimensional medical records and all patients' medical identifier attribute data from the multidimensional medical data table, and calculating the distance between any two multidimensional medical records' medical sensitive attribute data; further includes: deleting incomplete multidimensional medical records and all patients' medical identifier attribute data from the multidimensional medical data table, and calculating the distance between any two multidimensional medical records' medical sensitive attribute data.
[0021] Preferably, the step of deleting incomplete multidimensional medical records and medical identifier attribute data of all patients from the multidimensional medical data table, and calculating the distance of medical sensitive attribute data between any two multidimensional medical records, includes:
[0022] The distance between medical sensitive attribute data between any two multidimensional medical records is calculated using formula (1);
[0023]
[0024] Where, r i Let r represent the i-th multidimensional medical record. j DistSA(r) represents the j-th multidimensional medical record. i ,r j () represents the distance between the sensitive attribute data of the i-th and j-th multidimensional medical records. This represents the l-th numeric sensitive attribute value in the i-th medical record. The l-th numeric sensitive attribute value in the j-th medical record This represents the absolute value of the difference between the l-th numerical sensitive attribute data in the i-th and j-th medical records, where n represents the number of multidimensional medical records and a represents the number of numerical medical sensitive attributes. This represents the l-th categorical sensitive attribute data in the i-th multidimensional medical record. This represents the l-th categorical sensitive attribute data in the j-th multidimensional medical record. h(H) represents the height of the lowest common ancestor node of the l-th categorical sensitive attribute data in the i-th and j-th multidimensional medical records, h(H) represents the total height of the current categorical attribute, and b represents the number of categorical medical sensitive attributes.
[0025] Preferably, the data preprocessing further includes: determining the size of dimension o by combining the number of sensitive attributes sas in the multidimensional medical data table, constructing a search space, obtaining m solutions and initializing the m solutions, and generating a single cluster center center = {csa1,…,csa} in solution x within the search space using formula (2). si ,…,csa sas}, and repeat K times to obtain the final solution x = {center1, center2, ..., center}. K}, where center K Let X represent the Kth cluster center. This can generate m solutions, forming a solution matrix X = {x1, x2, ..., xn}. m};
[0026] csa si =rsa si ×(upsa-dnsa)+dnsa (2)
[0027] Among them, CSA si This represents the si-th medical sensitive data point at the current cluster center, upsa represents the maximum sensitive data point for the current attribute, dnsa represents the minimum sensitive data point for the current attribute, and rsa represents the minimum sensitive data point for the current attribute. si The random number representing the chaotic mapping of the si-th tent can be represented as:
[0028]
[0029] in, α represents a random number between 0 and 1, and α represents a fixed parameter between 0 and 1.
[0030] Preferably, the data preprocessing further includes: calculating the fitness value of each solution, determining whether the current iteration number it is greater than the maximum iteration number Maxit, and if so, selecting the solution with the highest fitness as the best cluster center solution for equivalence class partitioning;
[0031] The fitness value of each solution is calculated using formula (4):
[0032]
[0033] Where it represents the current iteration number, f cs (it) represents the fitness value of the cs-th solution in the current iteration, k represents the number of clusters, and Dist(r) represents the fitness value of the solution in the current iteration. j ,c q ) represents the j-th multidimensional medical record to the q-th cluster center c. q The distance to sensitive medical data.
[0034] Preferably, it also includes: if the current iteration number it is less than the maximum iteration number Maxit, perform the following m times: calculate the probability of each solution being selected by formula (5), randomly select a solution cs from them by roulette wheel, calculate the new cluster center solution cs by formula (6), determine whether the fitness value of the new solution is less than the fitness value of the solution before calculation, if yes, update the solution cs, otherwise do not update the solution, and increment the current solution count count(cs) by 1;
[0035]
[0036] Where, p cs This represents the probability that the cs-th solution is selected;
[0037]
[0038] Among them, gx cs (it) represents the new solution after calculation, x cs (it) represents the solution before computation. This represents a random number between -1 and 1. peep represents a fixed parameter used to simulate the vocalizations of a meerkat leader.
[0039] Determine if the count(cs) corresponding to each solution is greater than the parameter L. If it is, initialize the current solution cs using formula (2); otherwise, the current solution cs remains unchanged. For each cluster center solution, calculate the mongoose sleep hill SM(it) for the current iteration using formula (7).
[0040]
[0041] Where SM(it) represents the mongoose sleep mound at the current iteration number;
[0042] Determine whether the meerkat sleep mound SM(it) of the current iteration is greater than the meerkat sleep mound SM(it-1) of the previous iteration. If yes, simulate meerkat searching for food in different areas using formula (8), update the current position of all cluster center solutions, and recalculate the fitness of all solutions. Otherwise, simulate meerkat hunting prey using formula (9), update the current position of all cluster center solutions, and recalculate the fitness of all solutions.
[0043]
[0044] Where, x cs (it+1) represents the cs-th updated solution;
[0045]
[0046] Preferably, the equivalence class partitioning based on the amount of information loss and the average difference value of medical sensitivity attribute data includes: calculating the quasi-identifier attribute data distance between multidimensional medical records using formula (10), selecting the patient medical record with the closest quasi-identifier attribute data distance from each cluster to form an equivalence class, deleting the selected patient medical record from the original cluster, completing the initialization of c equivalence classes, and locally backing up the equivalence class number to which each multidimensional medical record belongs;
[0047]
[0048] Among them, DistQI(r i ,r j ) represents the distance between the quasi-identifier attribute data of the i-th and j-th multidimensional medical records. This represents the value of the l-th numeric quasi-identifier attribute in the i-th medical record. This represents the value of the l-th numeric quasi-identifier attribute in the j-th medical record. This represents the absolute value of the difference between the l-th numeric quasi-identifier attribute data in the i-th and j-th medical records, where c represents the number of numeric medical quasi-identifier attributes. This represents the l-th categorical quasi-identifier attribute in the i-th multidimensional medical record. This represents the l-th categorical quasi-identifier attribute in the j-th multidimensional medical record. Let h(H) represent the height of the lowest common ancestor node of the l-th categorical quasi-identifier attribute data in the i-th and j-th multidimensional medical records, h(H) represent the total height of the current categorical quasi-identifier attribute, d represent the number of categorical medical quasi-identifier attributes, and c+d=sas.
[0049] Preferably, the data generalization and anonymized data redistribution includes: calculating the information loss of each equivalence class and the average difference value of medical sensitivity attribute data respectively using formulas (11) and (12), determining whether the information loss of each equivalence class is greater than the threshold Maxloss and whether the average difference value of medical sensitivity attribute data is less than the threshold Minsadv, if yes, re-dividing and generalizing the equivalence classes that do not meet the constraints, making all equivalence classes meet the constraints by forging multidimensional medical records, and publishing a multidimensional medical anonymized data table; otherwise, directly performing data generalization processing and publishing a multidimensional medical anonymized data table.
[0050]
[0051] Where, loss vMaxqn represents the information loss of the v-th equivalence class. z Minqn represents the maximum value of the z-th numeric medical quasi-identifier attribute data in the current equivalence class. z |Maxqn represents the minimum value of the z-th numeric medical quasi-identifier attribute data in the current equivalence class. z -Minqn z | represents the absolute difference between the maximum and minimum values of the z-th numeric medical quasi-identifier attribute data in the current equivalence class, MaxTable z MinTable represents the maximum value of the z-th numeric medical quasi-identifier attribute in the entire multidimensional medical data table. z The minimum value of the z-th numeric medical quasi-identifier attribute in the entire multidimensional medical data table, |MaxTable z -MinTable z | represents the absolute difference between the maximum and minimum values of the z-th numeric medical quasi-identifier attribute data in the entire multidimensional medical data table, h(cluster) z ) represents the height of the common node of the z-th categorical medical quasi-identifier attribute data in the current equivalence class, h(H z ) represents the total height of the z-th categorical medical quasi-identifier attribute;
[0052]
[0053] Among them, SADV v denoted as the average difference value of medical sensitivity attribute data in the v-th equivalence class, and k represents the number of multidimensional medical records in the equivalence class.
[0054] This invention also provides a dynamic multidimensional medical privacy data protection system based on mongoose optimization, comprising:
[0055] Initialization module: Used to read the original multidimensional medical data table and perform parameter initialization operations;
[0056] Data preprocessing module: used to perform data preprocessing;
[0057] Equivalence class partitioning module: used for equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values;
[0058] Generalization and Redistribution module: Used for data generalization and anonymous data redistribution.
[0059] (III) Beneficial Effects
[0060] This invention provides a dynamic multidimensional medical privacy data protection method and system based on mongoose optimization. It has the following beneficial effects:
[0061] This invention addresses the issue of deleting multidimensional medical records by finding the equivalence class corresponding to the deleted record and randomly copying the medical records within that equivalence class. For adding multidimensional medical records, the newly added record is added to the equivalence class with the shortest distance to its medical quasi-identifier attribute. For clustering dynamic multidimensional medical data, a mongoose-optimized clustering method is proposed. This method introduces a tent chaotic mapping to improve the initialization of cluster centers, ensuring that the initial cluster centers cover the entire solution space as much as possible, thus improving the search capability for the global optimum. Simultaneously, considering the distance between each multidimensional medical record and the medical sensitive data of the cluster center, the fitness calculation method is improved, simulating mongoose predation behavior to optimize cluster center selection. This achieves highly accurate clustering of multidimensional medical records, making the medical sensitive data within the same equivalence class as dissimilar as possible, increasing the average distance of the medical sensitive data attributes within the equivalence classes, and effectively resisting common inference attacks. This invention addresses the equivalence class partitioning of dynamic multidimensional medical data by proposing a formula for calculating information loss based on a generalization tree and a formula for calculating the difference value based on medical sensitive attribute data. Specifically, it calculates the information loss of each equivalence class and the average difference value of medical sensitive attribute data, and re-partitions equivalence classes that do not meet the constraints. This process updates and optimizes the equivalence classes, reducing information loss in dynamic multidimensional medical data and improving privacy protection. Through dynamic data preprocessing, equivalence class partitioning initialization, equivalence class determination based on information loss and average difference value of medical sensitive attribute data, and data generalization, this invention achieves a privacy protection method for dynamic multidimensional medical data, improving the privacy protection process and reducing the information loss rate. Attached Figure Description
[0062] Figure 1 A flowchart of a dynamic multidimensional medical privacy data protection method based on mongoose optimization provided in an embodiment of the present invention;
[0063] Figure 2 This is a block diagram of a dynamic multidimensional medical privacy data protection system based on mongoose optimization, provided for an embodiment of the present invention. Detailed Implementation
[0064] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
[0065] This invention provides a dynamic, multi-dimensional medical privacy data protection method based on mongoose optimization, such as... Figure 1 As shown, it includes:
[0066] S1 reads the original multidimensional medical data table and performs parameter initialization operations;
[0067] In one embodiment, after obtaining the original multidimensional medical data table, the following key parameters are initialized: current iteration number it = 1, maximum iteration number Maxit, number of categories K, parameter L, maximum information loss Maxloss, minimum sensitive attribute data difference Minsadv, and solution count count(cs) = 0 (cs = 0, 1, ..., m).
[0068] S2 performs data preprocessing;
[0069] In one embodiment, it is determined whether the multidimensional medical data table that needs to be anonymized has already been anonymized. If not, incomplete multidimensional medical records and all patients' medical identifier attribute data are deleted from the multidimensional medical data table, and the distance between any two multidimensional medical records' medical sensitive attribute data is calculated; otherwise, it is determined whether there are any update operations such as addition, deletion, or modification in the current multidimensional medical data table.
[0070] In one embodiment, if a multidimensional medical record deletion operation is performed on the current multidimensional medical data table, the equivalence class corresponding to the deleted record is found, and the medical records in the equivalence class are randomly copied to ensure that all equivalence classes contain k multidimensional medical records and satisfy the constraints of equivalence class partitioning.
[0071] In one embodiment, if a multidimensional medical record is added to the current multidimensional medical data table, the newly added multidimensional medical record is calculated and added to the equivalence class with the shortest distance to its medical quasi-identifier attribute. Otherwise, if the current multidimensional medical data table remains unchanged, its corresponding multidimensional medical anonymous data table is directly published, and the table waits to receive multidimensional medical data tables that require anonymization.
[0072] In one embodiment, incomplete multidimensional medical records and medical identifier attribute data of all patients in the multidimensional medical data table are deleted, and the distance between medical sensitive attribute data of any two multidimensional medical records is calculated by formula (1).
[0073]
[0074] Where, r i Let r represent the i-th multidimensional medical record. j DistSA(r) represents the j-th multidimensional medical record. i ,r j () represents the distance between the sensitive attribute data of the i-th and j-th multidimensional medical records. This represents the l-th numeric sensitive attribute value in the i-th medical record. The l-th numeric sensitive attribute value in the j-th medical record This represents the absolute value of the difference between the l-th numerical sensitive attribute data in the i-th and j-th medical records, where n represents the number of multidimensional medical records and a represents the number of numerical medical sensitive attributes. This represents the l-th categorical sensitive attribute data in the i-th multidimensional medical record. This represents the l-th categorical sensitive attribute data in the j-th multidimensional medical record. h(H) represents the height of the lowest common ancestor node of the l-th categorical sensitive attribute data in the i-th and j-th multidimensional medical records, h(H) represents the total height of the current categorical attribute, and b represents the number of categorical medical sensitive attributes.
[0075] In one embodiment, the size of dimension o is determined by combining the number of sensitive attributes sas in the multidimensional medical data table, a search space is constructed, m solutions are obtained and the initialization of the m solutions is completed, and a single cluster center center = {csa1,…,csa1} in solution x is generated in the search space using formula (2). si ,…,csa sas}, and repeat K times to obtain the final solution x = {center1, center2, ..., center}. K}, where center K Let X represent the Kth cluster center. This can generate m solutions, forming a solution matrix X = {x1, x2, ..., xn}. m};
[0076] csa si =rsa si ×(upsa-dnsa)+dnsa (2)
[0077] Among them, CSA si This represents the si-th medical sensitive data point at the current cluster center, upsa represents the maximum sensitive data point for the current attribute, dnsa represents the minimum sensitive data point for the current attribute, and rsa represents the minimum sensitive data point for the current attribute. si The random number representing the chaotic mapping of the si-th tent can be represented as:
[0078]
[0079] in, α represents a random number between 0 and 1, and α represents a fixed parameter between 0 and 1.
[0080] In one embodiment, the fitness value of each solution is calculated by formula (4), and it is determined whether the current iteration number it is greater than the maximum iteration number Maxit. If it is, the solution with the highest fitness is selected as the best cluster center solution for equivalence class partitioning.
[0081]
[0082] Where it represents the current iteration number, f cs (it) represents the fitness value of the cs-th solution in the current iteration, k represents the number of clusters, and Dist(r) represents the fitness value of the solution in the current iteration. j ,c q ) represents the j-th multidimensional medical record to the q-th cluster center c. q The distance to sensitive medical data.
[0083] In one embodiment, the following is performed m times: calculate the probability of each solution being selected by formula (5), randomly select a solution cs from them by roulette wheel, calculate the new cluster center solution cs by formula (6), determine whether the fitness value of the new solution is less than the fitness value of the solution before calculation, if yes, update solution cs, otherwise do not update solution, and increment the current solution count count(cs) by 1.
[0084]
[0085] Where, p cs Let c represent the probability that the cs-th solution is selected.
[0086]
[0087] Among them, gx cs (it) represents the new solution after calculation, x cs (it) represents the solution before computation. This represents a random number between -1 and 1, and peep represents a fixed parameter used to simulate the vocalization of a meerkat leader.
[0088] The solution and fitness value of each cluster center are recalculated using formula (6). It is determined whether the new fitness value of the current solution cs is less than the fitness value before the calculation. If it is, the solution cs is updated; otherwise, the solution cs remains unchanged and the solution count count(cs) is incremented by 1.
[0089] Determine if the count(cs) corresponding to each solution is greater than the parameter L. If it is, initialize the current solution cs using formula (2); otherwise, the current solution cs remains unchanged. For each cluster center solution, calculate the mongoose sleep hill SM(it) for the current iteration using formula (7).
[0090]
[0091] Where SM(it) represents the mongoose sleep mound at the current iteration number.
[0092] Determine whether the current iteration number of the meerkat sleep mound SM(it) is greater than the previous iteration number of the meerkat sleep mound SM(it-1). If yes, simulate the meerkat searching for food in different areas using formula (8), update the current position of all cluster center solutions, and recalculate the fitness of all solutions. Otherwise, simulate the meerkat hunting prey using formula (9), update the current position of all cluster center solutions, and recalculate the fitness of all solutions.
[0093]
[0094] Where, x cs (it+1) represents the cs-th updated solution;
[0095]
[0096] S3 is an equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values.
[0097] In one embodiment, the quasi-identifier attribute data distance between multidimensional medical records is calculated by formula (10), the patient medical record with the closest quasi-identifier attribute data distance is selected from each cluster to form an equivalence class, the selected patient medical record is deleted from the original cluster, the initialization of c equivalence classes is completed, and the equivalence class number to which each multidimensional medical record belongs is backed up locally.
[0098]
[0099] Among them, DistQI(r i ,r j ) represents the distance between the quasi-identifier attribute data of the i-th and j-th multidimensional medical records. This represents the value of the l-th numeric quasi-identifier attribute in the i-th medical record. This represents the value of the l-th numeric quasi-identifier attribute in the j-th medical record. This represents the absolute value of the difference between the l-th numeric quasi-identifier attribute data in the i-th and j-th medical records, where c represents the number of numeric medical quasi-identifier attributes. This represents the l-th categorical quasi-identifier attribute in the i-th multidimensional medical record. This represents the l-th categorical quasi-identifier attribute in the j-th multidimensional medical record. Let h(H) represent the height of the lowest common ancestor node of the l-th categorical quasi-identifier attribute data in the i-th and j-th multidimensional medical records, h(H) represent the total height of the current categorical quasi-identifier attribute, d represent the number of categorical medical quasi-identifier attributes, and c+d=sas;
[0100] S4 data generalization and anonymized data redistribution.
[0101] In one embodiment, the information loss of each equivalence class and the average difference value of medical sensitivity attribute data are calculated by formulas (11) and (12), respectively. It is determined whether the information loss of each equivalence class is greater than the threshold Maxloss and whether the average difference value of medical sensitivity attribute data is less than the threshold Minsadv. If yes, the equivalence classes that do not meet the constraints are re-divided and the data is generalized. By forging multidimensional medical records, all equivalence classes meet the constraints and a multidimensional medical anonymized data table is published. Otherwise, the data is directly generalized and a multidimensional medical anonymized data table is published.
[0102]
[0103] Where, loss v Maxqn represents the information loss of the v-th equivalence class. z Minqn represents the maximum value of the z-th numeric medical quasi-identifier attribute data in the current equivalence class. z |Maxqn represents the minimum value of the z-th numeric medical quasi-identifier attribute data in the current equivalence class. z -Minqn z | represents the absolute difference between the maximum and minimum values of the z-th numeric medical quasi-identifier attribute data in the current equivalence class, MaxTable z MinTable represents the maximum value of the z-th numeric medical quasi-identifier attribute in the entire multidimensional medical data table. z The minimum value of the z-th numeric medical quasi-identifier attribute in the entire multidimensional medical data table, |MaxTable z -MinTable z | represents the absolute difference between the maximum and minimum values of the z-th numeric medical quasi-identifier attribute data in the entire multidimensional medical data table, h(cluster) z ) represents the height of the common node of the z-th categorical medical quasi-identifier attribute data in the current equivalence class, h(H z ) represents the total height of the z-th categorical medical quasi-identifier attribute.
[0104]
[0105] Among them, SADV v denoted as the average difference value of medical sensitivity attribute data in the v-th equivalence class, and k represents the number of multidimensional medical records in the equivalence class.
[0106] like Figure 2As shown, this embodiment of the invention also provides a dynamic multidimensional medical privacy data protection system based on mongoose optimization, comprising:
[0107] Initialization module: Used to read the original multidimensional medical data table and perform parameter initialization operations;
[0108] Data preprocessing module: used to perform data preprocessing;
[0109] Equivalence class partitioning module: used for equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values;
[0110] Generalization and Redistribution module: Used for data generalization and anonymous data redistribution.
[0111] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. A dynamic multi-dimensional medical privacy data protection method based on ferret optimization, characterized in that, include: Read the original multidimensional medical data table and perform parameter initialization operations; Data preprocessing is performed, including: Determine if an anonymous operation has already been performed on the current data table; If not, delete the incomplete multidimensional medical records and all patients' medical identifier attribute data in the multidimensional medical data table, and calculate the distance between any two multidimensional medical records' medical sensitive attribute data. If so, determine whether there are any update operations such as adding, deleting, or modifying in the current multidimensional medical data table; if a multidimensional medical record deletion operation is performed in the current multidimensional medical data table, find the equivalence class corresponding to the deleted record, randomly copy the medical records in the equivalence class, and ensure that all equivalence classes contain k multidimensional medical records and satisfy the constraints of equivalence class partitioning; if a multidimensional medical record addition operation is performed in the current multidimensional medical data table, calculate the newly added multidimensional medical record and add it to the equivalence class with the shortest distance to its medical quasi-identifier attribute. If the current multidimensional medical data table has not changed, directly publish its corresponding multidimensional medical anonymous data table and wait to receive the multidimensional medical data table that needs to be anonymized; The data preprocessing further comprises: combining the number of sensitive attributes in the multi-dimensional medical data table sas Determining the size of the dimension o , constructing a search space, obtaining m solutions and completing the initialization of the m solutions, generating solutions in the search space through formula (2) x Single cluster center in , and repeating K times to obtain the final solution , wherein represents the Kth cluster center, so as to produce m solutions and form a solution matrix ; in, The current cluster center is represented by the first... Sensitive medical data This indicates the maximum sensitive data for the current attribute. This represents the minimum sensitive data for the current attribute. Indicates the first A chaotic mapping of random numbers for a tent can be represented as: in, Represents a random number between 0 and 1. This represents a fixed parameter between 0 and 1; The data preprocessing also includes: calculating the fitness value of each solution and determining the current iteration number. it Is it greater than the maximum number of iterations? Maxit If yes, select the solution with the highest fitness as the optimal cluster center solution for equivalence class partitioning; The fitness value of each solution is calculated using formula (4): in, it Indicates the current iteration number. Indicates the number of iterations in the current iteration. cs The fitness value of each solution k Indicates the number of clusters. Indicates the first j Multidimensional medical records up to the first q Cluster center The distance to sensitive medical data; If the current iteration number it Less than the maximum number of iterations Maxit Perform the following operations m Next: Calculate the probability of each solution being selected using formula (5), and randomly select one solution using a roulette wheel method. cs And calculate the new cluster center solution using formula (6). cs Determine if the fitness value of the new solution is less than the fitness value of the solution before calculation. If yes, update the solution. cs Otherwise, do not update the solution; the current solution count remains the same. count(cs) Add 1; in, Indicates the first cs The probability of each solution being selected; in, This represents the new solution after calculation. This represents the solution before calculation. This represents a random number in the range of -1 to 1. peep This represents a fixed parameter used to simulate the vocalizations of a meerkat leader; Determine the corresponding solution count(cs) Is it greater than the parameter? L If yes, initialize the current solution using formula (2). cs Otherwise, the current solution cs remains unchanged; For each cluster center solution, the mongoose sleep hill for the current iteration number is calculated using formula (7). SM(it) ; in, The mongoose sleep mound represents the current iteration number; Mongoose Sleep Hill for Determining Current Iteration Count Is the number of meerkat sleep mounds greater than the number of iterations in the previous iteration? If yes, simulate the meerkat searching for food in different regions using formula (8), update the current position of all cluster center solutions, and recalculate the fitness of all solutions; otherwise... Simulate mongoose hunting prey using formula (9), update the current position of all cluster center solutions, and recalculate the fitness of all solutions; in, This represents the cs-th solution after the update. in, The maximum number of iterations, m The number of solutions; Equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values; Data generalization and anonymized data redistribution.
2. The method for protecting dynamic multidimensional medical privacy data based on mongoose optimization according to claim 1, characterized in that, The parameter initialization operation includes: initializing the current iteration number. it =1, maximum number of iterations Number of categories K ,parameter L Maximum information loss Maxloss Minimum sensitivity Attribute data difference value Minsadv Solution count .
3. The method for protecting dynamic multidimensional medical privacy data based on mongoose optimization according to claim 1, characterized in that... The process of determining whether the current data table has already undergone anonymization; if not, deleting incomplete multidimensional medical records and all patients' medical identifier attribute data from the multidimensional medical data table, and calculating the distance between any two multidimensional medical records' medical sensitive attribute data; further includes: deleting incomplete multidimensional medical records and all patients' medical identifier attribute data from the multidimensional medical data table, and calculating the distance between any two multidimensional medical records' medical sensitive attribute data.
4. The method for dynamic multidimensional medical privacy data protection based on mongoose optimization according to claim 1, characterized in that, The process involves deleting incomplete multidimensional medical records and all patients' medical identifier attribute data from the multidimensional medical data table, and calculating the distance between any two multidimensional medical records' medical sensitive attribute data, including: The distance between medical sensitive attribute data between any two multidimensional medical records is calculated using formula (1); in, express A multidimensional medical record, Indicates the first A multidimensional medical record, Indicates the first Article and No. Distance of sensitive attribute data in multidimensional medical records. Indicates the first The first medical record Distance of sensitive attribute data in multidimensional medical records. Indicates the first The first medical record Numeric sensitive attribute values, No. The first medical record Numeric sensitive attribute value, Indicates the first Article and No. The first medical record The absolute value of the difference between numerical sensitive attribute data. n Indicates the number of multidimensional medical records. This indicates the number of numerical medical-sensitive attributes. Indicates the first The first multidimensional medical record Categorical sensitive attribute data, Indicates the first The first multidimensional medical record Categorical sensitive attribute data, Indicates the first Article and No. The first multidimensional medical record The lowest common ancestor node height of each categorical sensitive attribute data. This indicates the total height of the current category attribute. This indicates the number of categorical medical sensitivity attributes.
5. The method for dynamic multidimensional medical privacy data protection based on mongoose optimization according to claim 1, characterized in that, The equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values includes: calculating the quasi-identifier attribute data distance between multidimensional medical records using formula (10), selecting the patient medical record with the closest quasi-identifier attribute data distance from each cluster to form an equivalence class, deleting the selected patient medical record from the original cluster, and completing the process. Initialize each equivalence class and back up the equivalence class number to which each multidimensional medical record belongs locally; in, Indicates the first Article and No. The distance of the quasi-identifier attribute data of a multidimensional medical record. Indicates the first The first medical record Numeric quasi-identifier attribute values. Indicates the first The first medical record Numeric quasi-identifier attribute values. Indicates the first Article and No. The first medical record The absolute value of the difference between the attribute data of each numeric quasi-identifier. Indicates the number of attributes in the numeric medical quasi-identifier. Indicates the first The first multidimensional medical record A categorical quasi-identifier attribute Indicates the first The first multidimensional medical record A categorical quasi-identifier attribute Indicates the first Article and No. The first multidimensional medical record Number of categorical quasi-identifier attributes According to the height of the lowest common ancestor node, This indicates the total height of the current categorical quasi-identifier attribute. Indicates the number of categorical medical quasi-identifier attributes, and , n This indicates the number of multidimensional medical records.
6. The method for protecting dynamic multidimensional medical privacy data based on mongoose optimization according to claim 1, characterized in that, The data generalization and anonymized data redistribution include: calculating the information loss amount and average medical sensitivity attribute data difference value for each equivalence class using formulas (11) and (12), respectively, and determining whether the information loss amount for each equivalence class is greater than a threshold. Maxloss And whether the average difference value of medical sensitivity attribute data is less than the threshold. Minsadv If yes, the equivalence classes that do not meet the constraints are repartitioned and the data is generalized. By forging multidimensional medical records, all equivalence classes meet the constraints, and a multidimensional medical anonymized data table is published. Otherwise, the data is directly generalized and a multidimensional medical anonymized data table is published. in, Indicates the first Information loss per equivalence class Indicates the first equivalence class in the current equivalence class. The maximum value of a numerical medical quasi-identifier attribute data. Indicates the first equivalence class in the current equivalence class. Minimum value of a numerical medical quasi-identifier attribute data. Indicates the first equivalence class in the current equivalence class. The absolute difference between the maximum and minimum values of a numerical medical quasi-identifier attribute. This indicates the first [item] in the entire multidimensional medical data table. The maximum value of a numerical medical quasi-identifier attribute data. The minimum value of the first numeric medical quasi-identifier attribute in the entire multidimensional medical data table. This indicates the first [item] in the entire multidimensional medical data table. The absolute difference between the maximum and minimum values of a numerical medical quasi-identifier attribute. Indicates the first equivalence class in the current equivalence class. The common node height of the categorical medical quasi-identifier attribute data. Indicates the first The total height of each categorical medical quasi-identifier attribute; in, Indicates the first The average difference in medical sensitivity attribute data among the equivalence classes, k This indicates the number of multidimensional medical records in the equivalence class.
7. A dynamic multidimensional medical privacy data protection system based on mongoose optimization, characterized in that, include: Initialization module: Used to read the original multidimensional medical data table and perform parameter initialization operations; Data preprocessing module: used to perform data preprocessing, which includes: Determine if an anonymous operation has already been performed on the current data table; If not, delete the incomplete multidimensional medical records and all patients' medical identifier attribute data in the multidimensional medical data table, and calculate the distance between any two multidimensional medical records' medical sensitive attribute data. If so, determine whether there are any update operations such as adding, deleting, or modifying in the current multidimensional medical data table; if a multidimensional medical record deletion operation is performed in the current multidimensional medical data table, find the equivalence class corresponding to the deleted record, randomly copy the medical records in the equivalence class, and ensure that all equivalence classes contain k multidimensional medical records and satisfy the constraints of equivalence class partitioning; if a multidimensional medical record addition operation is performed in the current multidimensional medical data table, calculate the newly added multidimensional medical record and add it to the equivalence class with the shortest distance to its medical quasi-identifier attribute. If the current multidimensional medical data table has not changed, directly publish its corresponding multidimensional medical anonymous data table and wait to receive the multidimensional medical data table that needs to be anonymized; The data preprocessing also includes: combining the number of sensitive attributes in the multidimensional medical data table. sas Determine the dimensions o The size of the search space is used to obtain... m One solution and completion m The initialization of each solution involves generating a solution within the search space using formula (2). x single cluster center , and repeat K The final solution was obtained this time. ,in This represents the Kth cluster center, from which we can generate m Several solutions, forming a solution matrix. ; in, The current cluster center is represented by the first... Sensitive medical data This indicates the maximum sensitive data for the current attribute. This represents the minimum sensitive data for the current attribute. Indicates the first A chaotic mapping of random numbers for a tent can be represented as: in, Represents a random number between 0 and 1. This represents a fixed parameter between 0 and 1; The data preprocessing also includes: calculating the fitness value of each solution and determining the current iteration number. it Is it greater than the maximum number of iterations? Maxit If yes, select the solution with the highest fitness as the optimal cluster center solution for equivalence class partitioning; The fitness value of each solution is calculated using formula (4): in, it Indicates the current iteration number. Indicates the number of iterations in the current iteration. cs The fitness value of each solution k Indicates the number of clusters. Indicates the first j Multidimensional medical records up to the first q Cluster center The distance to sensitive medical data; If the current iteration number it Less than the maximum number of iterations Maxit Perform the following operations m Next: Calculate the probability of each solution being selected using formula (5), and randomly select one solution using a roulette wheel method. cs And calculate the new cluster center solution using formula (6). cs Determine if the fitness value of the new solution is less than the fitness value of the solution before calculation. If yes, update the solution. cs Otherwise, do not update the solution; the current solution count remains the same. count (cs) Add 1; in, Indicates the first cs The probability of each solution being selected; in, This represents the new solution after calculation. This represents the solution before calculation. This represents a random number in the range of -1 to 1. peep This represents a fixed parameter used to simulate the vocalizations of a meerkat leader; Determine the corresponding solution count(cs) Is it greater than the parameter? L If yes, initialize the current solution using formula (2). cs Otherwise, the current solution cs remains unchanged; For each cluster center solution, the mongoose sleep hill for the current iteration number is calculated using formula (7). SM(it) ; in, The mongoose sleep mound represents the current iteration number; Mongoose Sleep Hill for Determining Current Iteration Count Is the number of meerkat sleep mounds greater than the number of iterations in the previous iteration? If yes, use formula (8) to simulate meerkats searching for food in different areas, update the current position of all cluster center solutions, and recalculate the fitness of all solutions; otherwise, use formula (9) to simulate meerkats hunting prey, update the current position of all cluster center solutions, and recalculate the fitness of all solutions. in, The maximum number of iterations, m The number of solutions; Equivalence class partitioning module: used for equivalence class partitioning based on information loss and average medical sensitivity attribute data difference values; Generalization and Redistribution module: Used for data generalization and anonymous data redistribution.
Citation Information
Patent Citations
Patient medical privacy data protection method and device and computer storage medium
CN114091097A