# Improving Customer Experience in Call Centers with Intelligent Customer-Agent Pairing

Stylianos Filippou, Andreas Tsiartas, Petros Hadjineophytou, Spyros Christofides, Kleanthis Malialis, Christos G. Panayiotou

## ► To cite this version:

Stylianos Filippou, Andreas Tsiartas, Petros Hadjineophytou, Spyros Christofides, Kleanthis Malialis, et al.. Improving Customer Experience in Call Centers with Intelligent Customer-Agent Pairing. 19th IFIP International Conference on Artificial Intelligence Applications and Innovations (AIAI), Jun 2023, León, Spain. pp.214-224, 10.1007/978-3-031-34111-3_19. hal-05449807

HAL Id: hal-05449807

https://inria.hal.science/hal-05449807v1

Submitted on 9 Jan 2026

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
<figure><img src="image_2.png" /></figure>

ifip

International Federation for Information Processing

This document is the original author manuscript of a paper submitted to an IFIP
conference proceedings or other IFIP publication by Springer Nature. As such, there
may be some differences in the official published version of the paper. Such
differences, if any, are usually due to reformatting during preparation for publication or
minor corrections made by the author(s) during final proofreading of the publication
manuscript.
Improving Customer Experience in Call
Centers with Intelligent Customer-Agent
Pairing

Stylianos Filippou<fnref n="1" /> ID, Andreas Tsiartas³, Petros Hadjineophytou³, Spyros Christofides³, Kleanthis Malialis<fnref n="1" />(✉) ID, and Christos G. Panayiotou<fnref n="1" />,<fnref n="2" /> ID

{filippou.stylianos,malialis.kleanthis,christop}@ucy.ac.cy

³ Cyprus Telecommunications Authority (CYTA), Nicosia, Cyprus
{andreas.tsiartas,petros.hadjineophytou,spyros.christofides}@cyta.com.cy

**Abstract.** Customer experience plays a critical role for a profitable organisation or company. A satisfied customer for a company corresponds to higher rates of customer retention, and better representation in the market. One way to improve customer experience is to optimize the functionality of its call center. In this work, we have collaborated with the largest provider of telecommunications and Internet access in the country, and we formulate the customer-agent pairing problem as a machine learning problem. The proposed learning-based method causes a significant improvement in performance of about 215% compared to a rule-based method.

**Keywords:** customer-agent pairing · machine learning · call center · customer experience

# 1 Introduction

Organisations or companies set high standards for providing excellent products and services to expand in the market, to retain current customers, and attract new ones. Customer experience significantly affects the loyalty and satisfaction of the customer in relation to a company's products and services [12]. It is a top priority for any company or organisation, and it constitutes a vital component of its commercial and marketing strategy.

Nowadays, there exist multiple channels through which a customer can contact an organisation; one of the most widely used is the call center. A call center is a department within an organisation, that handles a large amount of incoming calls related to their products and services. The organisation through the call center collects and stores a variety of historical information through the different media of interaction with the customer. The main aim of the call center is to

<footnote n="1">¹ KIOS Research and Innovation Center of Excellence, University of Cyprus,
Nicosia, Cyprus</footnote>

<footnote n="2">² Department of Electrical and Computer Engineering, University of Cyprus,
Nicosia, Cyprus</footnote>
assist customers and answer any enquiry, therefore, a good functioning call center can drastically improve customer experience. By keeping customers satisfied, an organization can achieve their objectives, which among others, it includes customer retention through customer satisfaction [12]. Moreover, by successfully assisting customers, an overall positive experience can attract new customers.

An important way of improving customer experience through the call center is by minimizing the waiting time of a customer until an agent (i.e., call operator) assists them. Minimization of the call duration can be achieved by avoiding the traditional interaction via keypad, which redirects the customer after a series of keypad selections to the relevant agent who can assist with their enquiry. Minimizing each call duration offers significant benefits which are: (i) a customer is assisted faster; (ii) a company can assist more customers in the same amount of time; and (iii) a company saves valuable resources, e.g., by re-assigning agents to important problems.

