Projects / Master's coursework
Explainable credit
Credit decisions audited with SHAP and LIME

Summary
A credit-approval model under two cost scenarios, audited with SHAP, LIME, counterfactuals and a surrogate tree. When approving a bad payer costs ten times more than turning down a good one, choosing the threshold by expected cost cut the cost by 51%. XGBoost won in both scenarios. Team of 3.
The task
Build, audit and tune a credit-approval model under two cost scenarios: one symmetric, and one where approving a bad payer costs ten times more than turning down a good one. Logistic regression, XGBoost, two Keras networks and a LinUCB bandit of our own were compared with leak-free cross-validation, and the threshold was chosen by expected cost. XGBoost won in both scenarios.
The audit
A surrogate tree with readable rules, counterfactuals that explain to a rejected client what would have to change, global and local SHAP, and, beyond what was asked, permutation importance, PDP and ICE, LIME measured against SHAP for stability, and age subgroups. In the 10-to-1 scenario, choosing the threshold by expected cost cut the cost by 51%.


