Customer segmentation is the process of dividing an organization's customers into groups (clusters) that share similar behaviours and characteristics. Machine learning enables this segmentation to be performed rapidly on very large customer bases, even when the scale reaches millions of individuals. In customer-centric industries such as telecommunications, insurance, and banking, machine learning is widely applied to address segmentation and customer-retention challenges. Segmentation helps organizations understand how to interact appropriately with each customer group, develop targeted product-marketing strategies, meet specific customer needs, and reduce churn rates. This topic is chosen because customer retention is a direct driver of bank profitability - retained, long-tenured customers are markedly more profitable than newly acquired ones (Reichheld & Sasser, 1990; Reinartz & Kumar, 2003) - yet most Vietnamese commercial banks hold large volumes of customer data without the analytical infrastructure to convert it into actionable segments (FiinGroup, 2024). In this study, the unsupervised clustering algorithm K-Means - in its scalable MiniBatch variant - is selected as the primary method for customer segmentation. A Python program is developed and trained on a large-scale, real-world dataset comprising 631,062 customers described by 8 financial-behavioural variables, after the data has been transformed using log1p and standardized with RobustScaler. The objective is to create customer groups based on behavioural characteristics, enabling the bank to understand its customer structure and thereby design new products or adjust existing offerings tailored to each specific segment. Cluster quality here rests on three internal validation metrics at once - the Silhouette Score, the Davies-Bouldin Index, and the Calinski-Harabasz Index - cross-checked against a stability test that re-runs the model under different initialization seeds. What comes out is eight customer segments from MiniBatch K-Means, each with its own distinct profile, and the stability is about as high as it gets: a mean Adjusted Rand Index of 0.9999. To push the segmentation out to the whole customer base and to new arrivals, those cluster labels then become the training target for a Random Forest classifier. That serves two purposes at once - it tests whether the segments are actually separable, and it leaves behind a model that can slot new customers into a segment in production. The Random Forest recovered the segmentation at 99.85% test accuracy with a macro-averaged F1 of 0.996, and when its feature-importance ranking was read off, four variables stood out as decisive: savings balance, outstanding loan, collateral value, and credit-card spending. Building on the segmentation, the thesis then turns from description to explanation through an econometric analysis of customer tenure. Using ordinary least squares regression on the full population, the length of the customer–bank relationship is modelled as a function of demographic attributes, segment membership, and financial behaviour. The demographic block alone explains 72.7% of the variation in tenure, and occupation emerges as the strongest determinant, with commerce-and-services customers exhibiting markedly longer relationships. The premium segment is found to be the most durable, linking the behavioural segmentation directly to a concrete economic outcome. The analysis explicitly addresses reverse causality and interprets the financial-behaviour coefficients as conditional correlations rather than causal effects.
Customer segmentation is the process of dividing an organization's customers into groups (clusters) that share similar behaviours and characteristics. Machine learning enables this segmentation to be performed rapidly on very large customer bases, even when the scale reaches millions of individuals. In customer-centric industries such as telecommunications, insurance, and banking, machine learning is widely applied to address segmentation and customer-retention challenges. Segmentation helps organizations understand how to interact appropriately with each customer group, develop targeted product-marketing strategies, meet specific customer needs, and reduce churn rates. This topic is chosen because customer retention is a direct driver of bank profitability - retained, long-tenured customers are markedly more profitable than newly acquired ones (Reichheld & Sasser, 1990; Reinartz & Kumar, 2003) - yet most Vietnamese commercial banks hold large volumes of customer data without the analytical infrastructure to convert it into actionable segments (FiinGroup, 2024). In this study, the unsupervised clustering algorithm K-Means - in its scalable MiniBatch variant - is selected as the primary method for customer segmentation. A Python program is developed and trained on a large-scale, real-world dataset comprising 631,062 customers described by 8 financial-behavioural variables, after the data has been transformed using log1p and standardized with RobustScaler. The objective is to create customer groups based on behavioural characteristics, enabling the bank to understand its customer structure and thereby design new products or adjust existing offerings tailored to each specific segment. Cluster quality here rests on three internal validation metrics at once - the Silhouette Score, the Davies-Bouldin Index, and the Calinski-Harabasz Index - cross-checked against a stability test that re-runs the model under different initialization seeds. What comes out is eight customer segments from MiniBatch K-Means, each with its own distinct profile, and the stability is about as high as it gets: a mean Adjusted Rand Index of 0.9999. To push the segmentation out to the whole customer base and to new arrivals, those cluster labels then become the training target for a Random Forest classifier. That serves two purposes at once - it tests whether the segments are actually separable, and it leaves behind a model that can slot new customers into a segment in production. The Random Forest recovered the segmentation at 99.85% test accuracy with a macro-averaged F1 of 0.996, and when its feature-importance ranking was read off, four variables stood out as decisive: savings balance, outstanding loan, collateral value, and credit-card spending. Building on the segmentation, the thesis then turns from description to explanation through an econometric analysis of customer tenure. Using ordinary least squares regression on the full population, the length of the customer–bank relationship is modelled as a function of demographic attributes, segment membership, and financial behaviour. The demographic block alone explains 72.7% of the variation in tenure, and occupation emerges as the strongest determinant, with commerce-and-services customers exhibiting markedly longer relationships. The premium segment is found to be the most durable, linking the behavioural segmentation directly to a concrete economic outcome. The analysis explicitly addresses reverse causality and interprets the financial-behaviour coefficients as conditional correlations rather than causal effects.
Predicting and Explaining Digital Banking Churn: A Hybrid Machine Learning and Causal Inference Framework — Evidence from Vietnam
DAO, VAN DUC
2025/2026
Abstract
Customer segmentation is the process of dividing an organization's customers into groups (clusters) that share similar behaviours and characteristics. Machine learning enables this segmentation to be performed rapidly on very large customer bases, even when the scale reaches millions of individuals. In customer-centric industries such as telecommunications, insurance, and banking, machine learning is widely applied to address segmentation and customer-retention challenges. Segmentation helps organizations understand how to interact appropriately with each customer group, develop targeted product-marketing strategies, meet specific customer needs, and reduce churn rates. This topic is chosen because customer retention is a direct driver of bank profitability - retained, long-tenured customers are markedly more profitable than newly acquired ones (Reichheld & Sasser, 1990; Reinartz & Kumar, 2003) - yet most Vietnamese commercial banks hold large volumes of customer data without the analytical infrastructure to convert it into actionable segments (FiinGroup, 2024). In this study, the unsupervised clustering algorithm K-Means - in its scalable MiniBatch variant - is selected as the primary method for customer segmentation. A Python program is developed and trained on a large-scale, real-world dataset comprising 631,062 customers described by 8 financial-behavioural variables, after the data has been transformed using log1p and standardized with RobustScaler. The objective is to create customer groups based on behavioural characteristics, enabling the bank to understand its customer structure and thereby design new products or adjust existing offerings tailored to each specific segment. Cluster quality here rests on three internal validation metrics at once - the Silhouette Score, the Davies-Bouldin Index, and the Calinski-Harabasz Index - cross-checked against a stability test that re-runs the model under different initialization seeds. What comes out is eight customer segments from MiniBatch K-Means, each with its own distinct profile, and the stability is about as high as it gets: a mean Adjusted Rand Index of 0.9999. To push the segmentation out to the whole customer base and to new arrivals, those cluster labels then become the training target for a Random Forest classifier. That serves two purposes at once - it tests whether the segments are actually separable, and it leaves behind a model that can slot new customers into a segment in production. The Random Forest recovered the segmentation at 99.85% test accuracy with a macro-averaged F1 of 0.996, and when its feature-importance ranking was read off, four variables stood out as decisive: savings balance, outstanding loan, collateral value, and credit-card spending. Building on the segmentation, the thesis then turns from description to explanation through an econometric analysis of customer tenure. Using ordinary least squares regression on the full population, the length of the customer–bank relationship is modelled as a function of demographic attributes, segment membership, and financial behaviour. The demographic block alone explains 72.7% of the variation in tenure, and occupation emerges as the strongest determinant, with commerce-and-services customers exhibiting markedly longer relationships. The premium segment is found to be the most durable, linking the behavioural segmentation directly to a concrete economic outcome. The analysis explicitly addresses reverse causality and interprets the financial-behaviour coefficients as conditional correlations rather than causal effects.| File | Dimensione | Formato | |
|---|---|---|---|
|
DAO_VANDUC_908607.pdf
accesso aperto
Dimensione
1.8 MB
Formato
Adobe PDF
|
1.8 MB | Adobe PDF | Visualizza/Apri |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14247/29377