## 2 Methods
In prediction, a sample \((\mathbf{x},y)\) is assigned with class label \(y^{*}\) as the one receiving the weighted majority of the votes: \[y^{*}=\arg\max_{y}\sum_{C_{i}\in C}w[i]\times C_{i}(\mathbf{x},y)\]

**Algorithm 1** The CBDF Algorithm

## 3 Results

We evaluate the performance of our algorithm on real-world semen quality dataset, _i.e._, the Fertility Dataset based on [5], which is publicly available on UCI data repository [14]. The Fertility dataset includes a labeled dataset of 100 anonymous young healthy university students between 18 and 36 years old. Each instance in the dataset contains 9 normalized variables about life habit, health status and a semen quality (concentration) result labeled as \"normal\" and \"altered\". Fertility dataset is highly unbalanced with a class ratio of almost 7:1 and there are 88 normal and 12 altered instances in the whole dataset. Histograms of all 9 variables regarding semen concentration results (Output) are given in Figure 2. For standard classification problems, the common evaluation criterion is prediction accuracy. However, in unbalanced learning, area under the receiver operating characteristic (ROC) curve, or simply AUC is preferred as it avoids subjectivity in the cutoff selection process [15; 16; 17]. We have obtained the AUC metric estimates via a five-fold cross-validation. In a five-fold cross-validation, the dataset is randomly divided into five equal disjoint subsets, each subset containing 1/5 data of the original dataset. In each fold, the current fold (testing set) is used for validation of the learning model trained on the other folds (training set). Results from all five folds are then averaged to produce a mean AUC estimation. The proposed CBDF is implemented in R [18] with CART (Classification and Regression Tree) [13] as the base learner. Performance of each base learner (CART decision tree in this study) in the ensemble is usually diverse. To illustrate this point, we randomly choose the experiment data in one of the five folds and the performance of all decision trees in terms of AUC is presented in Figure 3.

Figure 2: Histograms of all variables. ### Parameter Tuning

There are several parameters to tune in the proposed CBDF algorithm, for example, the ensemble size \(l\), the size of feature subset \(F_{i}\) and the number of majority subsets \(k\). As is common for all ensemble algorithms, a larger ensemble size means better prediction accuracy and also a longer time in training and testing. In CBDF, the default ensemble size \(l\) is set to 50 for a trade-off between performance and efficiency. Similar to parameter \(m_{try}\) in random forests, the size of feature subset \(F_{i}\) is also set to \(\sqrt{p}\) (\(p=9\) for the Fertility Dataset) for classification problems. The number of majority subsets \(k\) also plays an important role in the proposed algorithm and we will show how the performance of CBDF will change with different values of \(k\). A five-fold test is run for CBDF with each \(k\) in \([2,30]\) and the mean AUC values are plotted against each \(k\) in the following Figure 4.

Figure 4: Sensitivity of parameter \(k\) with performance. Figure 3: Performance of base learners in terms of AUC. As shown in Figure 4, a sharp increase in CBDF's performance is first observed when \(k<4\). However, when \(k\geq 4\), CBDF is not very sensitive to the parameter \(k\). The mean AUC of CBDF reaches a maximum when \(k\) = 7, which is very close to the class imbalance ratio 7.3. Thus, in the following experiments, the parameter \(k\) is set to the class imbalance ratio of each fold adaptively. ### Comparison Study

First, we compare the proposed CBDF algorithm with popular supervised classification algorithms including CART, Random Forest (RF), Support Vector Machines (SVM), Multilayer Perceptron (MLP) neural networks and Logistic Regression (LR).