A system and method for processing medical data of rare diseases

Through the combination of federated learning and particle swarm optimization algorithm, data silos and privacy problems in rare disease data analysis are solved, and efficient model training and data processing are achieved.

CN119150367BActive Publication Date: 2025-02-18PEKING UNION MEDICAL COLLEGE HOSPITAL +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411649562.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-02-18
Estimated Expiration
2044-11-19

AI Technical Summary

Technical Problem

The scarcity and confidentiality of rare disease data lead to medical institutions facing data silos, increasing the difficulty of model training, and having high requirements for hardware resources.

Method used

Through the combination of federated learning model training mechanism and particle swarm optimization algorithm, a processing system for rare disease medical data is built, which reduces the difficulty of model training and ensures the privacy of data.

Benefits of technology

It realizes that while ensuring data privacy, it reduces the difficulty of training data analysis models for rare diseases and reduces the data transmission load.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119150367B_ABST
    Figure CN119150367B_ABST
Patent Text Reader

Abstract

The present application provides a system and method for processing medical data of rare diseases, which relates to the field of data processing technology, wherein a server generates global model parameters and an initial analysis model according to a medical data analysis request initiated by a target client, and sends the global model parameters and the initial analysis model to multiple clients; each client trains the initial analysis model based on the local medical data of the client, and sends the local model parameters and the loss function value of the local analysis model to the server; the server inputs the multiple local model parameters and the loss function value received in this round into a particle swarm optimization model to obtain the optimized model parameters output by the particle swarm optimization model; the server determines whether the optimized model parameters meet preset conditions, and if not, sends the optimized model parameters to each client so that the multiple clients update the local analysis model; the target client obtains the analysis results of the rare disease types output by the optimized analysis model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular, to a system and method for processing medical data of rare diseases. Background Art

[0002] With the development of science and technology, medical data analysis increasingly relies on AI technology, such as the analysis of disease conditions. However, due to the scarcity and confidentiality of rare disease data, medical institutions often face the problem of "data islands" due to insufficient data when analyzing rare disease data. This not only increases the difficulty of model training, but also requires certain hardware resources for the diagnosis and treatment platform. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a system and method for processing medical data of rare diseases. By combining the federated learning model training mechanism and the particle swarm optimization algorithm, a system for processing medical data of rare diseases is constructed, which reduces the training difficulty of the rare disease data analysis model while ensuring the privacy of the rare disease data and reducing the load of data transmission on the processing system.

[0004] In a first aspect, the present application provides a system for processing medical data of rare diseases, wherein the processing system includes a server and multiple clients, each of which is deployed in a different medical institution, wherein the server generates global model parameters and an initial analysis model based on a medical data analysis request initiated by a target client, and sends the global model parameters and the initial analysis model to the multiple clients, wherein the medical data analysis request is used to indicate the type of medical data and rare diseases to be analyzed by the medical institution corresponding to the target client, and the multiple clients include the target client and other clients that join the medical data analysis request; each client trains the initial analysis model based on the local medical data of the client to obtain a local analysis model of the client, and sends the local analysis model to the multiple clients. The local model parameters and loss function values ​​of the type are sent to the server, and the local medical data is matched with the medical data type and the rare disease; the server inputs the multiple local model parameters and loss function values ​​received in this round into the particle swarm optimization model to obtain the optimization model parameters output by the particle swarm optimization model; the server determines whether the optimization model parameters meet the preset conditions, if not, the optimization model parameters are sent to each client so that multiple clients update the local analysis model, and if so, the optimization model parameters are sent to the target client; the target client inputs the medical data to be tested that matches the medical data type into the optimization analysis model corresponding to the optimization analysis parameters to obtain the analysis results of the rare disease types output by the optimization analysis model.

[0005] Preferably, the server obtains the optimization model parameters output by the particle swarm optimization model in each round by the following method:

