| { |
| "purpose": "Quantify how much each feature group contributes to the headline XGBoost score. Identical architecture, same group-aware split, with one feature group dropped at a time.", |
| "full_model_metrics": { |
| "model": "xgboost", |
| "accuracy": 0.46831955922865015, |
| "macro_f1": 0.42549880749552066, |
| "weighted_f1": 0.440668872633435, |
| "per_class_f1": { |
| "dwell_idle": 0.040268456375838924, |
| "reconnaissance": 0.7532467532467533, |
| "initial_access": 0.6467661691542289, |
| "execution": 0.4406779661016949, |
| "persistence": 0.41304347826086957, |
| "privilege_escalation": 0.5, |
| "lateral_movement": 0.7422680412371134, |
| "collection": 0.22018348623853212, |
| "exfiltration": 0.2727272727272727, |
| "impact": 0.22580645161290322 |
| }, |
| "confusion_matrix": { |
| "labels": [ |
| "dwell_idle", |
| "reconnaissance", |
| "initial_access", |
| "execution", |
| "persistence", |
| "privilege_escalation", |
| "lateral_movement", |
| "collection", |
| "exfiltration", |
| "impact" |
| ], |
| "matrix": [ |
| [ |
| 3, |
| 23, |
| 23, |
| 18, |
| 21, |
| 18, |
| 2, |
| 17, |
| 9, |
| 7 |
| ], |
| [ |
| 2, |
| 87, |
| 2, |
| 21, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 1, |
| 5, |
| 65, |
| 5, |
| 3, |
| 26, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 2, |
| 4, |
| 1, |
| 39, |
| 24, |
| 3, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 1, |
| 12, |
| 38, |
| 9, |
| 0, |
| 18, |
| 1, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 3, |
| 8, |
| 4, |
| 44, |
| 3, |
| 5, |
| 1, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 6, |
| 6, |
| 36, |
| 2, |
| 0, |
| 4 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 12, |
| 15, |
| 10 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 5, |
| 0, |
| 0, |
| 4, |
| 9, |
| 13 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 11, |
| 0, |
| 7 |
| ] |
| ] |
| }, |
| "macro_roc_auc_ovr": 0.8598653258869782 |
| }, |
| "ablations": { |
| "no_topology": { |
| "n_features": 67, |
| "dropped_count": 23, |
| "metrics": { |
| "model": "xgboost_no_topology", |
| "accuracy": 0.46005509641873277, |
| "macro_f1": 0.4093395066167947, |
| "weighted_f1": 0.4281869072634682, |
| "per_class_f1": { |
| "dwell_idle": 0.013513513513513514, |
| "reconnaissance": 0.7574468085106383, |
| "initial_access": 0.6435643564356436, |
| "execution": 0.45348837209302323, |
| "persistence": 0.3829787234042553, |
| "privilege_escalation": 0.4943820224719101, |
| "lateral_movement": 0.72, |
| "collection": 0.205607476635514, |
| "exfiltration": 0.25, |
| "impact": 0.1724137931034483 |
| }, |
| "confusion_matrix": { |
| "labels": [ |
| "dwell_idle", |
| "reconnaissance", |
| "initial_access", |
| "execution", |
| "persistence", |
| "privilege_escalation", |
| "lateral_movement", |
| "collection", |
| "exfiltration", |
| "impact" |
| ], |
| "matrix": [ |
| [ |
| 1, |
| 24, |
| 24, |
| 16, |
| 24, |
| 16, |
| 4, |
| 15, |
| 10, |
| 7 |
| ], |
| [ |
| 2, |
| 89, |
| 2, |
| 16, |
| 3, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 1, |
| 6, |
| 65, |
| 4, |
| 3, |
| 26, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 1, |
| 4, |
| 1, |
| 39, |
| 25, |
| 3, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 1, |
| 0, |
| 0, |
| 16, |
| 36, |
| 9, |
| 0, |
| 16, |
| 1, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 3, |
| 7, |
| 4, |
| 44, |
| 3, |
| 5, |
| 2, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 1, |
| 0, |
| 5, |
| 9, |
| 36, |
| 2, |
| 0, |
| 1 |
| ], |
| [ |
| 1, |
| 0, |
| 0, |
| 0, |
| 2, |
| 2, |
| 1, |
| 11, |
| 11, |
| 12 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 5, |
| 0, |
| 0, |
| 6, |
| 8, |
| 12 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 12, |
| 1, |
| 5 |
| ] |
| ] |
| }, |
| "macro_roc_auc_ovr": 0.8625474585447981 |
| }, |
| "delta_accuracy": 0.008264462809917383, |
| "delta_macro_f1": 0.01615930087872597 |
| }, |
| "no_engineered": { |
| "n_features": 84, |
| "dropped_count": 6, |
| "metrics": { |
| "model": "xgboost_no_engineered", |
| "accuracy": 0.4641873278236915, |
| "macro_f1": 0.4239556593623024, |
| "weighted_f1": 0.4373277421758876, |
| "per_class_f1": { |
| "dwell_idle": 0.02631578947368421, |
| "reconnaissance": 0.7368421052631579, |
| "initial_access": 0.6305418719211823, |
| "execution": 0.46060606060606063, |
| "persistence": 0.4419889502762431, |
| "privilege_escalation": 0.49142857142857144, |
| "lateral_movement": 0.7346938775510204, |
| "collection": 0.24347826086956523, |
| "exfiltration": 0.2647058823529412, |
| "impact": 0.208955223880597 |
| }, |
| "confusion_matrix": { |
| "labels": [ |
| "dwell_idle", |
| "reconnaissance", |
| "initial_access", |
| "execution", |
| "persistence", |
| "privilege_escalation", |
| "lateral_movement", |
| "collection", |
| "exfiltration", |
| "impact" |
| ], |
| "matrix": [ |
| [ |
| 2, |
| 23, |
| 24, |
| 14, |
| 23, |
| 20, |
| 2, |
| 17, |
| 9, |
| 7 |
| ], |
| [ |
| 4, |
| 84, |
| 3, |
| 21, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 2, |
| 5, |
| 64, |
| 4, |
| 1, |
| 29, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 3, |
| 4, |
| 1, |
| 38, |
| 25, |
| 2, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 2, |
| 7, |
| 40, |
| 9, |
| 0, |
| 20, |
| 1, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 3, |
| 7, |
| 5, |
| 43, |
| 4, |
| 5, |
| 1, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 0, |
| 3, |
| 36, |
| 4, |
| 4, |
| 7 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 1, |
| 0, |
| 0, |
| 14, |
| 13, |
| 12 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 5, |
| 0, |
| 0, |
| 4, |
| 9, |
| 13 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 11, |
| 0, |
| 7 |
| ] |
| ] |
| }, |
| "macro_roc_auc_ovr": 0.8559080760692732 |
| }, |
| "delta_accuracy": 0.004132231404958664, |
| "delta_macro_f1": 0.001543148133218264 |
| }, |
| "no_timestep": { |
| "n_features": 89, |
| "dropped_count": 1, |
| "metrics": { |
| "model": "xgboost_no_timestep", |
| "accuracy": 0.32644628099173556, |
| "macro_f1": 0.31019209599143654, |
| "weighted_f1": 0.3273550154519158, |
| "per_class_f1": { |
| "dwell_idle": 0.06060606060606061, |
| "reconnaissance": 0.3728813559322034, |
| "initial_access": 0.5666666666666667, |
| "execution": 0.4090909090909091, |
| "persistence": 0.22818791946308725, |
| "privilege_escalation": 0.4520547945205479, |
| "lateral_movement": 0.7058823529411765, |
| "collection": 0.0975609756097561, |
| "exfiltration": 0.1836734693877551, |
| "impact": 0.02531645569620253 |
| }, |
| "confusion_matrix": { |
| "labels": [ |
| "dwell_idle", |
| "reconnaissance", |
| "initial_access", |
| "execution", |
| "persistence", |
| "privilege_escalation", |
| "lateral_movement", |
| "collection", |
| "exfiltration", |
| "impact" |
| ], |
| "matrix": [ |
| [ |
| 5, |
| 11, |
| 35, |
| 11, |
| 17, |
| 13, |
| 1, |
| 25, |
| 15, |
| 8 |
| ], |
| [ |
| 7, |
| 33, |
| 1, |
| 11, |
| 11, |
| 0, |
| 0, |
| 19, |
| 17, |
| 13 |
| ], |
| [ |
| 5, |
| 0, |
| 68, |
| 1, |
| 2, |
| 16, |
| 5, |
| 6, |
| 3, |
| 0 |
| ], |
| [ |
| 3, |
| 6, |
| 1, |
| 27, |
| 4, |
| 4, |
| 2, |
| 20, |
| 2, |
| 5 |
| ], |
| [ |
| 2, |
| 12, |
| 4, |
| 1, |
| 17, |
| 5, |
| 0, |
| 19, |
| 6, |
| 13 |
| ], |
| [ |
| 0, |
| 0, |
| 17, |
| 7, |
| 2, |
| 33, |
| 3, |
| 3, |
| 2, |
| 1 |
| ], |
| [ |
| 0, |
| 1, |
| 7, |
| 0, |
| 2, |
| 2, |
| 36, |
| 1, |
| 0, |
| 5 |
| ], |
| [ |
| 0, |
| 2, |
| 0, |
| 0, |
| 6, |
| 4, |
| 1, |
| 8, |
| 12, |
| 7 |
| ], |
| [ |
| 1, |
| 0, |
| 1, |
| 0, |
| 7, |
| 0, |
| 0, |
| 8, |
| 9, |
| 5 |
| ], |
| [ |
| 1, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 15, |
| 1, |
| 1 |
| ] |
| ] |
| }, |
| "macro_roc_auc_ovr": 0.7557281412642529 |
| }, |
| "delta_accuracy": 0.1418732782369146, |
| "delta_macro_f1": 0.11530671150408411 |
| }, |
| "no_detection_signals": { |
| "n_features": 76, |
| "dropped_count": 14, |
| "metrics": { |
| "model": "xgboost_no_detection_signals", |
| "accuracy": 0.4724517906336088, |
| "macro_f1": 0.4284152317167137, |
| "weighted_f1": 0.4449655177644492, |
| "per_class_f1": { |
| "dwell_idle": 0.039735099337748346, |
| "reconnaissance": 0.7456140350877193, |
| "initial_access": 0.6600985221674877, |
| "execution": 0.47126436781609193, |
| "persistence": 0.43333333333333335, |
| "privilege_escalation": 0.4971751412429379, |
| "lateral_movement": 0.7272727272727273, |
| "collection": 0.21818181818181817, |
| "exfiltration": 0.2727272727272727, |
| "impact": 0.21875 |
| }, |
| "confusion_matrix": { |
| "labels": [ |
| "dwell_idle", |
| "reconnaissance", |
| "initial_access", |
| "execution", |
| "persistence", |
| "privilege_escalation", |
| "lateral_movement", |
| "collection", |
| "exfiltration", |
| "impact" |
| ], |
| "matrix": [ |
| [ |
| 3, |
| 23, |
| 23, |
| 18, |
| 22, |
| 17, |
| 3, |
| 16, |
| 9, |
| 7 |
| ], |
| [ |
| 2, |
| 85, |
| 3, |
| 22, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 1, |
| 5, |
| 67, |
| 2, |
| 2, |
| 28, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 2, |
| 3, |
| 1, |
| 41, |
| 23, |
| 3, |
| 1, |
| 0, |
| 0, |
| 0 |
| ], |
| [ |
| 0, |
| 0, |
| 1, |
| 9, |
| 39, |
| 9, |
| 0, |
| 19, |
| 1, |
| 1 |
| ], |
| [ |
| 0, |
| 0, |
| 2, |
| 8, |
| 3, |
| 44, |
| 4, |
| 6, |
| 1, |
| 0 |
| ], |
| [ |
| 1, |
| 0, |
| 0, |
| 0, |
| 3, |
| 6, |
| 36, |
| 2, |
| 0, |
| 6 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 12, |
| 15, |
| 10 |
| ], |
| [ |
| 1, |
| 0, |
| 0, |
| 0, |
| 5, |
| 0, |
| 0, |
| 4, |
| 9, |
| 12 |
| ], |
| [ |
| 0, |
| 0, |
| 0, |
| 0, |
| 2, |
| 1, |
| 0, |
| 11, |
| 0, |
| 7 |
| ] |
| ] |
| }, |
| "macro_roc_auc_ovr": 0.8544378745036634 |
| }, |
| "delta_accuracy": -0.004132231404958664, |
| "delta_macro_f1": -0.002916424221193037 |
| } |
| } |
| } |