Decision-support interface

Hosted PHP dashboard for your dissertation results

This interface translates your churn-modelling outputs into a presentation layer suitable for hosting. It focuses on model comparison, top risk-driver patterns, imbalance strategy results, and feature-selection trade-offs.

Best model XGBoost Ranked by PR-AUC
Best PR-AUC 0.169 Minority-class focus
Best ROC-AUC 0.694 Overall ranking quality
Best Lift@10% 2.922 Top-risk enrichment

What this dashboard is for

This dashboard is designed as a dissertation-friendly implementation layer. It does not retrain models on the server. Instead, it presents the outputs from your analysis notebook in a way that is easier for supervisors, markers, and future stakeholders to review.

Why PHP works well here

PHP is a practical choice for hosting because it can render CSV-driven result pages on standard shared hosting. That makes it easy to deploy without requiring a Python application server in production.

Section 1

Model comparison

XGBoost
Logistic regression
Random forest
Dummy baseline
Model ROC-AUC PR-AUC Precision Recall F1 Brier Precision@10% Lift@10%
XGBoost 0.694 0.169 0.215 0.278 0.242 0.065 0.215 2.922
Logistic regression 0.668 0.143 0.176 0.258 0.209 0.066 0.177 2.414
Random forest 0.653 0.137 0.146 0.370 0.209 0.067 0.153 2.087
Dummy baseline 0.500 0.073 0.073 1.000 0.137 0.068 0.064 0.871

Why this matters: PR-AUC and Precision@10% are especially valuable for churn because the class is rare and outreach is usually targeted at the highest-risk segment rather than the full customer base.

Section 2

Top feature drivers

#1 Var217
0.144
#2 Var202
0.113
#3 Var214
0.102
#4 Var200
0.102
#5 Var199
0.069
#6 Var222
0.069
#7 Var198
0.069
#8 Var220
0.069
#9 Var216
0.036
#10 Var192
0.019
#11 Var126
0.011
#12 Var73
0.010
#13 Var197
0.008
#14 Var162
0.007
#15 Var171
0.007
#16 Var13
0.006
#17 Var188
0.006
#18 Var28
0.006
#19 Var56
0.006
#20 Var111
0.006

Why this matters: the top features help you explain which anonymised variables carry the strongest signal. In the hosted dashboard, they can be shown as evidence of model behaviour without over-claiming business meaning.

Section 3

Imbalance strategy comparison

Class weight balanced
SMOTENC
No rebalancing
Strategy PR-AUC Recall Precision F1 Brier
Class weight balanced 0.093 0.515 0.094 0.160 0.186
SMOTENC 0.092 0.730 0.087 0.155 0.176
No rebalancing 0.088 0.650 0.089 0.156 0.068

Why this matters: imbalance handling changes the recall–precision trade-off. The dashboard should keep these metrics visible together so future users do not optimise only one number and ignore decision costs.

Section 4

Feature-selection comparison

XGBoost - full screened features
XGBoost - Top 40 selected features
Model setup ROC-AUC PR-AUC Precision Recall F1 Precision@10% Lift@10%
XGBoost - full screened features 0.703 0.178 0.164 0.417 0.236 0.219 2.976
XGBoost - Top 40 selected features 0.694 0.169 0.215 0.278 0.242 0.215 2.922

Why this matters: this section helps justify whether the production dashboard should use a full screened feature set or a leaner subset. Here, the full screened feature configuration has the edge on PR-AUC.

Section 5

Actionable insights for hosting and use

Best overall production candidate

XGBoost is the strongest dashboard candidate because it leads on PR-AUC (0.169) while also delivering the highest Lift@10% (2.922), which means the riskiest decile is enriched with churners relative to the base rate.

Feature selection takeaway

XGBoost - full screened features performs best in the feature-selection experiment. This suggests that keeping a broader screened feature set preserves more useful signal than the compact Top 40 subset alone, although the smaller subset remains attractive for a leaner dashboard view.

Imbalance handling takeaway

Class weight balanced achieves the best PR-AUC in the imbalance comparison, but the dashboard should still surface recall and precision together because higher-recall strategies may be desirable when the business wants to catch more potential churners.

Interpretation caution

The Orange variables are anonymous. The dashboard therefore shows feature identifiers such as Var217 and Var202 rather than invented business labels, which keeps the interface honest and methodologically defensible.

How to host this dashboard

  1. Upload the entire orange_php_dashboard folder to your hosting account.
  2. Place it inside your public web directory, such as public_html or htdocs.
  3. Visit your-domain.com/orange_php_dashboard/.
  4. Replace the CSV files in the data folder whenever you export fresh results from your notebook.

Suggested future additions

  • Add login protection before sharing with external viewers.
  • Connect prediction-level outputs for customer-level drill-down pages.
  • Add model selection controls for PR-AUC, recall, or top-k prioritisation emphasis.
  • Later, plug the dashboard into a database instead of reading CSV files directly.