[0006] The local model parameters sent by each client in this round are used as the position of particle i, and the loss function difference of each client is used as the speed of the corresponding particle i; determine whether the convergence condition is met; if not, update the position and speed of each particle i, and return to the step of determining whether the convergence condition is met; if so, output the particle optimal position and the global optimal position of each particle i as the optimization model parameters; wherein the loss function difference is the difference between the loss function value sent by the client in this round and the mean of the loss function in the previous round.

[0007] Preferably, the server sends the optimized model parameters of each round to each client in the following manner:

[0008] A target particle j corresponding to the client among all particles output by the particle swarm optimization model is determined, and a first optimization model parameter indicated by the particle optimal position of the target particle j and a second optimization model parameter indicated by the global optimal position are sent to the client.

[0009] Preferably, the server sends the optimized model parameters of each round to each client in the following manner:

[0010] Determine the third optimization model parameter indicated by the particle optimal position of all particles i output by the particle swarm optimization model and the fourth optimization model parameter indicated by the global optimal position; for each model sub-parameter item in the optimization model parameters, sort the sub-parameter absolute values ​​corresponding to the model sub-parameter item in all the third optimization model parameters to obtain the first N1 sub-parameter values ​​corresponding to the model sub-parameter; for each model sub-parameter item in the optimization model parameters, based on the directions of the first N1 sub-parameter values ​​corresponding to the model sub-parameter item, determine the target direction and N2 sub-parameter values ​​matching the target direction, where N2 is less than N1; for each model sub-parameter item in the optimization model parameters, calculate the sub-parameter mean of the N2 sub-parameter values ​​corresponding to the model sub-parameter item; for each model sub-parameter item in the optimization model parameters, merge the sub-parameter mean of the model sub-parameter item with the sub-parameter value of the model sub-parameter item in the fourth optimization model parameter to serve as the parameter value of the model sub-parameter item in the optimization model parameters, and send it to the client.

[0011] Preferably, for each client, the model parameters of the local analysis model are updated in each round in the following manner: based on the received optimization model parameters and the local local model parameters, new local model parameters are calculated and updated as the model parameters of the local analysis model.

[0012] Preferably, the server generates an encryption key based on the optimization model parameters of the client in the previous round; encrypts the optimization model parameters of the client in this round with the encryption key, and then sends them to the client.

[0013] Preferably, the server generates an encryption key in the following manner: multiplying the parameter values ​​of all sub-parameter items in the optimization model parameters to calculate a comprehensive parameter value; converting the comprehensive parameter value into a binary format and completing it to a preset position to generate an encryption key.

[0014] Preferably, before the step of determining whether the convergence condition is met, the server randomly generates a preset number of random model parameters and random loss function differences as the position and velocity of particle i based on the local model parameters and loss function differences sent by each client in this round.

[0015] Preferably, the server determines whether the optimization model parameters meet the preset conditions in the following manner: determining whether the loss function value of the optimization analysis model corresponding to the optimization model parameters is less than a first preset threshold, if so, determining that the optimization analysis model meets the preset conditions, or determining whether the iteration round of the server is greater than a second preset threshold, if so, determining that the optimization model parameters meet the preset conditions.

[0016] In the second aspect, the present application provides a method for processing medical data of rare diseases, the method comprising a server generating global model parameters and an initial analysis model according to a medical data analysis request initiated by a target client, and sending the global model parameters and the initial analysis model to multiple clients, wherein the medical data analysis request is used to indicate the type of medical data and rare diseases to be analyzed by the medical institution corresponding to the target client, and the multiple clients include the target client and other clients that join the medical data analysis request; each client trains the initial analysis model based on the local medical data of the client to obtain a local analysis model of the client, and sends the local model parameters and loss function values ​​of the local analysis model to the server. Sent to the server, the local medical data is matched with the medical data type and the rare disease; the server inputs the multiple local model parameters and loss function values ​​received in this round into the particle swarm optimization model to obtain the optimized model parameters output by the particle swarm optimization model; the server determines whether the optimized model parameters meet the preset conditions, if not, the optimized model parameters are sent to each client so that multiple clients update the local analysis model, if so, the optimized model parameters are sent to the target client; the target client inputs the medical data to be tested that matches the medical data type into the optimized analysis model corresponding to the optimized analysis parameters to obtain the analysis results of the rare disease types output by the optimized analysis model.

