Embedding Undersampling Rotation Forest for Imbalanced Problem

Rotation Forest is an ensemble learning approach achieving better performance comparing to Bagging and Boosting through building accurate and diverse classifiers using rotated feature space. However, like other conventional classifiers, Rotation Forest does not work well on the imbalanced data which are characterized as having much less examples of one class (minority class) than the other (majority class), and the cost of misclassifying minority class examples is often much more expensive than the contrary cases. This paper proposes a novel method called Embedding Undersampling Rotation Forest (EURF) to handle this problem (1) sampling subsets from the majority class and learning a projection matrix from each subset and (2) obtaining training sets by projecting re-undersampling subsets of the original data set to new spaces defined by the matrices and constructing an individual classifier from each training set. For the first method, undersampling is to force the rotation matrix to better capture the features of the minority class without harming the diversity between individual classifiers. With respect to the second method, the undersampling technique aims to improve the performance of individual classifiers on the minority class. The experimental results show that EURF achieves significantly better performance comparing to other state-of-the-art methods.


Introduction
Imbalanced problem is concerned with the performance of classifiers on the data set with severe class-imbalance distribution, and the problem is often encountered in real world, rising from medical diagnosis, risk management, fraud detection, and other domain applications [1][2][3]. For two class, the examples are commonly grouped into majority (negative) class or minority (positive) class, and the cost of misclassifying minority class examples is often much more expensive than the negative ones. Take the "mammography" data set as an example, the data set contains 10923 "healthy" patients and 260 "cancerous" patients and how to recognize the "cancerous" patients is very meaningful. However, most conventional classification methods try to achieve high accuracy with the assumption of balanced class distribution, i.e., the number of examples in any class is similar to each other, which leads to the fact that the minority class examples are often ignored and misclassified to the majority class.
Sampling technique is one of the most popular methods to handle the class-imbalance problem, which aims to improve the model performance on class-imbalance data through adjusting data distribution by sampling data space, forcing the model to focus more on the minority class. Examples include undersampling [4,5], oversampling [6,7], and SMOTE [8]. Undersampling techniques including random undersampling try to adjust imbalanced distribution by removing the intrinsic examples in the majority class, and on the contrary to undersampling, oversampling techniques learn the model on the rebalanced data by repeating minority class examples. SMOTE including the several improved methods such as borderline-SMOTE [9], safe-level-SMOTE [10], and MWMOTE (Majority Weighted Minority Oversampling TechniquE) [11] is a special version of the oversampling technique, which generates new synthetic examples along the line between the minority examples and their selected nearest neighbors, and the difference of these SMOTE methods lies in how to search the nearest neighbors.
Ensemble learning which has been successfully applied to many applications such as medical detection [12], image recognition [13,14], and software defect prediction [15] is another effective technique for handling classimbalanced data [16], where existing efforts roughly fall into the following three categories: (1) bagging-, (2) boosting-, and (3) Rotation Forest-based approaches. Both bagging-and boosting-based approaches often embed sampling techniques into the ensemble learning process. Examples include OverBagging, UnderBagging, UnderOverBagging [17], SMOTEBoost [18,19], and RUSBoost [20]. e former three methods learn each base classifier on the rebalanced data obtained by sampling the original training data and the last two methods train each base classifier on the adjusted training data distribution obtained by combining the sampling technique with reweighting mechanism of the boosting method. Rotation Forest is a newly proposed ensemble method [21]. e main heuristic is to apply feature extraction and subsequently reconstruct a full feature set for each classifier in the ensemble.
is method is also applied to classimbalance data; for example, Su et al. [22] employed Hellinger distance decision tree (HDDT) [23,24] instead of C4.5 or CART as the base learner of Rotation Forest to deal with class-imbalance issues. Hosseinzadeh and Eftekharia [25] preprocessed the original data using the fuzzy cluster and synthetic oversampling technique (SMOTE) to obtain the training set on which Rotation Forest is learned. Fang et al. [26] learned and preprocessed the training set before learning each rotation matrix. All of these Rotation Forest methods train individual classifiers on the whole training set. is paper proposes a simple but effective Embedding Undersampling Rotation Forest (EURF) method to handle class-imbalance problem. e main heuristics differing from Rotation Forest consists of (1) undersampling subsets from majority class for learning projection matrices, (2) re-undersampling majority class to construct balanced training sets, and (3) learning classifiers from the training sets in the spaces defined by the corresponding matrices. For the first step, the undersampling technique is mainly to obtaining diverse rotation matrices, with the goal of learning individual classifiers with diversity. With respect to the second step, the undersampling method aims to balance the training distribution, improving the performance of each individual classifier on the minority class. Following Rotation Forest, the decision tree learning method is used to train the base classifiers because it is sensitive to the rotation of feature axes. Experimental results show that when compared with other state-of-the-art methods, EURF shows significantly better performance on measures of recall, g-mean, f-measure, and AUC. e rest of this paper is grouped as follows: after presenting ensemble methods for the imbalanced problem in Section 2, Section 3 describes the Embedding Undersampling Rotation Forest method for the problem, followed by presenting the experimental results in Section 4, and finally, Section 5 concludes this work.

