# One-Step Dynamic Classifier Ensemble Model for Customer Value Segmentation with Missing Values

Authors: Jin Xiao; Bing Zhu; Geer Teng; Changzheng He; Dunhu Liu
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

Scientific customer value segmentation (CVS) is the base of efficient customer relationship management, and customer credit scoring, fraud detection, and churn prediction all belong to CVS. In real CVS, the customer data usually include lots of missing values, which may affect the performance of CVS model greatly. This study proposes a one-step dynamic classifier ensemble model for missing values (ODCEM) model. On the one hand, ODCEM integrates the preprocess of missing values and the classification modeling into one step; on the other hand, it utilizes multiple classifiers ensemble technology in constructing the classification models. The empirical results in credit scoring dataset “German” from UCI and the real customer churn prediction dataset “China churn” show that the ODCEM outperforms four commonly used “two-step” models and the ensemble based model LMF and can provide better decision support for market managers.


---

## Body

## 1. Introduction

In the increasingly fierce market competition, the traditional resources in enterprises, such as product quality, price, and production capacity, have been unable to bring new competitiveness for the enterprises; customer relationship management (CRM) has become the new resource from which enterprises can gain benefit continuously. The core objective of CRM is to maximize the customer value for enterprises [1]. As we all know, each customer has different value for an enterprise; usually about 80% profits are created by 20% customers. The enterprise can get the most profits only if it devotes the limited resources to the most valuable customers, develops specialized customer strategy, and designs different products and services for different customers [2]. Therefore, scientific customer value segmentation (CVS) is the base for efficient CRM. In the last decades, CVS has been applied to many key business processes such as customer retention, customer growth analysis, and customer acquisition, and it provides important support for decision making in CRM [3, 4].CVS is to classify customers according to their ability of creating value for enterprise, provide targeted products, services, and marketing models, enable enterprise to allocate resources more rationally, reduce cost effectively, and gain more profitable market penetration [5]. In fact, customer credit scoring, fraud detection, and churn prediction all belong to CVS, and their essential work is to classify customers according to different dimensions of customer value [6, 7].The research methods of CVS can be roughly divided into three categories:(
1
) qualitative analysis (as for this method, the customer manager judges the value of any customer through selecting and reading the customer information. This method is highly subjective); (
2
) statistical analysis methods construct a statistical model for CVS (the representative methods include logistic regression [8], discriminant analysis [9], and so on); (
3
) machine learning methods (with the development of information technology, people began to utilize some models derived from machine learning in CVS in the 1990s, such as support vector machine [10], decision tree [11], artificial neural network [12], and multiple classifiers ensemble technology) [13].With the in-depth study of the theory and practice of CVS, it is discovered that many customer data collected through questionnaires, interviews, and other means often include lots of missing values (MVs) [14, 15]. Yim et al. [15] have studied customer satisfaction through 450 questionnaires and found that 90 questionnaires contain a large number of MVs. The data not only from the questionnaires but also from the enterprises’ CRM database often contain MVs. Take the enterprise Honeywell listed in Fortune Global 500 for example; although they have strict data collection standards, the missing rate of data in the customer database is still as high as 50% [14].The MVs contained in CRM customer data influence the CVS effects to a large extent [16]. To solve this issue effectively, Kim et al. [17] have proposed a three-phase framework: (
1
) data collection and preprocess; (
2
) CVS modeling (it finds the main factors that affect customer value from customer information and constructs classification model to predict customer value based on these factors); (
3
) marketing strategies formulation (it proposes appropriate strategies for different customers to maximize their values for the enterprise according to the results obtained in Phase 2).Scholars have done a lot of researches around the above framework. They usually preprocess the MVs to make the data complete and then establish CVS model. The two steps are carried out independently, so we call it “two-step” model. The simplest way of preprocess is listwise deletion (LD) [14], which deletes the instances with MVs from the dataset directly. For example, Subramania and Khare [18] have utilized pattern classification method in the diagnosis analysis of automotive warranty and service, and they adopt LD to handle MVs. This method is simple but it is easy to lose a lot of important information [19]. Therefore, the imputation methods are more popular. For instance, Lessmann and Voß [20] have proposed a support vector machine based hierarchical reference model for credit scoring and replaced MVs with the mean of the nonmissing values of the corresponding attribute before modeling; Paleologo et al. [21] have presented subagging model for credit scoring; they replace the missing values either by the maximum or by the minimum of the nonmissing values of the attribute; Li and Wang [22] have proposed Bayesian network technology based attribute fatigue analysis model in product development; they impute the MVs by EM method [23] before modeling.The propositions mentioned above have made important contributions to customer value segmentation with MVs. However, some scholars have found that many CVS models are sensitive to data preprocess method, and the results are instable [24, 25]. In addition, as the most popular preprocess methods, imputation methods still have some disadvantages. The commonly used imputation methods are based on the assumption of random missing [26], so they all need to suppose that the data obey some distribution models. But in practice, a variety of missing mechanisms are often intertwined. If the assumption and the model are irrational, they are prone to data deflexion, which may lead to serious estimation bias and affect the learning effect of subsequent classifiers [27]. Therefore, the “two-step” CVS models need further improvement.This study introduces multiple classifiers ensemble technology [28] to CVS and constructs one-step dynamic classifier ensemble model (ODCEM) for MVs, which integrates the preprocess of missing values and the classification modeling into one step. The empirical results in a customer credit scoring dataset and a customer churn prediction dataset show that the proposed method is superior to other models in CVS performance.The structure of this study is organized as follows: it briefly introduces the commonly used processing methods for MVs in Section2; proposes the work principle and detailed steps of ODCEM in Section 3; proceeds the experimental design and detailed results analysis in Section 4. Finally, the conclusions and future work are in Section 5.


## 2. The Commonly Used Processing Methods for MVs

In general, most customer value segmentation models, such as artificial neural network, logistic regression, and support vector machine, require that the customer data are complete. As long as one value of some attribute is missing, it cannot train the model [29]. At present, the main methods of handling MVs can be summarized into three categories: listwise deletion, imputation methods, and ensemble based methods.


### 2.1. Listwise Deletion

Listwise deletion (LD) [14] is the simplest method of handling MVs. For any instance with MVs in model training set, LD will delete it from the dataset directly. If the missing rate of the model training set (the ratio between the number of instances with MVs and the size of the dataset) is very small, LD will be effective, while, if the missing rate is large and the MVs are not distributed randomly, it may result in data deviation and gaining wrong conclusions [14]. At last, it cannot be used when each instance in model training set contains some MVs or the instances in test set also contain some MVs.


### 2.2. Imputation Methods

At present, the imputation methods are the most commonly used ones for dealing with MVs, in which each MV is replaced by a value generated by some mechanism according to the nonmissing values in the model training set. Many scholars have proposed a variety of MV imputation methods, among which some methods are very simple and applicable, such as mean substitution (MS) [30], K-nearest neighbours imputation (KI) [27], regression imputation (RI) [31], and EM imputation (EM) [23].Mean substitution (MS) [30] usually divides the attributes into nominal and numeric while dealing with MVs. For nominal attribute, the MV is replaced by the most common attribute value, while for numerical one, the MV is replaced by the average of all nonmissing values of the corresponding attribute.K-nearest neighbours’ imputation [27] uses an instance based algorithm to impute the MVs. Every time it finds a MV in a current instance, it computes the K-nearest neighbours of the instance and imputes a value from them. For nominal value, the most common value among all neighbours is taken, and for numerical value we will use the average value.RI method [31] needs to select some independent attributes for predicting the MV first and then constructs the regression equation to estimate the MV, that is, replaces the MV with its conditional expectation. In detail, given a MV for an attributex, suppose that q attributes have been observed for that instance. The records where these q
+
1 attributes are available define a training set, and a regression model to predict x from the q predictors is fitted. Finally, the fitted model provides a prediction for the initial MV of x.EM imputation [23] finds the maximum likelihood estimates recursively according to the observed data and consists of two steps: expectation step (E-step) and maximization step (M-step). In E-step, it calculates the expectation of the complete data sufficient statistics given the observed data and current parameter estimates and updates the parameter estimates through the maximum likelihood approach based on the current values of the complete sufficient statistics in M-step. It repeats the two steps till the parameter estimation converges, and the expectation of each MV in the final E-step is regarded as the imputation value.In fact, all the above imputation methods belong to single imputation. Single imputation replaces each MV with one value, which cannot reflect the uncertainty of MVs well. Thus, Rubin [32] has proposed multiple imputation (MI) method. In this method, each MV is imputed m times by the same imputation algorithm, which uses a model that incorporates some randomness. As a result, m “complete” datasets are generated, and usually the average of the estimates across the samples is used to generate the final imputation value. The main disadvantage of MI imputation is the large calculating cost.


### 2.3. Ensemble Based Methods

Recently, some scholars have tried to utilize multiple classifiers ensemble technology to construct the classification model for MVs. For example, Krause and Polikar [33] and Mohammed et al. [34] have proposed Learn
+
+ method for missing features (abbreviated as LMF) which classifies the data with MVs directly. It selects some attribute subsets in the whole attribute space, obtains a number of training subsets by mapping, and then trains a base classifier in each training subset. For each test instance x
* (may contain MVs), LMF finds the base classifiers which can classify it and combines the classification results of the selected classifiers by voting to get its final classification result. The empirical results show that LMF method can achieve better classification performance. For more detailed process of Learn
+
+, please refer to [34].In theory, LMF also belongs to one-step ensemble strategy. However, Mohammed et al. have also pointed out that LMF cannot classify the test instance with many MVs because we cannot find any available base classifier for it [34]. At last, for each test instance x
*, LMF method gets the final classification results through combining the results of all available base classifiers. However, redundancy may exist among the base classifiers. Therefore, it is expected to improve the classification performance if an appropriate classifier subset can be selected to ensemble.


## 2.1. Listwise Deletion

Listwise deletion (LD) [14] is the simplest method of handling MVs. For any instance with MVs in model training set, LD will delete it from the dataset directly. If the missing rate of the model training set (the ratio between the number of instances with MVs and the size of the dataset) is very small, LD will be effective, while, if the missing rate is large and the MVs are not distributed randomly, it may result in data deviation and gaining wrong conclusions [14]. At last, it cannot be used when each instance in model training set contains some MVs or the instances in test set also contain some MVs.


## 2.2. Imputation Methods

At present, the imputation methods are the most commonly used ones for dealing with MVs, in which each MV is replaced by a value generated by some mechanism according to the nonmissing values in the model training set. Many scholars have proposed a variety of MV imputation methods, among which some methods are very simple and applicable, such as mean substitution (MS) [30], K-nearest neighbours imputation (KI) [27], regression imputation (RI) [31], and EM imputation (EM) [23].Mean substitution (MS) [30] usually divides the attributes into nominal and numeric while dealing with MVs. For nominal attribute, the MV is replaced by the most common attribute value, while for numerical one, the MV is replaced by the average of all nonmissing values of the corresponding attribute.K-nearest neighbours’ imputation [27] uses an instance based algorithm to impute the MVs. Every time it finds a MV in a current instance, it computes the K-nearest neighbours of the instance and imputes a value from them. For nominal value, the most common value among all neighbours is taken, and for numerical value we will use the average value.RI method [31] needs to select some independent attributes for predicting the MV first and then constructs the regression equation to estimate the MV, that is, replaces the MV with its conditional expectation. In detail, given a MV for an attributex, suppose that q attributes have been observed for that instance. The records where these q
+
1 attributes are available define a training set, and a regression model to predict x from the q predictors is fitted. Finally, the fitted model provides a prediction for the initial MV of x.EM imputation [23] finds the maximum likelihood estimates recursively according to the observed data and consists of two steps: expectation step (E-step) and maximization step (M-step). In E-step, it calculates the expectation of the complete data sufficient statistics given the observed data and current parameter estimates and updates the parameter estimates through the maximum likelihood approach based on the current values of the complete sufficient statistics in M-step. It repeats the two steps till the parameter estimation converges, and the expectation of each MV in the final E-step is regarded as the imputation value.In fact, all the above imputation methods belong to single imputation. Single imputation replaces each MV with one value, which cannot reflect the uncertainty of MVs well. Thus, Rubin [32] has proposed multiple imputation (MI) method. In this method, each MV is imputed m times by the same imputation algorithm, which uses a model that incorporates some randomness. As a result, m “complete” datasets are generated, and usually the average of the estimates across the samples is used to generate the final imputation value. The main disadvantage of MI imputation is the large calculating cost.