[0017] The present application provides a system and method for processing medical data of rare diseases. By combining a federated learning model training mechanism and a particle swarm optimization algorithm, a system for processing medical data of rare diseases is constructed, which reduces the difficulty of training rare disease data analysis models while ensuring the privacy of rare disease data and reducing the load of data transmission on the processing system. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0019] Figure 1 A schematic diagram of a processing flow of a system for processing medical data of rare diseases provided in an embodiment of the present application;

[0020] Figure 2 A schematic diagram of a flow chart of optimization steps of a particle swarm optimization model provided in an embodiment of the present application;

[0021] Figure 3 A flowchart of the steps of server-side fusion generation of optimization model parameters provided in an embodiment of the present application. DETAILED DESCRIPTION

[0022] First, the applicable scenarios of this application are described. The technical solution of this application can be applied to a medical data processing system, specifically a medical data processing system built based on federated learning. The processing system includes a server and multiple clients, each of which is deployed in a different medical institution.

[0023] The existing federated learning model training mechanism is usually: the server sends the model to the client of each medical institution for local training, and then aggregates and evaluates the models uploaded by each client. Although this ensures the privacy and security of the client's local data, the accuracy of the model is not high, especially for rare disease problem analysis scenarios where sample data is scarce, the model training effect is poor.

[0024] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0025] Figure 1 A schematic diagram of the processing flow of a system for processing medical data of rare diseases provided in an embodiment of the present application.

[0026] The present application provides a processing system for rare disease medical data, and the processing system implements model training based on a federated learning mechanism in the following manner.

[0027] The server generates global model parameters and initial analysis models based on the medical data analysis requests initiated by the target clients, and sends them to multiple clients.

[0028] Among them, the medical data analysis request is used to indicate the types of medical data and rare diseases to be analyzed by the medical institution corresponding to the target client, and the multiple clients include the target client and other clients that join the medical data analysis request.

[0029] The target client here is the target medical institution that initiates the medical data analysis request. After the medical data analysis request is sent to the server, the server will broadcast it to the clients corresponding to the remaining medical institutions in the mechanism.

[0030] The remaining medical institutions can choose whether to respond to the medical data analysis request and use local medical data to help the target medical institutions jointly train and generate AI models.

[0031] The medical data types here can include images, case forms, records, gene sequences, etc. Rare diseases can be divided into multiple systems, such as blood system diseases, nervous system diseases, cardiovascular system diseases, urinary system diseases, endocrine system diseases, skeletal system diseases, respiratory system diseases, immune system diseases, digestive system diseases, ophthalmic system diseases, skin system diseases, pediatric system diseases and obstetrics and gynecology system diseases. Each system includes at least one disease, such as respiratory system diseases, including lymphangioleiomyomatosis, alveolar proteinosis, and idiopathic pulmonary fibrosis.

[0032] For example, the target medical institution A initiates a medical data analysis request, which indicates that the type of medical data to be analyzed is medical images, specifically coronary CTA images, and the medical data analysis request indicates that the rare disease to be analyzed may be coronary artery ectasia. That is, the input of the AI ​​model that the target medical institution A wants to build may be the coronary CTA image of the patient, and the output may be the probability value of the disease, the degree of the disease, or the identification of the key areas of the disease, and other analysis results.

[0033] The remaining medical institutions can choose whether to join the medical data analysis request of target medical institution A based on the situation of local medical data.

[0034] Furthermore, the server can determine the target medical institution A and other medical institutions B, C, D, E that join the medical data analysis request and send global model parameters and initial analysis models to the respective clients of medical institutions A, B, C, D, E.

[0035] The initial analysis model here refers to the untrained basic neural network model, such as CNN (Convolutional Neural Networks), BERT (Bidirectional Encoder Representations from Transformers) model, etc.