Ensemble for Imbalanced Problem
An ensemble refers to a group of base learners whose decisions are aggregated with the goal of achieving better performance than their constituent members [16,27]. Ensemble methods are also successfully applied to the imbalanced problem, where existing efforts can mainly be categorized into three groups: (1) bagging-, (2) boosting-, and (3) Rotation Forest-based methods.
2.1. Bagging-Based Approaches. Bagging [28,29] is a parallel-based ensemble, which trains an individual classifier on a bootstrap sample of the original data set and produces the output by combining the votes of individual classifiers using majority voting. Algorithm 1 shows the pseudocode for bagging.
Many approaches have been proposed using bagging to handle the imbalanced problem due to its simplicity and good generalization performance [30]. e class-imbalanceoriented bagging differs from conventional bagging mainly in how to manipulate data to generate new training sets for training individual classifiers (line 3 in Algorithm 1). For example, OverBagging [17] oversamples the original data set instead of random sampling the set into a bag for learning the individual classifier to overcome the class imbalance. As a special version of OverBagging, SMOTEBagging [16] oversamples minority class examples by generating synthetic examples of the minority class. On the contrary to Over-Bagging, UnderBagging [31] employs undersampling techniques instead of oversampling ones to create diverse bags to learn individual classifiers. e UnderBagging method has been used with different names, but maintaining the same functional structure, such as asymmetric bagging [32] and roughly-balanced bagging [33]. UnderOverBagging [17] employs both oversampling and undersampling to create diverse bags; a resampling rate is set in each iteration, which determines the example number from each class. DTE_SBD [34] adopts differentiated sampling rates, respectively, for the positive class and the negative class with different principles. SMOTE is used for increasing the samples of the minority positive class without repeating, and bagging is used for drawing the majority negative subset with certain degrees of diversity.
As a special version of UnderBagging, EasyEnsemble [4,35] undersamples several subsets from majority class, trains an individual classifier on each subset, and combines the outputs of individual classifiers. Unlike UnderBagging, the base classifier of EasyEnsemble is learned by the ensemble learning method Adaboost instead of the single model. erefore, EasyEnsemble is an ensemble of ensembles, and AdaBoost is mainly to reduce bias while bagging mainly reduces variance.

Boosting-Based Approaches. Boosting introduced by
Freund and Schapire [36] is a family of methods, and AdaBoost is the most prominent member. AdaBoost sequentially trains each individual classifier. After each iteration, AdaBoost gives more bias (weights) on the examples that are hard to be correctly classified by the classifiers, forcing subsequent classifiers to focus more on them. Algorithm 2 shows the pseudocode for Adaboost.
Boosting-based ensembles [30] have been also introduced to handle the class-imbalance problem by embedding data preprocessing into boosting learning procedure. ese methods try to alter and bias distribution such that the following classifiers focus more on the minority class every iteration. For example, SMOTEBoost [18,19] introduces synthetic examples of the minority class using the SMOTE data preprocessing algorithms. e weights of the new examples are proportional to the total number of examples in the new data set. RUSBoost [20] performs similarly to SMOTEBoost with exception of removing examples from the majority class in each iteration. Adaptive EUSBoost [37] learns a Real Adaboost on each undersampled data. Besides, Adaptive EUSBoost embeds cost-sensitive weight modification and adaptive boundary decision strategy into the learning process for improving the model performance on class-imbalance data.
Like AdaBoost, BalanceCascade [4,35] trains individual classifiers sequentially, and for each iteration, it removes the majority class examples that are correctly classified with high confidence, namely, the examples are not taken into account in further iterations. Like EasyEnsemble, BalanceCascade trains each individual classifier using AdaBoost, and therefore, BalanceCascade is a hybrid model, namely, an ensemble of ensembles. [21] is an effective ensemble method, more robust comparing to bagging, boosting, and Random Forest [38] by creating individual classifiers with high accuracy and diversity. e main heuristic is to apply feature extraction to subsets of features and reconstruct a full feature set for each classifier in the ensemble: randomly splitting the feature set into K disjoint subsets, randomly selecting a nonempty subset of classes, running principal component analysis (PCA) on each subset with a bootstrap sample of training set, and then organizing all the principal components in a sparse rotation matrix R. A classifier is trained on the whole training set in the feature space defined by R. Decision tree C4.5 [39] is selected as the base learner as it is sensitive to feature rotation. Algorithm 3 shows the pseudocode for Rotation Forest.