## 2.3. Ensemble Based Methods

Recently, some scholars have tried to utilize multiple classifiers ensemble technology to construct the classification model for MVs. For example, Krause and Polikar [33] and Mohammed et al. [34] have proposed Learn
+
+ method for missing features (abbreviated as LMF) which classifies the data with MVs directly. It selects some attribute subsets in the whole attribute space, obtains a number of training subsets by mapping, and then trains a base classifier in each training subset. For each test instance x
* (may contain MVs), LMF finds the base classifiers which can classify it and combines the classification results of the selected classifiers by voting to get its final classification result. The empirical results show that LMF method can achieve better classification performance. For more detailed process of Learn
+
+, please refer to [34].In theory, LMF also belongs to one-step ensemble strategy. However, Mohammed et al. have also pointed out that LMF cannot classify the test instance with many MVs because we cannot find any available base classifier for it [34]. At last, for each test instance x
*, LMF method gets the final classification results through combining the results of all available base classifiers. However, redundancy may exist among the base classifiers. Therefore, it is expected to improve the classification performance if an appropriate classifier subset can be selected to ensemble.


## 3. One-Step Dynamic Ensemble Model for Missing Values

### 3.1. Basic Idea

In fact, there are many data issues such as noise and imbalanced class distribution except missing values in customer value segmentation (CVS). In this study, we mainly focus on the issue of CVS with missing values and propose one-step dynamic classifier ensemble model (ODCEM) for missing values, while for the other issues such as imbalanced class distribution that may exist in the CVS dataset, we need to preprocess them first and then construct ODCEM model.The terms of one-step ensemble in ODCEM model contain two meanings: first, it integrates the preprocess of missing values in Phase 1 with the customer classification modeling in Phase 2 from the “three-phase” CVS framework proposed by Kim et al. [17] and reduces the dependence of assumption about missing mechanism and data distribution model; second, it introduces multiple classifiers ensemble technique to customer value classification modeling.Suppose a CVS issue containsn attributes; its training set D
train and test set D
test contain m
1 and m
2 customer instances, respectively. In addition, all the instances can be divided into L classes according to their values for the enterprise, and both D
train and D
test contain some MVs.ODCEM model mainly includes two phases: training base classifiers and classifying test instances. In training phase, it first dividesD
train into three subsets according to the missing rate of instances: D
1, D
2, and D
3 (the reason of the number of subsets being three is that the three subsets correspond to low missing level set, middle missing level set, and high missing level set, resp.), and then in each subset it assigns different sampled weights to the attributes according to different numbers of MVs in each attribute, selects T attribute subsets randomly, obtains a series of training subsets by mapping like the random subspace method [35], deletes the instances with MVs in each training subset, and then trains the classification model to compose the base classifier pool (BCP). In classifying test instances phase, for each test instance x
j
*
∈
D
test (j
=
1,2
,
…
,
m
2), it finds K-nearest neighbours of x
j
* from D
train to compose the local area L
a of x
j
*, selects some classifiers with best classification performance in L
a from BCP to classify x
j
*, and finally obtains the final classification result of x
j
* by weighted voting. The process of ODCEM model is described in Figure 1.Figure 1
Flow chart of ODCEM algorithm.It is notable that, in ODCEM model, if there are only a few MVs inD
train, most of the training instances will be assigned to the low missing level subset D
1, and we can get the base classifiers with good enough classification performance by sufficient training instances, which can ensure satisfactory CVS effect of ODCEM, while if there are lots of MVs in D
train and the subsets D
1, D
2, and D
3 may all contain a certain number of instances, it can also find the base classifiers in subset D
1 or D
2 containing fewer MVs to classify the test instance x
j
*. In short, it can always find some base classifiers for a given test instance. Thus, ODCEM method can make up for the disadvantage of LMF method proposed by Mohammed et al. [34] to a large extent.In the following content, we will describe the process of ODCEM model in detail.


### 3.2. Train Base Classifiers

To train the base classifiers, ODCEM first dividesD
train into 3 subsets according to the missing rate of the instances. For each instance x
i
∈
D
train, its missing rate α
i is defined as follows:
(1)
α
i
=
n
miss
n
,
i
=
1,2
,
.
.
.
,
m
1
,
where n
miss is the number of missing values in instance x
i and n is the total number of attributes. It is easy to know that 0
≤
α
i
≤
1.After getting the value ofα
i
(
i
=
1,2
,
.
.
.
,
m
1
), we rank all training instances according to the order of α
i from small to large. Thus, the more frontier the instance is, the fewer missing values the instance has; even there may be no MV. Further, we divide the range of α
i into 3 intervals: [
0,1
/
3
), [
1
/
3,2
/
3
), and [
2
/
3,1
] and divide the whole training set D
train into 3 subsets according to the intervals: D
1, D
2, and D
3. Therefore, D
1 contains the instances with the missing rate α
i
∈
[
0,1
/
3
), and similarly, D
3 contains the instances with the missing rate α
i
∈
[
2
/
3,1
].In order to train base classifiers in each subsetD
k
(
k
=
1,2
,
3
), we select a series of attribute subsets randomly according to the basic idea of random subspace (RSS) [35]. As the number of MVs in different attributes is often different, the less the number is, the more information the attribute contains and the larger the possibility to be selected is. As for subset D
k, if it is nonempty, then the sampled weight w
k
j of attribute f
j
(
j
=
1,2
,
…
,
n
) in D
k is calculated as follows:
(2)
w
k
j
=
|
D
k
|
p
k
j
,
j
=
1,2
,
…
,
n
;
k
=
1,2
,
3
,
where p
k
j is the number of MVs in the column of attribute f
j in subset D
k and |
D
k
| is the total number of instances in D
k. Especially, if p
k
j
=
0, that is, there is no MV in the column of attribute f
j, we let w
k
j
=
2 directly; namely, assign much larger sampled weight for the attribute f
j compared with the attribute with MVs. Finally, the weight vector w
k
=
(
w
k
1
,
w
k
2
,
…
,
w
k
n
) is normalized, and the final sampled weight of attribute f
j in D
k is obtained:
(3)
w
k
j
′
=
w
j
∑
w
k
j
,
j
=
1,2
,
…
,
n
.SelectT attribute subsets randomly according to the sampled weight vector w
k
′
=
(
w
k
1
′
,
w
k
2
′
,
…
,
w
k
n
′
); the number of attributes in each attribute subset is equal to half of the total attributes [35]; then obtain some training subsets by mapping. In fact, the training subsets obtained at this moment may contain MVs, while the commonly used classification models such as neural network, support vector machine, and logistic regression require that the training set cannot contain MVs. Thus, we delete the instance with MV from the training subset, and if the remaining training subset is nonempty, then train a base classifier by it. Finally, all the trained base classifiers consist of a base classifier pool (BCP). It is worth noting that the number of base classifiers in BCP varies in different datasets, which may be affected by missing rate of the dataset, the size of the dataset, and so forth.


### 3.3. Classify the Test Instances