[0036] The global model parameters here are initial parameters, which may include the convolution kernel size, the coefficient of the regularization term, the number of neural network layers, the kernel function of the support vector machine, etc.

[0037] The server can select the appropriate AI model and the corresponding global model parameters according to the type of medical data and rare diseases to be analyzed by the target medical institution indicated by the medical data analysis request. For example, when the medical data type is medical imaging, CNN can be selected as the initial analysis model. When the medical data type is time series data such as electrocardiogram, RNN (Recurrent Neural Network) can be selected as the initial analysis model. The global model parameters here can be the commonly used initial values ​​of the model set based on experience.

[0038] Each client trains an initial analysis model based on the client's local medical data to obtain the client's local analysis model, and sends the local model parameters and loss function values ​​of the local analysis model to the server, matching the local medical data with the medical data type and rare disease types.

[0039] For the clients of different medical institutions A, B, C, D, and E, the clients use local medical data to train the initial analysis model. The training loss function, number of iterations, and other training methods can be uniformly specified by the server, such as 5 or 10 times per round, for a total of 10 rounds. For example, medical institution A inputs the initial analysis model of the coronary CTA image values ​​of patient a, and trains it to output the probability value of patient a being sick. Then medical institution B can input the initial analysis model of the coronary CTA image values ​​of patient b, and train it to output the probability value of patient b being sick, and so on, to obtain the local analysis model and corresponding model parameters trained by each client through local rare disease data.

[0040] Exemplarily, the loss function may be a mean square error loss function, a cross entropy loss function, or the like.

[0041] For example, in a specific embodiment of the present application, the loss function can be expressed as:

[0042] ;

[0043] in, Indicates the number of samples in the client's local medical data. Indicates The correct result of samples is Indicates The prediction results of samples are is the regularization coefficient, Represents model parameters.

[0044] After each round of iteration, each client can feed back the local model parameters and loss function value of the current local analysis model to the server, which can be specifically expressed as , ,……, ,in, , , , They are multiple different model sub-parameter items of the local analysis model, Lost is the loss function value.

[0045] The server inputs all local model parameters and loss function values ​​received in this round into the particle swarm optimization model to obtain the optimized model parameters output by the particle swarm optimization model.

[0046] For example, the server receives - Input to the particle swarm optimization model, such as Figure 2 As shown in Figure 2, the particle swarm optimization model outputs the optimization model parameters for each round in the following way:

[0047] S100, taking the local model parameters sent by each client in this round as the position of particle i, and taking the loss function difference of each client as the speed of the corresponding particle i.

[0048] Among them, the loss function difference is the difference between the loss function value sent by the client in this round and the average of the loss function value in the previous round.

[0049] For each particle i, its position can be expressed as , ,……, .

[0050] For each particle i, its velocity can be expressed as = - , = - ,……, = - .in, It is the mean of the loss function values ​​corresponding to all clients in the previous round.

[0051] S101: Determine whether a convergence condition is met.

[0052] The convergence condition here may be the number of iterations, etc.

[0053] And the fitness value of each particle is calculated through the objective function, and compared with the optimal position of the particle to determine the optimal position of the particle and the global optimal position. The objective function here can be determined by the loss function of the pre-trained model.

[0054] For example, the objective function can be expressed as:

[0055]

[0056] in, is the model parameter (can also be the particle position), t1 and t2 are the value ranges of the loss function.

[0057] S102: If not, update the position and velocity of each particle i, and return to the step of determining whether the convergence condition is met.

[0058] In step S102, the position and velocity of each particle i can be updated in the following way:

[0059] + + ( );

[0060] + ;

[0061] in, is the updated velocity of particle i, is the velocity of particle i before updating, is the updated position of particle i, is the position of particle i before updating, is the optimal position of particle i, is the global optimal position, , is the learning parameter value (usually = =2), , is a random parameter value, taking the value [0,1], i=1, 2, 3...N, N is the total number of particles.

[0062] S103: If yes, output the optimal particle position and the global optimal position of each particle i as optimization model parameters.

