Table 3. Diagnostic performances of various machine-learning algorithms for differentiating tuberculous from viral meningitis.
Machine-learning algorithm | Matrix completion | TP | FP | TN | FN | Sensitivity (% [95% CI]) | Specificity (% [95% CI]) | Accuracy (% [95% CI]) | AUC (95% CI) |
---|---|---|---|---|---|---|---|---|---|
Artificial neural network | IterativeImputer | 46 | 11 | 132 | 14 | 76.7 (63.9 - 86.6) | 92.3 (86.7 - 96.1) | 87.7 (82.4 - 91.9) | 0.85 (0.79 - 0.89) |
SoftImputer | 41 | 20 | 123 | 19 | 68.3 (55.0 - 79.7) | 86.0 (79.2 - 91.2) | 80.8 (74.7 - 86.0) | 0.77 (0.71 - 0.83) | |
KnnImputer (K = 1) | 43 | 11 | 132 | 17 | 71.7 (58.6 - 82.5) | 92.3 (86.7 - 96.1) | 86.2 (80.7 - 90.6) | 0.82 (0.76 - 0.87) | |
KnnImputer (K = 2) | 43 | 10 | 133 | 17 | 71.7 (58.6 - 82.5) | 93.0 (87.5 - 96.6) | 86.7 (81.2 - 91.0) | 0.82 (0.76 - 0.87) | |
KnnImputer (K = 3) | 42 | 12 | 131 | 18 | 70.0 (56.8 - 81.2) | 91.6 (85.8 - 95.6) | 85.2 (79.6 - 89.8) | 0.81 (0.75 - 0.86) | |
KnnImputer (K = 4) | 42 | 12 | 131 | 18 | 70.0 (56.8 - 81.2) | 91.6 (85.8 - 95.6) | 85.2 (79.6 - 89.8) | 0.81 (0.75 - 0.86) | |
Random forest | IterativeImputer | 42 | 11 | 132 | 18 | 70.0 (56.8 - 81.2) | 92.3 (86.7 - 96.1) | 85.7 (80.1 - 90.2) | 0.81 (0.75 - 0.86) |
SoftImputer | 38 | 9 | 134 | 22 | 63.3 (49.9 - 75.4) | 93.7 (88.4 - 97.1) | 84.7 (79.0 - 89.4) | 0.79 (0.72 - 0.84) | |
KnnImputer (K = 1) | 40 | 13 | 130 | 20 | 66.7 (53.3 - 78.3) | 90.9 (85.0 - 95.1) | 83.7 (77.9 - 88.5) | 0.79 (0.73 - 0.84) | |
KnnImputer (K = 2) | 41 | 11 | 132 | 19 | 67.8 (54.4 - 79.4) | 91.3 (86.7 - 96.1) | 85.2 (79.5 - 89.8) | 0.80 (0.74 - 0.85) | |
KnnImputer (K = 3) | 42 | 14 | 129 | 18 | 70.0 (56.8 - 81.2) | 90.2 (84.1 - 94.5) | 84.2 (78.5 - 89.0) | 0.80 (0.74 - 0.85) | |
KnnImputer (K = 4) | 40 | 11 | 132 | 20 | 66.7 (53.3 - 78.3) | 92.3 (86.7 - 96.1) | 84.7 (79.0 - 89.4) | 0.80 (0.73 - 0.85) | |
Naïve Bayes | IterativeImputer | 36 | 11 | 132 | 24 | 60.0 (46.5 - 72.4) | 92.3 (86.7 - 96.1) | 82.8 (76.8 - 87.7) | 0.76 (0.70 - 0.82) |
SoftImputer | 48 | 24 | 119 | 12 | 80.0 (67.7 - 89.2) | 83.2 (76.1 - 88.9) | 82.3 (76.3 - 87.3) | 0.82 (0.76 - 0.87) | |
KnnImputer (K = 1) | 38 | 13 | 130 | 22 | 63.3 (49.9 - 75.4) | 90.9 (85.0 - 95.1) | 82.8 (76.9 - 87.7) | 0.77 (0.71 - 0.83) | |
KnnImputer (K = 2) | 39 | 13 | 130 | 21 | 65.0 (51.6 - 76.9) | 90.9 (85.0 - 95.1) | 83.3 (77.4 - 88.1) | 0.78 (0.72 - 0.84) | |
KnnImputer (K = 3) | 38 | 13 | 130 | 22 | 63.3 (49.9 - 75.4) | 90.9 (85.0 - 95.1) | 82.8 (76.9 - 87.7) | 0.77 (0.71 - 0.83) | |
KnnImputer (K = 4) | 38 | 13 | 130 | 22 | 63.3 (49.9 - 75.4) | 90.9 (85.0 - 95.1) | 82.8 (76.9 - 87.7) | 0.77 (0.71 - 0.83) | |
Logistic regression | IterativeImputer | 44 | 9 | 134 | 16 | 73.3 (60.3 - 83.9) | 93.7 (88.4 - 97.1) | 87.7 (82.4 - 91.9) | 0.84 (0.78 - 0.88) |
SoftImputer | 43 | 15 | 128 | 17 | 71.7 (58.6 - 82.5) | 89.5 (83.3 - 94.0) | 84.2 (78.5 - 89.0) | 0.81 (0.75 - 0.86) | |
KnnImputer (K = 1) | 42 | 9 | 134 | 18 | 70.0 (56.8 - 81.2) | 93.7 (88.4 - 97.1) | 86.7 (81.2 - 91.0) | 0.82 (0.76 - 0.87) | |
KnnImputer (K = 2) | 42 | 7 | 136 | 18 | 70.0 (56.8 - 81.2) | 95.1 (90.2 - 98.0) | 87.7 (82.4 - 91.9) | 0.83 (0.77 - 0.88) | |
KnnImputer (K = 3) | 42 | 7 | 136 | 18 | 70.0 (56.8 - 81.2) | 95.1 (90.2 - 98.0) | 87.7 (82.4 - 91.9) | 0.83 (0.77 - 0.88) | |
KnnImputer (K = 4) | 41 | 7 | 136 | 19 | 68.3 (55.0 - 79.7) | 95.1 (90.2 - 96.1) | 87.2 (81.8 - 91.5) | 0.82 (0.76 - 0.87) | |
Support vector machine | IterativeImputer | 34 | 6 | 137 | 26 | 56.7 (43.2 - 69.4) | 95.8 (91.1 - 98.5) | 84.2 (76.5 - 89.0) | 0.76 (0.70 - 0.82) |
SoftImputer | 45 | 17 | 126 | 15 | 75.0 (62.1 - 85.3) | 88.1 (81.6 - 92.9) | 84.2 (78.5 - 89.0) | 0.82 (0.76 - 0.87) | |
KnnImputer (K = 1) | 33 | 4 | 139 | 27 | 55.0 (41.6 - 67.9) | 97.2 (93.0 - 99.2) | 84.7 (79.0 - 89.4) | 0.76 (0.70 - 0.82) | |
KnnImputer (K = 2) | 34 | 8 | 135 | 26 | 56.7 (43.2 - 69.4) | 94.4 (89.3 - 97.6) | 83.3 (77.4 - 88.1) | 0.76 (0.69 - 0.81) | |
KnnImputer (K = 3) | 34 | 8 | 135 | 26 | 56.7 (43.2 - 69.4) | 94.4 (89.3 - 97.6) | 83.3 (77.4 - 88.1) | 0.76 (0.69 - 0.81) | |
KnnImputer (K = 4) | 35 | 7 | 136 | 25 | 58.3 (44.9 - 70.9) | 95.1 (90.2 - 98.0) | 84.3 (78.5 - 89.0) | 0.77 (0.70 - 0.82) |
Testing was conducted using the leave-one-out cross-validation.
True positive means a correct diagnosis of tuberculous meningitis and true negative means a correct diagnosis of viral meningitis.
TP, true positive; FP, false positive; TN, true negative; FN, false negative; AUC, area under the receiver operating characteristics curve; 95% CI, 95% confidence interval.