| Literature DB >> 34312570 |
Luca Romeo1,2, Emanuele Frontoni1.
Abstract
The current ML approaches do not fully focus to answer a still unresolved and topical challenge, namely the prediction of priorities of COVID-19 vaccine administration. Thus, our task includes some additional methodological challenges mainly related to avoiding unwanted bias while handling categorical and ordinal data with a highly imbalanced nature. Hence, the main contribution of this study is to propose a machine learning algorithm, namely Hierarchical Priority Classification eXtreme Gradient Boosting for priority classification for COVID-19 vaccine administration using the Italian Federation of General Practitioners dataset that contains Electronic Health Record data of 17k patients. We measured the effectiveness of the proposed methodology for classifying all the priority classes while demonstrating a significant improvement with respect to the state of the art. The proposed ML approach, which is integrated into a clinical decision support system, is currently supporting General Pracitioners in assigning COVID-19 vaccine administration priorities to their assistants.Entities:
Keywords: COVID-19; Clinical decision support system; Machine learning; Model interpretability; Vaccination; XGBoost
Year: 2021 PMID: 34312570 PMCID: PMC8295058 DOI: 10.1016/j.patcog.2021.108197
Source DB: PubMed Journal: Pattern Recognit ISSN: 0031-3203 Impact factor: 7.740
Number of patients (# pat) for each GP included in the NMI_FIMMG dataset. Mean and standard deviation of the age (mean[std]) of each GP’s patient group.
| GP | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1505 | 1497 | 1498 | 1491 | 1444 | 1533 | 1630 | 1855 | 1559 | 1600 | 1535 | |
| 55(20) | 50(19) | 51(19) | 52(19) | 55(20) | 53(21) | 46(20) | 51(20) | 47(21) | 47(20) | 43(18) |
The list of tables and candidate features included in the FIMMG_COVID dataset. The candidate features are Patient id, GP id, Sex, Age, id Database employed by GP (id Db), Weight, Height, Waist circumference (WC), Systolic Blood Pressure (SBP), Diastolic Blood Pressure (DBP), International Classification of Disease code (ICD-9). The type of the features (dtype) and the % of missing values for each patient (% missing) are listed in the Table.
| Field | Anagraphic | Monitoring | Pathologies | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Name | GP id | Sex | Age | id Db | Weight | Height | WC | SBP | DBP | ICD9 |
| dtype | Int | Cat | Int | Cat | Float | Float | Float | Int | Int | Cat |
| % missing | 0 | 0 | 0 | 0 | 64.3 | 63.8 | 80.3 | 45.5 | 45.5 | 0 |
The priority classes (PC) identified by GPs and the number of patients (# pats) attributed to each priority class by the Core Data Team in the FIMMG_COVID dataset.
| Category | PC | Description | # pats |
|---|---|---|---|
| Over 80 | 1 | Patients | 156 |
| 2 | Patients 80–90 years with Dysautonomia | 277 | |
| 3 | Patients | 123 | |
| 4 | Patients 80–89 years suffering from | 328 | |
| 5 | Patients 80–89 years suffering from | 345 | |
| 6 | Patients 85–89 years | 40 | |
| 7 | Patients 80–84 years | 120 | |
| Highly Vulnerable | 8 | Highly Vulnerable Patients: Respiratory Diseases Cardiovascular Diseases Neurological Diseases/Disabilities Endocrinologic Diseases and Diabetes Renal Diseases Autoimmune Diseases Liver Diseases Cerebrovascular disease Oncologic/Ematologic diseases Down’s Syndrome Transplanted Severe Obesity: BMI >35 | 1425 |
| 75–79 | 9 | Patients 75–79 years suffering from | 160 |
| 10 | Patients 75–79 years suffering from | 217 | |
| 11 | Patients 75–79 years | 88 | |
| 70–74 | 12 | Patients 70–74 years suffering from | 148 |
| 13 | Patients 70–74 years suffering from | 358 | |
| 14 | Patients 70–74 years | 144 | |
| Vulnerable < 70 | 15 | Patients 60–69 years suffering from | 152 |
| 16 | Patients 50–59 years suffering from | 527 | |
| 17 | Patients 60–69 years suffering from | 951 | |
| 18 | Patients 50–59 years suffering from | 818 | |
| 19 | Patients 30–49 years suffering from | 779 | |
| 20 | Patients 16–29 years suffering from | 132 | |
| 55–69 | 21 | Patients 60–69 years | 707 |
| 22 | Patients 55–59 years | 828 | |
| 18–54 | 23 | School personnel (<55 yrs.), Armed forces and police, Prison, Community places, Other essential services | None |
| 18–54 | 24 | Patients 50–54 years | 715 |
| 25 | Patients 30–49 years | 4215 | |
| 26 | Patients 16–29 years | 3276 |
Fig. 1The overall proposed method for classifying priorities of COVID-19 vaccine administration. The feature extraction is based on GP’s suggestion. Afterward, the proposed machine learning methodology comprised of two hierarchical layers, for solving task A (vulnerability) and subtasks B (severity of disorders).
The list of encoded ICD9 pathology using a one-hot hierarchical encoding procedure: for the 20 most frequent ICD9-macro-categories (ICD9-MC) (i.e. the first 3 digits of ICD9 codes). The 1 displays the presence of at least one of the ICD9 codes.
| ICD9-MC | Description | ICD9 codes |
|---|---|---|
| 780 | General symptoms | 780.0–780.99 |
| 462 | Acute Pharyngitis | 462.0 |
| 595 | Cystitis | 595.0, 595.1, 595.82 |
| 522 | Diseases of pulp and periapical tissues | 522.0 |
| 724 | Other and unspecified disorders of back | 724.0–724.8 |
| 464 | Acute laryngitis and tracheitis | 464.0, 464.3, 464.4 |
| 401 | Essential hypertension | 401.0, 401.1, 401.9 |
| 466 | Acute bronchitis and bronchiolitis | 466.0, 466.11 |
| 789 | Other symptoms involving abdomen and pelvis | 789.0–789.6 |
| 715 | Osteoarthrosis and allied disorders | 715.09, 715.11–715.17, 715.9 |
| 530 | Diseases of esophagus | 530.0, 530.1, 530.3, 530.8 |
| 719 | Other and unspecified disorders of joint | 719.0–719.5, 719.7 |
| 272 | Disorders of lipoid metabolism | 727.0–272.8 |
| 465 | Acute upper respiratory infections of multiple or unspecified sites | 465.9 |
| 788 | Symptoms involving urinary system | 788.0–788.6 |
| 723 | Other disorders of cervical region | 723.0–723.7 |
| 799 | Other ill-defined and unknown causes of morbidity and mortality | 799.0–799.4, 799.8 |
| 521 | Diseases of hard tissues of teeth | 521.0–521.8 |
Range of Hyperparameters (Hyp) for each model: HPC-XGB (our), Decision Tree (DT), Random Forest (RF), XGB with different losses functions (mean square error, tweedie and gamma), Linear Support Vector Machine (Li-SVM), Gaussian Support Vector Machine (G-SVM) and Lasso Support Vector Machine (La-SVM).
| Model | Hyp | Range |
|---|---|---|
| HPC-XGB (our) | learning rate | |
| XGB | learning rate | |
| DT | max depth | |
| RF | ||
| Li-SVM | Box Constraint | |
| G-SVM | Box Constraint Kernel Scale | |
| La-SVM | Lambda | |
| Ensemble La-SVM | Lambda | |
Fig. 2The proposed Hierarchical Priority Classification XGBoost methodology for COVID-19 vaccine administration. The first layer A focuses on the classification between the high vulnerable patients and the other categories. The second layer focuses on discriminating the PC in a specific age range categories. In particular PCs with the same age range are highlighted with the same color.
Algorithm 1Hierarchical Priority Classification XGBoost methodology.
Fig. 3Overview of the performed experimental procedure. A Leave One General Practitioner Out (LOGPO) procedure was implemented. The optimization of the HPC-XGB hyperparameters was performed by implementing a grid-search and optimizing the macro-recall score in a nested LOGPO. Hence, each split of the outer loop was trained with the optimal hyperparameters tuned in the inner loop.
Performances in terms of average accuracy and average recall of the LOGPO evaluation procedure for HPC-XGB for each task. Stars indicate whether the recall distribution over the 11 GPs (Core Data Team) is significantly higher than chance level (i.e. 0.5 for binary task and for multi-class task) according to the one-sided Wilcoxon signed-rank test (). The # number of patients refers to the total number of patients for the selected task. The labels refer to the considered PCs for the selected task.
| Model | # of patients | Labels | Accuracy (mean [std]) | Recall (mean [std]) |
|---|---|---|---|---|
| HPC-XGB A | 17,062 | {8,others} | 0.854 (0.060) | 0.768 |
| HPC-XGB B1 | 3392 | {20,26} | 0.661 (0.327) | 0.493 (0.092) |
| HPC-XGB B2 | 4972 | {19,25} | 0.764 (0.230) | 0.701 |
| HPC-XGB B3 | 2872 | {16,18,22,24} | 0.652 (0.148) | 0.553 |
| HPC-XGB B4 | 1796 | {15,17,21} | 0.573 (0.213) | 0.468 |
| HPC-XGB B5 | 1104 | {9,10,11,12,13,14} | 0.301 (0.202) | 0.266 |
| HPC-XGB B6 | 1110 | {2,4,5,6,7} | 0.453 (0.263) | 0.369 |
| HPC-XGB B7 | 279 | {1,3} | 0.734 (0.141) | 0.750 |
Fig. 4ROC and Area Under Curve (AUC) of HPC-XGB for each subset of patients assigned by different GP in each run of LOGPO procedure for solving task A.
Results performance in terms of computation time: training and testing time. The average (mean) and the standard deviation (std) were reported for each run of the LOGPO procedure.
| Model | # of patients | Labels | Training time | Testing time |
|---|---|---|---|---|
| mean [sec x fold] | mean [sec x fold] | |||
| HPC-XGB A | 17,062 | {8,others} | 0.347 | 0.002 |
| HPC-XGB B1 | 3392 | {20,26} | 0.064 | 0.000 |
| HPC-XGB B2 | 4972 | {19,25} | 0.100 | 0.001 |
| HPC-XGB B3 | 2872 | {16,18,22,24} | 0.246 | 0.001 |
| HPC-XGB B4 | 1796 | {15,17,21} | 0.199 | 0.001 |
| HPC-XGB B5 | 1104 | {9,10,11,12,13,14} | 0.291 | 0.001 |
| HPC-XGB B6 | 1110 | {2,4,5,6,7} | 0.173 | 0.001 |
| HPC-XGB B7 | 279 | {1,3} | 0.010 | 0.000 |
Comparison of HPC-XGB with respect to the state-of-the-art regression model for predicting PC 8 with respect to the other PC classes. We measured the performance of testing procedure a) in terms of overall accuracy, recall, FPR and FNR. indicates whether the overall recall of the proposed HPC-XGB is significantly higher than other state of the art models according to the one-sided Wilcoxon signed-rank test (significance level = 0.05).
| Model | # FPR | FNR | Accuracy | Recall |
|---|---|---|---|---|
| HPC-XGB | 0.137 | 0.234 | 0.855 | |
| XGB (MSE) | 0.008 | 0.891 | 0.918 | 0.551 |
| XGB (tweedie) | 0.007 | 0.930 | 0.916 | 0.531 |
| XGB (gamma) | 0.007 | 0.902 | 0.918 | 0.546 |
| DT | 0.086 | 0.656 | 0.866 | 0.629 |
| RF | 0.011 | 0.910 | 0.913 | 0.539 |
| Li-SVM | 0.016 | 0.954 | 0.905 | 0.515 |
| G-SVM | 0.012 | 0.973 | 0.907 | 0.507 |
| La-SVM | 0.019 | 0.988 | 0.899 | 0.496 |
| Ensemble SVR | 0.024 | 0.947 | 0.898 | 0.514 |
| 0.020 | 0.971 | 0.900 | 0.504 |
Comparison of HPC-XGB with respect to the state-of-the-art regression model for predicting all classes except class 8. We measured the performance of testing procedure b) in terms of overall accuracy and recall, Mean Absolute Error (MAE), Mean Square Error (MSE) and coefficient of determination (R2 score). indicates whether the overall recall of the proposed HPC-XGB is significantly higher than other state of the art models according to the one-sided Wilcoxon signed-rank test (significance level = 0.05).
| Model | MAE | MSE | R2 | Accuracy | Recall |
|---|---|---|---|---|---|
| HPC-XGB | 1.585 | 8.581 | 0.812 | 0.646 | |
| XGB (MSE) | 1.264 | 4.002 | 0.912 | 0.460 | 0.207 |
| XGB (tweedie) | 1.262 | 3.963 | 0.913 | 0.462 | 0.219 |
| XGB (gamma) | 1.279 | 3.973 | 0.913 | 0.436 | 0.218 |
| DT | 1.459 | 7.573 | 0.835 | 0.622 | 0.378 |
| RF | 1.376 | 4.920 | 0.892 | 0.453 | 0.236 |
| Li-SVM | 2.742 | 12.887 | 0.718 | 0.124 | 0.057 |
| G-SVM | 2.173 | 12.154 | 0.734 | 0.340 | 0.128 |
| La-SVM | 2.737 | 12.357 | 0.730 | 0.133 | 0.060 |
| Ensemble SVR | 3.318 | 19.316 | 0.578 | 0.043 | 0.034 |
| 3.111 | 15.258 | 0.716 | 0.108 | 0.080 |
Comparison of HPC-XGB with respect to the best-performing state of the art model (DT [10], [11]) trained for each subtask. We measured the performance of testing procedure c) in terms of average accuracy and average recall. indicates whether the recall distribution of the proposed HPC-XGB over the 11 GPs (Core Data Team) is significantly higher than DT according to the one-sided Wilcoxon signed-rank test (significance level = 0.05).
| Model | # of patients | Labels | Accuracy (mean [std]) | Recall (mean rev[std]) |
|---|---|---|---|---|
| HPC-XGB B1 | 3392 | {20,26} | 0.661 (0.327) | 0.493 (0.092) |
| DT | 3392 | {20,26} | 0.912 (0.113) | 0.499 (0.024) |
| HPC-XGB B2 | 4972 | {19,25} | 0.764 (0.230) | 0.701 |
| DT | 4972 | {19,25} | 0.801 (0.082) | 0.674 (0.116) |
| HPC-XGB B3 | 2872 | {16,18,22,24} | 0.652 (0.148) | 0.553 |
| DT | 2872 | {16,18,22,24} | 0.535 (0.163) | 0.458 (0.105) |
| HPC-XGB B4 | 1796 | {15,17,21} | 0.573 (0.213) | 0.468 |
| DT | 1796 | {15,17,21} | 0.477 (0.152) | 0.401 (0.064) |
| HPC-XGB B5 | 1104 | {9,10,11,12,13,14} | 0.301 (0.202) | 0.266 (0.155) |
| DT | 1104 | {9,10,11,12,13,14} | 0.277(0.148) | 0.268 (0.143) |
| HPC-XGB B6 | 1110 | {2,4,5,6,7} | 0.453 (0.263) | 0.369 |
| DT | 1110 | {2,4,5,6,7} | 0.377 (0.159) | 0.289 (0.097) |
| HPC-XGB B7 | 279 | {1,3} | 0.734 (0.141) | 0.750 |
| DT | 279 | {1,3} | 0.661 (0.121) | 0.643 (0.110) |
Fig. 5Features importance for each different PC task.
Fig. 6The integration of the proposed HPC-XGB as a clinical decision support system of the NetMedica Italia (NMI) platform for all NMI GPs. The CDSS, named Pri.Sma, is currently supporting the GPs for assigning COVID-19 vaccine administration priorities to their assistants.
Fig. 7Clinical validation of the overall CDSS from a different dataset of 55,621 patients collected by 37 GPs: accuracy between all the predicted PC and the ground-truth labels by setting different tolerance threshold. The predicted PC is considered correct if its deviation with respect to the ground-truth labels falls within a specific threshold.