[0063] Finally, when the convergence condition is met, the optimal particle position and the global optimal position of each particle i can be obtained.

[0064] The server determines whether the optimization model parameters meet the preset conditions. If not, the optimization model parameters are sent to each client so that multiple clients update the local analysis model. If yes, the optimization model parameters are sent to the target client.

[0065] The server can use the optimized model parameters as the model parameters of the initial analysis model to determine the optimized analysis model, and then calculate the accuracy of the optimized analysis model. When the accuracy meets the requirements, the iteration can be ended and the obtained optimized analysis model can be sent to the target client. If the accuracy is not satisfied, the optimized model parameters are fed back to each client so that the client can continue iterative training.

[0066] The server can also determine whether the optimization model parameters meet the preset conditions in the following ways:

[0067] Determine whether the loss function value of the optimization analysis model corresponding to the optimization model parameter is less than the first preset threshold value. If so, determine that the optimization analysis model meets the preset conditions. Or determine whether the iteration round of the server is greater than the second preset threshold value. If so, determine that the optimization model parameter meets the preset conditions. For example, when the server has executed step three 80 times, it can be determined that the optimization analysis model meets the preset conditions.

[0068] The target client inputs the medical data to be tested that matches the medical data type into the optimization analysis model corresponding to the optimization analysis parameters to obtain the analysis results corresponding to the rare diseases output by the optimization analysis model.

[0069] The target client can obtain the corresponding analysis results through the final optimized analysis model. The optimized analysis model here has higher accuracy and better generalization ability, which can provide better auxiliary effect for the analysis of rare diseases.

[0070] In one embodiment of the present application, the server may send the optimization model parameters of each round to each client in the following manner:

[0071] A target particle j corresponding to the client among all particles output by the particle swarm optimization model is determined, and a first optimization model parameter indicated by the particle optimal position of the target particle j and a second optimization model parameter indicated by the global optimal position are sent to the client.

[0072] In this embodiment, the server determines the first optimization model parameter indicated by the particle optimal position of each particle and the second optimization model parameter indicated by the global optimal position and sends them to the client corresponding to the particle.

[0073] For example, the position and velocity of the target particle j are , the first optimization model parameters and the second optimization model parameters corresponding to the target particle j are sent to the client of medical institution A.

[0074] Each client can update the model parameters of the local analysis model in each round by:

[0075] Based on the received optimization model parameters and the local local model parameters, they are fused to calculate new local model parameters and update them into model parameters of the local analysis model.

[0076] For example, medical institution A can perform weighted fusion (or average value, etc.) of the first optimization model parameters and the second optimization model parameters to obtain fused local model parameters, and update them as model parameters of the initial analysis model. The weight values ​​here can be pre-specified.

[0077] In one embodiment of the present application, Figure 3 As shown, the server can also send the optimized model parameters of each round to each client in the following way:

[0078] S200, determining a third optimization model parameter indicated by the particle optimal position of all particles i output by the particle swarm optimization model and a fourth optimization model parameter indicated by the global optimal position.

[0079] The third optimization model parameter may include , ,……, .

[0080] S201, for each model sub-parameter item in the optimization model parameters, sort the sub-parameter absolute values ​​corresponding to the model sub-parameter item in all third optimization model parameters to obtain first N1 sub-parameter values ​​corresponding to the model sub-parameter;

[0081] For example, for the first model sub-parameter item in the optimization model parameter, , , , , By sorting the absolute values ​​of =5.2, =5.0, =4.95, , .

[0082] For the second model subparameter item in the optimization model parameter, , , , , By sorting the absolute values ​​of , , , , and so on.

[0083] Then the sorted sequence is pruned, that is, only the first K% parameter values ​​are retained, and the pruned parameter values ​​are set to zero.

[0084] For example, =5.2, =5.0, =4.95, , , N1=4.

[0085] S202. For each model sub-parameter item in the optimization model parameters, based on the directions of the first N1 sub-parameter values ​​corresponding to the model sub-parameter item, determine a target direction and N2 sub-parameter values ​​matching the target direction, where N2 is less than N1.