The contributions of this work are as follows. We have collaborated with the Customer Support team of the largest provider of telecommunications and Internet access in the country, and have formulated the customer-agent pairing problem in their call center as a machine learning problem. We have conducted a rich experimental study using realistic data provided by the organisation, and examining various learning models. The proposed learning-based method is statistically 2.15 times better than a rule-based method.

The rest of the paper is organised as follows. Section 2 reviews the related work. The problem formulation and proposed method are discussed in Sect. 3. Section 4 presents the datasets, classification models, and evaluation metrics used in this study. A description of the results and the comparative study are presented in Sect. 5. We conclude in Sect. 6.

## 2 Related Work

Customer Relationship Management (CRM) is the strategy for building, managing and strengthening loyal and long-lasting customer relationships. According to [12] there are two main objectives of CRM. First, customer retention through customer satisfaction, and second customer development through customer insight. To achieve both objectives, organizations should focus on customer needs, behavior and preferences. Machine learning algorithms have played a major role towards achieving these objectives; many studies use such methods in CRM-related tasks.

Customer identification and segmentation is an important task for any organization because it can identify customer requirements and divide customers into groups using demographic data, such as age, location, gender, occupation etc. In [20] the authors compared various machine learning algorithms in order to group customers using these features: total call duration, frequency of using a service, and money spent during a certain period. In [18] they grouped customers into a number of classes using Naive Bayes, Decision Tree and MLP, while in [11] they used dimensionality reduction (PCA) and clustering (k-mode) to group customers.
**Customer attraction** is the task of attracting customers to an organiza-
tion's products and services. In [13] the authors have applied machine learning to
predict purchase of services, while in [19] the authors have used machine learning
to identify prospect customers.

**Customer retention** refers to strategies that are, typically, targeted on customers that are most likely to abandon a service. According to [17], retention strategies should be applied by all organizations or companies as they are considered to be cost-effective (e.g., compared to attracting new customers). In [9] the authors have applied various machine learning algorithms on a telecommunication dataset, while authors in [8] used a semi-supervised learning to retain their valuable customers.

**Customer churning** is the task of identifying the cost of losing customers. In [1], the authors have applied machine learning for churn prediction in the area of telecommunications. Also in the same area, the authors in [15] have proposed deep fully-connected and convolutional neural networks for churn prediction in the area of telecommunications.

**Customer lifetime value (CLV)** refers to the task of identifying the approaches that can create value to organizations, optimize their resources, and maximize their profits. In [5], the authors used tree-based learning algorithms to define CLV in airline travelers, and classified them as high, medium and low value travelers. In [16] using features such as client loyalty number, recency, frequency and monetary, the authors proposed a customer shopping behavior model using recurrent neural networks.

**Customer-agent pairing** focuses on the successful communication between agents (i.e., call operators) and customers, thus maximizing customer satisfaction. To enhance the customer's call experience, organizations utilize historical and demographic data to improve the service to the customer by minimising the call duration, from the point a customer contacts the call center to the point the user enquiry is satisfied. To our knowledge, not many studies explored this problem. In [14] the authors used biographic information and historical data to find the best pairing of callers and agents for the call center of an insurance company. This work is closer in spirit to ours, however, the focus of our work is in the area of telecommunications. Lastly, in this study [2], the features that were considered are words, from speech to text conversion system available at the organisation. This method relies on an additional step where the customer is first required to describe the reason for calling, as opposed to interacting with their keypad which is what our proposed method is intended for.

# 3 Intelligent Customer-Agent Pairing

## 3.1 Problem Formulation

We consider a centralised call center that aims to provide services to exist-
ing or potential customers. The call center consists of many components, from
which we will focus on the Interactive Voice Response (IVR) and the avail-
able assistance departments. The IVR component is a technology that allows
a computer to interact with humans through input via a keypad. It provides an automated first contact with a customer before forwarding the call to the appropriate department. The IVR provides the user with a predefined number of options. Each initial category consists of a subgroup of options for the precise request identification, which will help the IVR to assign the caller to the queue of the appropriate department. Each department consists of a specialized group of personnel (the “agents” or “operators”) that are qualified to help the customers with specific enquires. The overview of the current flow in IVR can be seen in Fig. 1. We describe Stages 1–2 here, while the prediction stage is described in the next section.

