Senile disease classification method fusing semi-supervised learning and multi-branch neural network
By integrating semi-supervised learning with multi-branch neural networks, this method preprocesses and trains models on datasets of chronic diseases in the elderly, solving the problems of difficult dataset collection and incomplete diagnosis. It enables comprehensive diagnosis and assessment of multiple types of chronic diseases in the elderly, improving diagnostic accuracy.
Patent Information
- Application Number
- CN202411273540.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-12
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2044-09-12
AI Technical Summary
Existing technologies for diagnosing chronic diseases in the elderly suffer from problems such as difficulty in collecting datasets, high resource consumption, limited diagnostic methods, and incomplete classification, thus failing to provide a comprehensive health assessment.
We adopted a method that integrates semi-supervised learning and multi-branch neural networks. By preprocessing the dataset of chronic diseases in the elderly, we selected important indicators using cross-correlation coefficients and SHAP values to establish a classification model of chronic diseases in the elderly. We combined backpropagation neural networks and residual convolutional neural networks and used high-quality labels and pseudo-labels for training to improve diagnostic accuracy.
It enables comprehensive diagnosis and assessment of multiple types of chronic diseases in the elderly, reduces the misdiagnosis rate, improves diagnostic accuracy, and reduces the resource consumption of data collection and processing.
Smart Images

