ALI NGUYEN · DUYTRUYENTHONG

← Back to selected work

Public source · official-data local holdout

KKBox customer churn baseline

Churn predictions that respect the snapshot date.

Subscription churn decisions require customer-level features without future-data leakage.

PROJECTKKBox customer churn baseline
ROLEProject owner; baseline developed with Codex assistance. The academic reference is credited separately.
STATUSPublic source · official-data local holdout
PROOFPublic source, leakage tests, input hashes, and measured local holdout
BUILT WITHPython · DuckDB · Pandas · scikit-learn
01 / CONTEXT

The problem

A churn model can look strong for the wrong reason if its features include events that happened after the prediction date.

02 / THE DECISION

What mattered

Start with a snapshot-date baseline before comparing more complex models.

03 / IMPLEMENTATION

What was built

The public Python and DuckDB baseline aggregates transactions and listening events through 2017-02-28, audits source coverage, and trains logistic regression on a fixed stratified split.

04 / EVIDENCE

Where it stands

The public repository contains source, synthetic future-event exclusion tests, input hashes, aggregate audit counts, and official-data local holdout metrics. The third-party academic reference is credited separately.

05 / LIMITS

What is not yet proven

The 0.217324 log loss and 0.819295 ROC AUC are within-cohort holdout metrics, not an out-of-time or Kaggle leaderboard score. No retention impact is claimed; raw competition data is not redistributed.