**Stage 1.** The customers voice call will be forwarded to the IVR system. At stage 1 the user will receive a welcome audio message, and be presented with the available *J* options. The user will use the keypad to make their desired choice that fits most their enquiry. Depending on the selection, this process can be repeated. It is assumed that the average duration time of this stage is $t_{stage1}$.

**Stage 2.** The user will be assigned to the corresponding *N* queues, one for each department. Finally, the user is able to communicate with the appropriate personnel. The average duration for this stage is assumed to be $t_{stage2}$.

The average time duration of any call *c* at the call center is:

$$T^c = t_{stage1} + t_{stage2} \qquad (1)$$

Let the total number of calls be *C*, the total average duration of all calls is:

$$T^{total} = \sum_{c=1}^{C} T^{c} \qquad (2)$$

## 3.2 ML-Based Pairing

Intelligent pairing can be achieved by classifying the call of each user before stage 1, and assigning the user to the correct queue department at stage 2. This is shown in red in Fig. 1. By achieving that, the user can skip the time consuming stage 1, and given a quick verification of the user they could directly forward the call to a department’s queue, resulting in a faster service and an enhanced customer experience.

Let the identifier (e.g., telephone) of user *u* that contacts the call center be $id(u) \in \mathbb{Z}^+$. A feature generating process $g: \mathbb{Z}^+ \rightarrow \mathbb{R}^d$ creates at each time step *d* features, such that, $x^u = g(id(u))$ which corresponds to engineered features for the customer using historical data from previous calls to the center, as well as using other information (e.g., demographics).

We consider a learning model (multi-class classifier) $f: \mathbb{R}^d \rightarrow \{0, 1, ..., N\}$, such that, $\hat{y}^u = f(x^u)$ where *N* is the number of departments, and $\hat{y}^u$ is the predicted department to be transferred to. Note that the time taken for feature extraction and model prediction is negligible (i.e., in the order of milliseconds). At this point, the user receives a message to confirm whether or not the prediction
<figure><img src="image_3.png" /><figcaption>Fig. 1. The proposed solution overview of the Customer's call procedure</figcaption></figure>

is correct (i.e., in the order of a few seconds). Let us assume that the average time required is $t_{stage pred}$.

The main objective is to minimize the average time duration of each call $T^c$ and, as a result, the total average duration time $T^{total}$, as defined in Eqs. 1 and 2. We define the time duration of a call $c$ for which the model provided a correct prediction as follows:

$$ 
\begin{aligned}
T_{correct}^c &= t_{stage pred} + t_{stage 2} \\
&= t_{stage pred} + (T^c - t_{stage 1})
\end{aligned} 
\qquad (3) 
$$

where $T^c$ is the original average time taken without any prediction as defined in Eq. 1. In this case $T_{correct}^c \ll T^c$ as the stage 1 is by-passed which, typically, requires tens of seconds.

Similarly, let us define the average time duration of a call for which the model provided an incorrect prediction as shown below. In this case $T_{incorrect}^c > T^c$.

$$ T_{incorrect}^c = t_{stage pred} + T^c \qquad (4) $$

Based on the number of calls which correspond to correct and incorrect predictions respectively, the total average duration time is defined as:

$$ T_{pred}^{total} = \sum_{c=1}^{T_P+T_N} T_{correct}^c + \sum_{c=1}^{F_P+F_N} T_{incorrect}^c \qquad (5) $$

where $T_P, T_N, F_P$ and $F_N$ correspond to the number of True Positives, True Negatives, False Positives, and False Negatives respectively.

Thus far we have considered the general case where a multi-class classifier is used. For completeness, when the task is binary, that is, to predict whether a user is calling for a particular service `SERVICE_A` or for any other service `OTHER`, the previous equation is replaced with the following:
$$T_{pred}^{total} = \sum_{c=1}^{T_P} T_{correct}^{c} + \sum_{c=1}^{F_P} T_{incorrect}^{c} + \sum_{c=1}^{T_N+F_N} T^{c} \quad (6)$$