Figure CN119361166B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The embodiment of the application relates to the technical field of elderly chronic disease treatment, and particularly relates to an elderly chronic disease typing method fusing semi-supervised learning and a multi-branch neural network. BACKGROUND
[0002] With the acceleration of global aging, the number of people suffering from elderly chronic diseases (such as hypertension, diabetes, coronary atherosclerotic heart disease, etc.) is growing. Elderly chronic diseases not only have a significant impact on the health of the elderly, but also bring a heavy burden to the social medical system. Therefore, accurate typing and management of elderly chronic diseases have become an important research direction in the medical and public health fields. Elderly chronic disease typing is to divide patients into different severity levels by analyzing their medical history, clinical data and other relevant information, so as to develop more personalized and precise treatment plans. Correct typing can help doctors better understand the pathological mechanism of the disease, predict the development trend of the disease, and provide more personalized treatment and care for patients.
[0003] Currently, in the research of single disease, researchers often use the following technical methods: mathematical statistics-based method, machine learning-based method, and biomarker-based method. The mathematical statistics-based method refers to dividing patients into different types by statistical algorithms (such as cluster analysis); the machine learning-based method refers to using machine learning algorithms (such as support vector machine, random forest, etc.) to analyze and classify a large amount of patient data, which can learn the non-linear relationship in patient data; the biomarker-based method detects biomarkers (such as gene expression, protein level, etc.) of patients to identify the type of a certain disease.
[0004] However, the effectiveness of statistical models and machine learning models depends on high-quality large-scale data sets. However, obtaining these data sets is itself a huge challenge. The collection of high-quality data requires a lot of resources, including time, manpower and material resources. The diversity and complexity of data also require the data set to cover different types of patients and various disease characteristics, which further increases the difficulty of data collection and processing. Although the biological detection method has high accuracy, its detection cost is relatively high.
[0005] These diagnostic methods are usually used for diagnosis of single disease or a few diseases, and cannot provide comprehensive health assessment, and need to use complex equipment and technology, which limits its promotion. Therefore, there is an urgent need to provide a multi-type elderly chronic disease typing method for comprehensive diagnosis and assessment of elderly chronic diseases to solve the limitations of single disease and incomplete typing in current research. SUMMARY
[0006] The embodiment of the present application provides a kind of to fuse semi-supervised learning and multi-branch neural network's senile chronic disease classification method, realize the comprehensive diagnosis and evaluation of multiple types of senile chronic diseases, improve diagnostic accuracy, reduce misdiagnosis rate.
[0007] In the first aspect, the embodiment of the present application provides a test case generation method, comprising:
[0008] Obtain a plurality of target types of senile chronic disease data sets, and preprocess the data sets;
[0009] Based on semi-supervised learning and multi-branch neural network, a senile chronic disease classification model is established;
[0010] The accuracy and loss value of the model are evaluated using the test data set;
[0011] The preprocessing of the data set includes: first filling the missing values and then performing structured mapping processing on the data set to obtain a data set composed of indicators and data, selecting a plurality of important indicators in the data set through the cross-correlation coefficient or SHAP value of each indicator, standardizing the data in the important indicators, mapping the data to (0, 1), and labeling the data. The labeled data is randomly divided into a training data set and a test data set.
[0012] Further, the data in the important indicators is standardized, and the formula is:
[0013]
[0014] X scaled =X std *(max-min)+min;
[0015] Wherein, X is the data to be normalized, X.min(axis=0) is a row vector composed of the minimum value in each column, X.max(axis=0) is a row vector composed of the maximum value in each column, max is the maximum value of the interval to be mapped, min is the minimum value of the interval to be mapped, X std is the standardization result, and X scaled is the normalized result.
[0016] Optionally, the senile chronic disease classification model is established based on semi-supervised learning and multi-branch neural network, comprising:
[0017] The training data set is used as the input of the senile chronic disease classification model for the first model training;
[0018] The senile chronic disease classification model is composed of a first branch neural network, a second branch neural network and a classifier model;
[0019] The first branch neural network is a multi-level back propagation neural network, and the first data feature is obtained after the training data set enters the first branch neural network;
[0020] The second branch neural network is a residual convolutional neural network, and the second data feature is obtained after the training data set enters the second branch neural network;
[0021] The classifier model is composed of a full connection layer and an output layer, the first data feature and the second data feature are fused into the full connection layer as input, the normalized exponential function Softmax is used as the activation function in the full connection layer, the output value of each class is converted into a group of probability values, and the output layer is output.
[0022] Further, all Softmax probability values are equal to 1, and the calculation formula of the Softmax probability value is:
[0023]
[0024] Wherein, xi represents the i-th element of the vector, xj represents the j-th element of the vector, exp represents the natural constant, exp(xi) represents the xi power of exp, and k represents the length of the vector.
[0025] Optionally, the Adamax optimizer is used to iteratively update the weights of the first branch neural network and the second branch neural network based on the training data set.
[0026] Further, the training data set enters the first branch neural network first, and then undergoes a Reshape dimension transformation, and then enters the back propagation neural network BPNN, the BPNN includes multiple hidden layers, each hidden layer includes a random inactivation Dropout, and a linear change layer is arranged after every two hidden layers, and the training data set enters the BPNN to output the first data feature.
[0027] Further, the second branch neural network includes multiple one-dimensional convolutional layers, multiple one-dimensional maximum pooling layers and an average pooling layer, and a random inactivation Dropout is used to discard part of the data after each convolution operation;
[0028] The training data set extracts local features of the data through the convolutional layer, and then reduces the spatial dimension through the maximum pooling layer, reduces the model parameters, and finally enters the average pooling layer to capture global feature information.
[0029] Optionally, the semi-supervised learning and the multi-branch neural network are used to establish the senile chronic disease typing model, and the method further comprises:
[0030] The unlabeled data set is used as the input of the senile chronic disease typing model for the second model training;
[0031] Before training, a confidence threshold is set;
[0032] The unlabeled data is input into the old chronic disease typing model for prediction, only the unlabeled data with a prediction confidence higher than the confidence threshold is reserved, and the prediction label of the unlabeled data is used as a pseudo label;
[0033] The unlabeled data with the pseudo label is added to the original training data set.
[0034] Optionally, the accuracy and precision of the model are evaluated by using the test data set, comprising:
[0035] The calculation formula of the accuracy is:
[0036]
[0037] Wherein, TP represents the number of samples correctly predicted as positive class by the model, TN represents the number of samples correctly predicted as negative class by the model, FP represents the number of samples incorrectly predicted as positive class by the model, and FN represents the number of samples incorrectly predicted as negative class by the model.
[0038] The calculation formula of the precision is:
[0039]
[0040] Wherein, TP represents the number of samples correctly predicted as positive class by the model, and FP represents the number of samples incorrectly predicted as positive class by the model.
[0041] The technical scheme of the embodiment of the application, by preprocessing the old chronic disease data set, obtaining important indicators in the data to establish a high-quality data set, and then constructing an old chronic disease typing model based on semi-supervised learning and multi-branch neural network, the training and evaluation of the model are completed through the high-quality data set, which avoids consuming a large amount of resources to collect high-quality data, can diagnose multiple diseases at the same time, provides comprehensive health evaluation, and improves the diagnosis accuracy and reduces the misdiagnosis rate.
[0042] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the application, nor is it intended to limit the scope of the application. Other features of the application will become apparent from the following description. BRIEF DESCRIPTION OF DRAWINGS
[0043] In order to more clearly illustrate the technical solutions in the embodiments of the application, the drawings needed in the embodiment description will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the application, and other drawings can be obtained by those skilled in the art without creative labor.
[0044] Figure 1 is a flow chart of a method for classifying senile chronic diseases by fusing semi-supervised learning and a multi-branch neural network according to Embodiment One of the present application;
[0045] Figure 2 is a flow chart of a method for classifying senile chronic diseases by fusing semi-supervised learning and a multi-branch neural network according to Embodiment Two of the present application. DETAILED DESCRIPTION
[0046] The present application will be further described below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely intended for the purpose of interpretation of the present application and are not limiting of the present application. In addition, it should be noted that only the parts related to the present application are shown in the accompanying drawings for the purpose of description.
[0047] Embodiment One
[0048] Figure 1 A flow chart of a method for classifying senile chronic diseases by fusing semi-supervised learning and a multi-branch neural network according to Embodiment One of the present application is provided, and the present embodiment can be applicable to the case of more accurate diagnosis of different severity of senile chronic diseases. In the present embodiment, five kinds of high-incidence senile chronic diseases are taken as examples, and the severity of the disease is divided into "mild, moderate, and severe" three categories, and the five kinds of high-incidence senile chronic diseases include osteoporosis, hypertension, diabetes, coronary atherosclerotic heart disease, and chronic obstructive pulmonary disease.
[0049] It should be noted that there is an internet-based medical judgment method for senile chronic diseases in the prior art, which acquires real-time disease state monitoring data of a target object, and performs real-time disease medical judgment according to the real-time disease state monitoring data of the target object, but this medical judgment method not only needs to monitor the target object at all times, but also needs to rely on a large amount of data sets, thereby increasing the difficulty of data collection.
[0050] In order to solve the above problems, the present embodiment provides a method for classifying senile chronic diseases by fusing semi-supervised learning and a multi-branch neural network, which optimizes the model by a small amount of high-quality labels to improve the precision and accuracy of disease diagnosis.
[0051] As shown in Figure 1 , the method specifically comprises the following steps:
[0052] S110, acquiring a plurality of target type senile chronic disease data sets, and pre-processing the data sets.
[0053] Among them, the senile chronic disease data set can be collected from the database of the hospital, including the data of five kinds of senile chronic disease patients, and extracting various physical indicators of the patients and the data corresponding to each indicator.
[0054] The data set is preprocessed, including: the data set is sequentially subjected to missing value filling and structured mapping processing to obtain a data set composed of indexes and data, a plurality of important indexes in the data set are selected through the cross-correlation coefficient or SHAP value of each index, the data in the important indexes is subjected to standardization processing, the data is mapped to (0, 1), and is labeled, and the labeled data is randomly divided into a training data set and a test data set.
[0055] The entire preprocessing process is divided into the following steps:
[0056] The first step is to check the used data set to see if there are missing values.
[0057] After the missing value check, the missing values of each index are filled with random normal values according to expert experience, and the true data of the patient is restored on the basis of not affecting the severity of the disease.
[0058] The second step is to perform structured mapping processing on the text coding part in the data set.
[0059] After processing the missing values, the text coding part in the data set is subjected to structured mapping processing, for example: mapping the patient's disease severity "light, medium, heavy" to "0, 1, 2". For another example: structuring the patient's past medical history "emergency admission and suffering from moderate to severe pneumonia" into parts "whether emergency admission" and "whether suffering from moderate to severe pneumonia", under the structured index, each patient only needs to use 0 to represent not suffering, and 1 to represent suffering.
[0060] The third step is to select important indexes through cross-correlation coefficients or SHAP values.
[0061] For example, after the original data set is processed by the first two steps, a data set with 2000 data rows and 80 index columns is obtained. On the basis of the data set, the data set is subjected to dimensionality reduction processing according to the guidance of expert experience, combined with the cross-correlation coefficient and SHAP value of each index, and finally a data set containing 24 important indexes is obtained. The data set obtained has about 400 cases of high-quality labeled data punched by experts.
[0062] The cross-correlation coefficient is a quantity for studying the degree of linear correlation between variables, including simple correlation coefficient, multiple correlation coefficient, canonical correlation coefficient, etc.
[0063] The multiple correlation coefficient is preferably used in this embodiment. Multiple correlation refers to the correlation relationship between the dependent variable and multiple independent variables. For example, the seasonal demand of a certain commodity and its price level, employee income level, etc. present a multiple correlation relationship. Here, the disease is taken as the dependent variable, and a plurality of old-age chronic disease indexes are taken as the independent variables. The cause of the disease is in multiple correlation with a plurality of old-age chronic disease indexes.
[0064] For example, Table 1 shows part of the indexes of the elderly chronic diseases and the generated mutual correlation coefficients provided by the first embodiment of the present application.
[0065] Table 1: Part of the indexes of the elderly chronic diseases and the generated mutual correlation coefficients
[0066] Sequence number Geriatric comorbidity indicator Corresponding correlation coefficient 1 Pulse 0.040258 2 Clinical signs - structured - over-clear sounds 0.040063 3 Fibrin(ogen) degradation product 2 0.039988 4 Clinical signs - structured - lung audible wet rales 0.039891 5 Clinical signs - structured - skin cold / wet with sweat 0.038484 6 Clinical signs - structured - barrel chest 0.037779 7 Prealbumin 1 0.037631 8 International normalized ratio 0.037328 9 Vital signs - blood pressure - systolic blood pressure 0.037240 10 Alcohol consumption 0.036624 11 Pulse 0.040258 12 Clinical signs - structured - over-clear sounds 0.040063 13 Fibrin(ogen) degradation product 2 0.039988 14 Clinical signs - structured - lung audible wet rales 0.039891 15 Clinical signs - structured - skin cold / wet with sweat 0.038484
[0067] The core idea of SHAP comes from the SHAP value in cooperative game theory, which is used to fairly distribute the benefits brought by multiple participants in cooperation. SHAP introduces this concept into model explanation in machine learning, which can be used to calculate the contribution of each feature to the prediction result of the model. In this embodiment, SHAP value can be used to calculate the contribution of each index to the disease result. Through SHAP value, it can be directly seen which index has the greatest impact on the prediction of the disease result.
[0068] For example, Table 2 shows 24 important indexes of the elderly chronic diseases provided by the first embodiment of the present application.
[0069] Table 2: 24 important indexes of the elderly chronic diseases
[0070] Sequence number Indicator characteristic Sequence number Indicator characteristic 1 Emergency admission - yes 13 Structured - tachypnea 2 Structured - moderate to severe chronic kidney disease 14 Structured - skin cold / wet with sweat 3 Structured - congestive heart failure 15 Barthel score 4 ICU admission 16 Age 5 Dyspnea 17 BMI 6 Clinical symptoms - structured - chest pain 18 Body temperature 7 State of consciousness - drowsiness 19 Blood pressure - systolic blood pressure 8 State of consciousness - confusion 20 Blood pressure - diastolic blood pressure 9 State of consciousness - lethargy 21 Heart rate 10 State of consciousness - coma 22 Respiration 11 Clinical signs - structured - wheezing appearance 23 Pulse 12 Clinical signs - structured - high fever face 24 Pulse oxygen
[0071] The fourth step is to standardize the data in the important indexes and map the data to the interval (0, 1).
[0072] The formula for standardizing the data in the important indexes is:
[0073]
[0074] X scaled =X std *(max-min)+min;
[0075] Wherein, X is the data to be normalized, X.min(axis=0) is a row vector composed of the minimum value in each column, X.max(axis=0) is a row vector composed of the maximum value in each column, max is the maximum value of the interval to be mapped, min is the minimum value of the interval to be mapped, X std is the standardization result, and X scaled is the normalization result.
[0076] For example, the disease severity of the patient is mapped to “0, 1, 2” as “light, medium, heavy” in the foregoing, then X corresponds to [0, 1, 2], X.min(axis=0) corresponds to 0, X.max(axis=0) corresponds to 2, and the formula of X std is obtained, and X stdFor [0, 0.5, 1].
[0077] Similarly, max is the maximum value of the interval (0, 1), that is, 1; min is the minimum value of the interval (0, 1), that is, 0; X std is substituted into the formula of X scaled , X scaled is [0, 0.5, 1].
[0078] The fifth step is to label the data in the important indicators, and randomly divide the labeled data into a training data set and a test data set.
[0079] The training data set and the test data set are both from the labeled data, and are randomly divided, preferably, 80% of the data in the labeled data is randomly divided as the training data set, and the remaining 20% of the data is randomly divided as the test data set.
[0080] S120, based on semi-supervised learning and multi-branch neural network, an old chronic disease classification model is established.
[0081] The old chronic disease classification model is composed of three parts, and the model is trained by the training data set.
[0082] The first part is composed of a multi-level back propagation neural network. The multi-level stacking increases the depth of the network, and the parameters of each layer are shared, which means that the model can learn and reuse feature representations together in order to learn more abstract and complex data features. The mutual combination between layers adjusts the weights of the whole branch through gradient descent method to adapt to the input data, so as to better learn the complex patterns and nonlinear relationships in the data.
[0083] The second part is composed of a residual convolutional neural network. The residual module is not only applied to the jump connection of the intermediate layer, but also added to the final fully connected layer with the output of the convolutional layer, and the custom residual module contains the hidden layer of the back propagation network with ReLU activation function. The configuration of these hidden layers is consistent with the back propagation part, which retains the original processed data features to provide nonlinear learning function. The model not only improves feature learning through residual jump connection, but also better fits the training data through custom residual module, which also helps to solve the problem of gradient vanishing and gradient explosion in model training. The addition of the convolutional layer improves the local perception ability of the whole model, enabling the model to encode the input data in space, and through the superposition of multiple convolutional layers, the model can learn deeper feature relationships; the addition of the custom residual block solves the problem of gradient vanishing in model training. Before the fully connected layer, a one-dimensional global average pooling layer is used to perform global average pooling on the convolutional layer data, reducing the feature dimension, minimizing noise, and retaining global information. Finally, the outputs of the first and second parts are added as the input of the fully connected layer. In this way, the overall model can combine two different contribution degree and weight feature branches to increase the overall expression ability of the model. The output layer uses the Softmax regression function, which can facilitate multi-class disease diagnosis.
[0084] The third part is to use the above multi-branch neural network as a basic classifier model part, which is used to train the weights of the classifier using less high-quality labels. By using high-quality labels in pre-training, the model can build a basic diagnostic logic. Then, a large amount of unlabeled data is predicted, and a high confidence is set to predict the high confidence label as the pseudo label of the unlabeled data, and this part of data is added to the training set to enable the model to learn more patterns. Through these operations on the model, it can better adapt to and train the input data, thereby obtaining higher diagnostic accuracy. In the subsequent experiment, the accuracy, precision and loss value of the model will be used to evaluate the performance of the overall model.
[0085] It should be noted that in the database, it is easy to find a large amount of unlabeled samples, but the labeled samples are extremely rare and need to be manually labeled using special equipment or experimental processes, resulting in a small amount of labeled samples and an excess of unlabeled samples. Therefore, people try to add a large number of unlabeled samples to the limited labeled samples for training to improve the learning performance, which leads to semi-supervised learning.
[0086] Semi-supervised learning avoids the waste of data and resources, and solves the problems of weak model generalization ability of supervised learning and inaccurate model of unsupervised learning.
[0087] S130, the accuracy and precision of the model are evaluated using the test data set.
[0088] Comprise:
[0089] The calculation formula of accuracy is:
[0090]
[0091] Wherein, TP represents the number of samples correctly predicted by the model as positive class, TN represents the number of samples correctly predicted by the model as negative class, FP represents the number of samples incorrectly predicted by the model as positive class, and FN represents the number of samples incorrectly predicted by the model as negative class.
[0092] The calculation formula of precision is:
[0093]
[0094] Wherein, TP represents the number of samples correctly predicted by the model as positive class, FP represents the number of samples incorrectly predicted by the model as positive class.
[0095] Specifically, after inputting the test data set into the model, the model will predict whether the disease occurs, and output the prediction results of various chronic diseases in the elderly, combined with the original disease condition, the original disease corresponding to the test data set is a certain chronic disease in the elderly, whether the prediction result of the model is correct can be judged.
[0096] Taking a patient with hypertension as an example, the patient does not suffer from osteoporosis, diabetes, coronary atherosclerotic heart disease, chronic obstructive pulmonary disease and other diseases. Then, TP represents that the model correctly predicts that the patient has hypertension, TN represents that the model correctly predicts that the patient does not have other diseases, FP represents that the model incorrectly predicts that the patient does not have hypertension, and FN represents that the model incorrectly predicts that the patient has other diseases. In order to improve the accuracy and precision of the model, the indicators and data of healthy users can also be added as test data set to further evaluate the model.
[0097] The technical scheme of the embodiment first processes the data by using SHAP value and cross-correlation coefficient, ensures that the data processing process has more medical significance and interpretability, and provides more comprehensive and diversified data support for the training of the model. Secondly, semi-supervised learning and multi-branch neural network are adopted to establish the chronic disease classification model for the elderly, which significantly improves the training efficiency and generalization ability of the model. Finally, the accuracy and loss value of the model are evaluated using the test data set, which improves the diagnostic accuracy and reduces the misdiagnosis rate.
[0098] Example two
[0099] Figure 2 A flowchart of a method for classifying senile chronic diseases by fusing semi-supervised learning and multi-branch neural network is provided in Embodiment Two of the present application. Embodiment Two is further optimized based on Embodiment One. As shown in Figure 2 The method for classifying senile chronic diseases by fusing semi-supervised learning and multi-branch neural network provided in Embodiment Two specifically includes the following steps:
[0100] In S210, a plurality of target type senile chronic disease data sets are obtained, and the data sets are preprocessed.
[0101] The preprocessing of the data sets includes: first filling in missing values and then performing structured mapping processing on the data sets to obtain a data set composed of indexes and data, selecting a plurality of important indexes in the data set through the cross-correlation coefficient or SHAP value of each index, standardizing the data in the important indexes, mapping the data to between (0, 1), and labeling the data. The labeled data is randomly divided into a training data set and a test data set.
[0102] In S2201, the training data set is taken as the input of the senile chronic disease classification model, and a first model training is performed.
[0103] The senile chronic disease classification model is composed of a first branch neural network, a second branch neural network, and a classifier model.
[0104] Specifically, the training set data is input to the input layer Input of the model, and the data of the input layer enters two branches at the same time.
[0105] The first branch neural network is a multi-level back propagation neural network. After the training data set enters the first branch neural network, first data features are obtained.
[0106] After the training data set enters the first branch neural network, it first undergoes Reshape dimension transformation, and then enters the back propagation neural network BPNN. The BPNN includes a plurality of hidden layers, each hidden layer includes a random inactivation Dropout, and a linear change layer is arranged immediately after each two hidden layers. After the training data set enters the BPNN, first data features are output.
[0107] The back propagation neural network, abbreviated as BPNN, is composed of an input layer, a hidden layer, and an output layer. The hidden layer transmits important information between the input layer and the output layer.
[0108] Reshape dimension transformation is used to change the shape of an array without changing the data, so that the data remains unchanged while the dimension changes.
[0109] Dropout is a method for optimizing artificial neural networks with deep structure, which reduces the dependence between nodes by randomly setting part of the weights or outputs of the hidden layer to zero during the learning process, thereby realizing the regularization of the neural network and reducing its structural risk.
[0110] The first branch is reshaped and then enters the designed BPNN module.
[0111] For example, with six hidden layers, the optimal number of neurons in each hidden layer is obtained through repeated cross-validation experiments, which are 7, 14, 7, 14, 7, and 14, respectively.
[0112] Each hidden layer is followed by a Dropout layer to discard part of the neuron output, which reduces the risk of model overfitting and makes it perform better on unknown data. The activation functions used in the hidden layers are "Linear" and "ReLU". The "Linear" activation function mainly adjusts the input dimension of the linear layer, while the "ReLU" activation function can introduce non-linear transformation, which can make the network learn the complex patterns and relationships of the data while alleviating the gradient vanishing problem.
[0113] A linear transformation layer is added after every two hidden layers to ensure normal data transmission. The first branch stacked by the above mode can share parameters at each layer, so that the model can learn and reuse feature representations cooperatively, making data utilization more efficient.
[0114] The second branch neural network is a residual convolutional neural network. The training data set enters the second branch neural network and obtains the second data feature.
[0115] The second branch neural network contains multiple one-dimensional convolutional layers, multiple one-dimensional max-pooling layers, and an average pooling layer. Random Dropout is used after each convolution operation to discard part of the data.
[0116] The training data set extracts local features through the convolutional layer, then reduces the spatial dimension through the max-pooling layer, and finally enters the average pooling layer to capture global feature information.
[0117] The second branch takes Input as input and enters the convolutional layer and max-pooling layer, as well as the residual module, which retains the original nonlinear information of the data.
[0118] For example: the second branch can contain four one-dimensional convolutional layers and four one-dimensional maximum pooling layers and an average pooling layer, after each convolution operation can use Dropout to discard part of the data, let the model to learn the features in the data in a dynamic process.
[0119] The main process of convolution operation is as follows:
[0120] First, the training data set enters the first one-dimensional 3*1 convolutional layer, and after Dropout, it enters the 3*3 maximum pooling layer. This operation mainly uses the convolutional layer to extract the local features of the data, and the maximum pooling operation reduces the spatial dimension of the feature map and reduces the model parameters.
[0121] After the first step of maximum pooling layer, a one-dimensional 2*1 convolutional layer and a 2*2 maximum pooling layer are added, through the stacking of multiple convolutional layers and pooling layers, the model can extract more abstract and high-level features, which helps the model to understand the structure of the data and distinguish different categories of data.
[0122] The third step is to stack the output of the second convolution with the output of the first convolution, and after the maximum pooling layer, it is used as the input of the next convolution to realize the jump connection of the residual. The third convolutional layer is designed the same as the second convolutional layer, and the same Dropout layer is added as the first two steps. The residual operation is a commonly used network structure, which helps to solve the problem of gradient disappearance and gradient explosion in model training, and can help the model to learn deeper feature representation, which not only makes the model easier to train, but also improves the generalization ability of the model.
[0123] Then use a one-dimensional 1*1 convolutional layer and a 2*1 maximum pooling layer. Finally, the output of the multi-layer stacking is used as the input of the average pooling layer, and the global pooling is performed on the entire feature map to capture the global information of the entire feature map, which helps the model to understand the overall information of the data.
[0124] The activation function used in the above convolutional layer is the "ReLU" activation function. At the same time, a residual module is added in the second branch, which uses the output features obtained after training through two hidden layers, and after processing through the fully connected layer, it is fused with the features after multiple convolution and pooling operations to realize the connection of the residual module. In this model, the addition of the residual module can be used as another custom residual connection. This addition operation can let the information flow into the fully connected layer after simple processing, preserve the original input information, and fuse with the output features of the convolution operation and the multi-layer feedback neural network operation, thereby improving the expression ability and flow efficiency of the entire network, and greatly improving the accuracy and precision of the model.
[0125] Overall, the use of multi-layer convolution can enable the second branch to learn deeper spatial features, the use of max-pooling operation can retain the most significant features in the window and reduce the spatial size of the feature map, reduce the computational complexity of the model while improving the translational invariance of the model; while the use of average pooling operation enhances the global understanding of the model to the output features, while also improving the anti-overfitting ability of the model; the use of nonlinear activation function ReLU helps to maintain the nonlinear expression ability of the network.
[0126] The classifier model is composed of a fully connected layer and an output layer. The first data feature and the second data feature are fused into the fully connected layer as input. In the fully connected layer, the normalized exponential function Softmax is used as the activation function to convert the output value of each class into a set of probability values and output in the output layer.
[0127] All Softmax probability values add up to 1, and the calculation formula of Softmax probability value is:
[0128]
[0129] Where xi represents the i-th element of the vector, xj represents the j-th element of the vector, exp represents the natural constant, exp(xi) represents the xi power of exp, and k represents the length of the vector.
[0130] It should be noted that the classifier can map the data records in the database to a certain one in the given class, so it can be applied to data prediction. The classifier is a general term for methods of classifying samples in data mining, including decision trees, logistic regression, naive Bayes, neural networks, etc.
[0131] The construction and implementation of the classifier generally go through the following steps:
[0132] First, select samples and divide all samples into training samples and test samples;
[0133] Second, execute the classifier algorithm on the training samples to generate a classification model;
[0134] Then, execute the classification model on the test samples to generate a prediction result;
[0135] Finally, according to the prediction result, calculate the necessary evaluation indicators to evaluate the performance of the classification model.
[0136] The normalized exponential function or Softmax function is a generalization of the logistic function. It can "compress" a K-dimensional vector containing any real number into another K-dimensional real vector, so that the range of each element is between (0, 1), and the sum of all elements is 1.
[0137] Further, the Adamax optimizer can be used to iteratively update the weights of the first branch neural network and the second branch neural network based on the training data set.
[0138] The Adamax optimizer can be used in the forward propagation of the model. Adamax is a variant of the Adam optimizer. Adam is a first-order optimization algorithm that can replace the traditional stochastic gradient descent process. It can iteratively update the weights of the neural network based on the training data.
[0139] Compared with other optimizers, the Adamax optimizer uses a simpler calculation method when calculating the gradient update, reducing the demand for memory and computing resources, improving the stability of gradient lifting, and being more suitable for networks. When the loss function is set to the one-hot encoding form of the target label, it can minimize the quantization distance between the output probability and the real label, effectively judge the difference between the network output and the real label, and guide the model to better classify, and can keep the consistency of the output, improve the interpretability and stability of the model.
[0140] S2202, the unlabeled data set is input into the old chronic disease classification model for the second time, and the model is trained.
[0141] Before training, set a confidence threshold;
[0142] The unlabeled data is input into the old chronic disease classification model for prediction, only the unlabeled data with a prediction confidence higher than the confidence threshold is retained, and the predicted label of the unlabeled data is used as a pseudo label;
[0143] The unlabeled data with the pseudo label is added to the original training data set.
[0144] For example, first, set a high confidence threshold: the model will predict the unlabeled data, and set a higher confidence threshold. For example: set the confidence threshold to 0.95. The setting of this threshold aims to ensure the accuracy and reliability of the model when generating pseudo labels.
[0145] Second, generate pseudo labels: when predicting unlabeled data, only samples with a prediction confidence higher than 0.95 are retained, and the predicted labels of these samples are used as pseudo labels. These high-confidence pseudo labels are considered to have high accuracy and can effectively expand the training set.
[0146] Finally, expand the training set: add the unlabeled data with the pseudo label to the original training set. In this way, the size of the training set is greatly increased, containing more samples and diversified features, which helps the model to learn more potential patterns and complex relationships.
[0147] After expanding the training set, the model will be trained. The purpose of training is to make the model better adapt to and learn the complex patterns in the input data, improve the accuracy of diagnosis and generalization ability. By combining the pre-trained basic logic and large-scale pseudo-label data, the model can find more accurate and reliable diagnostic patterns in different pathological features and patient data. The combination of these training steps not only takes advantage of high-quality labels with expert knowledge, but also fully explores the potential information of unlabeled data, making the model maintain high accuracy while having stronger generalization ability.
[0148] Model training mainly includes two steps: the first step is the first model training of high-quality labels. First, use the high-quality labels annotated by medical experts to pre-train the model. The purpose of this part of the training is to optimize the initial weights of the model through a small amount of high-quality labels. The role of high-quality labels is to help the model establish the basic diagnostic logic. These labels are usually provided by experienced medical experts to ensure the accuracy and reliability of the data. Through pre-training, the model can master the basic disease recognition patterns and diagnostic criteria, laying a solid foundation for subsequent training. The second step is the second model training of semi-supervised learning and pseudo-labels. After completing the pre-training, the model will adopt the strategy of semi-supervised learning to further improve its performance. The core idea of semi-supervised learning is to combine labeled and unlabeled data, and expand the training set through self-training and pseudo-label generation.
[0149] Finally, the model after the first model training and the second model training can provide more accurate and reliable diagnostic results in practical applications, providing strong support for the classification and management of old chronic diseases.
[0150] S230, use the test data set to evaluate the accuracy and precision of the model.
[0151] Use the randomly divided test data set for multi-index testing.
[0152] The embodiment of the present application optimizes the model by setting the first model training and the second model training. Through pre-training on high-quality data, the model can master the basic diagnostic logic and key features, and on this basis, benefiting from the advantages of semi-supervised learning, combined with the pseudo-label generated by a large amount of unlabeled data, the model can learn more patterns and relationships in the secondary training, thereby significantly improving the accuracy of diagnosis. Through processing and analyzing various disease data, the model can diagnose various diseases commonly seen in elderly chronic diseases and accurately assess their severity. This comprehensive coverage makes the model more practical and effective in clinical applications. Data preprocessing and labeling enable the model to be pre-trained on a relatively small amount of high-quality data, and then process large amounts of unlabeled data through semi-supervised learning methods. This technical means not only improves data utilization, but also enables the model to efficiently process and learn a large amount of data. The combination of pre-training and secondary training enables the model to have strong generalization ability and adapt to different patients and diverse clinical data. The use of high-quality labels and high-confidence pseudo-labels effectively reduces the misdiagnosis rate of the model. By setting the confidence threshold through cross-validation, the accuracy of the pseudo-label is ensured, and the reliability of the model's diagnosis is further improved.
[0153] It should be understood that various forms of the flow shown above can be used to reorder, add or delete steps. For example, each step described in the present application can be executed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions of the present application can be achieved, and the present application does not limit herein.
[0154] The above specific embodiments do not constitute a limitation on the scope of protection of the present application. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present application shall be included in the scope of protection of the present application.
Claims
1. A method for senile chronic disease classification by fusing semi-supervised learning and multi-branch neural network, characterized in that, The application relates to a method for establishing an old-age chronic disease typing model based on semi-supervised learning and a multi-branch neural network. The method comprises the following steps: a plurality of target types of old-age chronic disease data sets are acquired, and the data sets are preprocessed; an old-age chronic disease typing model is established based on semi-supervised learning and a multi-branch neural network, and the model comprises the following steps: training data sets are taken as inputs of the old-age chronic disease typing model, and first model training is performed; the old-age chronic disease typing model is composed of a first branch neural network, a second branch neural network and a classifier model; the first branch neural network is a multi-level back propagation neural network, and the training data sets are taken into the first branch neural network to obtain first data features; the second branch neural network is a residual convolutional neural network, and the training data sets are taken into the second branch neural network to obtain second data features; the classifier model is composed of a full connection layer and an output layer, the first data features and the second data features are fused into the full connection layer as inputs, a normalized exponential function Softmax is taken as an activation function in the full connection layer, the output values of each category are converted into a group of probability values, and the output layer is used for output; after the training data sets are taken into the first branch neural network, the training data sets are subjected to Reshape dimension transformation first, and then are taken into a back propagation neural network BPNN, the BPNN comprises a plurality of hidden layers, each hidden layer comprises a random inactivation Dropout, a linear change layer is arranged after every two hidden layers, and the training data sets are taken into the BPNN to output the first data features; the second branch neural network comprises a plurality of one-dimensional convolutional layers, a plurality of one-dimensional maximum pooling layers and an average pooling layer, and random inactivation Dropout is used after each convolutional operation to discard part of data; the training data sets are subjected to local feature extraction through the convolutional layers, are subjected to spatial dimension reduction through the maximum pooling layers, and finally are subjected to global feature information capture through the average pooling layer; the old-age chronic disease typing model based on semi-supervised learning and the multi-branch neural network further comprises the following steps: unlabeled data sets are taken as inputs of the old-age chronic disease typing model, and second model training is performed; before training, a confidence threshold is set; unlabeled data is input into the old-age chronic disease typing model for prediction, only the unlabeled data with a prediction confidence higher than the confidence threshold is reserved, and the prediction labels of the unlabeled data are taken as pseudo labels; the unlabeled data with the pseudo labels are added to the original training data sets; the accuracy and precision of the model are evaluated by using a test data set.
2. The method of claim 1, wherein, The preprocessed data sets comprise the following steps: missing value filling and structured mapping processing are sequentially performed on the data sets to obtain data sets composed of indexes and data, a plurality of important indexes in the data sets are selected through a cross-correlation coefficient or a SHAP value of each index, data in the important indexes are standardized to be mapped to (0, 1), and the data are labeled; the labeled data are randomly divided into training data sets and test data sets. ; ; where X is the data to be normalized, X.min(axis=0) is a row vector composed of the minimum value in each column, X.max(axis=0) is a row vector composed of the maximum value in each column, max is the maximum value of the interval to be mapped to, min is the minimum value of the interval to be mapped to, X std is the result of standardization, and X scaled is the result of normalization.
3. The method of claim 1, wherein, The formula for standardizing the data in the important indexes is as follows: all Softmax probability values are added to equal 1, and the calculation formula of the Softmax probability value is as follows: ; Wherein, xi represents the i-th element of the vector, xj represents the j-th element of the vector, exp represents the natural constant, exp(xi) represents the xi power of exp, and k represents the length of the vector.
4. The method of claim 3, wherein, The weights of the first branch neural network and the second branch neural network are iteratively updated based on the training data set using an Adamax optimizer.
5. The method of claim 1, wherein, The accuracy and precision of the model are evaluated using the test data set, including: The calculation formula of the accuracy is: ; Wherein, TP represents the number of samples correctly predicted as positive class by the model, TN represents the number of samples correctly predicted as negative class by the model, FP represents the number of samples incorrectly predicted as positive class by the model, and FN represents the number of samples incorrectly predicted as negative class by the model. The calculation formula of the precision is: ; Wherein, TP represents the number of samples correctly predicted as positive class by the model, and FP represents the number of samples incorrectly predicted as positive class by the model.
Citation Information
Patent Citations
Chronic disease prediction system based on multi-task learning model
CN111180068A
Biomedical named entity identification method and system
CN115238698A