In the above section, a series of base classifiers are trained in the training set. In this section, we will classify all the test instances in test set by the trained base classifiers. The ODCEM model proposed in this study belongs to dynamic classifier ensemble selection [36], in which a classifier subset is selected out from BCP for each test instance x
j
*
∈
D
test
(
j
=
1,2
,
…
,
m
2
).To achieve this process, it needs to selectK-nearest neighbours from the total training set D
train to compose the local area (called L
a) of x
j
*. In this study, we choose Euclidean distance measure to calculate the distance between x
j
* and all instances in D
train. However, it cannot be calculated sometimes because there is MV in x
j
* or in the training instance. For test instance x
j
*
=
(
x
j
,
1
*
,
x
j
,
2
*
,
…
,
x
j
,
n
*
) and any instance x
i
=
(
x
i
,
1
,
x
i
,
2
,
…
,
x
i
,
n
) in D
train, we define two MV indication vectors: u
j
=
(
u
j
,
1
,
u
j
,
2
,
…
,
u
j
,
n
) and v
i
=
(
v
i
,
1
,
v
i
,
2
,
…
,
v
i
,
n
) as follows:
(4)
u
j
k
=
{
0
if
the
value
of
x
j
,
k
*
is
missing
1
else
,
v
i
p
=
{
0
if
the
value
of
x
i
,
p
is
missing
1
else
,
where k
,
p
=
1
,
2
,
…
,
n. Further, we suppose only s
(
s
≤
n
) attribute values are not missing in test instance x
j
*; that is, u
j
e
1
=
u
j
e
2
=
⋯
=
u
j
e
s
=
1; here, 1
≤
e
t
≤
n, t
=
1,2
,
…
,
s. Thus, the distance between the test sample x
j
* and the instance x
i in D
train can be calculated as follows:
(5)
d
j
,
i
=
{
∑
t
=
1
s
(
x
j
,
e
t
*
-
x
i
,
e
t
)
2
,
if
v
i
,
e
1
=
v
i
,
e
2
=
⋯
=
v
i
,
e
s
=
1
∞
,
else
.
In (5), when the distance between two instances cannot be calculated, we take it as ∞.After finding the local areaL
a of x
j
* through (5), we select some suitable classifiers to classify K instances in L
a (a classifier is selected if there is no missing value in the corresponding columns in L
a with all attributes in the feature subset used for training this classifier), calculate the classification accuracy of each classifier in L
a, and select half number (denoted by N) of the selected base classifiers with higher classification accuracy, and their classification accuracy in L
a is ac
c
1
,
ac
c
2
,
…
,
ac
c
N, respectively. Classify the test instance x
j
* with N selected classifiers; for each base classifier C
r
(
r
=
1,2
,
…
,
N
), it will output a probability estimation P
(
f
(
x
j
*
)
=
c
∣
C
e
), which means the probability of x
j
* belongs to the category of c
(
c
=
1,2
,
…
,
L
). The final prediction result of test instance x
j
* is obtained through weighted voting:
(6)
ρ
=
arg
c
(
max
⁡
c
=
1,2
,
…
,
L
(
1
N
∑
r
=
1
N
z
r
P
(
f
(
x
j
*
)
=
c
∣
C
r
)
)
)
,
where z
r
=
acc
r
/
∑
acc
r, r
=
1
,
2
,
…
,
N.


### 3.4. Pseudocode of Model

The pseudocode of ODCEM model is as follows.Input. Training set D
train, test set D
train, number of nearest neighbours K, and the number of attribute subsets Tare selected in each subset D
k
(
k
=
1,2
,
3
).Output. The final classification result of each instance x
j
* in D
test is as follows.(1)
Calculate the missing rateα
i of each instance in D
train according to (1) and divide the entire training set into 3 subsets according to α
i: D
1, D
2, and D
3.
(2)
For each subsetD
k
(
k
=
1,2
,
3
), if D
k is nonempty, then
(2.1)
calculate the sampled weightsw
k
′
=
(
w
k
1
′
,
w
k
2
′
,
…
,
w
k
n
′
) of all attributes according to (3);
(2.2)
selectT attribute subsets randomly from attribute space according to w
k
′ and obtain T training subsets S
i
(
i
=
1,2
,
…
,
T
) by mapping;
(2.3)
delete the instance with MV inS
i, and if the remaining S
i is nonempty, then a base classifier is trained with S
i and added to BCP.
(3)
For each test instancex
j
*
∈
D
test,
(3.1)
findK-nearest neighbours of x
j
* from the entire training set D
train to compose its local area L
a according to (5);
(3.2)
classify the instances inL
a with all base classifiers and select half of the base classifiers in BCP with the highest classification accuracy in L
a;
(3.3)
classifyx
j
* with the selected base classifiers and obtain the final classification result of x
j
* according to (6).


## 3.1. Basic Idea

In fact, there are many data issues such as noise and imbalanced class distribution except missing values in customer value segmentation (CVS). In this study, we mainly focus on the issue of CVS with missing values and propose one-step dynamic classifier ensemble model (ODCEM) for missing values, while for the other issues such as imbalanced class distribution that may exist in the CVS dataset, we need to preprocess them first and then construct ODCEM model.The terms of one-step ensemble in ODCEM model contain two meanings: first, it integrates the preprocess of missing values in Phase 1 with the customer classification modeling in Phase 2 from the “three-phase” CVS framework proposed by Kim et al. [17] and reduces the dependence of assumption about missing mechanism and data distribution model; second, it introduces multiple classifiers ensemble technique to customer value classification modeling.Suppose a CVS issue containsn attributes; its training set D
train and test set D
test contain m
1 and m
2 customer instances, respectively. In addition, all the instances can be divided into L classes according to their values for the enterprise, and both D
train and D
test contain some MVs.ODCEM model mainly includes two phases: training base classifiers and classifying test instances. In training phase, it first dividesD
train into three subsets according to the missing rate of instances: D
1, D
2, and D
3 (the reason of the number of subsets being three is that the three subsets correspond to low missing level set, middle missing level set, and high missing level set, resp.), and then in each subset it assigns different sampled weights to the attributes according to different numbers of MVs in each attribute, selects T attribute subsets randomly, obtains a series of training subsets by mapping like the random subspace method [35], deletes the instances with MVs in each training subset, and then trains the classification model to compose the base classifier pool (BCP). In classifying test instances phase, for each test instance x
j
*
∈
D
test (j
=
1,2
,
…
,
m
2), it finds K-nearest neighbours of x
j
* from D
train to compose the local area L
a of x
j
*, selects some classifiers with best classification performance in L
a from BCP to classify x
j
*, and finally obtains the final classification result of x
j
* by weighted voting. The process of ODCEM model is described in Figure 1.Figure 1
Flow chart of ODCEM algorithm.It is notable that, in ODCEM model, if there are only a few MVs inD
train, most of the training instances will be assigned to the low missing level subset D
1, and we can get the base classifiers with good enough classification performance by sufficient training instances, which can ensure satisfactory CVS effect of ODCEM, while if there are lots of MVs in D
train and the subsets D
1, D
2, and D
3 may all contain a certain number of instances, it can also find the base classifiers in subset D
1 or D
2 containing fewer MVs to classify the test instance x
j
*. In short, it can always find some base classifiers for a given test instance. Thus, ODCEM method can make up for the disadvantage of LMF method proposed by Mohammed et al. [34] to a large extent.In the following content, we will describe the process of ODCEM model in detail.


## 3.2. Train Base Classifiers

To train the base classifiers, ODCEM first dividesD
train into 3 subsets according to the missing rate of the instances. For each instance x
i
∈
D
train, its missing rate α
i is defined as follows:
(1)
α
i
=
n
miss
n
,
i
=
1,2
,
.
.
.
,
m
1
,
where n
miss is the number of missing values in instance x
i and n is the total number of attributes. It is easy to know that 0
≤
α
i
≤
1.After getting the value ofα
i
(
i
=
1,2
,
.
.
.
,
m
1
), we rank all training instances according to the order of α
i from small to large. Thus, the more frontier the instance is, the fewer missing values the instance has; even there may be no MV. Further, we divide the range of α
i into 3 intervals: [
0,1
/
3
), [
1
/
3,2
/
3
), and [
2
/
3,1
] and divide the whole training set D
train into 3 subsets according to the intervals: D
1, D
2, and D
3. Therefore, D
1 contains the instances with the missing rate α
i
∈
[
0,1
/
3
), and similarly, D
3 contains the instances with the missing rate α
i
∈
[
2
/
3,1
].In order to train base classifiers in each subsetD
k
(
k
=
1,2
,
3
), we select a series of attribute subsets randomly according to the basic idea of random subspace (RSS) [35]. As the number of MVs in different attributes is often different, the less the number is, the more information the attribute contains and the larger the possibility to be selected is. As for subset D
k, if it is nonempty, then the sampled weight w
k
j of attribute f
j
(
j
=
1,2
,
…
,
n
) in D
k is calculated as follows:
(2)
w
k
j
=
|
D
k
|
p
k
j
,
j
=
1,2
,
…
,
n
;
k
=
1,2
,
3
,
where p
k
j is the number of MVs in the column of attribute f
j in subset D
k and |
D
k
| is the total number of instances in D
k. Especially, if p
k
j
=
0, that is, there is no MV in the column of attribute f
j, we let w
k
j
=
2 directly; namely, assign much larger sampled weight for the attribute f
j compared with the attribute with MVs. Finally, the weight vector w
k
=
(
w
k
1
,
w
k
2
,
…
,
w
k
n
) is normalized, and the final sampled weight of attribute f
j in D
k is obtained:
(3)
w
k
j
′
=
w
j
∑
w
k
j
,
j
=
1,2
,
…
,
n
.SelectT attribute subsets randomly according to the sampled weight vector w
k
′
=
(
w
k
1
′
,
w
k
2
′
,
…
,
w
k
n
′
); the number of attributes in each attribute subset is equal to half of the total attributes [35]; then obtain some training subsets by mapping. In fact, the training subsets obtained at this moment may contain MVs, while the commonly used classification models such as neural network, support vector machine, and logistic regression require that the training set cannot contain MVs. Thus, we delete the instance with MV from the training subset, and if the remaining training subset is nonempty, then train a base classifier by it. Finally, all the trained base classifiers consist of a base classifier pool (BCP). It is worth noting that the number of base classifiers in BCP varies in different datasets, which may be affected by missing rate of the dataset, the size of the dataset, and so forth.


## 3.3. Classify the Test Instances

In the above section, a series of base classifiers are trained in the training set. In this section, we will classify all the test instances in test set by the trained base classifiers. The ODCEM model proposed in this study belongs to dynamic classifier ensemble selection [36], in which a classifier subset is selected out from BCP for each test instance x
j
*
∈
D
test
(
j
=
1,2
,
…
,
m
2
).To achieve this process, it needs to selectK-nearest neighbours from the total training set D
train to compose the local area (called L
a) of x
j
*. In this study, we choose Euclidean distance measure to calculate the distance between x
j
* and all instances in D
train. However, it cannot be calculated sometimes because there is MV in x
j
* or in the training instance. For test instance x
j
*
=
(
x
j
,
1
*
,
x
j
,
2
*
,
…
,
x
j
,
n
*
) and any instance x
i
=
(
x
i
,
1
,
x
i
,
2
,
…
,
x
i
,
n
) in D
train, we define two MV indication vectors: u
j
=
(
u
j
,
1
,
u
j
,
2
,
…
,
u
j
,
n
) and v
i
=
(
v
i
,
1
,
v
i
,
2
,
…
,
v
i
,
n
) as follows:
(4)
u
j
k
=
{
0
if
the
value
of
x
j
,
k
*
is
missing
1
else
,
v
i
p
=
{
0
if
the
value
of
x
i
,
p
is
missing
1
else
,
where k
,
p
=
1
,
2
,
…
,
n. Further, we suppose only s
(
s
≤
n
) attribute values are not missing in test instance x
j
*; that is, u
j
e
1
=
u
j
e
2
=
⋯
=
u
j
e
s
=
1; here, 1
≤
e
t
≤
n, t
=
1,2
,
…
,
s. Thus, the distance between the test sample x
j
* and the instance x
i in D
train can be calculated as follows:
(5)
d
j
,
i
=
{
∑
t
=
1
s
(
x
j
,
e
t
*
-
x
i
,
e
t
)
2
,
if
v
i
,
e
1
=
v
i
,
e
2
=
⋯
=
v
i
,
e
s
=
1
∞
,
else
.
In (5), when the distance between two instances cannot be calculated, we take it as ∞.After finding the local areaL
a of x
j
* through (5), we select some suitable classifiers to classify K instances in L
a (a classifier is selected if there is no missing value in the corresponding columns in L
a with all attributes in the feature subset used for training this classifier), calculate the classification accuracy of each classifier in L
a, and select half number (denoted by N) of the selected base classifiers with higher classification accuracy, and their classification accuracy in L
a is ac
c
1
,
ac
c
2
,
…
,
ac
c
N, respectively. Classify the test instance x
j
* with N selected classifiers; for each base classifier C
r
(
r
=
1,2
,
…
,
N
), it will output a probability estimation P
(
f
(
x
j
*
)
=
c
∣
C
e
), which means the probability of x
j
* belongs to the category of c
(
c
=
1,2
,
…
,
L
). The final prediction result of test instance x
j
* is obtained through weighted voting:
(6)
ρ
=
arg
c
(
max
⁡
c
=
1,2
,
…
,
L
(
1
N
∑
r
=
1
N
z
r
P
(
f
(
x
j
*
)
=
c
∣
C
r
)
)
)
,
where z
r
=
acc
r
/
∑
acc
r, r
=
1
,
2
,
…
,
N.


## 3.4. Pseudocode of Model

The pseudocode of ODCEM model is as follows.Input. Training set D
train, test set D
train, number of nearest neighbours K, and the number of attribute subsets Tare selected in each subset D
k
(
k
=
1,2
,
3
).Output. The final classification result of each instance x
j
* in D
test is as follows.(1)
Calculate the missing rateα
i of each instance in D
train according to (1) and divide the entire training set into 3 subsets according to α
i: D
1, D
2, and D
3.
(2)
For each subsetD
k
(
k
=
1,2
,
3
), if D
k is nonempty, then
(2.1)
calculate the sampled weightsw
k
′
=
(
w
k
1
′
,
w
k
2
′
,
…
,
w
k
n
′
) of all attributes according to (3);
(2.2)
selectT attribute subsets randomly from attribute space according to w
k
′ and obtain T training subsets S
i
(
i
=
1,2
,
…
,
T
) by mapping;
(2.3)
delete the instance with MV inS
i, and if the remaining S
i is nonempty, then a base classifier is trained with S
i and added to BCP.
(3)
For each test instancex
j
*
∈
D
test,
(3.1)
findK-nearest neighbours of x
j
* from the entire training set D
train to compose its local area L
a according to (5);
(3.2)
classify the instances inL
a with all base classifiers and select half of the base classifiers in BCP with the highest classification accuracy in L
a;
(3.3)
classifyx
j
* with the selected base classifiers and obtain the final classification result of x
j
* according to (6).


## 4. The Empirical Study

In order to analyze the CVS performance of ODCEM proposed in this study, we conducted experiments in the credit scoring dataset “German” from UCI [37] and credit card customer churn prediction dataset “China churn” of one commercial bank in Sichuan province China. At the same time, we compared the CVS performance of ODCEM with that of four commonly used “two-step” models for MVs, which impute MVs by K-nearest neighbours imputation (KI), mean substitution (MS), EM imputation (EM), and regression imputation (RI), respectively, and then constructed multiple classifier systems with subagging method [21]. It is worth noting that listwise deletion (LD) imputation was not referred to in our experiments because of its obvious disadvantage, and multiple imputation (MI) method was not selected as the benchmark for its high computation cost. Finally, we also compared one-step ensemble selection strategy ODCEM with the ensemble based method LMF proposed by Mohammed et al. [34].


### 4.1. Description of the Datasets

The first dataset used in the study is “German,” a credit card customer credit scoring dataset from German [37]. There are 20 attributes and 1 class label C in the dataset, in which 7 attributes are numeric and 13 attributes are qualitative. The class label includes two different states {
g
o
o
d
,
b
a
d
} which divide the customers into two classes: good credit and bad credit. There are 1000 customer instances in the dataset: 700 customers with good credit and 300 customers with bad credit. In addition, there is no MV in it.The second dataset is about churn prediction of credit card customer from one commercial bank in Sichuan province, China (“China churn”). The data interval is 2010.5–2010.12. According to the basic principle of churn prediction attribute selection and considering the availability of data, we selected 25 prediction attributes (see Table1). For the customer class label, we defined the churn customer as someone who canceled card from May 2010 to October 2010 or did not consume for 3 months. After simple data cleaning, we obtained 3255 customer instances from the database finally, in which there are 302 churn customers and 2953 nonchurn customers. The churn rate is 9.28% and it belongs to class imbalanced dataset. Meanwhile, it includes a lot of MVs, and the missing rate of each attribute is in Table 1.Table 1
Attribute description of “China churn” dataset.
Attribute
Name
Missingrate (%)
x
1
Total consumption times
7.37
x
2
Total consumption amount
6.76
x
3
Total cash times
4.95
x
4
Customer survival time
8.63
x
5
Total contributions
11.12
x
6
Valid survival time
8.05
x
7
Average amount ratio
10.75
x
8
Whether associated charge
12.18
x
9
Consumption times in the last 1 month
2.09
x
10
Consumption times in the last 2 months
3.13
x
11
Consumption times in the last 3 months
8.08
x
12
Consumption times in the last 4 months
9.31
x
13
Consumption times in the last 5 months
3.87
x
14
Cash times in the last 1 month
5.07
x
15
Cash times in the last 2 months
7.04
x
16
Cash times in the last 3 months
8.97
x
17
Cash times in the last 6 months
10.60
x
18
Months of transaction times reducing continuously
8.48
x
19
If overdue in the last 1 month
7.80
x
20
If overdue in the last 2 months
13.76
x
21
Amount usage ratio in the last 1 month/historical average usage ratio
6.11
x
22
Sex
2.70
x
23
Annual income
14.84
x
24
Nature of work industry
11.18
x
25
Education
8.63


### 4.2. Experimental Design

As there is no MV in “German” dataset, we generated the MVs artificially and analyzed the CVS performance of various models under different missing condition. Depending on the reason why MVs have been produced, the missing mechanism can be classified into three types [19]: MCAR (missing completely at random), MAR (missing at random), and MNAR (missing not at random). Suppose that a dataset D contains two parts: D
obs and D
mis, where D
obs stands for all observed data and D
mis stands for all MVs. If P
(
R
∣
D
obs
,
D
mis
)
=
P
(
R
∣
D
obs
), where R is the event we concerned, then we call it MAR, and if P
(
R
∣
D
obs
,
D
mis
)
=
P
(
R
), then we call it MCAR, while if it does not meet the above two missing mechanisms, we call it MNAR. In this study, we considered the above three mechanisms in “German” dataset, and let the missing level θ
=
5%, 10%, 20%, 30%, and 40%, respectively. In order to facilitate this process, we adopted the method proposed by Fayyad and Irani [38] to prediscretize the continuous attributes, and then three kinds of MVs were produced as follows.(1)
MCAR. For each instance, a random number  r
∈
(
0,1
) was generated. If r
<
θ, then ceil (
20
*
r
) attributes were selected randomly (here ceil() is an up-rounding function in Matlab and 20 is the number of attributes in “German” dataset), and let the values of these attributes be missing. Since the MVs of each instance are random, it should belong to missing completely at random.
(2)
MAR. For each instance, a random number  r
∈
(
0,1
) was generated, and if r
<
θ, then two attributes x
i, x
j, (
i
<
j
) were selected randomly. If x
i
=
1 (after prediscretization in “German” dataset, the smallest value of each attribute is just 1, and thus it can make this condition be suitable for any attribute), let the value of x
j be missing. The MVs of x
j are only related to the value of attribute x
i and have nothing to do with its own values. Therefore, it should belong to missing at random.
(3)
MNAR. For each instance, a random number  r
∈
(
0,1
) was generated, and if r
<
θ, then an attribute x
i was selected randomly. If x
i
=
1, let the value of x
i be missing. The MVs of x
i are related to its own values, which should belong to missing not at random.In this study we chose support vector machine (SVM) to generate the base classifier for its popularity and immense success in various CVS tasks [18]. Thus, the four “two-step” CVS models are abbreviated as KI-SVM, MS-SVM, EM-SVM, and RI-SVM. When training SVM, the choice of kernel function is very important. We found that radial basis kernel (RBK) based classifier could obtain the best performance through experimental comparison, so we chose it as the kernel function of SVM. Meanwhile, there are two important parameters in ODCEM model: the number of nearest neighbours K in the local area and the number of attribute subset T selected in each subset D
k
(
k
=
1,2
,
3
). We conducted the sensitivity analysis of the two parameters and experimented in two datasets with seven different values of   K: 3, 5, 7, 9, 11, 13, and 15 and seven different values of T: 10, 15, 20, 25, 30, 35, and 40, respectively. We found that the performance of ODCEM with different values of K showed some fluctuations, and it performed best when K
=
5. As for the parameter T, it is found that the performance of ODCEM rose first with the increase of T and achieved the best when T equaled about 30 and then showed a little fluctuation when T
>
30. The detailed analysis is omitted because of the space consideration, and we made K
=
5, T
=
30. Further, as for the subagging ensemble strategy used in four “two-step” models, Paleologo et al. [21] have found that the number of base classifiers in between 20 and 50 is reasonable, and thus we let it be the maximum 50 in four “two-step” models as well as the LMF model.Further, the class distribution of both datasets is imbalanced. If we train CVS model with such data directly, then it tends to classify all customers as the majority class. There are many techniques to deal with class imbalance data, including oversampling and downsampling. In this study, what we concern most is not the optimal match between the six models referred and the methods handling class imbalance data, but the CVS performance of six models in the condition of MVs. Therefore, without loss of generality, we adopted oversampling method to balance the class distribution of training set and then conducted the experiments by the six models. In addition, to compare the performance of ODCEM proposed in this study with the other five models, we adopted 10-fold cross-validation (CV10) which divides the entire dataset into 10 equal parts randomly and takes one part as test set and the other nine parts as training set every time; the rotation of 10 times is called CV10.As for the four “two-step” models, we imputed the MVs with SPSS 17.0 for EM-SVM and RI-SVM first and then conducted model training and classification on the platform of Matlab 2008b, while the other two simpler “two-step” models KI-SVM and MS-SVM, as well as ODCEM and ensemble based LMF, were implemented on the platform of Matlab 2008b directly. Finally, all experiments were performed on a dual-processor 3.0 GHz Pentium 4 Windows computer with 2 GB RAM, and the final classification result was the average of 10 times CV10 in each case.


### 4.3. Evaluation Criteria

To evaluate the performance of the models referred to in this study, we introduced the confusion matrix in Table2. On this basis, four commonly used evaluation criteria were adopted [39]:(1)
totalaccuracy
=
(
(
TP
+
TN
)
/
(
TP
+
FN
+
FP
+
TN
)
)
×
100
%;
(2)
the area under the receiver operating characteristic curve (AUC). The receiver operating characteristic (ROC) curve is an important evaluation criterion of classification model in the data with imbalanced class distribution [40]. For an issue of two classes, the ROC graph is a true positive rate-false positive rate graph, where y-axis is true positive rate (
TP
/
(
TP
+
FN
)
×
100
%
) and the x-axis is false positive rate (
FP
/
(
FP
+
TN
)
×
100
%
). However, sometimes it is difficult to compare ROC curves of different models directly, so AUC is more convenient and popular;
(3)
type Iaccuracy
=
(
TP
/
(
TP
+
FN
)
)
×
100
%;
(4)
type IIaccuracy
=
(
TN
/
(
FP
+
TN
)
)
×
100
%.Table 2
Confusion matrix.
Predicted positive
Predicted negative
Actual positive (minority class)
TP (the number of true positives)
FN (the number of false negatives)
Actual negative (majority class)
FP (the number of false positives)
TN (the number of true negatives)


### 4.4. Experimental Results Analysis in “German” Dataset

Table3 shows the credit scoring performance of six models in “German” dataset with MCAR type MVs. The results show that, (
1
) for the total accuracy, AUC, and type I accuracy, ODCEM outperforms the other five models under each missing level; (
2
) for the type II accuracy, ODCEM outperforms the other five models when θ
=
10
% and 30%, and it performs more poorly than KI-SVM when θ
=
5
%, 20%, and 40%. Compared with the type II accuracy, we are usually concerned more about the AUC and type I accuracy of a model in class imbalanced CVS issue. Thus, we can conclude that the overall credit scoring performance of ODCEM is better than that of the other models referred to in this study in “German” dataset with MCAR type MVs.Table 3
Comparison of performance in “German” dataset with MCAR type MVs.
Missing level
Evaluation criteria
LMF
ODCEM
KI-SVM
MS-SVM
EM-SVM
RI-SVM
θ
=
5%
Total accuracy
0.6767 (3)
0.6987 (1)
0.6700 (4)
0.6933 (2)
0.6600 (5)
0.6533 (6)
AUC
0.8402 (4)
0.8592 (1)
0.8274 (6)
0.8583 (2)
0.8456 (3)
0.8334 (5)
Type I accuracy
0.5513 (4)
0.6124 (1)
0.5239 (6)
0.6069 (2)
0.5529 (3)
0.5298 (5)
Type II accuracy
0.7304 (3.5)
0.7357 (2)
0.7412 (1)
0.7304 (3.5)
0.7059 (6)
0.7108 (5)
θ
=
10%
Total accuracy
0.7033 (3)
0.7333 (1)
0.6667 (6)
0.6767 (5)
0.7000 (4)
0.7067 (2)
AUC
0.8490 (6)
0.8865 (1)
0.8645 (3)
0.8628 (4)
0.8710 (2)
0.8589 (5)
Type I accuracy
0.6052 (6)
0.6979 (1)
0.6127 (5)
0.6529 (2)
0.6481 (3)
0.6272 (4)
Type II accuracy
0.7454 (2)
0.7485 (1)
0.6898 (6)
0.7130 (5)
0.7222 (4)
0.7407 (3)
θ = 20%
Total accuracy
0.7533 (3.5)
0.7867 (1)
0.7633 (2)
0.7533 (3.5)
0.7500 (5)
0.7433 (6)
AUC
0.8764 (2.5)
0.8902 (1)
0.8493 (6)
0.8764 (2.5)
0.8643 (5)
0.8692 (4)
Type I accuracy
0.7138 (2.5)
0.7598 (1)
0.6526 (5)
0.7138 (2.5)
0.6712 (4)
0.6384 (6)
Type II accuracy
0.7703 (5.5)
0.7982 (2)
0.8108 (1)
0.7703 (5.5)
0.7838 (4)
0.7883 (3)
θ
=
30%
Total accuracy
0.6867 (3.5)
0.7097 (1)
0.6867 (3.5)
0.6667 (6)
0.6700 (5)
0.6933 (2)
AUC
0.8472 (4)
0.8625 (1)
0.8286 (5)
0.8491 (3)
0.8180 (6)
0.8524 (2)
Type I accuracy
0.5946 (5)
0.6375 (1)
0.5941 (6)
0.6016 (3)
0.5956 (4)
0.6054 (2)
Type II accuracy
0.7396 (2.5)
0.7406 (1)
0.7349 (4)
0.7031 (6)
0.7188 (5)
0.7396 (2.5)
θ
=
40%
Total accuracy
0.6733 (3)
0.6867 (1)
0.6740 (2)
0.6533 (6)
0.6600 (5)
0.6633 (4)
AUC
0.8172 (3)
0.8596 (1)
0.8484 (2)
0.8083 (5)
0.7908 (6)
0.8125 (4)
Type I accuracy
0.5832 (3)
0.6101 (1)
0.5639 (5)
0.5997 (2)
0.5736 (4)
0.5498 (6)
Type II accuracy
0.7071 (3)
0.7240 (1.5)
0.7240 (1.5)
0.6719 (6)
0.6919 (5)
0.6971 (4)
Average rank
3.63
1.13
4.00
3.83
4.40
4.03
Note: the bold-face in Table3 shows the maximum of each row. The numbers in parentheses are the ranks of the six models with the corresponding evaluation criterion in each row.In addition, the performance rank of six models on each evaluation criterion in five missing levels, respectively, is also shown in Table3, and the last row is the average rank, which can be regarded as a criterion of the overall performance of the models. Therefore, we can rank the six models according to the overall performance for MCAR type MVs from high to low as follows: ODCEM, LMF, MS-SVM, KI-SVM, RI-SVM, and EM-SVM. It is notable that LMF outperforms the four “two-step” models, and EM-SVM performs the most poorly in this case.Figure2 shows the trend of credit scoring performance of six models in “German” dataset with MCAR type MVs. It can be seen from the figure that the performance of each model does not decline obviously with the increase of missing level but appears with great fluctuation, and the general trend is increasing first and then reducing. This may be related to the production means of MVs of MCAR in this study, or related to the inherent characteristics of “German” dataset.The trend of classification performance in “German” dataset with MCAR type MVs.
(a)
Missing level (%)
(b)
Missing level (%)
(c)
Missing level (%)
(d)
Missing level (%)Similarly, the performance rank of six models on each evaluation criterion in five missing levels is also shown in Table4. Thus, we can rank the six models according to the overall performance for MAR type MVs from high to low as follows: ODCEM, EM-SVM, RI-SVM, MS-SVM, KI-SVM, and LMF. It is notable that the performance of EM-SVM is only poorer than that of ODCEM, and the performance of LMF is the poorest.Table 4
Comparison of performance in “German” dataset with MAR type MVs.
Missing level
Evaluation criteria
LMF
ODCEM
KI-SVM
MS-SVM
EM-SVM
RI-SVM
θ
=
5%
Total accuracy
0.7200 (3)
0.7367 (1)
0.7033 (6)
0.7167 (4)
0.7220 (2)
0.7148 (5)
AUC
0.8724 (3)
0.8789 (1)
0.8447 (6)
0.8662 (4)
0.8732 (2)
0.8653 (5)
Type I accuracy
0.6167 (3)
0.6411 (1)
0.5979 (6)
0.6117 (4)
0.5980 (5)
0.6209 (2)
Type II accuracy
0.7643 (3)
0.7777 (1)
0.7485 (6)
0.7617 (4)
0.7752 (2)
0.7550 (5)
θ
=
10%
Total accuracy
0.6730 (6)
0.7205 (1)
0.6777 (5)
0.6990 (4)
0.7000 (3)
0.7107 (2)
AUC
0.8300 (5)
0.8661 (1)
0.8054 (6)
0.8318 (4)
0.8334 (3)
0.8592 (2)
Type I accuracy
0.5833 (4)
0.6012 (2)
0.5615 (6)
0.5938 (3)
0.5705 (5)
0.6310 (1)
Type II accuracy
0.7114 (6)
0.7606 (1)
0.7275 (5)
0.7441 (4)
0.7555 (2)
0.7448 (3)
θ
=
20%
Total accuracy
0.6580 (5)
0.7057 (1)
0.6583 (4)
0.6553 (6)
0.6750 (3)
0.6850 (2)
AUC
0.8215 (6)
0.8533 (1)
0.8230 (5)
0.8390 (3)
0.8484 (2)
0.8317 (4)
Type I accuracy
0.5380 (6)
0.6070 (1)
0.5446 (5)
0.5534 (3)
0.5459 (4)
0.5683 (2)
Type II accuracy
0.7094 (4)
0.7480 (1)
0.7071 (5)
0.6990 (6)
0.7303 (3)
0.7350 (2)
θ
=
30%
Total accuracy
0.6331 (6)
0.6759 (2)
0.6467 (5)
0.6531 (4)
0.6772 (1)
0.6600 (3)
AUC
0.7990 (6)
0.8350 (1)
0.8071 (5)
0.8159 (4)
0.8233 (2)
0.8213 (3)
Type I accuracy
0.5063 (6)
0.5826 (1)
0.5217 (5)
0.5467 (3)
0.5447 (4)
0.5542 (2)
Type II accuracy
0.6874 (6)
0.7159 (2)
0.7002 (4)
0.6987 (5)
0.7340 (1)
0.7053 (3)
θ
=
40%
Total accuracy
0.6050 (6)
0.6610 (1)
0.6290 (4)
0.6150 (5)
0.6550 (2)
0.6467 (3)
AUC
0.7818 (6)
0.8211 (1)
0.7910 (5)
0.7945 (4)
0.8109 (2)
0.8046 (3)
Type I accuracy
0.4627 (6)
0.5466 (1)
0.4934 (4)
0.4658 (5)
0.5187 (3)
0.5249 (2)
Type II accuracy
0.6660 (6)
0.7100 (2)
0.6871 (4)
0.6789 (5)
0.7134 (1)
0.6989 (3)
Average rank
5.10
1.20
5.05
4.20
2.60
2.85
Note: the bold-face in Table4 shows the maximum of each row. The numbers in parentheses are the ranks of the six models with the corresponding evaluation criterion in each row.The trend of customer credit scoring performance of six models in “German” dataset with MAR type MVs is shown in Figure3. It is shown that the performance of six models reduces quickly with the increase of missing level. In particular, when the missing level is low, such as θ
=
5
%, the ensemble based model LMF can achieve good classification performance, which is only poorer than that of ODCEM and EM-SVM, while with the increase of missing level, such as when θ
≥
20
%, the performance of LMF is poorer than that of the other five models. The results also demonstrate that ODCEM model proposed in this study can overcome the disadvantages of LMF model to a large extent and can achieve better performance in high missing level than LMF.The trend of classification performance in “German” dataset with MAR type MVs.
(a)
Missing level (%)
(b)
Missing level (%)
(c)
Missing level (%)
(d)
Missing level (%)The performance of six models in “German” dataset with MNAR type MVs is shown in Table5. Although ODCEM only achieves comparable performance with MS-SVM and EM-SVM when θ
=
5
%, the performance of ODCEM is better than that of the other models when θ
=
10
%, 20%, 30%, and 40%. Thus, we can conclude that the overall credit scoring performance of ODCEM is still better than that of the other five models with MNAR type MVs in “German” dataset. Further, according to the average performance rank in the last row of Table 5, the six models can be ranked as follows: ODCEM, KI-SVM, MS-SVM, EM-SVM, LMF, and RI-SVM.Table 5
Comparison of performance in “German” dataset with MNAR type MVs.
Missing level
Evaluation criteria
LMF
ODCEM
KI-SVM
MS-SVM
EM-SVM
RI-SVM
θ
=
5%
Total accuracy
0.7423 (3)
0.7467 (2)
0.7333 (5)
0.7533 (1)
0.7400 (4)
0.7200 (6)
AUC
0.8727 (4)
0.8740 (2)
0.8599 (6)
0.8731 (3)
0.8923 (1)
0.8712 (5)
Type I accuracy
0.7011 (2)
0.6821 (3)
0.6484 (6)
0.6564 (5)
0.7077 (1)
0.6769 (4)
Type II accuracy
0.7533 (5)
0.7744 (2)
0.7697 (3)
0.7949 (1)
0.7538 (4)
0.7385 (6)
θ
=
10%
Total accuracy
0.7300 (4)
0.7567 (1)
0.7467 (2)
0.7333 (3)
0.7268 (5)
0.7000 (6)
AUC
0.8314 (4)
0.8577 (1)
0.8481 (2)
0.8434 (3)
0.8267 (5)
0.8200 (6)
Type I accuracy
0.6411 (3)
0.7011 (1)
0.6800 (2)
0.6333 (4)
0.5633 (6)
0.6000 (5)
Type II accuracy
0.7510 (4)
0.7805 (1)
0.7752 (3)
0.7762 (2)
0.7429 (5.5)
0.7429 (5.5)
θ
=
20%
Total accuracy
0.7186 (3)
0.7490 (1)
0.7069 (5)
0.7133 (4)
0.7269 (2)
0.7067 (6)
AUC
0.8208 (3)
0.8588 (1)
0.8175 (4)
0.8007 (6)
0.8393 (2)
0.8092 (5)
Type I accuracy
0.6176 (3)
0.6524 (2)
0.5803 (5)
0.5837 (4)
0.6574 (1)
0.5511 (6)
Type II accuracy
0.7589 (5)
0.7904 (1)
0.7611 (4)
0.7689 (3)
0.7567 (6)
0.7733 (2)
θ
=
30%
Total accuracy
0.7433 (3)
0.7600 (1)
0.7567 (2)
0.7367 (4)
0.7300 (5)
0.7200 (6)
AUC
0.8498 (4)
0.8763 (1)
0.8526 (3)
0.8490 (5)
0.8533 (2)
0.8244 (6)
Type I accuracy
0.6222 (4)
0.6945 (1)
0.6778 (2)
0.6289 (3)
0.5667 (5)
0.5556 (6)
Type II accuracy
0.7952 (2)
0.7881 (5)
0.7905 (3.5)
0.7829 (6)
0.8000 (1)
0.7905 (3.5)
θ
=
40%
Total accuracy
0.7033 (5)
0.7567 (1)
0.7367 (2)
0.7300 (3)
0.7167 (4)
0.7000 (6)
AUC
0.8406 (4)
0.8744 (1)
0.8486 (2)
0.8453 (3)
0.8382 (5)
0.8098 (6)
Type I accuracy
0.6314 (4)
0.6859 (1)
0.6585 (3)
0.6612 (2)
0.6266 (5)
0.6203 (6)
Type II accuracy
0.7342 (5.5)
0.7870 (1)
0.7702 (2)
0.7595 (3)
0.7553 (4)
0.7342 (5.5)
Average rank
3.73
1.50
3.33
3.40
3.68
5.38
Note: the bold-face in Table5 shows the maximum of each row. The numbers in parentheses are the ranks of the six models with the corresponding evaluation criterion in each row.The trend of credit scoring performance of six models in “German” dataset with MNAR type MVs is shown in Figure4. It can be seen that the performance of six models still does not decline obviously with the increase of missing level, but different degrees of fluctuation appear, which is similar to that in MAR mechanism. At the same time, Figure 4 also shows that the performance fluctuation of ODCEM is minimal, which demonstrates that the ODCEM model proposed in this study has the best robustness for the MNAR type MVs in “German” dataset.The trend of classification performance in “German” dataset with MNAR type MVs.
(a)
Missing level (%)
(b)
Missing level (%)
(c)
Missing level (%)
(d)
Missing level (%)After analyzing the credit scoring performance of six models in “German” dataset with three missing mechanisms comprehensively, the following conclusions can be obtained:(1)
the overall performance of ODCEM model is always the best under three missing mechanisms;
(2)
the MVs of different missing mechanisms can bring various degree effects on the performance of six models, and it is the greatest under MAR missing mechanism. This may be related to the production ways of MVs under three missing mechanisms.


### 4.5. Experimental Results Analysis in “China Churn” Dataset

Table6 shows the customer churn prediction performance of six models in “China churn” dataset. It can be seen from the table that the total accuracy, AUC, type I accuracy, and type II accuracy of ODCEM are the best, which shows that ODCEM model can also achieve satisfactory performance in the real CVS dataset. It is notable that the performance of LMF is only comparable with that of RI-SVM, and their performance is the poorest in six models. “China churn” dataset contains a large number of MVs, and its average missing rate of instance α
- is 8.06%. Combining with the analysis in Section 4.4, we can roughly conclude that the performance of ODCEM model proposed in this study is better than that of LMF model proposed by Mohammed et al. [34] when there are many MVs in the dataset.Table 6
Comparison of churn prediction performance in “China churn” dataset.
Model
Total accuracy
AUC
Type I accuracy
Type II accuracy
LMF
0.8124
0.8480
0.7364
0.8201
ODCEM
0.9313
0.9057
0.8539
0.9391
KI-SVM
0.8538
0.8747
0.8229
0.8570
MS-SVM
0.8638
0.8793
0.8022
0.8701
EM-SVM
0.8954
0.8820
0.7899
0.9061
RI-SVM
0.8280
0.8224
0.7088
0.8401
Note: the bold-face in Table6 shows the maximum of each column.Further, the performance of six models in “China churn” dataset is shown in Figure5. It can be seen that the performance of six models rises gradually when the ratio of instance for training model in the entire training set (abbreviated as ratio of instance) increases. Especially, the curve of ODCEM is always at the top even when the ratio is very small, such as 10%. It demonstrates that compared with the other five models, the churn prediction performance of ODCEM is the best when the models are trained by 10 training subsets with different sample size.Customer churn prediction performance of six models in “China churn” dataset. Note:x-axis shows the ratio of the instance for training model in the entire training set.
(a)
Ratio of instance
(b)
Ratio of instance
(c)
Ratio of instance
(d)
Ratio of instance


### 4.6. Further Discussions

In Sections4.4 and 4.5, the experiments in “German” dataset and “China churn” dataset verify the effectiveness of the proposed method. Through accuracy and AUC, we can find which model is the best and which one is the poorest. However, the differences between the good models and bad ones are unclear [41]. Therefore, we conducted McNemar’s test [42] to examine whether the proposed ODCEM model significantly outperforms the other five models referred to in this study. Taking the real customer churn prediction dataset “China churn” as an example, the results of McNemar’s test are shown in Table 7. For space consideration, the results of McNemar’s test for the “German” dataset with three missing mechanisms and five missing levels are omitted here. Actually, some similar conclusions can be obtained from “German” dataset by McNemar’s test.Table 7
McNemar’s test for pairwise comparison of performance in “China churn” dataset.
Model
LMF
KI-SVM
MS-SVM
EM-SVM
RI-SVM
ODCEM
15.254 (0.0000)
13.136 (0.0003)
12.971 (0.0003)
11.529 (0.0007)
14.469 (0.0001)
LMF
3.0480 (0.0809)
4.0364 (0.0367)
11.256 (0.0008)
0.0280 (0.8676)
KI-SVM
0.1880 (0.6650)
4.6880 (0.0304)
3.1840 (0.0744)
MS-SVM
2.7130 (0.1102)
3.5000 (0.0614)
EM-SVM
11.726 (0.0006)
Note: the results listed in Table7 are the Chi squared values and P values are in brackets.As shown in Table7, it can be concluded as follows.(1)
The proposed one-step ensemble selection model ODCEM outperforms the “two-step” models, as well as the ensemble based model LMF at 1% statistical significance level.
(2)
For LMF model, its performance is significantly poorer than that of EM-SVM at 1% statistical significance level and significantly poorer than that of MS-SVM and KI-SVM at 5% statistical significance level, while McNemar’s test does not conclude that it performs poorer than the RI-SVM model.
(3)
For KI-SVM model, its performance is significantly better than that of RI-SVM at 10% statistical significance level and significantly poorer than that of EM-SVM at 5% statistical significance level. Finally, KI-SVM cannot outperform MS-SVM at 10% statistical significance level.
(4)
For MS-SVM model, it outperforms RI-SVM at 10% statistical significance level. However, there is no significant difference between the performances of MS-SVM and EM-SVM at 10% statistical significance level.Further, we also compare the computation complexity of six models and find that the complexity of MS-SVM is the lowest, followed by RI-SVM, KI-SVM, EM-SVM, LMF, and ODCEM. The time complexity of ODCEM and LMF is much the same, and it is slightly higher than that of EM-SVM.Finally, with the analysis of Sections4.4 and 4.5, we can draw the following conclusions.(1)
The CVS performance of ODCEM is the best in both UCI customer credit scoring dataset and real customer churn prediction dataset, which shows that ODCEM has good adaptability and can be used for a variety of CVS tasks.
(2)
For the four “two-step” models, their performance is much different in the same dataset with three missing mechanisms and in different datasets (“German” and “China churn”), and the results are unstable. It demonstrates that the customer value classification modeling is sensitive to the preprocess methods of MVs in “two-step” CVS strategies and the CVS performance depends on the missing mechanism, which is similar to the conclusion of Crone et al. [24].
(3)
For LMF model, when there are only a few MVs, such as in “German” dataset with the missing mechanism of MAR and MNAR, it achieves comparable performance with KI-SVM, MS-SVM, and EM-SVM, especially under the mechanism of MAR; its performance is only poorer than that of ODCEM. However, when there are many MVs, for example, in “German” dataset with the missing mechanism MCAR and “China churn,” its performance is poor. It shows that LMF model is not suitable for the CVS issues with lots of MVs, which is basically consistent with the experimental results of Mohammed et al. [34].


## 4.1. Description of the Datasets

The first dataset used in the study is “German,” a credit card customer credit scoring dataset from German [37]. There are 20 attributes and 1 class label C in the dataset, in which 7 attributes are numeric and 13 attributes are qualitative. The class label includes two different states {
g
o
o
d
,
b
a
d
} which divide the customers into two classes: good credit and bad credit. There are 1000 customer instances in the dataset: 700 customers with good credit and 300 customers with bad credit. In addition, there is no MV in it.The second dataset is about churn prediction of credit card customer from one commercial bank in Sichuan province, China (“China churn”). The data interval is 2010.5–2010.12. According to the basic principle of churn prediction attribute selection and considering the availability of data, we selected 25 prediction attributes (see Table1). For the customer class label, we defined the churn customer as someone who canceled card from May 2010 to October 2010 or did not consume for 3 months. After simple data cleaning, we obtained 3255 customer instances from the database finally, in which there are 302 churn customers and 2953 nonchurn customers. The churn rate is 9.28% and it belongs to class imbalanced dataset. Meanwhile, it includes a lot of MVs, and the missing rate of each attribute is in Table 1.Table 1
Attribute description of “China churn” dataset.
Attribute
Name
Missingrate (%)
x
1
Total consumption times
7.37
x
2
Total consumption amount
6.76
x
3
Total cash times
4.95
x
4
Customer survival time
8.63
x
5
Total contributions
11.12
x
6
Valid survival time
8.05
x
7
Average amount ratio
10.75
x
8
Whether associated charge
12.18
x
9
Consumption times in the last 1 month
2.09
x
10
Consumption times in the last 2 months
3.13
x
11
Consumption times in the last 3 months
8.08
x
12
Consumption times in the last 4 months
9.31
x
13
Consumption times in the last 5 months
3.87
x
14
Cash times in the last 1 month
5.07
x
15
Cash times in the last 2 months
7.04
x
16
Cash times in the last 3 months
8.97
x
17
Cash times in the last 6 months
10.60
x
18
Months of transaction times reducing continuously
8.48
x
19
If overdue in the last 1 month
7.80
x
20
If overdue in the last 2 months
13.76
x
21
Amount usage ratio in the last 1 month/historical average usage ratio
6.11
x
22
Sex
2.70
x
23
Annual income
14.84
x
24
Nature of work industry
11.18
x
25
Education
8.63


## 4.2. Experimental Design

As there is no MV in “German” dataset, we generated the MVs artificially and analyzed the CVS performance of various models under different missing condition. Depending on the reason why MVs have been produced, the missing mechanism can be classified into three types [19]: MCAR (missing completely at random), MAR (missing at random), and MNAR (missing not at random). Suppose that a dataset D contains two parts: D
obs and D
mis, where D
obs stands for all observed data and D
mis stands for all MVs. If P
(
R
∣
D
obs
,
D
mis
)
=
P
(
R
∣
D
obs
), where R is the event we concerned, then we call it MAR, and if P
(
R
∣
D
obs
,
D
mis
)
=
P
(
R
), then we call it MCAR, while if it does not meet the above two missing mechanisms, we call it MNAR. In this study, we considered the above three mechanisms in “German” dataset, and let the missing level θ
=
5%, 10%, 20%, 30%, and 40%, respectively. In order to facilitate this process, we adopted the method proposed by Fayyad and Irani [38] to prediscretize the continuous attributes, and then three kinds of MVs were produced as follows.(1)
MCAR. For each instance, a random number  r
∈
(
0,1
) was generated. If r
<
θ, then ceil (
20
*
r
) attributes were selected randomly (here ceil() is an up-rounding function in Matlab and 20 is the number of attributes in “German” dataset), and let the values of these attributes be missing. Since the MVs of each instance are random, it should belong to missing completely at random.
(2)
MAR. For each instance, a random number  r
∈
(
0,1
) was generated, and if r
<
θ, then two attributes x
i, x
j, (
i
<
j
) were selected randomly. If x
i
=
1 (after prediscretization in “German” dataset, the smallest value of each attribute is just 1, and thus it can make this condition be suitable for any attribute), let the value of x
j be missing. The MVs of x
j are only related to the value of attribute x
i and have nothing to do with its own values. Therefore, it should belong to missing at random.
(3)
MNAR. For each instance, a random number  r
∈
(
0,1
) was generated, and if r
<
θ, then an attribute x
i was selected randomly. If x
i
=
1, let the value of x
i be missing. The MVs of x
i are related to its own values, which should belong to missing not at random.In this study we chose support vector machine (SVM) to generate the base classifier for its popularity and immense success in various CVS tasks [18]. Thus, the four “two-step” CVS models are abbreviated as KI-SVM, MS-SVM, EM-SVM, and RI-SVM. When training SVM, the choice of kernel function is very important. We found that radial basis kernel (RBK) based classifier could obtain the best performance through experimental comparison, so we chose it as the kernel function of SVM. Meanwhile, there are two important parameters in ODCEM model: the number of nearest neighbours K in the local area and the number of attribute subset T selected in each subset D
k
(
k
=
1,2
,
3
). We conducted the sensitivity analysis of the two parameters and experimented in two datasets with seven different values of   K: 3, 5, 7, 9, 11, 13, and 15 and seven different values of T: 10, 15, 20, 25, 30, 35, and 40, respectively. We found that the performance of ODCEM with different values of K showed some fluctuations, and it performed best when K
=
5. As for the parameter T, it is found that the performance of ODCEM rose first with the increase of T and achieved the best when T equaled about 30 and then showed a little fluctuation when T
>
30. The detailed analysis is omitted because of the space consideration, and we made K
=
5, T
=
30. Further, as for the subagging ensemble strategy used in four “two-step” models, Paleologo et al. [21] have found that the number of base classifiers in between 20 and 50 is reasonable, and thus we let it be the maximum 50 in four “two-step” models as well as the LMF model.Further, the class distribution of both datasets is imbalanced. If we train CVS model with such data directly, then it tends to classify all customers as the majority class. There are many techniques to deal with class imbalance data, including oversampling and downsampling. In this study, what we concern most is not the optimal match between the six models referred and the methods handling class imbalance data, but the CVS performance of six models in the condition of MVs. Therefore, without loss of generality, we adopted oversampling method to balance the class distribution of training set and then conducted the experiments by the six models. In addition, to compare the performance of ODCEM proposed in this study with the other five models, we adopted 10-fold cross-validation (CV10) which divides the entire dataset into 10 equal parts randomly and takes one part as test set and the other nine parts as training set every time; the rotation of 10 times is called CV10.As for the four “two-step” models, we imputed the MVs with SPSS 17.0 for EM-SVM and RI-SVM first and then conducted model training and classification on the platform of Matlab 2008b, while the other two simpler “two-step” models KI-SVM and MS-SVM, as well as ODCEM and ensemble based LMF, were implemented on the platform of Matlab 2008b directly. Finally, all experiments were performed on a dual-processor 3.0 GHz Pentium 4 Windows computer with 2 GB RAM, and the final classification result was the average of 10 times CV10 in each case.


## 4.3. Evaluation Criteria

To evaluate the performance of the models referred to in this study, we introduced the confusion matrix in Table2. On this basis, four commonly used evaluation criteria were adopted [39]:(1)
totalaccuracy
=
(
(
TP
+
TN
)
/
(
TP
+
FN
+
FP
+
TN
)
)
×
100
%;
(2)
the area under the receiver operating characteristic curve (AUC). The receiver operating characteristic (ROC) curve is an important evaluation criterion of classification model in the data with imbalanced class distribution [40]. For an issue of two classes, the ROC graph is a true positive rate-false positive rate graph, where y-axis is true positive rate (
TP
/
(
TP
+
FN
)
×
100
%
) and the x-axis is false positive rate (
FP
/
(
FP
+
TN
)
×
100
%
). However, sometimes it is difficult to compare ROC curves of different models directly, so AUC is more convenient and popular;
(3)
type Iaccuracy
=
(
TP
/
(
TP
+
FN
)
)
×
100
%;
(4)
type IIaccuracy
=
(
TN
/
(
FP
+
TN
)
)
×
100
%.Table 2
Confusion matrix.
Predicted positive
Predicted negative
Actual positive (minority class)
TP (the number of true positives)
FN (the number of false negatives)
Actual negative (majority class)
FP (the number of false positives)
TN (the number of true negatives)


## 4.4. Experimental Results Analysis in “German” Dataset

Table3 shows the credit scoring performance of six models in “German” dataset with MCAR type MVs. The results show that, (
1
) for the total accuracy, AUC, and type I accuracy, ODCEM outperforms the other five models under each missing level; (
2
) for the type II accuracy, ODCEM outperforms the other five models when θ
=
10
% and 30%, and it performs more poorly than KI-SVM when θ
=
5
%, 20%, and 40%. Compared with the type II accuracy, we are usually concerned more about the AUC and type I accuracy of a model in class imbalanced CVS issue. Thus, we can conclude that the overall credit scoring performance of ODCEM is better than that of the other models referred to in this study in “German” dataset with MCAR type MVs.Table 3
Comparison of performance in “German” dataset with MCAR type MVs.
Missing level
Evaluation criteria
LMF
ODCEM
KI-SVM
MS-SVM
EM-SVM
RI-SVM
θ
=
5%
Total accuracy
0.6767 (3)
0.6987 (1)
0.6700 (4)
0.6933 (2)
0.6600 (5)
0.6533 (6)
AUC
0.8402 (4)
0.8592 (1)
0.8274 (6)
0.8583 (2)
0.8456 (3)
0.8334 (5)
Type I accuracy
0.5513 (4)
0.6124 (1)
0.5239 (6)
0.6069 (2)
0.5529 (3)
0.5298 (5)
Type II accuracy
0.7304 (3.5)
0.7357 (2)
0.7412 (1)
0.7304 (3.5)
0.7059 (6)
0.7108 (5)
θ
=
10%
Total accuracy
0.7033 (3)
0.7333 (1)
0.6667 (6)
0.6767 (5)
0.7000 (4)
0.7067 (2)
AUC
0.8490 (6)
0.8865 (1)
0.8645 (3)
0.8628 (4)
0.8710 (2)
0.8589 (5)
Type I accuracy
0.6052 (6)
0.6979 (1)
0.6127 (5)
0.6529 (2)
0.6481 (3)
0.6272 (4)
Type II accuracy
0.7454 (2)
0.7485 (1)
0.6898 (6)
0.7130 (5)
0.7222 (4)
0.7407 (3)
θ = 20%
Total accuracy
0.7533 (3.5)
0.7867 (1)
0.7633 (2)
0.7533 (3.5)
0.7500 (5)
0.7433 (6)
AUC
0.8764 (2.5)
0.8902 (1)
0.8493 (6)
0.8764 (2.5)
0.8643 (5)
0.8692 (4)
Type I accuracy
0.7138 (2.5)
0.7598 (1)
0.6526 (5)
0.7138 (2.5)
0.6712 (4)
0.6384 (6)
Type II accuracy
0.7703 (5.5)
0.7982 (2)
0.8108 (1)
0.7703 (5.5)
0.7838 (4)
0.7883 (3)
θ
=
30%
Total accuracy
0.6867 (3.5)
0.7097 (1)
0.6867 (3.5)
0.6667 (6)
0.6700 (5)
0.6933 (2)
AUC
0.8472 (4)
0.8625 (1)
0.8286 (5)
0.8491 (3)
0.8180 (6)
0.8524 (2)
Type I accuracy
0.5946 (5)
0.6375 (1)
0.5941 (6)
0.6016 (3)
0.5956 (4)
0.6054 (2)
Type II accuracy
0.7396 (2.5)
0.7406 (1)
0.7349 (4)
0.7031 (6)
0.7188 (5)
0.7396 (2.5)
θ
=
40%
Total accuracy
0.6733 (3)
0.6867 (1)
0.6740 (2)
0.6533 (6)
0.6600 (5)
0.6633 (4)
AUC
0.8172 (3)
0.8596 (1)
0.8484 (2)
0.8083 (5)
0.7908 (6)
0.8125 (4)
Type I accuracy
0.5832 (3)
0.6101 (1)
0.5639 (5)
0.5997 (2)
0.5736 (4)
0.5498 (6)
Type II accuracy
0.7071 (3)
0.7240 (1.5)
0.7240 (1.5)
0.6719 (6)
0.6919 (5)
0.6971 (4)
Average rank
3.63
1.13
4.00
3.83
4.40
4.03
Note: the bold-face in Table3 shows the maximum of each row. The numbers in parentheses are the ranks of the six models with the corresponding evaluation criterion in each row.In addition, the performance rank of six models on each evaluation criterion in five missing levels, respectively, is also shown in Table3, and the last row is the average rank, which can be regarded as a criterion of the overall performance of the models. Therefore, we can rank the six models according to the overall performance for MCAR type MVs from high to low as follows: ODCEM, LMF, MS-SVM, KI-SVM, RI-SVM, and EM-SVM. It is notable that LMF outperforms the four “two-step” models, and EM-SVM performs the most poorly in this case.Figure2 shows the trend of credit scoring performance of six models in “German” dataset with MCAR type MVs. It can be seen from the figure that the performance of each model does not decline obviously with the increase of missing level but appears with great fluctuation, and the general trend is increasing first and then reducing. This may be related to the production means of MVs of MCAR in this study, or related to the inherent characteristics of “German” dataset.The trend of classification performance in “German” dataset with MCAR type MVs.
(a)
Missing level (%)
(b)
Missing level (%)
(c)
Missing level (%)
(d)
Missing level (%)Similarly, the performance rank of six models on each evaluation criterion in five missing levels is also shown in Table4. Thus, we can rank the six models according to the overall performance for MAR type MVs from high to low as follows: ODCEM, EM-SVM, RI-SVM, MS-SVM, KI-SVM, and LMF. It is notable that the performance of EM-SVM is only poorer than that of ODCEM, and the performance of LMF is the poorest.Table 4
Comparison of performance in “German” dataset with MAR type MVs.
Missing level
Evaluation criteria
LMF
ODCEM
KI-SVM
MS-SVM
EM-SVM
RI-SVM
θ
=
5%
Total accuracy
0.7200 (3)
0.7367 (1)
0.7033 (6)
0.7167 (4)
0.7220 (2)
0.7148 (5)
AUC
0.8724 (3)
0.8789 (1)
0.8447 (6)
0.8662 (4)
0.8732 (2)
0.8653 (5)
Type I accuracy
0.6167 (3)
0.6411 (1)
0.5979 (6)
0.6117 (4)
0.5980 (5)
0.6209 (2)
Type II accuracy
0.7643 (3)
0.7777 (1)
0.7485 (6)
0.7617 (4)
0.7752 (2)
0.7550 (5)
θ
=
10%
Total accuracy
0.6730 (6)
0.7205 (1)
0.6777 (5)
0.6990 (4)
0.7000 (3)
0.7107 (2)
AUC
0.8300 (5)
0.8661 (1)
0.8054 (6)
0.8318 (4)
0.8334 (3)
0.8592 (2)
Type I accuracy
0.5833 (4)
0.6012 (2)
0.5615 (6)
0.5938 (3)
0.5705 (5)
0.6310 (1)
Type II accuracy
0.7114 (6)
0.7606 (1)
0.7275 (5)
0.7441 (4)
0.7555 (2)
0.7448 (3)
θ
=
20%
Total accuracy
0.6580 (5)
0.7057 (1)
0.6583 (4)
0.6553 (6)
0.6750 (3)
0.6850 (2)
AUC
0.8215 (6)
0.8533 (1)
0.8230 (5)
0.8390 (3)
0.8484 (2)
0.8317 (4)
Type I accuracy
0.5380 (6)
0.6070 (1)
0.5446 (5)
0.5534 (3)
0.5459 (4)
0.5683 (2)
Type II accuracy
0.7094 (4)
0.7480 (1)
0.7071 (5)
0.6990 (6)
0.7303 (3)
0.7350 (2)
θ
=
30%
Total accuracy
0.6331 (6)
0.6759 (2)
0.6467 (5)
0.6531 (4)
0.6772 (1)
0.6600 (3)
AUC
0.7990 (6)
0.8350 (1)
0.8071 (5)
0.8159 (4)
0.8233 (2)
0.8213 (3)
Type I accuracy
0.5063 (6)
0.5826 (1)
0.5217 (5)
0.5467 (3)
0.5447 (4)
0.5542 (2)
Type II accuracy
0.6874 (6)
0.7159 (2)
0.7002 (4)
0.6987 (5)
0.7340 (1)
0.7053 (3)
θ
=
40%
Total accuracy
0.6050 (6)
0.6610 (1)
0.6290 (4)
0.6150 (5)
0.6550 (2)
0.6467 (3)
AUC
0.7818 (6)
0.8211 (1)
0.7910 (5)
0.7945 (4)
0.8109 (2)
0.8046 (3)
Type I accuracy
0.4627 (6)
0.5466 (1)
0.4934 (4)
0.4658 (5)
0.5187 (3)
0.5249 (2)
Type II accuracy
0.6660 (6)
0.7100 (2)
0.6871 (4)
0.6789 (5)
0.7134 (1)
0.6989 (3)
Average rank
5.10
1.20
5.05
4.20
2.60
2.85
Note: the bold-face in Table4 shows the maximum of each row. The numbers in parentheses are the ranks of the six models with the corresponding evaluation criterion in each row.The trend of customer credit scoring performance of six models in “German” dataset with MAR type MVs is shown in Figure3. It is shown that the performance of six models reduces quickly with the increase of missing level. In particular, when the missing level is low, such as θ
=
5
%, the ensemble based model LMF can achieve good classification performance, which is only poorer than that of ODCEM and EM-SVM, while with the increase of missing level, such as when θ
≥
20
%, the performance of LMF is poorer than that of the other five models. The results also demonstrate that ODCEM model proposed in this study can overcome the disadvantages of LMF model to a large extent and can achieve better performance in high missing level than LMF.The trend of classification performance in “German” dataset with MAR type MVs.
(a)
Missing level (%)
(b)
Missing level (%)
(c)
Missing level (%)
(d)
Missing level (%)The performance of six models in “German” dataset with MNAR type MVs is shown in Table5. Although ODCEM only achieves comparable performance with MS-SVM and EM-SVM when θ
=
5
%, the performance of ODCEM is better than that of the other models when θ
=
10
%, 20%, 30%, and 40%. Thus, we can conclude that the overall credit scoring performance of ODCEM is still better than that of the other five models with MNAR type MVs in “German” dataset. Further, according to the average performance rank in the last row of Table 5, the six models can be ranked as follows: ODCEM, KI-SVM, MS-SVM, EM-SVM, LMF, and RI-SVM.Table 5
Comparison of performance in “German” dataset with MNAR type MVs.
Missing level
Evaluation criteria
LMF
ODCEM
KI-SVM
MS-SVM
EM-SVM
RI-SVM
θ
=
5%
Total accuracy
0.7423 (3)
0.7467 (2)
0.7333 (5)
0.7533 (1)
0.7400 (4)
0.7200 (6)
AUC
0.8727 (4)
0.8740 (2)
0.8599 (6)
0.8731 (3)
0.8923 (1)
0.8712 (5)
Type I accuracy
0.7011 (2)
0.6821 (3)
0.6484 (6)
0.6564 (5)
0.7077 (1)
0.6769 (4)
Type II accuracy
0.7533 (5)
0.7744 (2)
0.7697 (3)
0.7949 (1)
0.7538 (4)
0.7385 (6)
θ
=
10%
Total accuracy
0.7300 (4)
0.7567 (1)
0.7467 (2)
0.7333 (3)
0.7268 (5)
0.7000 (6)
AUC
0.8314 (4)
0.8577 (1)
0.8481 (2)
0.8434 (3)
0.8267 (5)
0.8200 (6)
Type I accuracy
0.6411 (3)
0.7011 (1)
0.6800 (2)
0.6333 (4)
0.5633 (6)
0.6000 (5)
Type II accuracy
0.7510 (4)
0.7805 (1)
0.7752 (3)
0.7762 (2)
0.7429 (5.5)
0.7429 (5.5)
θ
=
20%
Total accuracy
0.7186 (3)
0.7490 (1)
0.7069 (5)
0.7133 (4)
0.7269 (2)
0.7067 (6)
AUC
0.8208 (3)
0.8588 (1)
0.8175 (4)
0.8007 (6)
0.8393 (2)
0.8092 (5)
Type I accuracy
0.6176 (3)
0.6524 (2)
0.5803 (5)
0.5837 (4)
0.6574 (1)
0.5511 (6)
Type II accuracy
0.7589 (5)
0.7904 (1)
0.7611 (4)
0.7689 (3)
0.7567 (6)
0.7733 (2)
θ
=
30%
Total accuracy
0.7433 (3)
0.7600 (1)
0.7567 (2)
0.7367 (4)
0.7300 (5)
0.7200 (6)
AUC
0.8498 (4)
0.8763 (1)
0.8526 (3)
0.8490 (5)
0.8533 (2)
0.8244 (6)
Type I accuracy
0.6222 (4)
0.6945 (1)
0.6778 (2)
0.6289 (3)
0.5667 (5)
0.5556 (6)
Type II accuracy
0.7952 (2)
0.7881 (5)
0.7905 (3.5)
0.7829 (6)
0.8000 (1)
0.7905 (3.5)
θ
=
40%
Total accuracy
0.7033 (5)
0.7567 (1)
0.7367 (2)
0.7300 (3)
0.7167 (4)
0.7000 (6)
AUC
0.8406 (4)
0.8744 (1)
0.8486 (2)
0.8453 (3)
0.8382 (5)
0.8098 (6)
Type I accuracy
0.6314 (4)
0.6859 (1)
0.6585 (3)
0.6612 (2)
0.6266 (5)
0.6203 (6)
Type II accuracy
0.7342 (5.5)
0.7870 (1)
0.7702 (2)
0.7595 (3)
0.7553 (4)
0.7342 (5.5)
Average rank
3.73
1.50
3.33
3.40
3.68
5.38
Note: the bold-face in Table5 shows the maximum of each row. The numbers in parentheses are the ranks of the six models with the corresponding evaluation criterion in each row.The trend of credit scoring performance of six models in “German” dataset with MNAR type MVs is shown in Figure4. It can be seen that the performance of six models still does not decline obviously with the increase of missing level, but different degrees of fluctuation appear, which is similar to that in MAR mechanism. At the same time, Figure 4 also shows that the performance fluctuation of ODCEM is minimal, which demonstrates that the ODCEM model proposed in this study has the best robustness for the MNAR type MVs in “German” dataset.The trend of classification performance in “German” dataset with MNAR type MVs.
(a)
Missing level (%)
(b)
Missing level (%)
(c)
Missing level (%)
(d)
Missing level (%)After analyzing the credit scoring performance of six models in “German” dataset with three missing mechanisms comprehensively, the following conclusions can be obtained:(1)
the overall performance of ODCEM model is always the best under three missing mechanisms;
(2)
the MVs of different missing mechanisms can bring various degree effects on the performance of six models, and it is the greatest under MAR missing mechanism. This may be related to the production ways of MVs under three missing mechanisms.


## 4.5. Experimental Results Analysis in “China Churn” Dataset

Table6 shows the customer churn prediction performance of six models in “China churn” dataset. It can be seen from the table that the total accuracy, AUC, type I accuracy, and type II accuracy of ODCEM are the best, which shows that ODCEM model can also achieve satisfactory performance in the real CVS dataset. It is notable that the performance of LMF is only comparable with that of RI-SVM, and their performance is the poorest in six models. “China churn” dataset contains a large number of MVs, and its average missing rate of instance α
- is 8.06%. Combining with the analysis in Section 4.4, we can roughly conclude that the performance of ODCEM model proposed in this study is better than that of LMF model proposed by Mohammed et al. [34] when there are many MVs in the dataset.Table 6
Comparison of churn prediction performance in “China churn” dataset.
Model
Total accuracy
AUC
Type I accuracy
Type II accuracy
LMF
0.8124
0.8480
0.7364
0.8201
ODCEM
0.9313
0.9057
0.8539
0.9391
KI-SVM
0.8538
0.8747
0.8229
0.8570
MS-SVM
0.8638
0.8793
0.8022
0.8701
EM-SVM
0.8954
0.8820
0.7899
0.9061
RI-SVM
0.8280
0.8224
0.7088
0.8401
Note: the bold-face in Table6 shows the maximum of each column.Further, the performance of six models in “China churn” dataset is shown in Figure5. It can be seen that the performance of six models rises gradually when the ratio of instance for training model in the entire training set (abbreviated as ratio of instance) increases. Especially, the curve of ODCEM is always at the top even when the ratio is very small, such as 10%. It demonstrates that compared with the other five models, the churn prediction performance of ODCEM is the best when the models are trained by 10 training subsets with different sample size.Customer churn prediction performance of six models in “China churn” dataset. Note:x-axis shows the ratio of the instance for training model in the entire training set.
(a)
Ratio of instance
(b)
Ratio of instance
(c)
Ratio of instance
(d)
Ratio of instance


## 4.6. Further Discussions

In Sections4.4 and 4.5, the experiments in “German” dataset and “China churn” dataset verify the effectiveness of the proposed method. Through accuracy and AUC, we can find which model is the best and which one is the poorest. However, the differences between the good models and bad ones are unclear [41]. Therefore, we conducted McNemar’s test [42] to examine whether the proposed ODCEM model significantly outperforms the other five models referred to in this study. Taking the real customer churn prediction dataset “China churn” as an example, the results of McNemar’s test are shown in Table 7. For space consideration, the results of McNemar’s test for the “German” dataset with three missing mechanisms and five missing levels are omitted here. Actually, some similar conclusions can be obtained from “German” dataset by McNemar’s test.Table 7
McNemar’s test for pairwise comparison of performance in “China churn” dataset.
Model
LMF
KI-SVM
MS-SVM
EM-SVM
RI-SVM
ODCEM
15.254 (0.0000)
13.136 (0.0003)
12.971 (0.0003)
11.529 (0.0007)
14.469 (0.0001)
LMF
3.0480 (0.0809)
4.0364 (0.0367)
11.256 (0.0008)
0.0280 (0.8676)
KI-SVM
0.1880 (0.6650)
4.6880 (0.0304)
3.1840 (0.0744)
MS-SVM
2.7130 (0.1102)
3.5000 (0.0614)
EM-SVM
11.726 (0.0006)
Note: the results listed in Table7 are the Chi squared values and P values are in brackets.As shown in Table7, it can be concluded as follows.(1)
The proposed one-step ensemble selection model ODCEM outperforms the “two-step” models, as well as the ensemble based model LMF at 1% statistical significance level.
(2)
For LMF model, its performance is significantly poorer than that of EM-SVM at 1% statistical significance level and significantly poorer than that of MS-SVM and KI-SVM at 5% statistical significance level, while McNemar’s test does not conclude that it performs poorer than the RI-SVM model.
(3)
For KI-SVM model, its performance is significantly better than that of RI-SVM at 10% statistical significance level and significantly poorer than that of EM-SVM at 5% statistical significance level. Finally, KI-SVM cannot outperform MS-SVM at 10% statistical significance level.
(4)
For MS-SVM model, it outperforms RI-SVM at 10% statistical significance level. However, there is no significant difference between the performances of MS-SVM and EM-SVM at 10% statistical significance level.Further, we also compare the computation complexity of six models and find that the complexity of MS-SVM is the lowest, followed by RI-SVM, KI-SVM, EM-SVM, LMF, and ODCEM. The time complexity of ODCEM and LMF is much the same, and it is slightly higher than that of EM-SVM.Finally, with the analysis of Sections4.4 and 4.5, we can draw the following conclusions.(1)
The CVS performance of ODCEM is the best in both UCI customer credit scoring dataset and real customer churn prediction dataset, which shows that ODCEM has good adaptability and can be used for a variety of CVS tasks.
(2)
For the four “two-step” models, their performance is much different in the same dataset with three missing mechanisms and in different datasets (“German” and “China churn”), and the results are unstable. It demonstrates that the customer value classification modeling is sensitive to the preprocess methods of MVs in “two-step” CVS strategies and the CVS performance depends on the missing mechanism, which is similar to the conclusion of Crone et al. [24].
(3)
For LMF model, when there are only a few MVs, such as in “German” dataset with the missing mechanism of MAR and MNAR, it achieves comparable performance with KI-SVM, MS-SVM, and EM-SVM, especially under the mechanism of MAR; its performance is only poorer than that of ODCEM. However, when there are many MVs, for example, in “German” dataset with the missing mechanism MCAR and “China churn,” its performance is poor. It shows that LMF model is not suitable for the CVS issues with lots of MVs, which is basically consistent with the experimental results of Mohammed et al. [34].


## 5. Conclusions and Future Work

This study mainly focuses on the CVS issues with MVs and proposes one-step dynamic classifier ensemble model (ODCEM) for MVs to make up for the disadvantage of the existing “two-step” models. On the one hand, ODCEM model integrates the preprocess of MVs and the classification modeling into one step; on the other hand, it utilizes multiple classifier ensemble technology in constructing the classification models. It can fully utilize the information of nonmissing values in dataset without imputation, thus reducing the dependence on the data missing mechanism assumptions and the data distribution. The empirical results in “German” dataset of UCI and the real customer churn prediction dataset “China churn” show that the CVS performance of ODCEM is better than that of four commonly used “two-step” models and the existing ensemble based model LMF.



---

*Source: 869628-2014-03-18.xml*