# 4 Experimental Setup

## 4.1 Case Study

We have collaborated with one of the largest telecommunications and Internet provider in the country, to provide a proof-of-concept to our proposed ML-based customer agent pairing. The objective of this initial case study is to predict whether a user calls to purchase a specific service SERVICE\_A, otherwise she/he calls for another reason OTHER. To achieve this, we extract the following types of information related to each user.

**Demographics:** It includes general demographic information, such as, age, language, address, and the user type (e.g., company or individual).

**Customer Profile:** It contains detailed information about each service or product the customer has used or has been using (e.g., start date, expiration date, description, and status).

**Customer Interaction:** It includes information about issues that were reported by a user in the past via the Customer Call Center or at a retail store; this source includes information, such as, date and time, and department handled by.

Feature engineering is performed on the extracted features related to customer profile and interaction, for example, “number of previous calls in the last three months for SERVICE\_A”.

After the dataset creation, we split the dataset into training, validation, and test sets as shown in Table 1.

<table><caption>**Table 1.** Dataset description</caption><thead><tr><th>Dataset</th><th>Duration (months)</th><th>Unique Callers</th><th>Service\_A Calls</th><th>Other Calls</th><th>Total Calls</th></tr></thead><tbody><tr><td>Train</td><td>12</td><td>162563</td><td>18581</td><td>822102</td><td>849683</td></tr><tr><td>Validation</td><td>2</td><td>56317</td><td>2289</td><td>118317</td><td>120606</td></tr><tr><td>Test</td><td>1</td><td>34128</td><td>1378</td><td>59407</td><td>60785</td></tr></tbody></table>

## 4.2 Compared Methods

**Rule-Based:** Combination of rules derived based on domain knowledge, as well as, extensive analysis of historical data.

**Logistic Regression (LR) [7]:** It is a statistical algorithm that models the probability of an event taking place by analyzing the linear relationship between one or more existing independent variables.
**Decision Tree (DT)** [21]: It is a classification algorithm that predicts the class of a target variable by learning decision rules inferred from prior data.

**Random Forest (RF)** [3, 4]: It is a tree-based, ensemble learning algorithm, i.e., it depends on multiple tree-based learners which make individual predictions that are then averaged together.

**Extreme Gradient Boosting (XGBoost)** [6]: It is a machine learning technique that produces a prediction model in the form of an ensemble of weak prediction models, which are typically tree-based. This technique builds a model in a stage-wise fashion and combines weak learners into a single strong learner. As each weak learner is added, a new model is fitted to provide a more accurate estimation. The XGBoost classifier is a tree-based ensemble machine learning algorithm with Gradient Boosting as its main component.

**Multilayer Perception (MLP)** [3]: It is a feed-forward neural network that consists of an input and an output layer, and can have multiple hidden layers. MLP uses the backpropagation algorithm for training which computes the gradient of the loss function with respect to the weights of the neural network.

## 4.3 Evaluation Metrics

We analyze the results of the classifier using a **confusion matrix**. The confusion matrix classifies the results into True Positives ($T_P$), True Negatives ($T_N$), False Positives ($F_P$), and False Negatives ($F_N$).

Classifiers are typically evaluated using the accuracy metric. However, this metric becomes unsuitable as it is biased towards the majority class. In this study we adopt two widely accepted metrics which are less sensitive to imbalance; these are, F1-score (F1) [10] and Geometric Mean (GM).

**F1-score (F1)** is defined as the harmonic mean of Precision and Recall. Specifically, Precision ($P$) provides information concerning the rate at which the algorithm detects SERVICE\_A over all detection of SERVICE\_A given by:

$$P = \frac{T_P}{T_P + F_P} \qquad (7)$$

Similarly, Recall ($R$) is the ratio at which the algorithm detects SERVICE\_A over all possible SERVICE\_A given by:

$$R = \frac{T_P}{T_P + F_N} \qquad (8)$$

Finally, the F1-score (F1) is the weighted average of $P$ and $R$ and is the measure of accuracy on the data set given by

$$F1 = 2 \left( \frac{P \times R}{P + R} \right) \qquad (9)$$

The F1-score gets a higher value (near 1) when the $F_P$ and $F_N$ are low. If a system is performing poorly by generating more $F_P$ and $F_N$, the F1-score will be low (near 0).
**Geometric Mean (GM)** is defined as the geometric mean of Recall and Specificity, and is given by

$$GM = \sqrt{R \times S}, \qquad (10)$$

where the Specificity (S), which is defined as the true negative rate, is given by

$$S = \frac{T_N}{T_N + F_P}. \qquad (11)$$

Note that GM has the desirable property of being high when both *R* and *S* are high, and when their difference is small [10]. For this reason, we introduce a combined metric which is defined as the geometric mean of *F*1 and *GM*:

$$F1 - GM = \sqrt{F1 \times GM} \qquad (12)$$

# 5 Experimental Results

## 5.1 Role of the Learning Model

In this section we explore the performance of each model on the validation set. Due to the stochastic nature of the learning models we repeat the experiment 20 times, and report the average performance. An overview of the results can be seen in Table 2. The MLP appears to be the best performing model based on the combined *F*1 – *GM* metric; specifically, it produces the highest *F*1 and the second highest *GM*.

<table><caption>**Table 2.** Performance of machine learning models on the validation set.</caption><thead><tr><th>Model</th><th>F1</th><th>GM</th><th>F1-GM</th></tr></thead><tbody><tr><td>LR</td><td>47.69</td><td>75.93</td><td>60.17</td></tr><tr><td>DT</td><td>46.74</td><td>71.34</td><td>57.74</td></tr><tr><td>RF</td><td>47.31</td><td><strong>77.89</strong></td><td>60.70</td></tr><tr><td>XGBoost</td><td>50.00</td><td>74.25</td><td>60.93</td></tr><tr><td>MLP</td><td><strong>50.17</strong></td><td>76.39</td><td><strong>61.91</strong></td></tr></tbody></table>

## 5.2 Comparative Study

In this section we compare the machine learning algorithm to the manual rules method. We have selected the highest performing machine learning algorithm, MLP and the best rule combination for manual rules method. Table 3 presents the average performance of MLP and manual rules on the test set. The proposed learning-based method yields an *F*1 and *GM* – *F*1 scores which are 4.5 and 2.15 times better than the rule-based method. This significant improvement can reduce the waiting times, thus enhancing the customer experience, as well as it allows an organisation to allocate its limited resources more efficiently.
<table><caption>**Table 3.** Comparative study on the test set.</caption><thead><tr><th>Algorithm</th><th>F1</th><th>GM</th><th>F1-GM</th></tr></thead><tbody><tr><td>Manual Rules</td><td>10.67</td><td>74.04</td><td>28.10</td></tr><tr><td>MLP</td><td><strong>48.55</strong></td><td><strong>75.39</strong></td><td><strong>60.50</strong></td></tr></tbody></table>

## 5.3 Empirical Analysis of the Results

Table 4 presents the confusion matrix of Manual Rules and MLP on the test set. In this section, given the numbers presented in Table 4 and the formulated equations in Sect. 3, we analyse three methods. The first one is the traditional way in which a call centre operates, i.e., without any prediction method in-place. The second and third methods are the rule-based and ML-based respectively. MLP achieves a significant improvement over the rule-based method; we notice here the huge difference in the number of true negatives and false positives.

<table><caption>**Table 4.** Confusion matrix of Manual Rules and MLP algorithms on the test set.</caption><thead><tr><th>Algorithm</th><th>T<sub>N</sub></th><th>F<sub>P</sub></th><th>F<sub>N</sub></th><th>T<sub>P</sub></th></tr></thead><tbody><tr><td>Manual Rules</td><td>41675</td><td>17732</td><td>301</td><td>1077</td></tr><tr><td>MLP</td><td>58308</td><td>1099</td><td>579</td><td>799</td></tr></tbody></table>