Rotation Forest-Based Approaches. Rotation Forest
Rotation Forest has been also applied to the imbalanced problems, for example, Su et al. [22] used Hellinger distance decision tree (HDDT) [23,24] instead of C4.5 to train individual classifiers on whole training set. Hosseinzadeh and Eftekharia [25] learned Rotation Forest on the data obtained by preprocessing training set using the synthetic oversampling technique (SMOTE) [8] and fuzzy cluster [40]. Fang et al. [26] learned the rotation matrices on data sets obtained by randomly undersampling or oversampling (SMOTE) the training set, and each base classifier is constructed on the whole training set.
is paper proposes an improved Rotation Forest based on the undersampling technique for the classimbalance problem. Unlike conventional Rotation Forest-based approaches, the proposed method learns both rotation matrices and individual classifiers on diverse balanced data sets obtained by undersampling the original data instead of on the whole data set or on the same data.

Improving Rotation Forest via
Undersampling Technique 3.1. Algorithm. Class-imbalance problem often exists in many applications, and this problem causes that conventional classifier learning methods do not work well [1][2][3]. is section proposes a novel Rotation Forest called Embedding Undersampling Rotation Forest (EURF) to handle class-imbalance problem. EURF differs from the conventional ensemble method for learning each individual classifier in the following two aspects: (1) undersampling a balanced subset with the size of any class equal to each other for learning a rotation matrix and (2) obtaining a training set by projecting a re-undersampled balanced subset into the feature space defined by the rotation matrix and learning an individual classifier on the training set. e process of learning each individual classifier h is shown in Figure 1.
Let x � [x 1 , x 2 , . . . , x n ] be a data point described by n features and let X be the data set containing objects in a form of an N × n matrix. Suppose Y � [y 1 , y 2 , . . . , y n ] is a vector Input: the training set D, the number of ensemble members T, bootstrap size N, and the weak learner L.
Computational Intelligence and Neuroscience 3 of class labels for the data and y i is either majority class or minority class, i.e., y i ∈ maj, min . As shown in Figure 1, EURF first splits the original training set (X, Y) into two disjoint sets based on the class labels, namely, majority class set (X maj , Y maj ) and minority class set (X maj , Y maj ). en, EURF mainly learns the rotation matrix R using the following four steps: (i) Constructing the balanced data D by merging the minority set X min and the undersampled subset X maj ′ of majority class set, |X min | � |X maj ′ | (ii) Randomly splitting feature set F into disjoint subsets F j |j � 1, 2, . . . K (iii) Removing 25% of each data subset D i of D corresponding to the feature subset F i and running PCA on D i to obtain subrotation matrix C i (iv) Constructing rotation matrix R by merging and rearranging the columns of each C i to match the order of features in F After the learning rotation matrix R, EURF learns a classifier h on balanced data (X ′ , Y ′ ) in the rotation feature space defined by R, namely, learning h from (X ′ R, Y ′ ), where (X ′ , Y ′ ) is obtained by merging minority class set (X min , Y min ) and undersampled subset (X maj ′ , Y maj ′ ) of the majority class set and |X min | � |X maj ′ |.
Algorithm 4 shows the pseudocode for EURF. e differences with Rotation Forest (refers to Algorithm 3) are mainly shown in lines 4∼5 and lines 14∼15. Lines 4 and 5 are to sample a subset X maj,i from majority class set X maj (without considering class labels) to obtain balanced set, |X maj,i | � |X min |. us, the rotation matrix R i are learned on a balanced data set. Lines 14∼15 aim to reconstruct the Input: training set D � {(x 1 , y 1 ), (x 2 , y 2 ), . . ., (x N , y N )}, number of ensemble members T, and weak learner L Process: ALGORITHM 2: AdaBoost.
Input: training set X in form of N × n matrix, the labels of training set Y in form of N × 1 matrix, number of iterations T, the number of subsets K, and the set of class labels {ω 1 , . . ., ω c }. Process: Eliminate from X i,j a random subset of classes; Select a bootstrap sample from X i,j with 75% of the size of X i,j , denote the new dataset by X i,j ′ ; (8) Apply PCA on X i,j ′ to obtain the coefficients in a matrix C i,j ; (9) end for (10) arrange the C i,j in a matrix C i , j � 1 to K; (11) Construct R i by rearranging the columns of C i to match the order of features in F; (12) build classifier h i using (XR i , Y) as the training set; is the probability x coming from class ω j .
ALGORITHM 3: Rotation Forest. 4 Computational Intelligence and Neuroscience balanced data using the same method as lines 4∼5 with exception of considering class label. erefore, the base classifier h i is also learned from a balanced data set. Besides, unlike conventional Rotation Forest which selects and eliminates a random nonempty subspace of classes (line 6 in Algorithm 3), EURF does not handle classes due to the limit data set for learning the rotation matrix.
In this paper, decision tree is selected as the base learner due to its sensitiveness to the rotation of the feature axes. PCA [41] is also used for learning the rotation matrix following Rotation Forest [21].

