MODELCATALOG

Where the defaults are wrong for regulated data.

Notes for bank work

Where the defaults are wrong for regulated data.

**`LogisticRegression` is not a starter model here.** It is the production standard for credit decisioning, because every point of the score traces back to an attribute — which is what a statement of specific reasons under Regulation B requires when you decline an application. Weight-of-evidence binning followed by logistic regression remains the industry scorecard method, and that is a regulatory fact rather than a technical preference.

**`HistGradientBoostingClassifier` is the strongest tabular model in the library** and needs no scaling, no one-hot encoding and no imputation — it handles missing values and categorical features natively. If you want LightGBM-class performance without adding a dependency, this is it.

**`TimeSeriesSplit`, not `KFold`,** for anything with a date column. Random cross-validation leaks the future into training and inflates every metric you will report.

**`GroupKFold` when rows share a customer.** The same customer appearing in both train and test inflates results in a way that stays invisible until production.

**`average_precision_score`, not `roc_auc_score`,** for fraud and AML where positives are under one percent. ROC AUC stays comfortably high while precision is hopeless, because the enormous true-negative count dominates the calculation.

**`CalibratedClassifierCV` before you threshold.** If a business rule fires at p greater than 0.8, that number has to mean something. Tree ensembles and SVMs are systematically miscalibrated out of the box.

**`permutation_importance` over `feature_importances_`.** Tree importances are biased toward high-cardinality features. Validation teams know this and will ask about it.

**`DummyClassifier` in every experiment.** The trivial baseline belongs in your results table. If the real model does not clearly beat it, that is a finding worth surfacing early rather than discovering during review.