**Traditional (No Prediction).** Let us now consider the traditional method of not having any prediction method in-place. Given Eq. 2 and the total number of calls which is 60785, the total time duration equals to:

$$ 
\begin{aligned}
T_{trad}^{total} &= \sum_{c=1}^{60785} T^c \\
&= 60785t_{stage1} + 60785t_{stage2}
\end{aligned} 
\qquad (13) $$

**Rule-Based.** Based on Eq. 6, the total duration time is:

$$ 
\begin{aligned}
T_{pred\_rules}^{total} &= \sum_{c=1}^{1077} T_{correct}^{c} + \sum_{c=1}^{17732} T_{incorrect}^{c} + \sum_{c=1}^{41976} T_{other}^{c} \\
&= 18809t_{stagepred} + 59708t_{stage1} + 60785t_{stage2} \\
&= 18809t_{stagepred} + 59708t_{stage1} + 877t_{stage1} - 877t_{stage1} + 60785t_{stage2} \\
&= T_{trad}^{total} + 18809t_{stagepred} - 877t_{stage1}
\end{aligned} 
\qquad (14) $$
MLP. Based on Eq. 6, the total duration time is:

$$
\begin{align}
T_{pred\_MLP}^{total} &= \sum_{c=1}^{799} T_{correct}^{c} + \sum_{c=1}^{1099} T_{incorrect}^{c} + \sum_{c=1}^{58887} T_{other}^{c} \nonumber \\
&= 1898t_{stage^{pred}} + 59986t_{stage^{1}} + 60785t_{stage^{2}} \nonumber \\
&= 1898t_{stage^{pred}} + 59986t_{stage^{1}} + 799t_{stage^{1}} - 799t_{stage^{2}} + 60785t_{stage^{2}} \nonumber \\
&= T_{trad}^{total} + 1898t_{stage^{pred}} - 799t_{stage^{1}} \tag{15}
\end{align}
$$

We can further derive that the average time required by the traditional
method is larger than that of the proposed method if the following condition
is true:

$$
\begin{align}
& T_{trad}^{total} > T_{pred\_MLP}^{total} \nonumber \\
& \Rightarrow 799t_{stage^1} - 1898t_{stage^{pred}} > 0 \tag{16} \\
& \Rightarrow t_{stage^1} > 2.38t_{stage^{pred}} \nonumber
\end{align}
$$

Similarly, the average time required by the rule-based method is larger than
that of the proposed method if the following condition is true:

$$
\begin{align}
& T_{pred\_rules}^{total} > T_{pred\_MLP}^{total} \nonumber \\
& \Rightarrow 16911t_{stage^{pred}} - 78t_{stage^1} > 0 \tag{17} \\
& \Rightarrow t_{stage^1} < 216.81t_{stage^{pred}} \nonumber
\end{align}
$$

In our case study, reasonable values for the average duration of the prediction and first stages are $t_{stage_{pred}} = 5$ s and $t_{stage^1} = 45$ s respectively. Both the above conditions are met. Specifically, the proposed ML-based method reduces the total average waiting time in the test set (1 month) compared to the rule-based method by more than 22 h ($= T_{pred\_rules}^{total} - T_{pred\_MLP}^{total}$), and to the traditional method by more than 7 h ($= T_{trad}^{total} - T_{pred\_MLP}^{total}$).

6 Conclusions and Future Work

We have collaborated with the largest provider of telecommunications and Inter-
net access in the country, and we have formulated the customer-agent pairing
problem as a machine learning problem. The proposed learning-based method
causes a significant improvement in performance of about 215% (i.e., 2.15 times
better) compared to a rule-based method. One future direction is to examine
the effect of methods, such as, cost-sensitive learning and resampling, to address
the class imbalance problem, in an attempt to further improve our results.

**Acknowledgements.** This work has been supported by the CYTA-KIOS Research Collaboration Agreement, the European Union Horizon 2020 program under Grant Agreement No. 739551 (KIOS CoE), and the Government of the Republic of Cyprus through the Deputy Ministry of Research, Innovation and Digital Policy.
References

