{ "timestamp": "2026-10-09 10:46", "run_name": "ft-focal", "split": "test3", "split_file": "/home/nathank/BITS/dev/Phishing Model/data/processed/test_holdout3.parquet", "split_title": "three-way holdout", "limit_rows": null, "dev_run": false, "checkpoint": "/home/nathank/BITS/dev/Phishing Model/checkpoints/finetune/ft-focal/best", "splits_in_invocation": [ "test", "test3" ], "model_config": { "vocab_size": 32768, "max_seq_len": 512, "d_model": 1024, "n_layers": 24, "n_heads": 16, "d_ff": 4096, "dropout": 0.1, "attention_dropout": 0.1, "layer_norm_eps": 1e-05, "pad_token_id": 0, "tie_mlm_head": true, "grad_checkpointing": false, "num_labels": 3 }, "num_labels": 3, "params": 337444867, "checkpoint_config": { "tokenizer": "tokenizer.json", "finetune": { "run_name": "ft-focal", "init": "pretrained:checkpoints/pretrain/large-24L/final", "n_layers": 24, "freeze_layers": 0, "loss": "focal", "focal_gamma": 2.0, "lr": 3e-05, "batch_size": 32, "micro_batch": 16, "epochs": 2, "max_steps": null, "eval_every": 1250, "log_every": 20, "eval_batch_size": 64, "warmup_fraction": 0.06, "weight_decay": 0.01, "betas": [ 0.9, 0.98 ], "eps": 1e-06, "grad_clip": 1.0, "patience": 2, "schedule": "linear_decay", "selection_metric": "val_f1_unwanted", "pooling": "cls", "num_labels": 3, "synthetic": "off", "limit_rows": null, "seed": 42, "cpu": false }, "best_epoch": 1, "best_step": 8750, "num_labels": 3, "label_names": [ "Legitimate", "Phishing", "Spam" ], "binary_rollup_name": "Unwanted (phishing or spam)", "selection_metric": "val_f1_unwanted", "selection_value": 0.9951084002657166, "val_metrics": { "accuracy": 0.9947003402250719, "precision": 0.9954089646007007, "recall": 0.9948080173871046, "f1": 0.9951084002657166, "roc_auc": 0.9998186946414248, "pr_auc": 0.9998464119156345, "tn": 6964, "fp": 38, "fn": 43, "tp": 8239, "threshold": 0.5, "f1_optimal_threshold": 0.42074909806251526, "f1_at_optimal_threshold": 0.9952995058454863, "f1_unwanted": 0.9951084002657166, "n_3way": 8105, "accuracy_3way": 0.994694632942628, "macro_f1_3way": 0.9868751212108838, "precision_legitimate": 0.9988533753762362, "recall_legitimate": 0.99528706083976, "f1_legitimate": 0.9970670291151013, "precision_phishing": 0.9853372434017595, "recall_phishing": 0.9882352941176471, "f1_phishing": 0.986784140969163, "precision_spam": 0.9618805590851334, "recall_spam": 0.9921363040629095, "f1_spam": 0.9767741935483871, "cm3_ll": 6969, "cm3_lp": 4, "cm3_ls": 29, "cm3_pl": 3, "cm3_pp": 336, "cm3_ps": 1, "cm3_sl": 5, "cm3_sp": 1, "cm3_ss": 757, "n_unwanted_3way": 1103, "pvs_phish_as_phish": 339, "pvs_phish_as_spam": 1, "pvs_spam_as_phish": 1, "pvs_spam_as_spam": 762, "val_loss": 0.030296484990695233, "n": 15284, "eval_seconds": 48.0 }, "val_metric_sets": { "binary_unwanted": { "accuracy": 0.9947003402250719, "precision": 0.9954089646007007, "recall": 0.9948080173871046, "f1": 0.9951084002657166, "roc_auc": 0.9998186946414248, "pr_auc": 0.9998464119156345, "tn": 6964, "fp": 38, "fn": 43, "tp": 8239, "threshold": 0.5, "f1_optimal_threshold": 0.42074909806251526, "f1_at_optimal_threshold": 0.9952995058454863, "n": 15284, "positive_class": "Unwanted (phishing or spam)" }, "three_way": { "n": 8105, "accuracy": 0.994694632942628, "macro_f1": 0.9868751212108838, "per_class": { "Legitimate": { "precision": 0.9988533753762362, "recall": 0.99528706083976, "f1": 0.9970670291151013 }, "Phishing": { "precision": 0.9853372434017595, "recall": 0.9882352941176471, "f1": 0.986784140969163 }, "Spam": { "precision": 0.9618805590851334, "recall": 0.9921363040629095, "f1": 0.9767741935483871 } }, "confusion": { "order": [ "Legitimate", "Phishing", "Spam" ], "rows_true_cols_pred": [ [ 6969, 4, 29 ], [ 3, 336, 1 ], [ 5, 1, 757 ] ] }, "phish_vs_spam_on_true_unwanted": { "n": 1103, "order": [ "Phishing", "Spam" ], "rows_true_cols_pred": [ [ 339, 1 ], [ 1, 762 ] ] } } }, "thresholds": { "decision": 0.5, "decision_applies_to": "P(unwanted) = sum of non-legitimate probabilities", "val_f1_optimal": 0.42074909806251526, "val_f1_at_optimal": 0.9952995058454863 }, "init": "pretrained:/home/nathank/BITS/dev/Phishing Model/checkpoints/pretrain/large-24L/final", "params": { "total": 337444867, "trainable": 337444867, "embeddings": 34080768, "encoder_layers": 302309376, "final_norm": 2048, "head": 1052675 } }, "tokenizer": "/home/nathank/BITS/dev/Phishing Model/data/processed/tokenizer.json", "max_len": 512, "label_names": { "0": "Legitimate", "1": "Phishing", "2": "Spam" }, "binary_rollup": { "unwanted_name": "Unwanted (phishing or spam)", "classes": [ 1, 2 ], "rule": "P(unwanted) = sum of P(class) for class >= 1; flag when >= threshold" }, "split_sizes": { "rows": 3220, "positive": 1221, "negative": 1999, "positive_rate": 0.3792, "label3": { "legit": 1999, "phish": 521, "spam": 700, "unwanted": 0 }, "by_source": { "Assassin": { "rows": 236, "positive": 72, "label3": { "legit": 164, "phish": 0, "spam": 72, "unwanted": 0 } }, "CEAS-08": { "rows": 736, "positive": 0, "label3": { "legit": 736, "phish": 0, "spam": 0, "unwanted": 0 } }, "Enron": { "rows": 628, "positive": 628, "label3": { "legit": 0, "phish": 0, "spam": 628, "unwanted": 0 } }, "Nazario": { "rows": 222, "positive": 222, "label3": { "legit": 0, "phish": 222, "spam": 0, "unwanted": 0 } }, "Nigerian_Fraud": { "rows": 299, "positive": 299, "label3": { "legit": 0, "phish": 299, "spam": 0, "unwanted": 0 } }, "TREC-07": { "rows": 1099, "positive": 0, "label3": { "legit": 1099, "phish": 0, "spam": 0, "unwanted": 0 } } }, "mean_tokens_full": 835.2, "pct_truncated": 34.01 }, "threshold": 0.5, "at_threshold": { "threshold": 0.5, "accuracy": 0.989751552795031, "precision": 0.9892915980230642, "recall": 0.9836199836199836, "f1": 0.986447638603696, "specificity": 0.9934967483741871, "false_positive_rate": 0.0065032516258129065, "false_negative_rate": 0.01638001638001638, "confusion_matrix": { "tn": 1986, "fp": 13, "fn": 20, "tp": 1201 }, "n": 3220, "n_positive": 1221, "n_negative": 1999 }, "threshold_free": { "roc_auc": 0.9993325901279878, "pr_auc": 0.9988537821967886, "recall_at_fpr_1pct": { "fpr_budget": 0.01, "recall": 0.9868959868959869, "fpr": 0.009004502251125562, "threshold": 0.43377745151519775, "threshold_rule": "flag when p >= threshold" }, "recall_at_fpr_0_1pct": { "fpr_budget": 0.001, "recall": 0.8787878787878788, "fpr": 0.0005002501250625312, "threshold": 0.9472352862358093, "threshold_rule": "flag when p >= threshold" }, "best_f1": { "threshold": 0.47499534487724304, "f1": 0.9876948318293682, "precision": 0.9893179950698439, "recall": 0.9860769860769861 } }, "threeway": { "num_labels": 3, "label_names": { "0": "Legitimate", "1": "Phishing", "2": "Spam" }, "unwanted_name": "Unwanted (phishing or spam)", "decision_rule": "rollup_then_argmax", "decision_rule_doc": "unwanted iff P(phishing)+P(spam) >= threshold, then kind = argmax(P(phishing), P(spam)); the 3x3 matrix therefore collapses exactly onto the binary confusion matrix. argmax-of-3 reported alongside.", "threshold": 0.5, "label3_counts": { "legit": 1999, "phish": 521, "spam": 700, "unwanted": 0 }, "predicted_kind_breakdown": { "note": "How the model's flagged rows split into predicted phishing vs spam (kind = argmax(P(phishing), P(spam))). Informational: for rows labelled -1/unwanted (all TREC-06 positives) there is NO phishing-vs-spam ground truth.", "true_positives_flagged": { "n": 1201, "predicted_phishing": 515, "predicted_spam": 686 }, "false_positives_flagged": { "n": 13, "predicted_phishing": 1, "predicted_spam": 12 }, "missed_positives": { "n": 20, "predicted_phishing": 3, "predicted_spam": 17 }, "all_flagged": { "n": 1214, "predicted_phishing": 516, "predicted_spam": 698 }, "unsplit_unwanted_rows_flagged": { "n": 0, "predicted_phishing": 0, "predicted_spam": 0 } }, "rows_with_full_label": 3220, "rows_unwanted_only": 0, "evaluated": true, "reason": null, "confusion_matrix": { "labels": [ "Legitimate", "Phishing", "Spam" ], "matrix": [ [ 1986, 1, 12 ], [ 4, 514, 3 ], [ 16, 1, 683 ] ], "cells": { "true_legitimate": { "pred_legitimate": 1986, "pred_phishing": 1, "pred_spam": 12 }, "true_phishing": { "pred_legitimate": 4, "pred_phishing": 514, "pred_spam": 3 }, "true_spam": { "pred_legitimate": 16, "pred_phishing": 1, "pred_spam": 683 } } }, "accuracy": 0.9885093167701864, "macro_f1": 0.9867305252015051, "macro_f1_present_classes": 0.9867305252015051, "classes_present": [ "Legitimate", "Phishing", "Spam" ], "per_class": { "Legitimate": { "precision": 0.9900299102691924, "recall": 0.9934967483741871, "f1": 0.9917602996254682, "support": 1999 }, "Phishing": { "precision": 0.9961240310077519, "recall": 0.9865642994241842, "f1": 0.991321118611379, "support": 521 }, "Spam": { "precision": 0.9785100286532952, "recall": 0.9757142857142858, "f1": 0.977110157367668, "support": 700 } }, "argmax_rule": { "doc": "plain argmax over the three probabilities (secondary; can disagree with the binary verdict near the threshold)", "accuracy": 0.987888198757764, "macro_f1": 0.9858185605052249, "per_class": { "Legitimate": { "precision": 0.9880715705765407, "recall": 0.9944972486243121, "f1": 0.9912739965095986, "support": 1999 }, "Phishing": { "precision": 0.9980430528375733, "recall": 0.9788867562380038, "f1": 0.9883720930232558, "support": 521 }, "Spam": { "precision": 0.9799139167862266, "recall": 0.9757142857142858, "f1": 0.9778095919828204, "support": 700 } }, "rows_where_rules_differ": 6 }, "phish_vs_spam_on_true_unwanted": { "n_true_unwanted": 1221, "kind_only": { "doc": "given the row is unwanted, is argmax(P(phishing), P(spam)) right? (independent of the roll-up threshold)", "labels": [ "Phishing", "Spam" ], "matrix": [ [ 517, 4 ], [ 1, 699 ] ], "cells": { "true_phishing": { "pred_phishing": 517, "pred_spam": 4 }, "true_spam": { "pred_phishing": 1, "pred_spam": 699 } }, "accuracy": 0.9959049959049959, "phishing_as_spam": 4, "spam_as_phishing": 1 }, "rollup_rule": { "doc": "rows = true Phishing / Spam; columns = predicted Legitimate (missed) / Phishing / Spam under the roll-up rule", "rows": [ "Phishing", "Spam" ], "columns": [ "Legitimate", "Phishing", "Spam" ], "matrix": [ [ 4, 514, 3 ], [ 16, 1, 683 ] ], "missed_as_legitimate": { "phishing": 4, "spam": 16 } } }, "per_source": { "Assassin": { "n": 236, "counts": { "Legitimate": 164, "Phishing": 0, "Spam": 72 }, "accuracy": 0.9533898305084746, "macro_f1": 0.6305609284332688, "macro_f1_present_classes": 0.9458413926499033, "per_class_recall": { "Legitimate": 0.975609756097561, "Spam": 0.9027777777777778 } }, "CEAS-08": { "n": 736, "counts": { "Legitimate": 736, "Phishing": 0, "Spam": 0 }, "accuracy": 0.9904891304347826, "macro_f1": 0.331740614334471, "macro_f1_present_classes": 0.995221843003413, "per_class_recall": { "Legitimate": 0.9904891304347826 } }, "Enron": { "n": 628, "counts": { "Legitimate": 0, "Phishing": 0, "Spam": 628 }, "accuracy": 0.9840764331210191, "macro_f1": 0.3306581059390048, "macro_f1_present_classes": 0.9919743178170144, "per_class_recall": { "Spam": 0.9840764331210191 } }, "Nazario": { "n": 222, "counts": { "Legitimate": 0, "Phishing": 222, "Spam": 0 }, "accuracy": 0.9864864864864865, "macro_f1": 0.3310657596371882, "macro_f1_present_classes": 0.9931972789115646, "per_class_recall": { "Phishing": 0.9864864864864865 } }, "Nigerian_Fraud": { "n": 299, "counts": { "Legitimate": 0, "Phishing": 299, "Spam": 0 }, "accuracy": 0.9866220735785953, "macro_f1": 0.33108866442199775, "macro_f1_present_classes": 0.9932659932659933, "per_class_recall": { "Phishing": 0.9866220735785953 } }, "TREC-07": { "n": 1099, "counts": { "Legitimate": 1099, "Phishing": 0, "Spam": 0 }, "accuracy": 0.9981801637852593, "macro_f1": 0.33302975106253796, "macro_f1_present_classes": 0.9990892531876139, "per_class_recall": { "Legitimate": 0.9981801637852593 } } } }, "credential_lure_slice": { "n_phrases": 37, "phrases": [ "verify your account", "verify your identity", "confirm your identity", "confirm your account", "enter your password", "update your account", "update your information", "update your billing", "update your payment", "click here to verify", "click the link below to verify", "account has been suspended", "account has been limited", "account will be suspended", "account has been locked", "unusual sign-in", "unusual activity", "suspicious activity", "paypal account", "ebay account", "password expire", "password will expire", "reset your password", "invoice attached", "wire transfer", "gift card", "urgent", "urgently", "security alert", "security notice", "login to your account", "log in to your account", "sign in to your account", "bank account", "failure to verify", "within 24 hours", "within 48 hours" ], "match_rule": "whole-word match on NFKC-lowercased text with non-alphanumerics collapsed to spaces", "phrase_hits": { "urgent": 139, "bank account": 91, "urgently": 25, "verify your account": 15, "confirm your account": 9, "update your account": 9, "within 24 hours": 8, "security alert": 8, "paypal account": 7, "password will expire": 7, "click here to verify": 6, "unusual activity": 4, "wire transfer": 3, "update your information": 3, "gift card": 3, "verify your identity": 2, "unusual sign-in": 2, "account will be suspended": 2, "update your payment": 2, "failure to verify": 2, "within 48 hours": 2, "confirm your identity": 2, "enter your password": 1, "update your billing": 1, "reset your password": 1, "suspicious activity": 1, "security notice": 1, "log in to your account": 1 }, "phrase_hits_by_label": { "verify your account": { "positive": 15, "negative": 0 }, "verify your identity": { "positive": 2, "negative": 0 }, "confirm your identity": { "positive": 2, "negative": 0 }, "confirm your account": { "positive": 9, "negative": 0 }, "enter your password": { "positive": 0, "negative": 1 }, "update your account": { "positive": 9, "negative": 0 }, "update your information": { "positive": 2, "negative": 1 }, "update your billing": { "positive": 1, "negative": 0 }, "update your payment": { "positive": 2, "negative": 0 }, "click here to verify": { "positive": 6, "negative": 0 }, "account will be suspended": { "positive": 2, "negative": 0 }, "unusual sign-in": { "positive": 2, "negative": 0 }, "unusual activity": { "positive": 4, "negative": 0 }, "suspicious activity": { "positive": 1, "negative": 0 }, "paypal account": { "positive": 7, "negative": 0 }, "password will expire": { "positive": 7, "negative": 0 }, "reset your password": { "positive": 1, "negative": 0 }, "wire transfer": { "positive": 2, "negative": 1 }, "gift card": { "positive": 3, "negative": 0 }, "urgent": { "positive": 133, "negative": 6 }, "urgently": { "positive": 25, "negative": 0 }, "security alert": { "positive": 8, "negative": 0 }, "security notice": { "positive": 1, "negative": 0 }, "log in to your account": { "positive": 1, "negative": 0 }, "bank account": { "positive": 91, "negative": 0 }, "failure to verify": { "positive": 2, "negative": 0 }, "within 24 hours": { "positive": 8, "negative": 0 }, "within 48 hours": { "positive": 2, "negative": 0 } }, "label_purity": 0.9745, "min_positives_for_comparison": 20, "label3_counts": { "legit": 7, "phish": 236, "spam": 32, "unwanted": 0 }, "threeway_accuracy": 0.9927272727272727, "metrics": { "threshold": 0.5, "accuracy": 1.0, "precision": 1.0, "recall": 1.0, "f1": 1.0, "specificity": 1.0, "false_positive_rate": 0.0, "false_negative_rate": 0.0, "confusion_matrix": { "tn": 7, "fp": 0, "fn": 0, "tp": 268 }, "n": 275, "n_positive": 268, "n_negative": 7, "roc_auc": 1.0 } }, "per_source": { "Assassin": { "threshold": 0.5, "accuracy": 0.9576271186440678, "precision": 0.9428571428571428, "recall": 0.9166666666666666, "f1": 0.9295774647887323, "specificity": 0.975609756097561, "false_positive_rate": 0.024390243902439025, "false_negative_rate": 0.08333333333333333, "confusion_matrix": { "tn": 160, "fp": 4, "fn": 6, "tp": 66 }, "n": 236, "n_positive": 72, "n_negative": 164, "roc_auc": 0.994579945799458, "label3_counts": { "legit": 164, "phish": 0, "spam": 72, "unwanted": 0 } }, "CEAS-08": { "threshold": 0.5, "accuracy": 0.9904891304347826, "precision": 0.0, "recall": 0.0, "f1": 0.0, "specificity": 0.9904891304347826, "false_positive_rate": 0.009510869565217392, "false_negative_rate": 0.0, "confusion_matrix": { "tn": 729, "fp": 7, "fn": 0, "tp": 0 }, "n": 736, "n_positive": 0, "n_negative": 736, "roc_auc": null, "label3_counts": { "legit": 736, "phish": 0, "spam": 0, "unwanted": 0 } }, "Enron": { "threshold": 0.5, "accuracy": 0.9840764331210191, "precision": 1.0, "recall": 0.9840764331210191, "f1": 0.9919743178170145, "specificity": 0.0, "false_positive_rate": 0.0, "false_negative_rate": 0.01592356687898089, "confusion_matrix": { "tn": 0, "fp": 0, "fn": 10, "tp": 618 }, "n": 628, "n_positive": 628, "n_negative": 0, "roc_auc": null, "label3_counts": { "legit": 0, "phish": 0, "spam": 628, "unwanted": 0 } }, "Nazario": { "threshold": 0.5, "accuracy": 0.9864864864864865, "precision": 1.0, "recall": 0.9864864864864865, "f1": 0.9931972789115647, "specificity": 0.0, "false_positive_rate": 0.0, "false_negative_rate": 0.013513513513513514, "confusion_matrix": { "tn": 0, "fp": 0, "fn": 3, "tp": 219 }, "n": 222, "n_positive": 222, "n_negative": 0, "roc_auc": null, "label3_counts": { "legit": 0, "phish": 222, "spam": 0, "unwanted": 0 } }, "Nigerian_Fraud": { "threshold": 0.5, "accuracy": 0.9966555183946488, "precision": 1.0, "recall": 0.9966555183946488, "f1": 0.998324958123953, "specificity": 0.0, "false_positive_rate": 0.0, "false_negative_rate": 0.0033444816053511705, "confusion_matrix": { "tn": 0, "fp": 0, "fn": 1, "tp": 298 }, "n": 299, "n_positive": 299, "n_negative": 0, "roc_auc": null, "label3_counts": { "legit": 0, "phish": 299, "spam": 0, "unwanted": 0 } }, "TREC-07": { "threshold": 0.5, "accuracy": 0.9981801637852593, "precision": 0.0, "recall": 0.0, "f1": 0.0, "specificity": 0.9981801637852593, "false_positive_rate": 0.0018198362147406734, "false_negative_rate": 0.0, "confusion_matrix": { "tn": 1097, "fp": 2, "fn": 0, "tp": 0 }, "n": 1099, "n_positive": 0, "n_negative": 1099, "roc_auc": null, "label3_counts": { "legit": 1099, "phish": 0, "spam": 0, "unwanted": 0 } } }, "length_confound": { "by_outcome": { "tp": { "n": 1201, "mean_tokens_full": 978.0, "mean_tokens_fed": 279.8, "median_tokens_full": 243.0, "pct_truncated": 26.6 }, "tn": { "n": 1986, "mean_tokens_full": 732.6, "mean_tokens_fed": 358.4, "median_tokens_full": 392.5, "pct_truncated": 38.3 }, "fp": { "n": 13, "mean_tokens_full": 1814.3, "mean_tokens_fed": 377.2, "median_tokens_full": 875.0, "pct_truncated": 61.5 }, "fn": { "n": 20, "mean_tokens_full": 1807.8, "mean_tokens_fed": 284.1, "median_tokens_full": 291.0, "pct_truncated": 35.0 }, "correct": { "n": 3187, "mean_tokens_full": 825.1, "mean_tokens_fed": 328.8, "median_tokens_full": 339.0, "pct_truncated": 33.9 }, "wrong": { "n": 33, "mean_tokens_full": 1810.4, "mean_tokens_fed": 320.8, "median_tokens_full": 368.0, "pct_truncated": 45.5 } }, "by_label": { "legitimate": { "n": 1999, "mean_tokens_full": 739.7, "mean_tokens_fed": 358.6, "median_tokens_full": 393.0, "pct_truncated": 38.5 }, "unwanted": { "n": 1221, "mean_tokens_full": 991.6, "mean_tokens_fed": 279.9, "median_tokens_full": 243.0, "pct_truncated": 26.7 } }, "by_class3": { "legit": { "n": 1999, "mean_tokens_full": 739.7, "mean_tokens_fed": 358.6, "median_tokens_full": 393.0, "pct_truncated": 38.5 }, "phish": { "n": 521, "mean_tokens_full": 1349.4, "mean_tokens_fed": 355.1, "median_tokens_full": 412.0, "pct_truncated": 39.9 }, "spam": { "n": 700, "mean_tokens_full": 725.3, "mean_tokens_fed": 223.9, "median_tokens_full": 159.0, "pct_truncated": 16.9 } }, "by_length_bucket": [ { "bucket": "<=64", "n": 129, "n_positive": 99, "positive_rate": 0.7674418604651163, "recall": 0.9494949494949495, "fpr": 0.03333333333333333, "accuracy": 0.9534883720930233 }, { "bucket": "65-128", "n": 427, "n_positive": 252, "positive_rate": 0.5901639344262295, "recall": 0.9920634920634921, "fpr": 0.011428571428571429, "accuracy": 0.990632318501171 }, { "bucket": "129-256", "n": 699, "n_positive": 276, "positive_rate": 0.3948497854077253, "recall": 0.9927536231884058, "fpr": 0.0, "accuracy": 0.9971387696709585 }, { "bucket": "257-512", "n": 870, "n_positive": 268, "positive_rate": 0.3080459770114943, "recall": 0.9850746268656716, "fpr": 0.0033222591362126247, "accuracy": 0.993103448275862 }, { "bucket": ">512", "n": 1095, "n_positive": 326, "positive_rate": 0.29771689497716897, "recall": 0.9785276073619632, "fpr": 0.010403120936280884, "accuracy": 0.9863013698630136 } ] }, "inference": { "device": "cuda", "autocast_bf16": true, "batch_size": 64, "pad_to_multiple_of": 8, "num_labels": 3, "rows": 3220, "seconds": 13.55, "rows_per_s": 237.6, "padded_tokens": 1079936, "real_tokens": 1058490, "padded_tokens_per_s": 79672, "peak_vram_gb": 2.27 }, "latency": { "instructor_benchmark_ms": 74.0, "samples_requested": 100, "sample_split": "test", "max_len": 512, "gpu_bf16": { "n": 100, "avg_ms": 10.08, "p50_ms": 8.9, "p95_ms": 13.72, "max_ms": 18.58, "avg_s": 0.0101, "mean_tokens": 280.0, "ratio_to_benchmark": 0.136, "device": "NVIDIA GeForce RTX 3090 Ti" }, "cpu_fp32": { "n": 100, "avg_ms": 458.57, "p50_ms": 445.01, "p95_ms": 701.07, "max_ms": 828.65, "avg_s": 0.4586, "mean_tokens": 280.0, "ratio_to_benchmark": 6.197, "threads": 16, "estimated_full_run_s": 41.8 }, "checkpoint": "/home/nathank/BITS/dev/Phishing Model/checkpoints/finetune/ft-focal/best", "run_name": "ft-focal", "params": 337444867, "timestamp": "2026-10-09 10:46", "num_labels": 3, "measured_once_for_splits": [ "test", "test3" ] }, "error_analysis": { "path": "/home/nathank/BITS/dev/Phishing Model/reports/error_analysis_test3.md", "n_fn": 20, "n_fp": 13, "composition": { "fp": { "n": 13, "mailing_list_or_digest": 0.462, "html_heavy": 0.0, "very_short_lt20_tokens": 0.0, "truncated_gt512": 0.615, "lure_phrase": 0.0 }, "tn": { "n": 1986, "mailing_list_or_digest": 0.563, "html_heavy": 0.0, "very_short_lt20_tokens": 0.0, "truncated_gt512": 0.383, "lure_phrase": 0.004 }, "fn": { "n": 20, "mailing_list_or_digest": 0.3, "html_heavy": 0.0, "very_short_lt20_tokens": 0.1, "truncated_gt512": 0.35, "lure_phrase": 0.0 }, "tp": { "n": 1201, "mailing_list_or_digest": 0.083, "html_heavy": 0.0, "very_short_lt20_tokens": 0.006, "truncated_gt512": 0.266, "lure_phrase": 0.223 } }, "fn_vs_tp_tokens": [ { "token": "invite", "share_a": 0.25, "share_b": 0.002, "ratio": 128.94 }, { "token": "cut", "share_a": 0.15, "share_b": 0.002, "ratio": 82.05 }, { "token": "practical", "share_a": 0.15, "share_b": 0.002, "ratio": 82.05 }, { "token": "networking", "share_a": 0.2, "share_b": 0.002, "ratio": 75.36 }, { "token": "audience", "share_a": 0.15, "share_b": 0.003, "ratio": 45.59 }, { "token": "oct", "share_a": 0.15, "share_b": 0.003, "ratio": 45.59 }, { "token": "innovative", "share_a": 0.15, "share_b": 0.003, "ratio": 45.59 }, { "token": "event", "share_a": 0.2, "share_b": 0.005, "ratio": 40.58 }, { "token": "angeles", "share_a": 0.15, "share_b": 0.004, "ratio": 37.3 }, { "token": "anyway", "share_a": 0.15, "share_b": 0.004, "ratio": 37.3 }, { "token": "feature", "share_a": 0.15, "share_b": 0.005, "ratio": 31.56 }, { "token": "york", "share_a": 0.15, "share_b": 0.005, "ratio": 31.56 }, { "token": "subscription", "share_a": 0.2, "share_b": 0.007, "ratio": 27.76 }, { "token": "technologies", "share_a": 0.15, "share_b": 0.006, "ratio": 27.35 }, { "token": "entertainment", "share_a": 0.15, "share_b": 0.007, "ratio": 24.13 }, { "token": "staff", "share_a": 0.2, "share_b": 0.011, "ratio": 19.54 }, { "token": "association", "share_a": 0.15, "share_b": 0.008, "ratio": 19.54 }, { "token": "markets", "share_a": 0.15, "share_b": 0.009, "ratio": 17.84 }, { "token": "hosting", "share_a": 0.15, "share_b": 0.009, "ratio": 17.84 }, { "token": "mailman", "share_a": 0.15, "share_b": 0.009, "ratio": 17.84 } ], "fp_vs_tn_tokens": [ { "token": "outlets", "share_a": 0.231, "share_b": 0.001, "ratio": 206.01 }, { "token": "zzz-unspun", "share_a": 0.231, "share_b": 0.001, "ratio": 206.01 }, { "token": "czzz-unspun", "share_a": 0.231, "share_b": 0.001, "ratio": 206.01 }, { "token": "cook", "share_a": 0.231, "share_b": 0.001, "ratio": 206.01 }, { "token": "full-color", "share_a": 0.385, "share_b": 0.002, "ratio": 179.85 }, { "token": "muehlbauer", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "vanderkolk", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "eletra", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "loripatel", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "copyedited", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "jimduffy86", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "asbrand", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "patel", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "authoritatively", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "four-week", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "duffy", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "mediaunspun", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "savviest", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "dasbrand", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 }, { "token": "sendashtml", "share_a": 0.231, "share_b": 0.002, "ratio": 147.15 } ], "top_fn_doc_ids": [ "primary:191966", "primary:148887", "aura:Nazario:000097", "primary:010013", "primary:007176", "aura:Nazario:000643", "primary:181246", "primary:095405", "primary:014300", "primary:001939", "primary:033220", "primary:025244", "primary:133074", "aura:Nigerian_Fraud:003049", "aura:Nazario:000299", "primary:046569", "primary:135631", "primary:148857", "primary:129677", "primary:075760" ], "top_fp_doc_ids": [ "primary:144048", "primary:199386", "primary:091801", "primary:152763", "primary:165228", "primary:041713", "primary:103927", "primary:055965", "primary:170237", "primary:117398", "primary:168120", "primary:057514", "primary:021911" ], "threeway": { "n_phish_as_spam": 3, "n_spam_as_phish": 1, "top_phish_as_spam_doc_ids": [ "aura:Nigerian_Fraud:001698", "aura:Nigerian_Fraud:000337", "aura:Nigerian_Fraud:000824" ], "top_spam_as_phish_doc_ids": [ "primary:077835" ], "phish_as_spam_tokens": [ { "token": "join", "share_a": 1.0, "share_b": 0.019, "ratio": 49.0 }, { "token": "could", "share_a": 1.0, "share_b": 0.076, "ratio": 13.03 }, { "token": "www", "share_a": 1.0, "share_b": 0.15, "ratio": 6.64 }, { "token": "new", "share_a": 1.0, "share_b": 0.16, "ratio": 6.24 }, { "token": "http", "share_a": 1.0, "share_b": 0.193, "ratio": 5.17 }, { "token": "years", "share_a": 1.0, "share_b": 0.196, "ratio": 5.07 }, { "token": "get", "share_a": 1.0, "share_b": 0.202, "ratio": 4.92 }, { "token": "about", "share_a": 1.0, "share_b": 0.239, "ratio": 4.17 }, { "token": "after", "share_a": 1.0, "share_b": 0.278, "ratio": 3.59 }, { "token": "who", "share_a": 1.0, "share_b": 0.317, "ratio": 3.15 }, { "token": "into", "share_a": 1.0, "share_b": 0.323, "ratio": 3.09 }, { "token": "com", "share_a": 1.0, "share_b": 0.339, "ratio": 2.95 }, { "token": "which", "share_a": 1.0, "share_b": 0.362, "ratio": 2.76 }, { "token": "now", "share_a": 1.0, "share_b": 0.379, "ratio": 2.63 }, { "token": "can", "share_a": 1.0, "share_b": 0.467, "ratio": 2.14 }, { "token": "are", "share_a": 1.0, "share_b": 0.562, "ratio": 1.78 }, { "token": "from", "share_a": 1.0, "share_b": 0.644, "ratio": 1.55 }, { "token": "will", "share_a": 1.0, "share_b": 0.714, "ratio": 1.4 }, { "token": "for", "share_a": 1.0, "share_b": 0.8, "ratio": 1.25 }, { "token": "this", "share_a": 1.0, "share_b": 0.815, "ratio": 1.23 } ], "spam_as_phish_tokens": [] } }, "plots": { "confusion_matrix": "/home/nathank/BITS/dev/Phishing Model/reports/confusion_matrix_test3.png", "confusion_matrix3": "/home/nathank/BITS/dev/Phishing Model/reports/confusion_matrix3_test3.png", "roc_curve": "/home/nathank/BITS/dev/Phishing Model/reports/roc_curve_test3.png", "pr_curve": "/home/nathank/BITS/dev/Phishing Model/reports/pr_curve_test3.png", "eval_finetune_curves": "/home/nathank/BITS/dev/Phishing Model/reports/eval_finetune_curves_test3.png", "eval_pretrain_curves": "/home/nathank/BITS/dev/Phishing Model/reports/eval_pretrain_curves_test3.png" } }