fraud-detection / models /model_meta.json
fikri0o0's picture
2026-06-05: audit fixes — directed GNN edges, realistic cost model, 85% stream catch, cross-dataset tab
d724279 verified
{
"model": "LightGBM (cost-sensitive, Optuna-tuned)",
"trained_at": "2026-06-05 21:39",
"n_train": 1102173,
"n_valid": 194502,
"n_test": 555719,
"n_features": 24,
"test_metrics": {
"pr_auc": 0.9666,
"roc_auc": 0.99908,
"f1_at_best": 0.79494,
"best_threshold": 0.0187,
"precision_at_best": 0.67536,
"recall_at_best": 0.96597,
"precision_at_100": 1.0,
"recall_at_1pct": 0.98042,
"total_cost": 1863.35715,
"cost_at_half": 2341.27503,
"n": 555719,
"n_fraud": 2145
},
"imbalance_study": [
{
"strategy": "none",
"train_rows": 1102173,
"scale_pos_weight": 1.0,
"pr_auc": 0.6821,
"roc_auc": 0.986,
"recall_at_1pct": 0.9718,
"fit_seconds": 11.7
},
{
"strategy": "cost_sensitive",
"train_rows": 1102173,
"scale_pos_weight": 171.9,
"pr_auc": 0.9796,
"roc_auc": 0.9995,
"recall_at_1pct": 0.9815,
"fit_seconds": 13.0
},
{
"strategy": "smote",
"train_rows": 1205380,
"scale_pos_weight": 1.0,
"pr_auc": 0.9817,
"roc_auc": 0.9997,
"recall_at_1pct": 0.9859,
"fit_seconds": 28.8
},
{
"strategy": "undersample",
"train_rows": 70103,
"scale_pos_weight": 1.0,
"pr_auc": 0.9814,
"roc_auc": 0.9997,
"recall_at_1pct": 0.9876,
"fit_seconds": 4.1
}
],
"shap_importance": [
{
"feature": "category",
"value": 1.43588817577412
},
{
"feature": "amt",
"value": 1.2645357195043376
},
{
"feature": "txn_count_7d",
"value": 0.9077888531158426
},
{
"feature": "city_pop_log",
"value": 0.5459023488368802
},
{
"feature": "state",
"value": 0.5241659847797101
},
{
"feature": "secs_since_prev_txn",
"value": 0.4906212951990262
},
{
"feature": "age",
"value": 0.48793630043688974
},
{
"feature": "hour",
"value": 0.452306144892578
},
{
"feature": "is_night",
"value": 0.3047380588738513
},
{
"feature": "amt_sum_7d",
"value": 0.3009269022842153
},
{
"feature": "amt_mean_24h",
"value": 0.2730888017266325
},
{
"feature": "amt_sum_1h",
"value": 0.23752286311348939
},
{
"feature": "amt_sum_24h",
"value": 0.19282907586100012
},
{
"feature": "day_of_week",
"value": 0.17392428616111025
},
{
"feature": "amt_ratio_to_card_mean",
"value": 0.1642463941492413
},
{
"feature": "amt_dev_from_card_mean",
"value": 0.12435671999946388
},
{
"feature": "distinct_merchants_24h",
"value": 0.11139188595405783
},
{
"feature": "gender",
"value": 0.10316342506530753
},
{
"feature": "dist_home_merchant_km",
"value": 0.07973170289362237
},
{
"feature": "txn_count_24h",
"value": 0.07216026902215988
}
],
"pr_curve": {
"precision": [
0.0038598644278853163,
0.003872812853766559,
0.0038858554860308476,
0.0038989791763610984,
0.003912198947627603,
0.00392550148510231,
0.003938902028764084,
0.003952394377097118,
0.003965972143899151,
0.00397965090390952,
0.003993416912725689,
0.004007285974499089,
0.004021251705985572,
0.004035307529940289,
0.004049469604435726,
0.0040637237349883774,
0.004078086322345632,
0.004092550794374603,
0.0041071103750011965,
0.0041217818395637255,
0.004136550521841758,
0.00415143345416682,
0.004166423868072956,
0.00418151478053383,
0.00419672362080401,
0.004212035227930997,
0.004227467303644491,
0.004243004482353453,
0.004258664744807705,
0.004274441034633932,
0.004290326064780923,
0.004306338247310295,
0.004322461687271408,
0.004338715093064933,
0.004355091192970131,
0.004371582472094222,
0.004388208097215687,
0.0044049516174078755,
0.004421832514589986,
0.004438843293311315,
0.004455976201555541,
0.004473251209029086,
0.004490651280516017,
0.004508196721311476,
0.0045258798036042465,
0.004543692528644327,
0.004561655721528463,
0.004579751732619362,
0.004598001744882714,
0.004616397789294261,
0.004634931610449664,
0.0046536249460331375,
0.004672459499905243,
0.004691457391943379,
0.004710600057976616,
0.004729910010430058,
0.004749378927371036,
0.004768998176886478,
0.004788790880534737,
0.004808737779192625,
0.00482886241456628,
0.004849156201607343,
0.004869610226862541,
0.004890248684534503,
0.004911051583213133,
0.004932043567534507,
0.004953215780091075,
0.004974559015199655,
0.00499609861762959,
0.0050178138239016365,
0.0050397304625274305,
0.005061839394561531,
0.005084131111327065,
0.005106632193923465,
0.005129321064411838,
0.005152224824355972,
0.0051753215575667064,
0.0051986389018147975,
0.005222167308989188,
0.005245896828250072,
0.00526985593270308,
0.005294021827659228,
0.005318423564707487,
0.005343051293292415,
0.005367894734207879,
0.005392983841162169,
0.005418294891646732,
0.005443858464755775,
0.005469664399752144,
0.005495702079143234,
0.005522003058340156,
0.0055485426345359915,
0.005575353040711774,
0.005602423799200773,
0.005629743945072596,
0.0056573467703011715,
0.005685206535999682,
0.005713357269947475,
0.005741788172184048,
0.005770487922328426,
0.005799491699561996,
0.005828772669713752,
0.005858366812966518,
0.005888246839699685,
0.0059184495593583245,
0.00594896371548145,
0.0059797774797956,
0.006010928961748634,
0.0060423896876549334,
0.006074198673021213,
0.006106344335191332,
0.006138814479016416,
0.006171649542377222,
0.006204819799883714,
0.006238366682177757,
0.006272278284466096,
0.00630654204508369,
0.006341200955466736,
0.006376223967467881,
0.006411655163549516,
0.006447482325782715,
0.006483692530907113,
0.006520331579379338,
0.006557367026073559,
0.006594845874301316,
0.006632735098764363,
0.0066710829546832865,
0.006709876813543628,
0.006749103265999623,
0.0067888125433202195,
0.006828970114898616,
0.006869627598929042,
0.0069107721056107735,
0.006952389904287145,
0.006994534806370407,
0.0070371706964994585,
0.007080352928361352,
0.007124068391056554,
0.0071683030671648275,
0.007213114754098361,
0.007258465672025636,
0.007304415340293811,
0.007350950483037981,
0.007398056846047989,
0.007445796682888899,
0.007494130471239309,
0.007543122395512809,
0.007592759091842297,
0.007643026139505715,
0.0076939907959065815,
0.007745611722775709,
0.007797958352722197,
0.007850988602341022,
0.007904774188793278,
0.00795930180781904,
0.00801455697621414,
0.008070615059880578,
0.008127432072476234,
0.008185085972021888,
0.008243563679127451,
0.008302850838994368,
0.00836302956106766,
0.008424053913945049,
0.008486008964706906,
0.008548882069267865,
0.008612659203700431,
0.008677430186129867,
0.008743147125359202,
0.008809903234815751,
0.00887768658662263,
0.008946483760776447,
0.009016393442622951,
0.009087365807779971,
0.009159503465238724,
0.009232795578588523,
0.009307229699825571,
0.009382914783886758,
0.009459799161187039,
0.009537996353772955,
0.009617453997632627,
0.00969829047849421,
0.009780497369069005,
0.009864064454418365,
0.00994911803039931,
0.01003560417144274,
0.010123654898999433,
0.01021326438784693,
0.01030442489779644,
0.010397277803629595,
0.010491767997417412,
0.010588043655318456,
0.01068610258658483,
0.010785940564187661,
0.01088771692951155,
0.01099137599729443,
0.011097085269071983,
0.011204847598401546,
0.011314663698655428,
0.01142671453989495,
0.011540944797159152,
0.011657545339427504,
0.011776461351795019,
0.011897894433227574,
0.012021857923497269,
0.012148362944378054,
0.012277628958032832,
0.01240960370263234,
0.012544519887011597,
0.012682401910933472,
0.012823271996843503,
0.012967385061814225,
0.013114693959903887,
0.013265470197528726,
0.013419753627087257,
0.013577582114304885,
0.013739255197858085,
0.013904734740444952,
0.014074341392998917,
0.014248136782113108,
0.014419455504142904,
0.01460202003691369,
0.014789164729497624,
0.0149812734082397,
0.015178438688027865,
0.01538075253775243,
0.015588645881805491,
0.01580211972464217,
0.01602164117203088,
0.016247224558771152,
0.01647937771902046,
0.016718261425574886,
0.01696403845393045,
0.017217287955928882,
0.017478070890533798,
0.01774702215894511,
0.018024379991593106,
0.01831038841253032,
0.018605781330000955,
0.018910694597574423,
0.019225940672190536,
0.01955187539327175,
0.019888867243666453,
0.020237870492731735,
0.02059914298341692,
0.020973753460571495,
0.021362241441154197,
0.0217550199987818,
0.022173476672840337,
0.02260810853580057,
0.02304960723124933,
0.023519852424455374,
0.02400995370629841,
0.024520914898001237,
0.025053803686722186,
0.025610674701388142,
0.026192543317966714,
0.026801801801801802,
0.02744007891264524,
0.028109129561828275,
0.02881200903906166,
0.029550533896200645,
0.030328344684044346,
0.031148208469055375,
0.032013151995217454,
0.03292801033035618,
0.03389615938474198,
0.03492353343985392,
0.03601513240857503,
0.0371765277609039,
0.03841601205208221,
0.03974025974025974,
0.041140639111469805,
0.04264477302618469,
0.04428441354192534,
0.04605617131174002,
0.047974533145022084,
0.05006082155890334,
0.05233553436047934,
0.05482821347134329,
0.05757021413967502,
0.06051424364274792,
0.06387684949932745,
0.06760135455897712,
0.07176003766225032,
0.07643746188887693,
0.08189539218323662,
0.08815495406009437,
0.09545373027259685,
0.10408412814869161,
0.11438717314107393,
0.12703252032520326,
0.14284753514022464,
0.1630159096149412,
0.19010043041606886,
0.22780587539007854,
0.2839273705447209,
0.37715208034433284,
0.5610543302850995,
0.9849381387842926,
1.0
],
"recall": [
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
1.0,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9995337995337995,
0.9990675990675991,
0.9990675990675991,
0.9990675990675991,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9986013986013986,
0.9981351981351981,
0.9976689976689976,
0.9976689976689976,
0.9976689976689976,
0.9976689976689976,
0.9976689976689976,
0.9976689976689976,
0.9976689976689976,
0.9976689976689976,
0.9962703962703963,
0.9962703962703963,
0.9958041958041958,
0.9948717948717949,
0.9934731934731935,
0.9934731934731935,
0.993006993006993,
0.9925407925407925,
0.992074592074592,
0.9911421911421912,
0.9906759906759907,
0.9902097902097902,
0.9888111888111888,
0.9883449883449883,
0.9869463869463869,
0.9841491841491842,
0.9804195804195804,
0.9724941724941725,
0.8536130536130536,
0.0
]
},
"best_params": {
"objective": "binary",
"metric": "average_precision",
"boosting_type": "gbdt",
"random_state": 42,
"n_jobs": -1,
"verbose": -1,
"num_leaves": 67,
"max_depth": 12,
"learning_rate": 0.04129,
"min_child_samples": 114,
"subsample": 0.69998,
"colsample_bytree": 0.97877,
"reg_alpha": 0.00368,
"reg_lambda": 0.04488,
"scale_pos_weight": 171.94414
},
"best_valid_pr_auc": 0.9801,
"cost_model": {
"c_fn": 5.0,
"c_fp": 1.0
}
}