3.2.
Discussion. Dietterich stated [42] "A necessary and sufficient condition for an ensemble of classifiers to be more accurate than any of its individual members is if the classifiers are accurate and diverse." For class-imbalance problem, similar issues should be addressed: (1) the high accuracy of each individual classifier on minority class and (2) the high diversity between individual classifiers.
(i) Accuracy. e accuracy of EURF (the proposed method) on the minority class is guaranteed by the undersampling technique through the following two approaches: (1) undersampling the majority class to construct balanced data sets on which individual classifiers are constructed, forcing the learned classifiers to focus more on the minority class (lines 14∼16, Algorithm 4) and (2)   Computational Intelligence and Neuroscience training rotation matrices, and thus the matrices capture more information from the minority class, enhancing the accuracy of individual classifiers on the minority class (lines 7∼11, Algorithm 4). In this way, EURF learns individual classifiers with high accuracy on the minority class. (ii) Diversity. Diversity is a key to the success of an ensemble, and the diversity of EURF mainly comes from the learning process of both rotation matrices and individual classifier. Two approaches of learning rotation matrices make sure the ensemble diversity: (1) the splitting method of feature subsets (line 6, Algorithm 1) and (2) the sampling technique used for manipulating the distribution of data set (lines 4, 5, and 9, Algorithm 1). For the first approach, according to Reference [21], the number of different partitions of the feature set into K If the size of the ensemble is L, the probability that all classifiers will be different is For the ensemble with 50 member, if n � 9 and K � 3, the probability that all classifiers are different from each other is less than 0.01. erefore, an extra randomization of the ensemble is meaningful. In this study, PCA is applied to a bootstrap sample of X i to increase the diversity of ensemble members. For the second method, the sampling technique is used to create balanced data for training rotation matrix. erefore, the larger the ratio between the size of the majority class and that of the minority class set is, the larger the diversity between individual classifiers is. Besides, for the learning process of individual classifiers, the sampling technique is reused to create balanced data to the training base classifier, which further improves the ensemble diversity (lines 14∼16, Algorithm 4).