[0086] The parameter value of each parameter item can be distinguished based on the sign of the parameter value (+1 or -1).

[0087] Exemplarily, for the first model sub-parameter item in the optimization model parameter, =+5.2, =-5, =+4.95, The target direction here is the sign direction with the highest total amplitude. For example, if the positive amplitude is 5.2+4.95 and the negative amplitude is 4+4.8, the target direction is the positive direction.

[0088] Further, determine =+5.2, =+4.95, N2=2.

[0089] Other model sub-parameter items are also matched separately.

[0090] S203. For each model sub-parameter item in the optimization model parameters, calculate the sub-parameter mean of the N2 sub-parameter values ​​corresponding to the model sub-parameter item.

[0091] Exemplarily, for the first model sub-parameter item in the optimization model parameter, calculate =+5.2, = +4.95, the mean of the sub-parameters is 5.075.

[0092] S204. For each model sub-parameter item in the optimization model parameters, merge the sub-parameter mean of the model sub-parameter item with the sub-parameter value of the model sub-parameter item in the fourth optimization model parameter to serve as the parameter value of the model sub-parameter item in the optimization model parameters, and send it to the client.

[0093] In step S204, taking the first model sub-parameter item in the optimization model parameter as an example, the sub-parameter mean value and the sub-parameter value of the model sub-parameter item in the fourth optimization model parameter may be merged in the following manner:

[0094] ;

[0095] in, To optimize the sub-parameter value of the first model sub-parameter item in the model parameters, is the sub-parameter mean of the first model sub-parameter item obtained in step S203, is the sub-parameter value of the first model sub-parameter item in the fourth optimization model parameter, is the scaling factor, which can be set as needed.

[0096] In this way, the optimization model parameters received by the client can be expressed as The client can directly update it to the model parameters of the local analysis model without processing the received optimized model parameters for reuse. This can reduce the occupancy of local resources on the client and reduce the communication consumption between the server and the client. It can be backward compatible with the client operating environment of some medical institutions with lower configurations, expand the possibility of medical institutions participating in training, and increase the number of training samples.

[0097] Since the incidence of rare diseases is low and there are few samples available, in order to improve the accuracy of the model training process, in one embodiment of the present application, in addition to using real clients as particles, the number of particles can also be expanded in step S100. That is, before the step of determining whether the convergence condition is met, the server also includes randomly generating a preset number of random model parameters and random loss function differences based on the local model parameters and loss function differences sent by each client in this round as the position and speed of particle i.

[0098] Here we can iterate the local model parameters and loss function differences based on the actual client, such as , increase or decrease within the specified range (such as 0.5, 0.2, etc.), and the corresponding and so on as the position and velocity of particle i.

[0099] In this way, the search range of the particle swarm optimization algorithm is expanded, so that the client can obtain a more accurate local analysis model in each round.

[0100] Since the data of rare diseases involves patient privacy, in order to further protect the privacy security of each client's local data, in one embodiment of the present application, the server can generate an encryption key based on the optimization model parameters of the client in the previous round. The server encrypts the optimization model parameters of the client in this round with the encryption key and sends it to the client. In this way, the client can decrypt the optimization model parameters of the current round sent by the server through the optimization model parameters of the previous round stored locally. In this way, the model parameters can be prevented from being stolen, ensuring the security of the patient's medical data.

[0101] Specifically, the server can generate encryption keys in the following ways:

[0102] The parameter values ​​of all sub-parameter items in the optimization model parameters are multiplied to calculate the comprehensive parameter value. The comprehensive parameter value is converted into binary format and completed to the preset position to generate the encryption key.

[0103] For example, the optimization model parameters sent by the server in the previous round , calculate As the comprehensive parameter value, the comprehensive parameter value is converted into binary. The binary is parted, such as filling it with 0 to 128 bits. Then, the server can use the AES encryption algorithm to encrypt the optimization model parameters to be sent in this round and send it to the corresponding client.