1. Ahmad, A.K., Jafar, A., Aljoumaa, K.: Customer churn prediction in telecom using machine learning in big data platform. J. Big Data **6**(1), 1–24 (2019). https://doi.org/10.1186/s40537-019-0191-6

2. Avdagić-Golub, E., Begović, M., Kosovac, A.: Optimization of agent-user matching process using a machine learning algorithms. TEM J. **9**, 158–163 (2020)

3. Bishop, C.M.: Pattern Recognition and Machine Learning. Information Science and Statistics, Springer, Heidelberg (2006)

4. Breiman, L.: Random forests. Mach. Learn. **45**(1), 5–32 (2001)

5. Chen, S.: Estimating customer lifetime value using machine learning techniques, chap. 2. In: Thomas, C. (ed.) Data Mining. IntechOpen, Rijeka (2018)

6. Chen, T., Guestrin, C.: XGBoost: a scalable tree boosting system. In: Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 785–794 (2016)

7. Cox, D.R.: The regression analysis of binary sequences. J. Roy. Stat. Soc. Ser. B (Methodol.) **20**(2), 215–232 (1958)

8. Emtiyaz, S., Keyvanpour, M.: Customers behavior modeling by semi-supervised learning in customer relationship management. In: Advances in Information Sciences and Service Sciences (AISS), vol. 3 (2012)

9. Sabbeh, S.F.: Machine-learning techniques for customer retention: a comparative study. Int. J. Adv. Comput. Sci. Appl. **9**, 273–281 (2018)

10. He, H., Garcia, E.A.: Learning from imbalanced data. IEEE Trans. Knowl. Data Eng. **21**(9), 1263–1284 (2009)

11. Kamthania, D., Pawa, A., Madhavan, S.S.: Market segmentation analysis and visualization using k-mode clustering. J. Comput. Inf. Technol. **26**, 57–68 (2018)

12. Tsiptsis, K.K., Chorianopoulos, A.: Data Mining Techniques in CRM: Inside Customer Segmentation. Wiley (2009)

13. Martínez, A., Schmuck, C., Pereverzyev, S., Pirker, C., Haltmeier, M.: A machine learning framework for customer purchase prediction in the non-contractual setting. Eur. J. Oper. Res. **281**, 588–596 (2020)

14. Mehrbod, N., Grilo, A., Zutshi, A.: Caller-agent pairing in call centers using machine learning techniques with imbalanced data. In: 2018 IEEE International Conference on Engineering, Technology and Innovation (ICE/ITMC), pp. 1–6 (2018)

15. Mishra, A., Reddy, U.S.: A novel approach for churn prediction using deep learning. In: 2017 IEEE International Conference on Computational Intelligence and Computing Research (ICCIC), pp. 1–4 (2017)

16. Salehinejad, H., Rahnamayan, S.: Customer shopping pattern prediction: a recurrent neural network approach. In: 2016 IEEE Symposium Series on Computational Intelligence (SSCI), pp. 1–6 (2016)

17. Singh, D., Singh, P., Gupta, M.: An inclusive survey on machine learning for CRM: a paradigm shift. Decision **47**, 447–457 (2021)

18. Singh, D., Singh, P., Singh, K.K., Singh, A.: Machine learning based classification and segmentation techniques for CRM: a customer analytics. Int. J. Bus. Forecast. Mark. Intell. **6**, 99 (2020)

19. Singh, P., Agrawal, R.: A customer centric best connected channel model for heterogeneous and IoT networks. J. Organ. End User Comput. **30**, 32–50 (2018)

20. Wassouf, W.N., Alkhatib, R., Salloum, K., Balloul, S.: Predictive analytics using big data for increased customer loyalty: Syriatel Telecom Company case study. J. Big Data **7**(1), 1–24 (2020). https://doi.org/10.1186/s40537-020-00290-0

21. Wu, X., et al.: Top 10 algorithms in data mining. Knowl. Inf. Syst. **14**, 1–37 (2008)