IntraSpanNet / config.json
luping123's picture
docs: IntraSpanNet rename
5cb8fd0 verified
Raw History Blame Contribute Delete
3.51 kB
{
"model": "intraspannet",
"version": "0.1.0",
"task": "security product identification with open-set rejection",
"input": {
"flow_bytes": 1600,
"packets": 5,
"bytes_per_packet": 320,
"header_bytes": 80,
"payload_bytes": 240,
"ip_masking": true
},
"classes": [
"windows_defender",
"clamav_freshclam_win",
"clamav_freshclam",
"velociraptor",
"velociraptor_win",
"osquery",
"wazuh_agent",
"wireguard",
"openvpn",
"stunnel",
"squid_proxy",
"ntopng",
"guacamole_mgmt",
"waf_modsecurity",
"suricata_update",
"web_http",
"ssh",
"ftp"
],
"cls": [
"b_s0",
"a_lda",
"b_lda",
"a_s0"
],
"gate": [
"a_lda",
"b_lda"
],
"threshold": 0.1041,
"threshold_note": "Calibrated on the dev half of the validation split; not tuned on the test half.",
"metrics": {
"test_flow_count": 503,
"all_val_flow_count": 1006,
"product_accuracy_test": 0.8787,
"product_accuracy_all_val": 0.8817,
"tier_accuracy_test": 0.9245,
"tier_accuracy_all_val": 0.9334,
"macro_f1_supported_test": 0.7621,
"macro_f1_supported_all_val": 0.824,
"gate_auroc_test": 0.9784,
"gate_auroc_dev": 0.982,
"malicious_macro_f1_dedup_ustc": 0.9702,
"unknown_rejection_demo": 1
},
"hardware": {
"inference": "NVIDIA GPU with CUDA",
"reference_gpu": "RTX 4090 24GB",
"minimum_vram_gb": 4,
"recommended_vram_gb": 8,
"cpu_inference": false,
"cpu_note": "The GDN backbone uses Triton kernels. CPU fallback is not supported in v0.1.0.",
"single_arm_throughput_flows_s": 1017,
"four_arm_throughput_flows_s": 253,
"latency_ms_bs1": {
"single_arm": 10.7,
"four_arm": 43.1
}
},
"training": {
"pretraining": "contrastive self-supervised on 33,184 training-only flows",
"sft": "multi-task supervised fine-tuning, 60 epochs",
"rl": "REINFORCE with reward shaping, 300 episodes",
"seeds": [
0,
1,
2
]
},
"license": "Apache-2.0",
"citation": "See CITATION.cff in the code repository.",
"arms": {
"A_S0": {
"run": "A",
"variant": "standard multi-task",
"role": "classifier",
"checkpoint": "stage3_a_s0.pth",
"prototypes": "prototypes_a_s0_k3.pth"
},
"A_LDA": {
"run": "A",
"variant": "logit adjustment by class prior",
"role": "classifier and gate",
"checkpoint": "stage3_a_lda.pth",
"prototypes": "prototypes_a_lda_k3.pth"
},
"B_LDA": {
"run": "B",
"variant": "logit adjustment by class prior",
"role": "classifier and gate",
"checkpoint": "stage3_b_lda.pth",
"prototypes": "prototypes_b_lda_k3.pth"
},
"B_S0": {
"run": "B",
"variant": "standard multi-task",
"role": "classifier",
"checkpoint": "stage3_b_s0.pth",
"prototypes": "prototypes_b_s0_k3.pth"
},
"A_HN": {
"run": "A",
"variant": "hard-negative weighting",
"role": "dropped",
"checkpoint": "stage3_a_hn.pth",
"prototypes": "prototypes_a_hn_k3.pth"
},
"B_HN": {
"run": "B",
"variant": "hard-negative weighting",
"role": "dropped",
"checkpoint": "stage3_b_hn.pth",
"prototypes": "prototypes_b_hn_k3.pth"
}
},
"arm_naming": "Letter = pre-training run (A or B). Suffix = training variant: s0 standard multi-task objective, lda logit adjustment by class prior, hn hard-negative weighting."
}