[0104] In one embodiment of the present application, a method for processing medical data of rare diseases is also provided, which is applicable to a system for processing medical data of rare diseases, and the method comprises:

[0105] The server generates global model parameters and an initial analysis model according to a medical data analysis request initiated by a target client, and sends the global model parameters and the initial analysis model to multiple clients, wherein the medical data analysis request is used to indicate the types of medical data and rare diseases to be analyzed by the medical institution corresponding to the target client, and the multiple clients include the target client and other clients that join the medical data analysis request;

[0106] Each client trains the initial analysis model based on the local medical data of the client to obtain the local analysis model of the client, and sends the local model parameters and loss function value of the local analysis model to the server, and the local medical data is matched with the medical data type and the rare disease type;

[0107] The server inputs the multiple local model parameters and loss function values ​​received in this round into the particle swarm optimization model to obtain the optimized model parameters output by the particle swarm optimization model;

[0108] The server determines whether the optimized model parameters meet the preset conditions. If not, the optimized model parameters are sent to each client so that multiple clients update the local analysis model. If yes, the optimized model parameters are sent to the target client.

[0109] The target client inputs the medical data to be tested that matches the medical data type into the optimization analysis model to obtain the analysis results of rare diseases output by the optimization analysis model.

[0110] The present application provides a method for processing medical data of rare diseases. By combining a federated learning model training mechanism and a particle swarm optimization algorithm, a processing system for medical data of rare diseases is constructed, which reduces the difficulty of training the rare disease data analysis model while ensuring the privacy of the rare disease data and reducing the load of data transmission on the processing system.

[0111] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, and the indirect coupling or communication connection of devices or units can be electrical, mechanical or other forms.

[0112] In addition, the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0113] Furthermore, the functional modules in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.

[0114] It should be noted that if the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, and other media that can store program codes.

[0115] In this document, relational terms such as first and second, etc. are used merely to distinguish one entity or operation from another entity or operation, but do not necessarily require or imply any such actual relationship or order between these entities or operations.

[0116] The above are only embodiments of the present application and are not intended to limit the scope of protection of the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the scope of protection of the present application.

Claims

1. A system for processing medical data of rare diseases, characterized in that: The processing system includes a server and multiple clients, each of which is deployed in a different medical institution, wherein: The server generates global model parameters and an initial analysis model according to a medical data analysis request initiated by a target client, and sends the global model parameters and an initial analysis model to multiple clients, wherein the medical data analysis request is used to indicate the types of medical data and rare diseases to be analyzed by the medical institution corresponding to the target client, and the multiple clients include the target client and other clients that join the medical data analysis request; Each client trains the initial analysis model based on the local medical data of the client to obtain a local analysis model of the client, and sends the local model parameters and loss function value of the local analysis model to the server, wherein the local medical data matches the medical data type and the rare disease type; The server inputs the multiple local model parameters and loss function values ​​received in this round into the particle swarm optimization model to obtain the optimized model parameters output by the particle swarm optimization model; The server determines whether the optimization model parameters meet the preset conditions. If not, the server sends the optimization model parameters to each client so that multiple clients update the local analysis model. If yes, the server sends the optimization model parameters to the target client. The target client inputs the medical data to be tested that matches the medical data type into the optimization analysis model corresponding to the optimization model parameters to obtain the analysis results of the rare diseases output by the optimization analysis model.

2. The system according to claim 1, characterized in that The server obtains the optimization model parameters output by the particle swarm optimization model in each round in the following way: The local model parameters sent by each client in this round are used as the position of particle i, and the difference in loss function of each client is used as the speed of the corresponding particle i; Determine whether the convergence condition is met; If not, update the position and velocity of each particle i and return to the step of determining whether the convergence condition is met; If so, the optimal particle position and the global optimal position of each particle i are output as optimization model parameters; The loss function difference is the difference between the loss function value sent by the client in this round and the mean value of the loss function in the previous round.

3. The system according to claim 2, characterized in that The server sends the optimized model parameters of each round to each client in the following way: A target particle j corresponding to the client among all particles output by the particle swarm optimization model is determined, and a first optimization model parameter indicated by the particle optimal position of the target particle j and a second optimization model parameter indicated by the global optimal position are sent to the client.

