{ "trained_at": "2026-07-23T11:57:41.358736+00:00", "base_model": "distilbert/distilbert-base-multilingual-cased", "dataset": "/content/drive/MyDrive/FishSTOP/data/processed/fishstop_train_complete.csv", "dataset_sha256": "c89e1f5d2bb92b5a5dd5beb8a235a798932ed19eb9d75c2f740a94b5fd450816", "rows": { "test": 3810, "train": 13581, "validation": 1906 }, "labels": { "0": "LEGITIMATE", "1": "MALICIOUS" }, "epochs": 4, "best_validation_email_f1": 0.9872773536895675, "sources_by_split": { "test": [ "enron", "github_phishing_pot", "nazario_phishing-2022", "nazario_phishing-2023", "nazario_phishing-2024", "nazario_phishing-2025", "spamassassin_easy_ham", "spamassassin_hard_ham", "spaphish", "zenodo_2024" ], "train": [ "enron", "github_phishing_pot", "nazario_phishing-2022", "nazario_phishing-2023", "nazario_phishing-2024", "nazario_phishing-2025", "spamassassin_easy_ham", "spamassassin_hard_ham", "spaphish", "synthetic_modern_v2", "zenodo_2024" ], "validation": [ "enron", "github_phishing_pot", "nazario_phishing-2022", "nazario_phishing-2023", "nazario_phishing-2024", "nazario_phishing-2025", "spamassassin_easy_ham", "spamassassin_hard_ham", "spaphish", "zenodo_2024" ] }, "dataset_audit": { "class_counts_by_split": { "test": { "0": 2244, "1": 1566 }, "train": { "0": 7976, "1": 5605 }, "validation": { "0": 1122, "1": 784 } }, "sources_by_split_and_label": { "test": { "enron": { "0": 1555 }, "github_phishing_pot": { "1": 1180 }, "nazario_phishing-2022": { "1": 33 }, "nazario_phishing-2023": { "1": 66 }, "nazario_phishing-2024": { "1": 65 }, "nazario_phishing-2025": { "1": 83 }, "spamassassin_easy_ham": { "0": 494 }, "spamassassin_hard_ham": { "0": 48 }, "spaphish": { "0": 132, "1": 135 }, "zenodo_2024": { "0": 15, "1": 4 } }, "train": { "enron": { "0": 5442 }, "github_phishing_pot": { "1": 4132 }, "nazario_phishing-2022": { "1": 117 }, "nazario_phishing-2023": { "1": 233 }, "nazario_phishing-2024": { "1": 228 }, "nazario_phishing-2025": { "1": 291 }, "spamassassin_easy_ham": { "0": 1729 }, "spamassassin_hard_ham": { "0": 169 }, "spaphish": { "0": 464, "1": 471 }, "synthetic_modern_v2": { "0": 120, "1": 120 }, "zenodo_2024": { "0": 52, "1": 13 } }, "validation": { "enron": { "0": 778 }, "github_phishing_pot": { "1": 590 }, "nazario_phishing-2022": { "1": 17 }, "nazario_phishing-2023": { "1": 33 }, "nazario_phishing-2024": { "1": 33 }, "nazario_phishing-2025": { "1": 42 }, "spamassassin_easy_ham": { "0": 247 }, "spamassassin_hard_ham": { "0": 24 }, "spaphish": { "0": 66, "1": 67 }, "zenodo_2024": { "0": 7, "1": 2 } } }, "real_train_sources_per_label": { "0": [ "enron", "spamassassin_easy_ham", "spamassassin_hard_ham", "spaphish", "zenodo_2024" ], "1": [ "github_phishing_pot", "nazario_phishing-2022", "nazario_phishing-2023", "nazario_phishing-2024", "nazario_phishing-2025", "spaphish", "zenodo_2024" ] }, "train_class_weights": { "0": 0.8513665997993982, "1": 1.211507582515611 }, "warnings": [ "No language column is present, so multilingual coverage cannot be measured or stratified." ] }, "validation_multi_chunk_emails": 421, "test_multi_chunk_emails": 812, "calibration": { "version": 1, "method": "temperature_scaling", "temperature": 1.7604503631591797, "threshold": 0.5985404849052429, "band": 0.0, "positive_label_id": 1, "validation_f1_at_threshold": 0.9872773536895675, "selective_accuracy": 0.9895068205666316, "selective_coverage": 1.0, "target_selective_accuracy": 0.95, "minimum_selective_coverage": 0.8, "model_type": "distilbert", "aggregation": "maximum_positive_logit_margin", "max_length": 512, "stride": 128, "max_chunks": 8, "dataset_sha256": "c89e1f5d2bb92b5a5dd5beb8a235a798932ed19eb9d75c2f740a94b5fd450816" }, "test_metrics": { "accuracy": 0.9845144356955381, "precision": 0.9851899549259497, "recall": 0.9770114942528736, "f1": 0.9810836806668805, "confusion_matrix": [ [ 2221, 23 ], [ 36, 1530 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9845144356955381 }, "test_metrics_by_source": { "enron": { "accuracy": 0.9948553054662379, "precision": 0.0, "recall": 0.0, "f1": 0.0, "confusion_matrix": [ [ 1547, 8 ], [ 0, 0 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9948553054662379, "rows": 1555 }, "github_phishing_pot": { "accuracy": 0.9830508474576272, "precision": 1.0, "recall": 0.9830508474576272, "f1": 0.9914529914529915, "confusion_matrix": [ [ 0, 0 ], [ 20, 1160 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9830508474576272, "rows": 1180 }, "nazario_phishing-2022": { "accuracy": 0.9696969696969697, "precision": 1.0, "recall": 0.9696969696969697, "f1": 0.9846153846153847, "confusion_matrix": [ [ 0, 0 ], [ 1, 32 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9696969696969697, "rows": 33 }, "nazario_phishing-2023": { "accuracy": 1.0, "precision": 1.0, "recall": 1.0, "f1": 1.0, "confusion_matrix": [ [ 0, 0 ], [ 0, 66 ] ], "selective_coverage": 1.0, "selective_accuracy": 1.0, "rows": 66 }, "nazario_phishing-2024": { "accuracy": 1.0, "precision": 1.0, "recall": 1.0, "f1": 1.0, "confusion_matrix": [ [ 0, 0 ], [ 0, 65 ] ], "selective_coverage": 1.0, "selective_accuracy": 1.0, "rows": 65 }, "nazario_phishing-2025": { "accuracy": 0.9518072289156626, "precision": 1.0, "recall": 0.9518072289156626, "f1": 0.9753086419753086, "confusion_matrix": [ [ 0, 0 ], [ 4, 79 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9518072289156626, "rows": 83 }, "spamassassin_easy_ham": { "accuracy": 0.9939271255060729, "precision": 0.0, "recall": 0.0, "f1": 0.0, "confusion_matrix": [ [ 491, 3 ], [ 0, 0 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9939271255060729, "rows": 494 }, "spamassassin_hard_ham": { "accuracy": 0.9583333333333334, "precision": 0.0, "recall": 0.0, "f1": 0.0, "confusion_matrix": [ [ 46, 2 ], [ 0, 0 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9583333333333334, "rows": 48 }, "spaphish": { "accuracy": 0.9213483146067416, "precision": 0.9253731343283582, "recall": 0.9185185185185185, "f1": 0.9219330855018587, "confusion_matrix": [ [ 122, 10 ], [ 11, 124 ] ], "selective_coverage": 1.0, "selective_accuracy": 0.9213483146067416, "rows": 267 }, "zenodo_2024": { "accuracy": 1.0, "precision": 1.0, "recall": 1.0, "f1": 1.0, "confusion_matrix": [ [ 15, 0 ], [ 0, 4 ] ], "selective_coverage": 1.0, "selective_accuracy": 1.0, "rows": 19 } } }