| { | |
| "estimator": "XGBClassifier(tree_method=hist, CPU) + CalibratedClassifierCV(sigmoid, cv=4)", | |
| "feature_columns": [ | |
| "tenure_months", | |
| "role_seniority", | |
| "missed_total", | |
| "mean_on_time_rate", | |
| "std_on_time_rate", | |
| "recency_weighted_miss_rate", | |
| "on_time_streak_months", | |
| "borrow_to_repay_ratio", | |
| "penalty_intensity", | |
| "contrib_vs_group_ratio", | |
| "contrib_flow_volatility", | |
| "urban_flag", | |
| "group_size", | |
| "group_age_years" | |
| ], | |
| "score_mapping": "reliability = round(100 * (1 - p_default)), clipped to [0,100]", | |
| "tiers": { | |
| "0-40": "high_risk", | |
| "41-70": "watch", | |
| "71-100": "low_risk" | |
| }, | |
| "metrics": { | |
| "roc_auc_holdout": 0.7599591419816139, | |
| "brier_holdout": 0.09617870308206056, | |
| "holdout_positive_rate": 0.11, | |
| "mean_score_holdout": 88.56 | |
| }, | |
| "score_blending": { | |
| "member_weight": 0.72, | |
| "group_weight": 0.28 | |
| }, | |
| "stretch_artifacts": { | |
| "month_imputes": "month_imputes.json", | |
| "group_reliability": "group_reliability.json" | |
| } | |
| } |