4. The system according to claim 2, characterized in that The server sends the optimized model parameters of each round to each client in the following way: Determine a third optimization model parameter indicated by the particle optimal position of all particles i output by the particle swarm optimization model and a fourth optimization model parameter indicated by the global optimal position; For each model sub-parameter item in the optimization model parameters, the sub-parameter absolute values ​​corresponding to the model sub-parameter item in all the third optimization model parameters are sorted to obtain the first N1 sub-parameter values ​​corresponding to the model sub-parameter; For each model sub-parameter item in the optimization model parameter, based on the directions of the first N1 sub-parameter values ​​corresponding to the model sub-parameter item, determine the target direction and N2 sub-parameter values ​​matching the target direction, where N2 is less than N1; For each model sub-parameter item in the optimization model parameters, calculate the sub-parameter mean of the N2 sub-parameter values ​​corresponding to the model sub-parameter item; For each model sub-parameter item in the optimization model parameters, the sub-parameter mean of the model sub-parameter item is fused with the sub-parameter value of the model sub-parameter item in the fourth optimization model parameter to serve as the parameter value of the model sub-parameter item in the optimization model parameters, and sent to the client.

5. The system according to claim 3 or 4, characterized in that: For each client, the model parameters of the local analysis model are updated in the following way in each round: Based on the received optimization model parameters and the local local model parameters, new local model parameters are calculated and updated as model parameters of the local analysis model.

6. The system according to claim 3 or 4, characterized in that: The server generates an encryption key based on the client's previous round of optimized model parameters; The optimization model parameters of the client in this round are encrypted by the encryption key and sent to the client.

7. The system according to claim 6, characterized in that The server generates encryption keys in the following way: Multiply the parameter values ​​of all sub-parameter items in the optimization model parameters to calculate the comprehensive parameter value; The comprehensive parameter value is converted into a binary format and completed to a preset position to generate an encryption key.

8. The system according to claim 2, characterized in that Before determining whether the convergence condition is met, the server randomly generates a preset number of random model parameters and random loss function differences as the position and velocity of particle i based on the local model parameters and loss function differences sent by each client in this round.

9. The system according to claim 2, characterized in that The server determines whether the optimization model parameters meet the preset conditions in the following ways: Determine whether the loss function value of the optimization analysis model corresponding to the optimization model parameter is less than a first preset threshold value, and if so, determine that the optimization analysis model meets the preset conditions, or Determine whether the iteration round of the server is greater than a second preset threshold, and if so, determine that the optimization model parameters meet the preset conditions.

10. A method for processing rare disease medical data, characterized in that: The method comprises: The server generates global model parameters and an initial analysis model according to a medical data analysis request initiated by a target client, and sends the global model parameters and an initial analysis model to multiple clients, wherein the medical data analysis request is used to indicate the types of medical data and rare diseases to be analyzed by the medical institution corresponding to the target client, and the multiple clients include the target client and other clients that join the medical data analysis request; Each client trains the initial analysis model based on the local medical data of the client to obtain a local analysis model of the client, and sends the local model parameters and loss function value of the local analysis model to the server, wherein the local medical data matches the medical data type and the rare disease type; The server inputs the multiple local model parameters and loss function values ​​received in this round into the particle swarm optimization model to obtain the optimized model parameters output by the particle swarm optimization model; The server determines whether the optimization model parameters meet the preset conditions. If not, the server sends the optimization model parameters to each client so that multiple clients update the local analysis model. If yes, the server sends the optimization model parameters to the target client. The target client inputs the medical data to be tested that matches the medical data type into the optimization analysis model corresponding to the optimization analysis parameters to obtain the analysis results of the rare diseases output by the optimization analysis model.

Citation Information

Patent Citations

  • Rare disease classification method based on federal element learning

    CN114566277A

  • Medical privacy data processing method and device, computer equipment and storage medium

    CN116305289A