Evaluation Measure.
Evaluation measure is extremely essential to assess the effectiveness of an algorithm, and for imbalanced problem, precision, recall, f-measure, g-mean, and AUC are the most frequently used ones. e examples classified by a classifier can be grouped into four categories as shown in Table 1, and thus the precision and recall are defined as (1) f − measure is a harmonic mean between recall and precision. Specifically, f − measure is defined as where δ, often set to be 1 (f1 − measure), is a coefficient to adjust the relative importance of precision versus recall. Like f-measure, g − mean is another metric considering both normal class and abnormal class. Specifically, g − mean Input: training set X in the form of N × n matrix, the labels of training set Y in the form of N × 1 matrix, number of iterations T, and the number of subsets K (1) H � ∅; (2) Split the training set X into the majority class set X maj and negative class set X min , and correspondingly split the class matrix Y as Y maj and Y min ; (3) for i � 1 to T do (4) Randomly sample a subset X maj,i from X maj without replacement, |X maj,i | � |X min |; (5) X i � X maj,i ∪ X min ; (6) Randomly split the feature set F into K subsets: F i,j (j � 1 to K); (7) for j � 1 to K do (8) Let D i,j be the data set X i for the features in F i,j ; Randomly draw a subset from D i,j without replacement, with size 75% of D i,j , denote the new data set by D i,j ′ ; Apply PCA on D i,j ′ and F i,j to obtain transformation matrix C i,j ; (11) end for (12) Arrange the C i,j in a matrix C i , j � 1 to K; (13) Construct R i by rearranging the columns of C i to match the order of features in F; (14) Re-randomly sample a subset X maj,i ′ from X maj without replacement such that the size of X maj,i ′ equals to that of X min ; let Y maj,i ′ is the label matrix corresponding to X maj,i ′ obtained from Y maj ; (15) Merge X maj,i ′ and X min as X i ′ , and merge Y maj,i ′ and Y min as is the probability x coming from class y ALGORITHM 4: Embedding Undersampling Rotation Forest for imbalanced problem. 6 Computational Intelligence and Neuroscience measures the balanced performance of a classifier using the geometric mean of the recall of the abnormal class and that of the normal class. Formally, g − mean is as follows: Besides, AUC is a commonly used measure to evaluate models' performances. According to [43], AUC can be estimated by AUC � ((TP/(TP + FN)) +(TN/(TN + FP))) 2 . (4) In this paper, recall, f − measure, g − mean, and AUC are employed to evaluate the classification performance on imbalanced data sets.

Experimental Setup.
irty-one imbalanced data sets were selected from the KEEL lab [44], and the details about the sets are shown Table 2, where #Attrs, #Exps, and #IR are the attribute number, example number, and imbalance ratio defined as the ratio between the size of the majority class set and that of the majority class set. All the data sets are twoclass imbalanced ones, and the imbalanced degree of the sets varies from 41.4 (highly imbalanced) to 3.2 (only slightly imbalanced). In this section, 5 × 2-fold cross-validation strategy was conducted to evaluate the performance of the proposed method EURF [45,46]. We perform five replications of a two-fold cross-validation. In each replication, the available data are partitioned into two random equalsized sets. Each learning algorithm is trained on one set at a time and tested on the other set.
Ten methods were selected as candidates to test the performance of the proposed method EURF: (i) Undersampling-C45 (UC) [47] preprocessed training sets using the random undersampling technique to obtain relatively balanced data set and then learned a model using C4.5 [39] on the balanced set. (ii) Oversampling-C45 (OC) [47]. On contrary to UC, OC used the random oversampling technique to obtain relatively balanced data set. (iii) UnderBagging (UBG) [31] learned each member on the undersampled subset from the majority class. C4.5 was selected as the base learner. e number of members T was set to be 40. (iv) OverBagging (OBG) [17] learned each member on the rebalanced data by randomly oversampling training set, and C4.5 was selected as the base classifier learner. e number of member T was set to be 40. (v) RUSBoost (UBT) [20] combined the undersample technique into the boost learning process. e number of member T was set to be 40, and for each member, a subset with size equal to the minority class was sampled (without replacement) from the majority class. en, C4.5 was used to train a classifier using the subset and minority class set. (vi) EasyEnsemble (EE) [4,35] samples T subsets from the majority class and trains an Adaboost with J weak learner using each of them. We selected C4.5 as weak classifiers and set T � 4 and J � 10. (vii) BalanceCascade (BC) [4,35] is similar to Easy-Ensemble exception of removing correctly classified major class examples from further consideration. C4.5 was selected to train weak classifiers, and we set T � 4 and J � 10. (viii) DTE_SBD [34] constructs decision tree ensemble based on SMOTE, undersampling and differentiated sampling rates (DSR). e number of individual classifiers was set to be 40. e k-nearest neighbor parameter of SMOTE was set to 5, and C4.5 was selected to train weak classifiers. (ix) Rotation Forest [21] constructs decision tree ensemble based on feature projection and sampling technique (Algorithm 3). C4.5 [39] is selected as the base learner, and we set T � 40. (x) EURF is the proposed method in this paper. Here, we set T � 40, namely, the number of bases classifier is 40. C4.5 was used to train base classifiers (Algorithm 4).
All of the above methods were implemented in our data mining tool "LySpoon" and please contact hpguo@xynu. edu.cn for the related source code. Tables 3-6, respectively, report the summary results of the comparing methods on the measures of recall, g-mean, f1-measure, and AUC, where the results in the parentheses are the algorithm ranks defined as follows [45,48]: on a data set, the best performing algorithm gets the rank of 1.0, the second best rank 2.0, and so on. In case of ties, average ranks are assigned. e results with bold type of these tables are the corresponding algorithm (row) with the best performance on the corresponding data (column). Table 3 shows that EURF performs the best AUC on 23 out of the 29 data sets and outperforms (is outperformed by) DTE_SBD, BC, EE, UBT, UBG, OBg, UC, OC, and RF on 26  Tables 3 and 4 show that EURF performs similar to BC, EE, and UBG, and significantly better than other methods, which indicates that EURF tries to improve the model recall while keeping the high accuracy of the model. Table 5 reports the summary results and the ranks of the nine algorithms on the measure  Table 5 shows that EURF performs best g-mean on 23 out of the 29 data sets and outperforms (is outperformed by) DTE_SBD, BC, EE, UBT, UBG, OBg, UC, and OC on 27 (2) Table 6 shows the experimental results of compared algorithms on measure of f1-measure. From Table 6, EURF performs similar to RF and significantly outperforms other methods. Combining with the results of Table 4, EURF improves the recall of RF at the expense of RF's accuracy. Table 7 shows the average performance including average rank in parentheses of each method on measures of AUC, recall, g-mean, and f1-measure. From Table 7, EURF outperforms other methods on the comprehensive measures including AUC, g-mean, and f1-measure. e Friedman test, a nonparametric statistical test, was used to ensure whether the superiority of our methods is by accident. e Friedman test can be used to detect differences across multiple algorithms based on the ranks of algorithms on multiple data sets. STAC [49], a web platform for the comparison of algorithms using statistical tests, was used for the experiments. We assume that the performances of all of the nine methods for comparison are the same and set the p value at 0.05. e experimental result shows that the hypothesis of all of the algorithms with the same performance on measures of AUC, recall, g-mean, and f1-measure is rejected, with an extremely low p value (p < 0.00001).

