Full Text
<p><strong>Introduction</strong></p><p style="text-align: justify;">The telecommunications industry has undergone a radical transformation over the last few decades, evolving from basic analog voice services (1G) to ultra-reliable, low-latency, and high-bandwidth digital ecosystems (5G). This technological evolution has exponentially increased global connectivity, fundamentally altering how societies and economies operate. However, this rapid advancement has also dismantled traditional market monopolies, significantly lowering the barriers to entry for competitors and lowering the switching costs for consumers. Today, mobile network subscribers are empowered to seamlessly transition between service providers in search of optimal network coverage, superior customer service, and cost-effective data bundles.</p><p style="text-align: justify;">In this fiercely competitive landscape, customer loyalty is highly volatile. This phenomenon of subscribers abandoning a service provider in favor of a competitor is formally known as "customer churn." Industry benchmarks indicate that telecommunication operators globally experience average annual churn rates ranging from 20% to 35%. The economic implications of this attrition are profound. Decades of market research have established that the financial cost of acquiring a new customer (factoring in marketing, onboarding, and promotional subsidies) is five to ten times greater than the cost of retaining an existing one (Manro et al., 2025). Consequently, telecom operators have shifted their strategic focus from aggressive customer acquisition to proactive customer retention.</p><p><strong>The Cameroonian Telecommunications Context</strong></p><p style="text-align: justify;">In Cameroon, the telecommunications market is characterized by intense rivalry among primary Mobile Network Operators (MNOs), including MTN, Orange, and the incumbent Cameroon National Operator (CNO), Cameroon Telecommunications (CAMTEL). This competitive environment forces operators to continuously innovate their pricing models and digital service deliveries. Despite these efforts, customer loyalty remains fragile. CNO, which since some years acquired concessions to expand its mobile network services, faces the continuous challenge of voluntary churn where subscribers actively choose to discard their cards or port their activities to competing networks due to perceived inadequacies in service or the lure of better promotional offers.</p><p style="text-align: justify;"><strong>Objectives of the Study</strong></p><p style="text-align: justify;">The primary objective of this research is to transition national operator’s churn management strategy from a reactive framework where retention teams intervene only after a customer has already decided to leave to a proactive, predictive model. By analyzing vast amounts of historical customer data generated by the mobile network infrastructure, this study aims to:</p><ol type="1"><li><p style="text-align: justify;">Analyze and preprocess authentic CNO subscriber data to identify key behavioral, geographical, and financial factors contributing to churn.</p></li><li><p>Develop, compare, and evaluate multiple Machine Learning algorithms (Logistic Regression, Random Forest, LightGBM, and Stacking Ensembles) using appropriate validation metrics.</p></li><li><p>Validate a highly accurate and robust predictive model capable of flagging high-risk customers before they defect.</p></li><li><p>Design and deploy an interactive Churn Prediction System to translate algorithmic outputs into actionable business intelligence for CNO’s strategy and marketing departments.</p></li></ol><p><strong>Context and Problem Statement</strong></p><p><strong>Churn Concept</strong></p><p><strong>a. Definition of Churn</strong></p><p>Churn is one of the most challenging problems that affects revenue and customer base in mobile network operators. It refers to the number of customers who stop using a product or service over a given period of time: monthly, quarterly or annually (Lu, 2001).</p><p>In a mobile network churn prediction refers to the process of identifying subscribers which are likely to stop using the network’s product or services in the near future, either by cancelling their subscription, switching to a competitor (Tridens Technology, 2024), or becoming inactive for a prolonged period. It involves analysing customer behaviour, usage patterns and other relevant data to forecast which customers are at risk of leaving (Grevisse & Yende, 2023).</p><p>The churn rate measures the percentage of customers lost during a specific time frame.</p><p><strong>Churn Ra </strong><span style="font-size: 10pt; font-family: Calibri, sans-serif;"><strong>Churn Rate x 100 </strong>(1)</span></p><p><strong>b. Reasons for Churn</strong></p><p>Customer churn is not random; it happens for a reason or rather several reasons. Understanding these reasons is a key to building a model that works (Stripe, n.d.). Below are some reasons of churn.</p><ol type="i"><li><p>Dissatisfactions with service</p></li><li><p>Poor customer experience</p></li><li><p>Lack of engagement</p></li><li><p>Better offer from competitors</p></li><li><p>Inadequate customer support</p></li><li><p>Product or service quality issues</p></li><li><p>Impact of reviews and reputation</p></li></ol><p><strong>c. Types of Churns</strong></p><p>There are two major types of churns which are voluntary churn and involuntary churn (Wagh et al., 2024).</p><p><strong>Voluntary Churn: </strong>The customer actively chooses to leave the service. It is caused by Poor service quality, high prices, better offers from competitors, dissatisfaction with customer service. An example is a mobile subscriber switches from the CNO to MTN for better data offers.</p><p><strong>Involuntary Churn:</strong> The customer is removed by the service provider due to reasons beyond the customer's control or without the customer's intention to leave. It is caused by Non-payment of bills, fraudulent activities, service suspension, expired contracts not renewed. An example is a customer's account is deactivated due to non-payment of subscription fees. In our case we are dealing with voluntary churn.</p><p><strong>Importance of Churn Prediction</strong></p><p>Churn prediction allows the mobile network operator to more proactively address potential customer loss. It is important in the following ways (Wagh et al., 2024):</p><ol type="i"><li><p>Proactive retention</p></li><li><p>Cost savings</p></li><li><p>Enhanced customer experience</p></li><li><p>Optimized marketing</p></li><li><p>Business insights</p></li><li><p>Offer Competitive Pricing</p></li><li><p>Revenue growth</p></li><li><p>Data-driven decisions</p></li><li><p>Long term value</p></li></ol><p>Currently, the CNO employs traditional, rule-based methodologies to identify churn. The system primarily monitors usage activity, subscription status, and billing consistency, flagging a customer only after an extended period of total inactivity (typically 90 days). This approach is fundamentally reactive. It assesses the symptoms of churn rather than predicting the intent to churn, thereby failing to leverage predictive analytics to intervene when the customer's decision might still be reversed.</p><p><strong>Research Problem and Objectives</strong></p><p><strong>Research Problem</strong></p><p>The existing approach to customer churn management have relied on reactive, last-minute support and actions after the customer has made up his mind to churn. Such are inefficient, expensive, and do not treat the root causes of churn. With the increase in competition and customer demands, the need for a proactive, data-driven support capable of anticipating churn before it happens is crucial.</p><p><strong>Research Question</strong></p><p>From the research problem we asked ourselves how can machine learning techniques be applied to CNO’s customer data to accurately predict churn?</p><p><strong>Objective</strong></p><p>The main objective of this research is to design and implement a predictive model based on ML which will serve as a decision-support tool that will allow the company to take timely actions aimed at reducing churn rates, enhancing customer satisfaction, and ultimately supporting CNO’s digital transformation strategy. This section presented the general context and framework of our study, which focuses on the contribution of Machine Learning techniques to predicting customer churn and evaluating performance in mobile networks.</p><p><strong>Literature Review</strong></p><p>Several authors have explored the use of machine learning to solve certain problems in the field of mobile networks on various topics, including the following points:</p><p><strong>Fraud Detection & Security</strong></p><ol type="i"><li><p>SIM Box Fraud Identification (2023): Leverages Random Forest, SVM, and XGBoost on Call Detail Records (CDRs) to detect bypass fraud (Deussom Djomadji et al., 2023a).</p></li><li><p>Collaborative Fraud Detection Model (2022): Uses K-Means clustering and differential privacy to identify fraudulent anomalies across networks (Deussom Djomadji et al., 2022).</p></li></ol><p><strong>Network Maintenance & Management</strong></p><ol type="i"><li><p>Alarm Classification: Applies K-Means and DBSCAN for fault analysis and root cause identification in optical networks (Deussom Djomadji et al., 2023b).</p></li><li><p>LTE Network Maintenance: Compares K-NN, Decision Trees, and Random Forest for managing and predicting incidents (Bernabe et al., 2022).</p></li><li><p>Resource Allocation: Evaluates Linear Regression, CNN, and LSTM for radio resource optimization (Deussom Djomadji et al., 2023c).</p></li></ol><p><strong>Traffic Forecasting: </strong>4G Traffic Prediction (2025): An analysis focused on time-series forecasting using LSTM, CNN, and Linear Regression (Deussom Djomadji et al., 2025).</p><p>The application of Machine Learning (ML) to predict customer churn has garnered significant attention in academic research, moving from simple statistical models to highly complex ensemble networks.</p><p><strong>Traditional Machine Learning Approaches</strong></p><p>Early research primarily relied on standalone ML models. Varudandi (2020) demonstrated the efficacy of Logistic Regression in identifying churn trends, noting an accuracy of 81.5% on Kaggle datasets (Hutsady et al., 2024). The study successfully correlated specific service types (e.g., fiber optic usage) and payment methods with high churn probabilities. Similarly, Wagh et al. (2023) explored the use of decision trees and Boosted Trees in the telecom sector, identifying Random Forest as an optimal standalone model with a predictive accuracy of 91.66%, precision of 82.2%, and recall of 81.8%.</p><p>More recently, Manro et al. (2025) expanded on this by building a complete ML pipeline comparing classical algorithms with advanced boosting models like XGBoost and LightGBM (Varudandi, 2020). Their findings highlighted how data preprocessing and hyperparameter tuning significantly influence the detection of customer behavior patterns.</p><p><strong>Advanced Ensemble and Stacking Methods</strong></p><p>Recent literature has heavily pivoted toward Ensemble Learning by combining multiple weak learners to form a highly accurate predictive meta-model. A 2024 study by Hutsady et al (2024) analyzing Lao Telecom customer data achieved a remarkable 93% accuracy using Decision Trees and Random Forests, proving that aggregating decision pathways mitigates overfitting.</p><p>The most cutting-edge research emphasizes "Stacking Classifiers." A 2025 study on heterogeneous multi-stacking ensemble techniques integrated Random Forest, XGBoost, and K-Nearest Neighbors (KNN) with a Logistic Regression meta-model (Bhushan, 2025). This approach effectively balanced recall and precision, outperforming all base models by capturing complex, non-linear relationships in telecommunication data. Furthermore, research published in the <em>Bulletin of Electrical Engineering and Informatics</em> (2025) utilized a complex stacking model (combining XGBoost, Random Forest, LightGBM, SVM, and Neural Networks) paired with SMOTE and stratified k-fold cross-validation (Next-Gen Customer Retention, 2025). This sophisticated framework achieved an unprecedented 98% accuracy and 98.38% F1-score, definitively proving that optimizing stacking ensembles with robust class-balancing techniques is the optimal path for telecom churn prediction.</p><p><strong>Research Gaps and Thesis Contribution</strong></p><p>Despite extensive literature, several gaps persist:</p><ol type="a"><li><p>Dataset Authenticity: A vast majority of studies utilize heavily recycled, publicly available datasets (such as the IBM Telco dataset on Kaggle). These datasets fail to capture current, localized market dynamics or the specific behavioral nuances of Sub-Saharan African consumers.</p></li><li><p>Algorithmic Stagnation<strong>:</strong> Many operational telecom deployments still rely on single-model architectures rather than adopting high-performance Stacking algorithms.</p></li><li><p>Class Imbalance: Real-world telecom data is inherently imbalanced (non-churners drastically outnumber churners). Many studies fail to rigorously apply techniques like SMOTE, leading to models that report high accuracy but possess poor sensitivity (recall) for actual churners.</p></li></ol><p>This study directly addresses these gaps by utilizing raw, authentic, and localized subscriber data extracted directly from CNO’s HSS. It seamlessly integrates SMOTE to resolve class imbalance and deploys a highly tuned Stacking Ensemble algorithm to outpace traditional predictive methodologies.</p><p><strong>Methodology</strong></p><p>The proposed methodology encompasses a robust machine learning pipeline designed to extract, clean, engineer, and model customer data. This pipeline is presented in figure 1.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-e5a010c5-839b-4962-91fc-2d7aa91b8aed.png" style="max-width: 100%; height: auto; object-fit: contain;"><p>Figure 1: Machine learning pipeline for churn prediction</p><p><strong>Data Collection and Preprocessing</strong></p><p>Data was securely extracted from the CNO database encompassing a target timeline from January 1, 2025, to August 25, 2025. The raw dataset consisted of 797,508 subscribers.</p><p>The raw data is cleaned up, filled and transformed to ensure quality and consistency before we use it to develop the ML system. It’s necessary to preprocess the data after it has been collected to make it ready for an ML task. Figure 2 and figure 3 are illustrations of raw data.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-a13566c6-d08d-4cd7-bd5d-840861d6ff2f.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 2a: Raw Data Set (1)</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-d5c0bdf1-88d5-478c-9543-937cb610354e.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 2b: Raw Data Set (1)</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-e40dd756-02a3-4212-bb10-8cdc9961f664.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 3a: Raw Data Set (2)</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-5dc8b7aa-718e-478b-ba3a-f9f2fe6bf085.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 3b: Raw Data Set (2)</em></p><p><strong>Data Cleaning:</strong></p><p>The initial dataset was saturated with noise, including invalid entries (-1 values), null fields, and redundant structural errors. Through automated filtering using Python’s Pandas library, duplicate records and rows lacking vital predictive attributes were eliminated. By filtering for accounts created strictly within the 2025 window and applying the cleaning protocols, the dataset was refined to 13,937 high-quality customer records.</p><p><strong>Target Variable Definition (Labeling)</strong></p><p><strong>Derivation of Churn Status</strong></p><p>The churn status in our project was derived based on customer activity timelines using the features SUB_CREATE_TIME and PURGE_TIME_ATSGSN. We began by sorting all customers whose accounts were created as from January 1st 2025. From this group, a customer was classified as churned if, between their subscription creation date and the reference date of 25th August 2025 when we started analysing the data, they remained inactive on the platform for a period exceeding three months. This approach provided a clear distinction between active customers and churners, allowing us to build a reliable target variable (CHURN_STATUS) for our predictive modelling. Figure 4 and figure 5 present a capture of the source codes used for the purpose.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-23bf19a0-d26c-4806-9cdb-ca3df070b6d5.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 4: Code source for converting PURGE_TIME_ATSGSN and SUB_CREATE_TIME to datetime</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-c600885a-0584-4e4d-b0c5-6e53f72806fd.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 5: Code source for finding Churn Status</em></p><p><strong>Feature Engineering and Selection</strong></p><p><strong>Final Dataset and Feature Engineering for Model Training</strong></p><p>Before processing, our dataset contained a sample of 797,508 customers. We first filtered out customers created from January 1st 2025 and we obtained 61,245 customers. Through a series of cleaning and preprocessing steps such as removing duplicates, handling missing values, and filtering out incomplete or irrelevant records the dataset was refined to 13,937 customers with valid entries in all the selected features. This cleaned and well-structured dataset then served as the foundation for training and evaluating our churn prediction models. To enhance the accuracy and reliability of our churn prediction model, we applied a thorough feature engineering process. The raw dataset provided contained sensitive customer details and lacked certain predictive attributes that are essential for robust training. Since some customers information could be disclosed due to data privacy restrictions, we carefully simulated some features to enrich the dataset without compromising the integrity of the dataset. For instance, we generated variables such as regional customer distributions to provide the model with more informative inputs including the longitude and latitude coordinates to better capture customer behaviour geographically and have a view of the active and churned customers on a map. The dataset is illustrated by figure 6.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-d9f87bc1-b60f-41c1-91b4-5820feb598cf.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-7ff1344c-7c19-45e0-aa1e-67728abccf21.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 6: Final Data set after filtering, cleaning and preprocessing</em></p><p><strong>Description of data features</strong></p><p>In this section, we will describe the various features that make up the dataset used for our churn prediction model.</p><p><em>Table 1: Description of Data Feature</em></p><table style="min-width: 50px;"><tbody><tr><td><p><strong>Feature Name</strong></p></td><td><p><strong>Description</strong></p></td></tr><tr><td><p><strong>CUSTOMER_ID</strong></p></td><td><p>Unique identifier for each customer in the dataset. Used for internal tracking.</p></td></tr><tr><td><p><strong>MSISDN</strong></p></td><td><p><strong>MSISDN</strong></p></td></tr><tr><td><p><strong>PURGE_TIME_ATSGSN</strong></p></td><td><p>The timestamp when the subscriber’s session or profile was purged from the Serving GPRS Support Node (SGSN), indicating inactivity or disconnection events.</p></td></tr><tr><td><p><strong>TGPPAMBRMAXUL</strong></p></td><td><p>Maximum u+plink bit rate (UL) allowed for the subscriber as defined in 3GPP standards. Represents the maximum upload speed allocated.</p></td></tr><tr><td><p><strong>TGPPAMBRMAXDL</strong></p></td><td><p>Maximum downlink bit rate (DL) allowed for the subscriber as defined in 3GPP standards. Represents the maximum download speed allocated.</p></td></tr><tr><td><p><strong>PURGEDONMME</strong></p></td><td><p>Binary indicator feature showing if the subscriber was purged on the MME (Mobility Management Entity), reflecting deregistration events</p></td></tr><tr><td><p><strong>PURGEDONSGSN</strong></p></td><td><p>Binary indicator feature showing if the subscriber was purged on the SGSN, reflecting inactivity in the 2G/3G packet-switched domain</p></td></tr><tr><td><p><strong>PS_UTRAN</strong></p></td><td><p>Packet-switched usage on UTRAN (3G network). Reflects customer activity in 3G data sessions</p></td></tr><tr><td><p><strong>PS_GERAN</strong></p></td><td><p>Packet-switched usage on GERAN (2G network). Reflects customer activity in 2G data sessions.</p></td></tr><tr><td><p><strong>PS_E-UTRAN</strong></p></td><td><p>Packet-switched evolved universal terrestrial radio access network which represents the data traffic or activity level of a subscriber within the 4G data sessions.</p></td></tr><tr><td><p><strong>EPSODBPOS</strong></p></td><td><p>Subscription option parameter related to EPS (Evolved Packet System) bearer configuration. Indicates data service provisioning.</p></td></tr><tr><td><p><strong>SUB_CREATE_TIME</strong></p></td><td><p>Date when the subscriber account was created in the HSS, marking the start of the customer relationship.</p></td></tr><tr><td><p><strong>TENURE_MONTHS</strong></p></td><td><p>Number of months since the last purge event, measuring recent inactivity duration.</p></td></tr><tr><td><p><strong>MONTHS_SINCE_PURGE</strong></p></td><td><p>Number of months since the last purge event, measuring recent inactivity duration.</p></td></tr><tr><td><p><strong>PLAN_NAME</strong></p></td><td><p>Name of the customer’s tariff or subscription plan indicating service preferences</p></td></tr><tr><td><p><strong>MONTHLY_CHARGE</strong></p></td><td><p>Monthly fee associated with the subscription plan.</p></td></tr><tr><td><p><strong>RECHARGE_FREQUENCY</strong></p></td><td><p>Number of times the customer recharged their account in a month. Indicates engagement and spending behaviour.</p></td></tr><tr><td><p><strong>RECHARGE_AMOUNT</strong></p></td><td><p>This is the amount that is recharge in the account of the subscriber.</p></td></tr><tr><td><p><strong>TOTAL_CHARGE</strong></p></td><td><p>Cumulative amount spent by the customer during their subscription period</p></td></tr><tr><td><p><strong>REGION</strong></p></td><td><p>Geographical region where the customer is registered active, important for churn analysis across territories.</p></td></tr><tr><td><p><strong>LATITUDE / LONGITUDE</strong></p></td><td><p>Coordinates of the customer’s registered location. Used for mapping and clustering customers spatially.</p></td></tr><tr><td><p><strong>GENDER</strong></p></td><td><p>Customer’s gender.</p></td></tr><tr><td><p><strong>AGE</strong></p></td><td><p>Customer’s age.</p></td></tr><tr><td><p><strong>CHURN_STATUS</strong></p></td><td><p>Indicator showing if the customer has churned (1) or is still active (0). Target variable for prediction.</p></td></tr></tbody></table><p><strong>Description of Feature Statistics</strong></p><p>To develop a better understanding of the attributes, it is required to construct summary statistics for all the features contained in the dataset used in this study. The figure7 below shows the outcomes.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-196e1e02-0ba7-4e27-b558-20cb14c79456.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 7: Feature Statistics</em></p><p><strong>Correlation between variables</strong></p><p>We use a correlation matrix to understand the relationships between each variable as presented in figure 8. It shows the strength and direction of relationships between all the variables in the dataset and helps identify which features are strongly related to churn. Each cell in the matrix displays a correlation coefficient a value between -1 and +1 (<em>Customer Churn Analysis in Telecom Organization</em>, 2024):</p><ul><li><p>A value close to +1 means a strong positive correlation</p></li><li><p>A value close to -1 means a strong negative correlation</p></li><li><p>A value near 0 means no significant relationship between the variables</p></li></ul><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-ae346846-3cbb-43da-ab23-c70cdb6aacec.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 8: Heatmap Correlation matrix between the features</em></p><p>To maximize model accuracy, raw data points were engineered into predictive features.</p><ol type="i"><li><p><strong>Financial Features:</strong> Variables such as MONTHLY_CHARGE, RECHARGE_AMOUNT, and TOTAL_CHARGE were aggregated to track spending behavior.</p></li><li><p><strong>Network Features:</strong> PS_E-UTRAN, PS_GERAN, PURGEDONMME, and bandwidth limits (TGPPAMBRMAXUL) were encoded to reflect technical engagement with 2G, 3G, and 4G infrastructures.</p></li><li><p><strong>Geographical Simulation:</strong> To account for privacy constraints, synthetic baseline features such as REGION, LATITUDE, and LONGITUDE were logically mapped based on cellular tower distributions to facilitate spatial churn mapping.</p></li><li><p><strong>Data Visualisation</strong></p></li></ol><p>Data visualization is a key aspect in exploratory data analysis as it helps to understand the underlying patterns, relationships and distribution of variables within the dataset. In this study, visualisations were used to analyze both numerical and categorical features related to customer churn.</p><p><strong>Distribution of numerical features</strong></p><p>The numerical features were visualized using histograms graphs in figure 9. These visualisation helps to observe the spread and central tendency of data.</p><ul><li><p><strong>TENURE_MONTHS</strong>: This represents the number of months a customer has stayed with the company. The distribution is right skewed showing that most customers have stayed for five to seven months while fewer customers have very short tenure.</p></li><li><p><strong>MONTHS_SINCE_PURGE</strong>: This variable measures the time spent since a customer’s last interaction in the platform. The distribution is left skewed with the majority of customers having one to three months since their last purge. Fewer customers have more than six months since their last purge.</p></li><li><p><strong>MONTHLY_CHARGE</strong>: This shows the amount billed monthly to customers.</p></li><li><p><strong>RECHARGE_FREQUENCY</strong>: This variable represents how often customers recharge their accounts. There are two distinct customer behaviors low frequency and high frequency rechargers. Low frequency rechargers might be less engaged and more likely to churn.</p></li><li><p><strong>AGE</strong>: this represents the age distribution of customers.</p></li></ul><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-4c560794-91c2-471b-a9dd-36d03b96c7c3.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 9: Distribution of Numeric Features</em></p><p><strong>Distribution of Catergorical features</strong></p><p>Categorical variables were analyzed using bar chars and count plots to explore their relationship with customer churn (See figure 10). The visualisations below show how churn and non-churn customers are distributed across several features.</p><ul><li><p><strong>PS_E-UTRAN</strong>: This feature reflects whether a customer has accessed the E-UTRAN network, commonly associated with LTE(4G) services. The chart shows a higher count of non-churned customers compared to churned ones. This suggest that customers with access to LTE service are more likely to remain active. The availability of high speed connectivity may enhance user satisfaction and reduce churn risk.</p></li><li><p><strong>PS_GERAN</strong>: This feature represents access to the GSM/EDGE radio access network (GERAN), commonly associated with 2G services. The chart shows a higher count of non-churned customers compared to churned ones.</p></li><li><p><strong>PURGEONMME</strong>: This feature indicates whether a customer’s session was purged from the mobility management entity (MME). It is usually done on customers who has not used mobile data or voice services for a long period of time.</p></li><li><p><strong>PURGEONSGSN</strong>: This feature indicates whether a customer’s session was purged from the SGSN (serving GPRS support node). It is usually done on customers who has not used mobile data or voice services for a long period of time.</p></li><li><p><strong>PLAN_NAME</strong>: This feature shows the distribution of different plan type the customers uses.</p></li><li><p><strong>GENDER</strong>: This feature shows the gender distribution of customers in CNO</p></li></ul><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-fbf1f51e-5cf5-41ae-aced-040de21713d9.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-6e9ad79c-3491-4eb6-9627-d28eee7a7e4e.png" style="max-width: 100%; height: auto; object-fit: contain;"><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-be2808c0-b57b-4cca-af8a-f0261acc9095.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-d150b2cf-9486-4744-a38d-2850192f592f.png" style="max-width: 100%; height: auto; object-fit: contain;"><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-85a3216e-0e95-4b6c-b58b-dc24fd139fbf.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-2006aa67-f14b-4ed1-b6f5-d62f862f3781.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 10: Distribution of Categorical features with respect to the churn status</em></p><p><strong>Data splitting Process</strong></p><p>The data is split in the ratio 70/10/20, where 70% of the data is used for training, 10% is used for validating the model and 20% for testing. This ensures that the model learns effectively while still having enough data for reliable evaluation.</p><p><strong>Cross Validation Method</strong></p><p>We make use of K-fold cross validation which divides the data into k-folds, train the model on k-1 folds and test it on the remaining folds. It helps to prevent the model from overfitting and improve robustness.</p><p><strong>Handling Class Imbalance</strong></p><p>Imbalance data is a common challenge in churn prediction, where the number of non-churners outweighs churners. This imbalance can lead to inaccurate models that fail to identify customers at risk of leaving. For our case we have 7801 subscriber who have not churned and 6136 subscribers who have churned. In order to balance both classes, Synthetic Minority Oversampling Technique (SMOTE) was applied to the training dataset, so the size of the minority class, in this case churner, was increased to the similar size of the majority<br>class, non-churner, through random sampling of churner.</p><p><strong>Model Evaluation Metrics</strong></p><p>An evaluation metric is a quantifiable measure to evaluate the performance of a ML model. It is a way to check how well a model performs meaning how close are the predicted values to the actual values for unseen data. Our aim is to have perfect predictions for our ML model but getting 100% is correct predictions is not possible. So, evaluation metrics helps us to quantify that error so we know how accurate our model is. For our evaluation we will be using the metric accuracy, f1-score, recall, precision, roc-auc and confusion matrix.</p><p><strong>Machine Learning Algorithms</strong></p><p>Four specific algorithms were selected based on their distinct mathematical strengths namely logistic regression, random Forest, Light Gradient Boosting Machine and Stacking Ensemble Algorithm.</p><p><strong>Logistic Regression</strong></p><p>Used as a baseline and later as a meta-learner, Logistic Regression is a statistical model used for binary classification. It models the probability that an instance belongs to a particular class using the Sigmoid function. It operates under the assumption of a linear relationship between the independent variables and the log-odds of the dependent variable.</p><p><strong>Random Forest</strong></p><p>An ensemble learning method that constructs a multitude of decision trees during training. Random Forest applies "bagging" (Bootstrap Aggregating) and feature randomness to ensure that individual trees are uncorrelated. For classification tasks, the final output is determined by majority voting among the trees. This structure drastically reduces the variance and overfitting typically associated with deep single decision trees.</p><p><strong>Light Gradient Boosting Machine (LightGBM)</strong></p><p>A highly efficient framework based on decision tree algorithms that utilizes gradient boosting. Unlike traditional boosting tools that grow trees level-wise, LightGBM grows trees leaf-wise, choosing the leaf with the maximum delta loss to grow. It employs Gradient-based One-Side Sampling (GOSS) and Exclusive Feature Bundling (EFB), making it exceptionally fast and highly accurate for large-scale telecommunication datasets.</p><p><strong>Stacking Ensemble Algorithm</strong></p><p>Stacking (Stacked Generalization) is an advanced meta-learning strategy designed to combine the predictive strengths of heterogeneous base models.</p><ol type="i"><li><p><strong>Level-0 (Base Learners):</strong> The dataset is passed through Logistic Regression, Random Forest, and LightGBM models.</p></li><li><p><strong>Level-1 (Meta-Learner):</strong> The predictions (probabilities) outputted by the Level-0 models are compiled into a new dataset. A meta-learner (in this study, a secondary Logistic Regression model) is trained on this new dataset to make the final prediction. This allows the system to intelligently weigh which base model is most reliable for specific types of data patterns.</p></li></ol><p><strong>System Design and Software Environment</strong></p><p>The ML pipeline was integrated into a comprehensive, interactive web application designed for CNO’s strategic analysts. The platform was built utilizing Python as the core programming language.</p><ol type="i"><li><p><strong>Backend & ML:</strong> Scikit-learn, Imblearn (SMOTE), Pandas, and NumPy.</p></li><li><p><strong>Frontend & Interactivity:</strong> Streamlit framework, HTML, CSS.</p></li><li><p><strong>Visualizations & Mapping:</strong> Plotly for interactive charting and Folium for geographic network mapping.</p></li><li><p><strong>Reporting:</strong> ReportLab for automated PDF generation of churn insights.</p></li></ol><p>Unified Modeling Language (UML) diagrams (Use Case, Class, and Activity) were utilized to map the architectural flow, ensuring seamless interaction between data upload, model training, geographical visualization, and prediction downloads. Figure 11 presents the use case diagram follow by figure 12 for the class diagram and figure 13 for the activity diagram.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-09aad0f8-1f39-47f7-ad03-1787c175a8dd.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 11: Use case Diagram</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-c59a59bc-91d4-4a56-aebf-0f1a420fcc8b.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 12: Class Diagram</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-4ad4fbf9-1bc2-40db-8ec4-27b0c602259a.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 13: Activity Diagram</em></p><p><strong>Results and Discussion</strong></p><p><strong>Model Performance Evaluation</strong></p><p>The models were evaluated on a holdout test subset of 2,788 records. Performance was quantified using standard classification metrics: Accuracy, Precision, Recall, F1-Score, and ROC-AUC. Figure 27 presents the models performance results and figure 28 the model performance table.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-798e3775-bea1-482e-a966-d3b76a469203.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 14: Models Performance Result</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-3f2baaec-367f-4f06-8d1d-26cfd305debf.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 15: Model Performance Table</em></p><p><strong>Results Summary:</strong></p><ol type="i"><li><p>Logistic Regression: Achieved a baseline accuracy of 84.75%, precision of 84.71%, and recall of 84.51%. While computationally light, it struggled to capture complex, non-linear subscriber patterns.</p></li><li><p>Random Forest: Improved performance to 89.04% accuracy and a 90.42% recall, proving its robustness in handling diverse feature interactions.</p></li><li><p>LightGBM: Achieved highly competitive results with 92.57% accuracy and a 92.52% recall, showcasing the power of gradient boosting on tabular data.</p></li><li><p>Stacking Classifier: Outperformed all individual models across every metric. The meta-learner achieved a remarkable 97.51% Accuracy, 97.46% Precision, and 97.54% Recall, with an F1-Score of 97.50%.</p></li></ol><p><strong>Confusion Matrix Analysis</strong></p><p>The confusion matrix provides a granular view of the model's predictive precision (True Positives vs. False Positives).</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-f3eb8380-4c68-4aba-8053-882f0b5eaf36.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-416cb8b1-f77b-4745-9796-43ae0af2484d.png" style="max-width: 100%; height: auto; object-fit: contain;"><p>Figure 16: Confusion Matrix for Logistic Regression (left) and Random Forest (right)</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-a4b08ce4-a227-4fcb-8a6b-8d0d5c56030c.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-729ca7c5-3519-40e2-b8bb-e05453b527e0.png" style="max-width: 100%; height: auto; object-fit: contain;"><p>Figure 17: Confusion Matrix for LightGBM (left) and Stacking (right)</p><p>For the premier Stacking Classifier, out of 2788 observations, the model achieved near-perfect classification:</p><ol type="i"><li><p><strong>True Negatives (TN):</strong> 1,559 active customers correctly identified.</p></li><li><p><strong>True Positives (TP):</strong> 1,226 churned customers accurately flagged.</p></li><li><p><strong>False Positives (FP):</strong> Only 2 active customers misclassified as churners.</p></li><li><p><strong>False Negatives (FN):</strong> Only 1 actual churner missed by the system.</p></li></ol><p>This exceptionally low rate of False Negatives is crucial for telecom operators; missing a churner represents a direct loss of revenue, whereas a False Positive merely results in an unnecessary retention promotion being sent to a loyal customer.</p><p><strong>Feature Importance and Behavioral Insights</strong></p><p>The Random Forest and LightGBM models allowed for the extraction of feature importance scores show by figure 30 and figure 31, revealing the primary drivers of customer attrition.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-4038427f-71ef-46b5-a69c-651db5021069.png" style="max-width: 100%; height: auto; object-fit: contain;"><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-63aa8041-370c-40c3-9cf7-84c292e57f33.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 18: Feature importance for Random Forest (left) and LightGBM (right)</em></p><ol type="a"><li><p><strong>Time-Based Engagement (MONTHS_SINCE_PURGE & TENURE_MONTHS):</strong> The recency of a user's connection to the EPC was the most dominant predictor. Customers demonstrating initial signs of reduced network interaction were exponentially more likely to churn entirely.</p></li><li><p><strong>Financial Expenditure (TOTAL_CHARGE & MONTHLY_CHARGE):</strong> Financial data analysis revealed distinct risk clusters. Density distribution graphs (Figure 19) indicated that churners heavily concentrated in the higher monthly charge bracket (4,500 – 5,500 FCFA). Conversely, active, loyal customers dominated the mid-tier spending bracket (3,000 – 3,500 FCFA). This counter-intuitive finding suggests that high-paying customers possess higher expectations regarding network quality and customer service; when these expectations are unmet, they actively seek competing providers.</p></li></ol><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-70937256-2326-4aca-8443-cba1cc68ed84.png" style="max-width: 100%; height: auto; object-fit: contain;"><p>Figure 19: Monthly Charges by Churn</p><ol type="a"><li><p><strong>Recharge Habits (RECHARGE_FREQUENCY):</strong> Analysis of recharge volumes (see figure 20) showed that users making infrequent, low-volume recharges (clustering below 2,500 FCFA) were highly prone to churn, indicating a gradual disengagement from the CNO ecosystem.</p></li></ol><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-99192cf4-162e-40af-8267-feb3689989a3.png" style="max-width: 100%; height: auto; object-fit: contain;"><p>Figure 20: Recharge amount by churn</p><p><strong>Survival Analysis (Kaplan-Meier Curve)</strong></p><p>To predict the lifespan of a customer’s loyalty, the Kaplan-Meier survival estimator was applied (See Figure 21). The generated survival curve illustrated a precipitous decline in customer retention probability within the first 50 days of account creation.</p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-c8bb9711-024e-4bab-8df8-0e592f81de27.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 21: Kaplan - Meier Survival Curve</em></p><p><strong>Interpretation:</strong> This steep initial drop indicates widespread "early-life churn," potentially driven by poor onboarding experiences, immediate dissatisfaction with network coverage, or the conclusion of introductory promotional data bundles. Beyond 150 days, the curve flattens significantly. Therefore, CNO must aggressively focus retention efforts and loyalty campaigns strictly within the first two months of a subscriber's lifecycle to yield maximum return on investment.</p><p><strong>The Churn Prediction System Interface</strong></p><p>The practical output of this research was the deployment of the Streamlit-based Churn Prediction Dashboard. The system features:</p><ol type="i"><li><p>Data Overview: Automated analysis of missing values and dataset shape.</p></li><li><p>Geographic Insights (Folium): An interactive map plotting subscriber distribution based on latitude/longitude variables, allowing regional managers (e.g., in the Littoral or Centre regions) to visually pinpoint clusters of high churn risk (figure 22).</p></li><li><p>Automated PDF Reporting: A one-click generation tool using ReportLab to export predictive summaries and strategic recommendations for executive review (Figure 23 and figure 24).</p></li></ol><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-ee01fb4e-eff6-4f1c-bf5d-023800163aed.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 22: Map Visualization of churn status</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-f15dab1a-e96b-4b23-a6ec-2c9f98b626b6.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 23: Download Report Page</em></p><p></p><img src="https://airjournal.org/storage/airjournal/journal-assets/editor/imported-1a85d986-b475-4518-8b61-82f197602ceb.png" style="max-width: 100%; height: auto; object-fit: contain;"><p><em>Figure 24: Summary Report of Prediction and Insights</em></p><p><strong>Conclusion</strong></p><p style="text-align: justify;">Customer churn remains one of the most persistent threats to profitability in the highly competitive telecommunications sector. This article successfully developed, evaluated, and deployed an advanced Machine Learning framework dedicated to predicting subscriber attrition within CNO’s mobile network. By moving beyond reactive monitoring and leveraging raw behavioral data from the Evolved Packet Core, this study established a robust, predictive approach to customer lifecycle management.</p><p style="text-align: justify;">Among the algorithms tested, the Stacking Ensemble classifier combining the strengths of Random Forest, LightGBM, and Logistic Regression yielded very good results, achieving a 97.51% predictive accuracy. Furthermore, deep analytical exploration via feature importance and Kaplan-Meier survival curves uncovered critical business insights: the first 50 days of a subscription are critical to long-term loyalty, and high-spending customers exhibit a disproportionately high risk of churning, likely due to unmet service expectations. The integration of these models into a user-friendly, web-based prediction system provides CNO’s decision-makers with a highly effective, data-driven tool to execute targeted, cost-efficient retention strategies.</p><p><strong>References</strong></p><p>Manro, E., Malhotra, D., & Kamthania, D. (2025, April). Customer churn prediction using machine learning. <em>BCIIT eJournal, 2</em>(1). <a href="https://bciit.ac.in/pdf/eJournal/Issue1_2025/eshanmanro_V2I1_FullText.pdf">https://bciit.ac.in/pdf/eJournal/Issue1_2025/eshanmanro_V2I1_FullText.pdf</a></p><p>Lu, J. (2001). <em>Predicting customer churn in the telecommunications industry: An application of survival analysis modeling using SAS.</em></p><p>Tridens Technology. (2024). <em>Why telecom customers churn and how to measure it?</em> <a href="https://tridenstechnology.com/telecom-churn/">https://tridenstechnology.com/telecom-churn/</a></p><p>Grevisse, R., & Yende. (2023). Analysis of the churn in mobile telecommunications companies and customer loyalty through targeted marketing: Study of IT discriminant. <em>International Journal of Academic and Applied Research (IJAAR).</em></p><p>Stripe. (n.d.). <em>What causes churn and how businesses can minimize it.</em> <a href="https://stripe.com/resources/more/what-causes-churn-and-how-businesses-can-minimize-it">https://stripe.com/resources/more/what-causes-churn-and-how-businesses-can-minimize-it</a></p><p>Wagh, S. K., Andhale, A. A., Wagh, K. S., Pansare, J. R., Ambadekar, S. P., & Gawande, S. H. (2024). Customer churn prediction in telecom sector using machine learning techniques. <em>Results in Control and Optimization, 14</em>, Article 100342. <a href="https://doi.org/10.1016/j.rico.2023.100342">https://doi.org/10.1016/j.rico.2023.100342</a></p><p>Deussom Djomadji, E. M., Basile, K. I., Christian, T. T., Djoko, F. V. K., & Michael, S. E. (2023). Machine learning-based approach for identification of SIM box bypass fraud in a telecom network based on CDR analysis: Case of a fixed and mobile operator in Cameroon. <em>Journal of Computer and Communications, 11</em>(2), 142–157. <a href="https://doi.org/10.4236/jcc.2023.112010">https://doi.org/10.4236/jcc.2023.112010</a></p><p>Deussom Djomadji, E. M., Matemtsap Mbou, B., Tchagna Kouanou, A., Ekonde Sone, M., & Bayonbog, P. (2022). Machine learning-based approach for designing and implementing a collaborative fraud detection model through CDR and traffic analysis. <em>Transactions on Engineering and Computing Sciences, 10</em>(4), 46–58. <a href="https://doi.org/10.14738/tmlai.104.12854">https://doi.org/10.14738/tmlai.104.12854</a></p><p>Deussom Djomadji, E. M., Clovis, T. N., Christian, T. T., Mamadou, A., & Sone, M. E. (2023). Machine learning-based alarms classification and correlation in an SDH/WDM optical network to improve network maintenance. <em>Journal of Computer and Communications, 11</em>, 122–141. <a href="https://doi.org/10.4236/jcc.2023.112009">https://doi.org/10.4236/jcc.2023.112009</a></p><p>Bernabe, B., Deussom Djomadji, E. M., Marie, C., & Fabrice, M. (2022). Comparing machine learning algorithms for improving the maintenance of LTE networks based on alarms analysis. <em>Journal of Computer and Communications, 10</em>, 125–137. <a href="https://doi.org/10.4236/jcc.2022.1012010">https://doi.org/10.4236/jcc.2022.1012010</a></p><p>Deussom Djomadji, E. M., Kabiena, I., Nkemeni, V., Belinga À Njere, A., & Sone, M. (2023). Dynamic resource allocation in LTE radio access network using machine learning techniques. <em>Journal of Computer and Communications, 11</em>, 73–93. <a href="https://doi.org/10.4236/jcc.2023.116005">https://doi.org/10.4236/jcc.2023.116005</a></p><p>Deussom Djomadji, E. M., Nkemeni, V., Aurelle, T. K., & Issikamle, M. (2025). Machine learning-based traffic prediction in 4G LTE networks: Case study of a mobile operator in Cameroon. <em>American Journal of Engineering and Applied Sciences, 18</em>(1), 47–54. <a href="https://doi.org/10.3844/ajeassp.2025.47.54">https://doi.org/10.3844/ajeassp.2025.47.54</a></p><p>Hutsady, O., Vongpasith, P., Sonevilay, P., Phonekhamma, C., & Khammanivong, O. (2024, August). <em>Lao Telecom customer churn prediction: A case study in Borikhamxay branch.</em></p><p>Varudandi, S. (2020, November). <em>Predicting customer churn using logistic regression.</em></p><p>Enhancing customer churn prediction with stacking ensemble and stratified k-fold. (2025, February). <em>Bulletin of Electrical Engineering and Informatics, 14</em>. <a href="https://beei.org/index.php/EEI/article/download/8112/4047">https://beei.org/index.php/EEI/article/download/8112/4047</a></p><p>Bhushan, S. (2025, January). <em>Enhancing customer churn prediction in the telecom sector using advance machine learning techniques and explainable AI.</em> <a href="https://norma.ncirl.ie/8683/1/shreyasbhargavbhushan.pdf">https://norma.ncirl.ie/8683/1/shreyasbhargavbhushan.pdf</a></p><p>Next-gen customer retention: A stacked ensemble model for churn prediction. (2025, June). <a href="https://www.thesesjournal.com/index.php/1/article/download/503/449">https://www.thesesjournal.com/index.php/1/article/download/503/449</a></p><p>Customer churn analysis in telecom organization. (2024, February). <em>International Journal for Multidisciplinary Research (IJFMR).</em> <a href="https://www.ijfmr.com/papers/2024/2/18886.pdf">https://www.ijfmr.com/papers/2024/2/18886.pdf</a></p>