X-MAP: eXplainable Misclassification Analysis and Profiling for Spam and Phishing Detection
Authors: Qi Zhang, Dian Chen, Lance M. Kaplan, Audun Jøsang, Dong Hyun Jeong, Feng Chen, Jin-Hee Cho
Organizations: Virginia Tech, USA · U.S. Army DEVCOM Army Research Laboratory, USA · University of Oslo, Norway · University of the District of Columbia, USA · University of Texas at Dallas, USA
Misclassifications in spam and phishing detection are very harmful, as false negatives expose users to attacks while false positives degrade trust. Existing uncertainty-based detectors can flag potential errors, but possibly be deceived and offer limited interpretability. This paper presents X-MAP, an eXplainable Misclassification Analysis and Profilling framework that reveals topic-level semantic patterns behind model failures. X-MAP combines SHAP-based feature attributions with non-negative matrix factorization to build interpretable topic profiles for reliably classified spam/phishing and legitimate messages, and measures each message's deviation from these profiles using Jensen-Shannon divergence. Experiments on SMS and phishing datasets show that misclassified messages exhibit at least two times larger divergence than correctly classified ones. As a detector, X-MAP achieves up to 0.98 AUROC and lowers the false-rejection rate at 95% TRR to 0.089 on positive predictions. When used as a repair layer on base detectors, it recovers up to 97% of falsely rejected correct predictions with moderate leakage. These results demonstrate X-MAP's effectiveness and interpretability for improving spam and phishing detection.
Figures & tables
Figure 1: X-MAP for explainable misclassification analysis in spam/phishing detection.
Figure 2: X-MAP Re-evaluation for Error Recovery: This enables recovery of correctly classified samples while keeping error leakage low.
CFR
GP type
TP → TP GP
FP → TP GP
TN → TN GP
FN → TN GP
LogReg
Ori.
0.2051 ± 0.1405
0.5490 ± 0.1440
0.0543 ± 0.0524
0.1213 ± 0.0518
Vac.
0.1946 ± 0.1281
0.5010 ± 0.1180
0.0536 ± 0.0500
0.1207 ± 0.0521
Diss.
0.2213 ± 0.1320
0.5336 ± 0.1164
0.0603 ± 0.0634
0.1467 ± 0.0658
Ale.
0.0093 ± 0.0093
0.0600 ± 0.0338
0.0090 ± 0.0136
0.0271 ± 0.0149
D α
0.0050 ± 0.0050
0.0202 ± 0.0125
0.0006 ± 0.0014
0.0015 ± 0.0011
D β
0.0015 ± 0.0017
0.0105 ± 0.0115
0.0001 ± 0.0003
0.0003 ± 0.0003
Table 1: Jensen–Shannon divergence between individual messages (IM) and group topic profiles (GP) on the SMS dataset
CFR
Metric
Topic Representation
UQ-D
Ori.
Ale.
Vac.
Diss.
REL-U
Dα
Dβ
ODIN
LogReg
AUROC (P)
0.9409
0.9763
0.9470
0.9474
0.8283
0.8954
0.8545
0.8545
0.9367
FRR@95%TRR (P)
0.3988
0.0895
0.3923
0.2301
0.2321
0.5900
0.6054
0.6054
0.6304
AUROC (N)
0.8807
0.8253
0.8802
0.8711
0.5252
0.8536
0.8041
0.8041
0.9369
FRR@95%TRR (N)
0.3588
0.6186
0.3574
0.3971
0.9397
0.4130
0.5515
0.5515
0.2247
SVM
AUROC (P)
0.9574
0.9264
0.8570
0.9063
0.9057
0.9316
0.9090
0.9090
0.9734
Table 2: Performance of X-MAP on SMS Dataset
CFR
Metric
Topic Representation
Ori.
Ale.
Vac.
Diss.
REL-U
Dα
Dβ
ODIN
LogReg
AUROC (P)
0.9504
0.9523
0.9470
0.9474
0.8283
0.9728
0.8545
0.8545
FRR@95%TRR (P)
0.3066
0.1679
0.3923
0.2301
0.2321
0.2162
0.6054
0.6054
AUROC (N)
0.9471
0.9615
0.8802
0.8711
0.5252
0.8771
0.8041
0.8041
FRR@95%TRR (N)
1.0000
1.0000
0.3574
0.3971
0.9397
0.3905
0.5515
0.5515
SVM
AUROC (P)
0.9454
0.9000
0.9143
0.9184
0.9251
0.9471
0.9049
0.9049
Table 3: Performance of X-MAP on Messages Falsely Rejected by UQ-Based Detector
CFR
Metric
Topic Representation
Ori.
Ale.
Vac.
Diss.
REL-U
Dα
Dβ
ODIN
LogReg
RecovR
0.9436
0.9498
0.9404
0.9279
0.1923
0.2268
0.8694
0.8276
# Recovery
903
909
900
888
184
217
832
792
LeakR
0.1542
0.1522
0.1542
0.1522
0.1502
0.1502
0.1542
0.1502
# Leakage
78
77
78
77
76
76
78
76
# Correct Fix
825
832
822
811
108
141
754
716
Table 4: Performance of X-MAP on Messages Rejected by UQ-Based Detector