Experimental Results.
To further differentiate these algorithms, the Nemenyi post hoc test was also adopted after the hypothesis "the performance of the comparisons on the groups of data is similar" is rejected. Nemenyi computes an average ranking difference threshold CD, and the hypothesis "the performance of two algorithms is the same" will be rejected if their average ranking difference is larger than CD/2 [19], where CD is defined as where k is the number of algorithms, N is the number of data sets, and q α is the critical range of the Tukey distribution. We set α � 0.05. Figure 2 shows the Nemenyi figure of comparing algorithms on the measure of AUC, recall, g-mean, and fmeasure. From Figures 2(a), 2(c), and 2(d), EURF significantly outperforms all of the other nine methods on measures of AUC, g-mean, and f1-measure. From Figure 2(b), EURF performs similar to BC, EE, and UBG and significantly outperforms all of the other nine methods.

Conclusion
In this paper, we proposed a novel Rotation Forest method called Embedding Undersampling Rotation Forest (EURF)         (1) undersampling subsets from the majority class for constructing balanced training sets on which the rotate matrices are built and (2) learning individual classifiers on balanced data obtained by projecting re-undersampling subsets of the original training set to new spaces. erefore, EURF mainly obtains the diversity between ensemble members through feature projection and undersampling. Experimental results show that EURF significantly outperforms other state-of-the-art methods for imbalanced data sets on the measure of recall, g-mean, f-measure, and AUC.
Data Availability e data sets used in this paper can be obtained from the KEEL lab (http://sci2s.ugr.es/keel/download.php). e experimental results can be obtained by running the source codes of the proposed method (please contact Huaping Guo (hpguo@xynu.edu.cn or hpguo_cm@163.com) to obtain the source code).

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this article.
Acknowledgments is work was in part supported by the Project of Science and Technology Department of Henan Province (no. 182102210132), in part by the Natural Science Foundation of Henan Province of China (182300410145), the Natural  Computational Intelligence and Neuroscience