SPLBoost: An Improved Robust Boosting Algorithm Based on Self-paced Learning

06/20/2017 ∙ by Kaidong Wang, et al. ∙ Xi'an Jiaotong University 0

It is known that Boosting can be interpreted as a gradient descent technique to minimize an underlying loss function. Specifically, the underlying loss being minimized by the traditional AdaBoost is the exponential loss, which is proved to be very sensitive to random noise/outliers. Therefore, several Boosting algorithms, e.g., LogitBoost and SavageBoost, have been proposed to improve the robustness of AdaBoost by replacing the exponential loss with some designed robust loss functions. In this work, we present a new way to robustify AdaBoost, i.e., incorporating the robust learning idea of Self-paced Learning (SPL) into Boosting framework. Specifically, we design a new robust Boosting algorithm based on SPL regime, i.e., SPLBoost, which can be easily implemented by slightly modifying off-the-shelf Boosting packages. Extensive experiments and a theoretical characterization are also carried out to illustrate the merits of the proposed SPLBoost.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 12

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

For a classification or regression problem, there are two natural ways to deal with it: one is that we can train a strong learning machine directly from the training set with a variety of machine learning methods, and expect that the obtained learning machine could have a satisfactory prediction accuracy; the other is that we can train a number of weak learners with slightly better accuracies than randomly guessing, then put them together in a specific way to get a strong learner that could have a better accuracy than those weak learners. The latter is the basic idea of ensemble learning. As an important and excellent ensemble learning framework, boosting

[1, 2, 3, 4, 5] has been widely applied in many machine learning problems because of its simplicity and good performance.

AdaBoost [6, 7] is one of the most commonly-used boosting algorithms, and it has proven to be effective and easy to implement in various classification problems. Given training data ,…,, where

is a vector-valued feature and

. It is known that AdaBoost can produce a strong learner , where is the weak learner trained on weighted training data in th step and is a constant calculated based on the classification accuracy of . Then we can predict the label of a new sample by . In particular, AdaBoost gives a weight initialized to

to every training sample and adjust it in every step such that the weights of the correctly classified samples by the current learner are decreased while the weights of misclassified samples are increased. This reweighting way gives rise to that AdaBoost always pays more attention to the samples which are hard to classify and ignores the easy-to-classify samples to some extent when training the next weak learner.

Many practical applications have demonstrated the success of AdaBoost in producing satisfactory and accurate strong classifiers [8, 9, 10, 11, 12]. And it is interesting that in many cases the test error seems to decrease consistently and then level off rather than gradually increase as more weak learners added, which means that it is not prone to overfit and as a result, it is not difficult for AdaBoost to determine the number of weak learners. In spite of this, the classifiers produced by AdaBoost are not always acceptable, especially when the training samples are corrupted by outliers [13, 14, 15, 16]

. It has been shown that AdaBoost algorithm builds an additive logistic regression model for minimizing the expected risk based on the exponential loss function

[17, 18]. It is easy to see that this loss increase rapidly with the increase of the magnitude of the negative margin , which means that it will significantly enlarge the functions of those large noises in training since they will have a large negative value of . This naturally degenerates the performance of the approach in the presence of heavy noises/outliers.

Aiming at remedying the poor robustness issue of AdaBoost, many studies have been conducted to improve its performance for dealing with data corrupted by outliers. The mainly adopted methodology is to design a new robust loss function in boosting to be optimized, and then use gradient descent like strategies to resolve this new optimization problem. Such robust loss needs to be designed to increase evidently slower when the magnitude of becomes larger, so as to suppress the effect of large noises and outliers. Although those robust boosting algorithms are proven to be able to have better performance than AdaBoost for the training data with outliers, there are natural defects for the idea to directly design and optimize new loss functions. Although easy to optimize, convex loss functions are not robust enough to eliminate the impact of outliers. The fact proved that non-convex loss functions can often have better performances than convex loss functions. However, non-convex loss functions can produce non-convex optimization problems which is difficult to solve and get stable solutions. In this paper, taking advantage of the robustness of self-paced learning regime, we come up with a new thought for robust boosting algorithms. Our main contributions can be summarized as follows:

Firstly, we propose a new robust boosting algorithm named by SPLBoost, which incorporates the self-paced learning into the AdaBoost framework. As mentioned above, it is not always a good idea to improve the robustness of AdaBoost by directly modifying the loss function, which motivates us to utilize another efficient way to achieve the same goal. It has been recently shown that self-paced learning is a effective robust learning regime and has achieved satisfactory results in deal with many machine learning and computer version problems. A basic idea of self-paced learning is to give weights in to training samples so that weights of the samples with larger losses are smaller and weights can be zero when the corresponding losses are large enough. By combining self-paced learning with AdaBoost, SPLBoost is proven to be able to improve the robustness of AdaBoost.

Secondly, the proposed SPLBoost algorithm can be very easily embedded into any off-the-shelf AdaBoost package. Besides, more SPLBoost variations can be easily designed by integrating it directly to more boosting packages, like LogitBoost and Boost, to improve their robustness in the presence of heavy noises/outliers.

Thirdly, we prove that SPLBoost exactly complies with the widely known Majorization-Minimization (MM) algorithm that is implemented by a latent objective function based on a non-convex loss function. This clearly explains theoretically that why SPLBoost could be more robust than AdaBoost. Such robust insight also holds for other variations of SPLBoost. In addition, by alternately optimizing two sub-problems that are easy to solve rather than directly optimizing the latent objective function, SPLBoost can keep away from the annoying non-convex optimization problem and get a better local optimal solution.

Finally, the superiority of SPLBoost is extensively substantiated in synthetic dataset and 17 UCI datasets, as compared with other state-of-the-art robust boosting algorithms.

The rest of this paper is organized as follows. We shall provide a brief review on boosting algorithms and self-paced learning in Section II. Then, the SPLBoost algorithm and its theoretical analysis are presented in Section III. Section IV shows experimental results on several synthetic and UCI data sets. Several concluding remarks are finally made in Section V.

Ii Related Work

Ii-a Robust Boosting Algorithms

As aforementioned, the biggest defect of AdaBoost is that it can easily overfit to outliers, which inspires a lot of studies on improving the robustness of AdaBoost [19, 20, 21]. Generally speaking, there have three factors that affect the robustness of boosting algorithms: the loss function, the way to compute the weak learners, and the regularization. Based on those factors, many robust boosting algorithms have been suggested.

In [17], Friedman et al. proved that the Discrete AdaBoost algorithm builds an additive logistic regression model via Newton-like updates for optimizing the expected risk based on the exponential loss function , and the Real AdaBoost algorithm fits an additive logistic regression model by stage-wise optimizing the same expected risk as Discrete AdaBoost. With this, Friedman et al. [17] proposed two different robust boosting algorithms: LogitBoost and GentleBoost. The LogitBoost algorithm uses Newton steps for optimizing the logistic loss which is more robust than exponential loss. It is easy to see that the logistic loss function assigns fewer penalties to those samples with negative margins whose absolute values are very large, which are usually outliers. This is why LogitBoost is not so easy to overfit to the outliers. GentleBoost is the other robust boosting algorithm proposed in [17], and it is different from the LogitBoost in the way of optimizing the underlying loss function. Basically, GentleBoost optimizes the exponential loss function as AdaBoost does. The main difference between GentleBoost and Real AdaBoost is that GentleBoost computes the weak learners by using an adaptive Newton step as LogitBoost does. For Real AdaBoost the update is half log-ratio which can be numerically unstable and lead to very large updates or sample weights. However, the updates of GentleBoost lie in the range , leading to more conservative sample weights. Consequently, the influence that outliers exert on GentleBoost is weaker than AdaBoost.

As we can see, although the loss functions of those boosting algorithms referred to above are different from each other, resulting in different performances, they are all convex. Theoretical properties of the boosting algorithms based on convex loss functions have been extensively studied. See, e.g., [22, 23]. The minimum of convex loss function is easy to compute, which gives rise to the simplicity of those aforementioned boosting algorithms. However, the disadvantage of convex loss function is obvious. It has been shown that convex loss function is not robust enough to tolerate noise and as a result, such boosting algorithms based on convex loss are naturally not insensitive to outliers. Specifically, Long and Servedio [24] proved that any boosting algorithm based on convex loss functions is easily affected by random label noise and they present a sample example named Long/Servedio problem which cannot be learned by those popular boosting algorithms. As such, The results presented by Long and Servedio lead to a lot of studies on boosting algorithms with non-convex loss functions.

Based on the Boost-by-Majority algorithm [25] and BrownBoost [26], Freund [27] proposed a new robust boosting algorithm named RobustBoost which is more robust against outliers than AdaBoost and LogitBoost. The loss function of RobustBoost is non-convex and changes during the boosting process, which is the largest difference between RobustBoost and other popular ones. RobustBoost improves the robustness by allowing pre-assigned error of margin maximization, and in each step, it updates and solves a differential equation and updates the preassigned target error or the remaining time . We can see from the algorithmic process that there are at least two preassigned parameters that are difficult to implement, which limits the application of RobustBoost.

Most classifiers design algorithms to determine the optimal classifier through three steps: define a proper loss function , determine a function class , and search within for the function which optimizes the objective function based on a predefined loss function. In view of the limitations of these methods, such as low convergence rate and too much sensitivity to the outliers, Masnadi-shirazi and Vasconcelos [28]

showed that the problem of classifier design is identical to the problem of probability elicitation, and probability elicitation can be seen as a reverse procedure for solving the classification problem, which provides some new insights on the relationship between the loss function, the minimum risk and the optimal classifier. With this, they derived a new loss function named Savage loss which trades convexity for boundedness. Using this new loss, they proposed so-called SavageBoost, i.e., a new robust boosting algorithm which is more outlier resistant than AdaBoost and LogitBoost. The form of Savage Loss is

, which clearly shows that unlike the exponential loss and logistic loss where the penalty always increases at a fast speed, Savage loss is non-convex and quickly becomes constant as . Considering that the weights of the misclassified samples with large margins could be not large, SavageBoost is not sensitive to the outliers, as compared to AdaBoost and LogitBoost.

To improve the robustness of boosting algorithms, two requirements should be met: 1) design a robust loss function with gentle penalty for the misclassified samples with large margins, 2) design a numerically stable algorithm to optimize the current objective function and obtain weak learner in each step. Based on this two requirements, Miao et al. [29] proposed two robust boosting algorithms named RBoost1 and RBoost2 which have a deep connection with SavageBoost. Both the two boosting algorithms try to optimize the conditional expected risk based on the Savage2 loss function, a new robust loss function is defined as

. It is easy to see that the Savage2 loss function is with the similar form to the Savage loss function and the only difference is the second-order factor in the denominator, which makes the Savage2 loss to give gentler penalty for the misclassified samples with large margins than the Savage loss function. As such, the proposed RBoost could be more insensitive to the outliers than SavageBoost. In fact, two reasons weaken the robustness of SavageBoost: 1) the results that the weak learners in SavageBoost output are required to be posterior probability estimation, and to estimate the posterior probability is more difficult than classification, 2) the way SavageBoost computes the weak learners is not numerically stable. To avoid such two drawbacks of SavageBoost, RBoost algorithms are carefully designed to optimize the Savage2 loss function. Precisely, RBoost1 algorithm uses the adaptive Newton step to solve the minimization problem which computes a new weak learner based on the current classifier so that the conditional expected risk is maximally decreased. RBoost2 algorithm is designed to make RBoost1 algorithm which restricts the weak learner algorithms to the regression methods adaptive to more general weak learner algorithms. With the use of more robust loss function and numerically stable methods to compute the weak learners, RBoost1 and RBoost2 algorithms could get good performance for noisy data.

As we already mentioned, most of the existing robust boosting algorithms try to design various robust loss functions with restricted penalties on misclassified samples with large margins and then design computation methods to compute the weak learners based on those loss functions. However, this common framework cannot always be satisfactory. Specifically, convex loss functions have been proven not to be robust enough especially for large label noise or outlier, while although non-convex loss functions possess better antinoise ability, they induce non-convex optimization problem to compute weak learners, which is an intractable task in general. In this paper, instead of directly designing new robust loss functions, we propose a new robust boosting algorithm named SPLBoost by combining the classical Discrete AdaBoost algorithm with the robust learning idea of self-paced learning. In the next subsection, we shall give a simple introduction to self-paced learning.

Ii-B Self-paced Learning

Humans and animals often learn from the examples which are not randomly presented but organized in a meaningful order which gradually includes from easy and fewer concepts to complex and more ones. Inspired by this principle in humans and animals learning, Bengio et al. [30]

proposed a new learning paradigm named curriculum learning which is the origin of self-paced learning. In curriculum learning, a model is learned by gradually including from easy to complex samples in training to improve the accuracy of the model. Obviously, the key of curriculum learning is to find a proper ranking function which assigns learning priorities to training samples. To get a satisfactory model, the quality of the curriculum, i.e., ranking function, is very important and it is oftentimes derived by predetermined heuristics for particular problems in real applications. This may lead to inconsistency between the fixed curriculum and the dynamically learned models.

To alleviate the aforementioned issue, Kumar et al. [31] proposed a new model named self-paced learning (SPL) in which instead of being derived by predetermined heuristics, the curriculum design is embedded as a regularization term into the learning objective. The formulation of self-paced learning is as follows:

(1)

where is an age parameter for controlling the learning pace, and denotes the loss function which calculates the cost between the ground truth label and the estimated label . Here denotes the model parameter inside the decision function . It can seen from (1) that the loss of a sample is discounted by the latent weight variable and the objective of SPL is to minimize the weighted training loss together with a self-paced regularizer (SP-regularizer). (1) can be generally solved by alternative search strategy (ASS) method, in which the variables are divided into two disjoint blocks and in each iteration, a block of variables are optimized while keeping the other blocks fixed. With the fixed , (1) is a weighted training loss minimization problem which appears in many machine learning problems. And with the fixed , (1) is an optimization problem about with global optimum easily calculated by the following formulation:

(2)

It is not hard to see that self-paced learning implements the automatic selection of samples and then trains model only on those selected samples. When we update with a fixed , samples with losses which are smaller than a certain threshold are considered to be “easy” samples and will be selected in training (i.e., ), while the rest are considered to be too “difficult” to be learned for this and will be abandoned (i.e., ). When we update with a fixed , the classifier is trained only on the selected “easy” samples. The parameter corresponds to the “age” of the model that determines the ability of the model to learn “difficult” samples. When is small, the model can only learn from “easy” samples with small losses and as grows, more samples with larger losses can be learned to train a more “mature” model.

In (1), the so-called SP-regularizer is the negative -norm that induces the variable which takes only binary values, i.e., (selected samples) and (unselected samples). This scheme is called Hard Weighting. Hard Weighting can only determine whether a sample should be selected, which is not good enough because sometimes we also want to discriminate the importance of samples. Jiang et al. [32] theoretically abstracted the intrinsic conditions of SP-regularizer and proposed several soft weighting schemes such as Linear Soft Weighting and Logarithmic Soft Weighting. Zhao et al. [33] used self-paced learning for matrix factorization and proposed a new soft weighting schemes named Mixture Weighting which is a hybrid of the Soft and the Hard Weighting. Li et al. [34] proposed a novel Polynomial Soft Weighting Regularizer with an adjustable parameter in their multi-objective self-paced learning model. Soft Weighting assigns real-valued weights that reflects the latent importance of samples in training more faithfully, which is more reasonable and general than Hard Weighting. In the following, we shall list the formulation of Linear Soft Weighting, Mixture Weighting and Polynomial Soft Weighting respectively, together with their closed-form solutions :
Linear Soft Weighting:

Mixture Weighting:

Polynomial Soft Weighting:

Based on (1), many variations of self-paced learning regime have been proposed, such as self-paced re-ranking [32], self-paced learning with diversity [35], self-paced curriculum learning [36] and self-paced multiple-instance-learning [37]. And applications of self-paced learning in many machine learning and computer version tasks, like objective detector adaptation [38], long-term tricking [39], visual category discovery [40], face identification [41] and specific-class segmentation learning [42], have demonstrated its effectiveness especially its robustness when dealing with severally corrupted data.

Meng and Zhao [43] provided some theoretical evidences to illustrate the insights under self-paced learning. They proved that the ASS algorithm to solve the SPL problem exactly accords with the majorization minimization (MM) algorithm implemented on a latent nonconvex SPL objective function. Their work laid the theoretical foundation for SPL.

Comparing SPL with AdaBoost, we can see that there is one thing in common between them, that is, training samples with different losses are unequal and will be endowed with different weights. The way of SPL and AdaBoost to assign weights to samples is very different. For AdaBoost, samples with large losses are paid more attention to and are given larger weights. On the contrary, for SPL, samples with losses larger than a certain constant are thought as outliers and their weights are zero. On account of the fact that the reason why AdaBoost is not robust is that AdaBoost assigns too large weights to the samples with very large losses and those samples are usually outliers, we expect that SPL can provide a complementary assistance to restrict the sample weights of AdaBoost and improve its robustness. A new robust boosting algorithm named SPLBoost is proposed based on this new idea. We will introduce the details of SPLBoost and then present some theoretical results in the next section.

Iii SPLBoost

Iii-a Algorithm

Given training data ,…,, where is a vector-valued feature and . It is known that AdaBoost algorithm builds an additive logistic regression model for minimizing the expected risk based on the exponential loss function . In each iteration, supposing that we have a current classifier , AdaBoost then seeks a new weak learner through the following optimization problem:

(3)

Embeding (3) in a general SPL model, we can get a new algorithm named SPLBoost, which seeks a new weak learner and updates its weight in the final strong learner in every step:

(4)

where is a SP-regularizer and is the latent weight variable induced from , and is the “age” parameter. It is easy to see that the objective (4) of SPLBoost in each step is to minimize a weighted exponential loss together with a self-paced regularizer. In AdaBoost, the exponential loss is directly minimized and the outliers whose losses are usually very large are easy to be paid more attention to. SPLBoost overcomes this problem by assigns different weights to the exponential losses of training samples. Although different SP-regularizer can induce different format of , will always be zero when the loss is very large, which usually means that the corresponding sample is very likely to be outlier. In this way, SPLBoost can eliminate the negative influence of the outliers in training data to a large extent and improve the robustness of AdaBoost.

As in SPL, we shall solve (4) by alternative search strategy (ASS), which is a popular iterative process. In order to distinguish the iterative process of the ASS from the iterative process of SPLBoost for updating classifier , we call the former inner iteration, and the latter outer iteration. In every inner iteration, with fixed and , (4) is a optimization problem about with global optimum whose form is different for different SP-regularizer and has been presented in relevant papers [31, 32, 34]. Especially, When the SP-regularizer is the negative -norm, or say, Hard Weighting, we can plug the above exponential loss into the formula (2) and then can be easily calculated by the following formulation:

(5)

With fixed , (4) is a weighted exponential loss minimization problem:

(6)

The above (6) is similar to the minimization problem (3), thus we can solve it by using the similar idea of AdaBoost. Follow the way in [17], for fixed , we expand (6) to second order about :

(7)

Taking into consideration, we have

(8)

where which is the same as the sample weights defined in AdaBoost. We can find that solving the above weighted least squares problem to obtain the weak learner is equivalent to implement AdaBoost except for the use of latent weight variable . Thus, imitating the approach in AdaBoost, one can train from the training data with sample weights rather than . Given , we can directly optimize (6) to determine :

(9)

It is not hard to see the above objective is a convex function, thus to get the optimal , we can directly calculate its derivative and set it to be zero:

(10)

From (10), we have

(11)

where is the weighted misclassification error of weak learner . It is easy to see that the formula of in (11) is also consistent with AdaBoost except for the latent weight variable .

By alternative iteration, we can calculate the optimal , and for (4). Then we can get the update for :

(12)

In the next outer iteration, the latent weight variable can be initialized to the current and is updated as follows:

(13)

Since , the update is equivalent to

(14)

This update of is clearly the same as that in AdaBoost.

Input: training samples , iteration
           count , parameter ;
Initialization: , , ;

for t=1 to  do
     while not converge do
         1. Fit the classifier using weights
             on the training data;
         2. Compute ,
             ;
         3. Compute ;      
     end while
     4. Set ;
end for

Output: The strong classifier ;

Algorithm 1 SPLBoost algorithm

The details of SPLBoost are summarized in Algorithm 1. Next, we shall give some remarks about it.

Firstly, there are two layers of iteration in Algorithm 1: the outer iteration is to update the classifier , and the inner iteration is to find the optimal latent weight variable , the weak learner and its weight in the current outer iteration. When a new inner iteration starts, the latent weight variable is initialized to the optimal value provide by the last outer iteration and our experiments show that in this case, the inner iteration is rapidly converge and there are no significant difference between the case where the inner iteration runs only one step and the case where the inner iteration keeps running until converged. As such, we actually set the inner iteration as one step to speedup the algorithm implementation.

Secondly, for choosing the age parameter , it is easy to see that when the losses of samples are larger than , the latent weight variable of those samples could be zero, which means that those samples would not be selected during training process. Thus actually represents the “tolerance” of the algorithm toward noises and outliers. The larger is, the more “tolerant” the algorithm is to noises and outliers and the less the samples which are considered to be outliers that would be abandoned (). Furthermore, when is large enough, the SPBoost algorithm degenerates into AdaBoost. On the contrary, the smaller is, the more “rigorous” the algorithm is to large noises and outliers and more samples would be abandoned. Apparently, the value of has a huge influence on the performance of the algorithm and thus it is important to select a appropriate . In practice, we usually select the proper via cross validation.

Finally, since that the weak learner produced by Algorithm 1 is restricted in , the losses of the samples can only be or when we calculate in the first outer iteration step, where is the weight of the first weak learner. Considering that for the samples whose losses are larger than , the samples that are misclassified by the first weak learner could all not be selected for training in the next outer iteration if falls between , which usually means that too many samples would be abandoned due to the low accuracy of the weak learner. To avoid this kind of unreasonable situation, one can adopt a warm start produre, i.e., in the first few outer iteration steps let be a very large number instead of the input value, and after obtaining the corresponding weak learners, would be reset to be the input value. As such, the first few weak learners are trained by AdaBoost and as a result, the samples are determined whether they should be selected or not based on a classifier that is not so bad. According to our experience, it is reasonable that in the first three outer iterations is set to be , and then the satisfactory can be tuned in by cross validation.

(a) sample weight of various boosting algorithms
(b) sample weight of SPLBoost under various SP-regularizers
Fig. 1: (a) illustrates the sample weight of various boosting algorithms, including AdaBoost, LogitBoost, SavageBoost, RBoost and SPLBoost with , where the SP-regularizer is Linear Soft Weighting. (b) illustrates the sample weight of SPLBoost with various SP-regularizers, including Hard Weighting, Linear Soft Weighting, Polynomial Soft Weighting with and , where is fixed as 3.

Different from AdaBoost where the sample weight is , SPLBoost modifies the sample weight to be by introducing the latent weight variable . We shall show that this is the reason why SPLBoost is more robust. Fig.1(a) illustrates the sample weight of different boosting algorithms, including AdaBoost, LogitBoost, SavageBoost, RBoost and SPLBoost with , where the SP-regularizer is Linear Soft Weighting. It is easy to observe that AdaBoost pays too much attention on the misclassified samples with very large margins which are usually outliers. Thus, AdaBoost is usually very sensitive to outliers. In LogitBoost the weights of the misclassified samples with very large margins are smaller than that in AdaBoost, but they are still larger than the weights of any other samples, thus LogitBoost is still easily affected by outliers. For two popular robust boosting algorithms with non-convex loss functions, i.e., SavageBoost and RBoost, they give small weights to the misclassified samples with very large margins, thus they are usually insensitive to outliers. For SPLBoost, if the margin of the misclassified samples is larger than a certain constant which is determined by , the weights of those samples could be zero. In that way, SPLBoost can more thoroughly eliminate the influence of the always misclassified samples, which are always the outliers. Fig.1(b) illustrates the sample weight of SPLBoost with different SP-regularizers, here is fixed as 3. One can see that different SP-regularizers provide different distributions of the sample weight which may be more suited to different training data. Some distributions are spiculate and the others are gentle, but they could all be zero when the margins of the misclassified samples are large enough, which guarantees their robustness to outliers.

Iii-B Theoretical Analysis

In this subsection we shall provide some theoretical analysis of SPLBoost which could show a clear theoretical evidence to clarify why SPLBoost is capable of performing robust especially in outlier/heavy noise cases.

For convenience, we briefly write the exponential loss function as and as in the following. According to the Theorem 1 in [43], it can be derived that, for latent weight variable conducted by an SP-regularizer and calculated by , and given a fixed and , it holds that:

(15)

where

(16)

With this, denote

(17)

and we can then easily get that

(18)

which verifies that can be used as a surrogate function of in the MM algorithm. We can then ready to prove the following result.

Theorem 1.

The SPLBoost algorithm is equivalent to the MM algorithm on a minimization problem of the latent SPLBoost objective with the latent loss .

Proof.

Assume that we have completed times outer iteration and get the classifier . Denote and as the weak classifier and its weight learned from the th inner iteration in the th outer iteration, then such two alternative search steps in the next iteration can be explained as a standard MM scheme. Precisely, there are two cases should be dealt with.
Case 1. If the inner iteration have not converged after the th step, we denote the surrogate function

where .
Majorization step: To obtain each , we only need to calculate by solving the following problem under the corresponding SP-regularizer :

This exactly complies with updating in Algorithm 1.
Minimization step: we need to calculate:

which is exactly equivalent to update and in Algorithm 1.
Case 2. If the inner iteration have converged after the th step with the finally learned weak classifier and its weight , we denote and the surrogate function

where
Majorization step: To obtain each ,we only need to calculate by solving the following problem under the corresponding SP-regularizer :

This exactly complies with updating in Algorithm 1.
Minimization step: we need to calculate:

which is exactly equivalent to the steps of update and in Algorithm 1.

With Theorem 1, various off-the-shelf theoretical results of MM algorithm can then be used to explain the properties of SPLBoost. Particularly, based on the well-known convergence theory of MM algorithm, that is, the lower-bounded latent SPLBoost objective is monotonically decreasing during the iteration. Thus, a weak convergence result of SPLBoost can be directly obtained.

A number of formulas of the latent loss under various SP-regularizers have been calculated and presented in [34, 43], and we only need to plug the exponential loss function into those formulas to get the latent SPLBoost losses under various SP-regularizers. Fig. 2(a) illustrates some popular loss functions, including exponential loss, logistic loss, Savage loss, Savage2 loss, 0-1 loss and latent SPLBoost loss with , where the SP-regularizer is Linear Soft Weighting. It is easy to see from Fig. 2(a) that, compared with the original exponential loss function, the latent SPLBoost loss has an evident suppressing effect on the large losses. When the loss is larger than a certain threshold which is determined by the “age” parameter , the latent SPLBoost loss becomes a constant thereafter, which rationally explains why SPLBoost shows good robustness to the outliers and heavy noises. The misclassified samples with very large margins will have constant SPLBoost losses and thus have no effect on the model training due to their zero gradients. Corresponding to the original SPLBoost model, the latent weight variable of those large-loss samples will be 0, and thus those samples will have no influence on the training of the weak learners. actually determines the “degree” of the suppressing effect SPLBoost loss has on the large losses. The larger is, the gentler the suppressing effect is, and vice versa. When , the suppressing effect completely disappears and the latent SPLBoost loss under Hard Weighting SP-regularizer degenerates into exponential loss. Fig. 2(b) illustrates the latent SPLBoost loss under various SP-regularizers, including Hard Weighting, Linear Soft Weighting, Polynomial Soft Weighting with and , where is fixed as 3. We can see that different SP-regularizers give different shapes of the latent SPLBoost loss, but they will all becomes constant when the loss is larger than a certain constant, which guarantees their robustness to the outliers and heavy noises.

(a) various loss functions
(b) latent SPLBoost loss under various SP-regularizers
Fig. 2: (a) illustrates various loss functions, including exponential loss, logistic loss, Savage loss, Savage2 loss, 0-1 loss and latent SPLBoost loss with , where the SP-regularizer is Linear Soft Weighting. (b) illustrates the latent SPLBoost loss under various SP-regularizers, including Hard Weighting, Linear Soft Weighting, Polynomial Soft Weighting with and , where is fixed as 3.

According to the above analysis, it is easy to see that SPLBoost is actually a optimization problem with a non-convex loss function. Different from many other robust boosting algorithms which directly optimize the non-convex objective functions, SPLBoost decomposes the minimization of the robust but difficult-to-solve non-convex problem into two much easier optimization problems with respect to the latent weight variable and the weak learner . In this sense, SPLBoost avoids the difficulty of non-convex optimization and simplifies the solving of such a problem.

Iv Experiments

In this section, we will test the robustness of the proposed SPLBoost algorithm through the thorough experiments in both synthetic and UCI data set.

Iv-a Synthetic Gaussian Data Set

It has been shown that the loss functions used by the boosting algorithms have an important effect on the robustness of the algorithms to the outliers and heavy noises. Moreover, the reweighting strategy of a boosting algorithm directly comes from the loss function it used and directly determines how much attention the algorithm pays to the various samples. Thus, a reasonable reweighting strategy is necessary to a robust boosting algorithm and to weaken the interference of the outliers to the training, a good reweighting strategy should give the least possible weights to the outliers. In the synthetic data set, the underlying distribution of the samples and the information of the outliers added to those samples is known, thus it is easy to determine the optimal Bayes decision boundary for the classification problem and observe the rationality of the distribution of the sample weights. To compare the different reweighting strategies of different boosting algorithms, we first evaluate the proposed SPLBoost algorithm, AdaBoost and some other robust boosting algorithm, including LogitBoost, SavageBoost, RBoost and RobustBoost, on a synthetic Gaussian data set, and to directly visualize the experimental results, the data set is two dimensions. The experimental settings and results are as follows.

According to the 2-D Gaussian distributions

and

we first generate 100 samples for both the negative and positive classes, then randomly select 15% from both the two classes and reverse their labels, and those samples selected can be considered to be outliers. In this way we have obtained the two-class training data with 15% outliers and then we can train the classifiers using the aforementioned boosting algorithms. For AdaBoost, SPLBoost and RobustBoost in which the weak learner algorithms can be classification methods, the classification tree C is selected to be the weak learner and in SPLBoost the Hard Weighting is used to be the SP-regularizer. And for LogitBoost and RBoost in which the weak learner algorithms are restricted to regression methods, the regression tree CART is used to be the weak learner.

(a) original data
(b) AdaBoost
(c) LogitBoost
(d) SavageBoost
(e) RBoost
(f) RobustBoost
(g) SPLBoost with
(h) SPLBoost with
(i) SPLBoost with
Fig. 3: The optimal Bayes decision boundary and the sample weights of AdaBoost, LogitBoost, SavageBoost, RBoost, RobustBoost and SPLBoost with , where the SP-regularizer in SPLBoost is Hard Weighting.

Fig. 3 illustrates the performance of all the competing boosting algorithms. In all the sub-figures of Fig. 3, pluses represent the positive training samples and cross marks represent the negative training samples. Blue squares represent those training samples that are generated from the Gaussian distribution of the negative class, but are labeled as positive samples. They are actually the outliers added to the negative class. In a similar way, red circles represent the outliers that added to the positive class. Black circles represent the training samples whose sample weights are 0 in SPLBoost, i.e., the samples which are considered to be outliers and thus have no effects on the weak learner training in SPLBoost algorithm. To visually observe the distribution of the sample weights of the various boosting algorithms, the sizes of the pluses, cross marks, blue squares and red circles are in proportion to the sample weights of the corresponding training samples. Since that the sample weights of the training samples marked by black circles are 0, the sizes of those black circles are all the same and have no relationship with their weights. As such, one can easily observe the training samples that the boosting algorithms focus on and the samples with 0 sample weights in SPLBoost.

Basically, several observation can be made from Fig. 3. Firstly, in Fig. 3(b), most of the points with large sizes are surrounded by red circles or blue squares, which means that most of the training samples with large sample weights are outliers. This reveals that AdaBoost is so sensitive to the outliers. Actually, the exponential loss used by AdaBoost makes it to pay too much attention to the misclassified samples with large margins and those samples are usually outliers. Secondly, it can be seen from Fig. 3(c) that the weights of most of the outliers are still larger than that of the correct training samples, though LogitBoost gives gentler weight on such outliers than AdaBoost. This is a common drawback of convex loss functions, as stated by [24]. Thirdly, Fig. 3(d), Fig. 3(e) and Fig. 3(f) show the performances of SavageBoost, RBoost and RobustBoost respectively, which are more satisfactory than that of AdaBoost and LogitBoost because of their use of non-convex loss functions. In addition, compared with SaveBoost, RBoost makes the sizes of such same outliers are smaller due to the designing of numerical stably solver. It still assigns some relatively large weights to more number of points, however, which can certainly affect its performance in practice. As for RobustBoost, the weights of the outliers that near to Bayes decision boundary are still larger than that of other points, which means that RobustBoost is somehow affected by outliers. Fourthly, based on Fig. 3(g-i), one can see that different gives different performance in SPLBoost. Specifically, Compared with Fig. 3(h), in Fig. 3(g) where is smaller, the algorithm is more ”rigorous” to the outliers and more samples are considered to be outliers. On the contrary, in Fig. 3(i) where is larger, the algorithm is more ”tolerant” and fewer samples are considered to be outliers. In addition, it is not to see SPLBoost performs much better other competing methods.

To sum up, compared with other boosting algorithms, SPLBoost gives more reasonable sample weight distribution and as a result can weaken the influences of the outliers in a larger extent.

Iv-B UCI Data Set

In this subsection, we shall demonstrate the experiment results in seventeen UCI data sets. And Table I lists their detailed statistical information.

Data Set Sample Number Feature Number Percentage of
Majority Class
adult 48842 14 75.9
bank 45211 17 88.5
blood 748 4 76.2
connect-4 67557 42 75.4
magic 19020 10 64.8
miniboone 130064 50 71.9
ozone 2536 72 97.1
pima 768 8 65.1
parkinsons 195 22 75.4
pb-T-OR-D 102 4 86.3
ringnorm 7400 20 50.5
spambase 4601 57 60.6
titanic 2201 3 67.7
oocMerl4D 1022 41 68.7
st-german-credit 1000 24 70.0
twonorm 7400 20 50.0
vc-2classes 310 6 67.7
TABLE I: Statistical Information of the UCI Data Sets

Our experiment settings are as follows. For every data set, we randomly select samples as the training data and the rest to be the test data. To evaluate the robustness of those compared boosting algorithms, we randomly select a certain proportion of the training data points and flip their labels. The noise levels are set to be , , , , , respectively. The maximum iteration step is set to be 200, and a five fold cross validation procedure is used to determine the appropriate number of iteration steps of those boosting algorithms and some other parameters. As in the last experiment in synthetic Gaussian data set, the weak learner of AdaBoost, SPLBoost and RobustBoost is chosen as C, while for LogitBoost and RBoost, the regression tree CART is used as the weak learner. To illustrate the robust performance of SPLBoost with different SP-regularizers, we implement SPLBoost with four popular SP-regularizers namely Hard Weighting, linear Soft Weighting, Polynomial Soft Weighting with and , which are denoted as hard, linear, lowerconvex and upperconvex, respectively. This procedure is repeated for 50 times and an average of the testing error rates that change with different noise levels for the various boosting algorithms are plotted in Fig.4.

Fig. 4: The testing error rates changing with different noise levels for the various boosting algorithms on seventeen UCI data sets.
Fig. 5: Statistics of rank values on seventeen UCI data sets with five noise levels.

It can be seen from Fig.4 that once there are outliers in training data, the performance of AdaBoost can be heavily depraved and is not comparable with LogitBoost, SavageBoost, RBoost, RobustBoost and SPLBoost, which confirms that AdaBoost is very sensitive to the noisy data. We can also see that for most of the data sets, SPLBoost gives lower test errors than other boosting algorithms, which reveals that SPLBoost has best robustness among all the compared methods. Additionally, it is not hard to see that there are no significantly difference between the performance of the SPLBoost using four different SP-regularizers.

To better demonstrate the performance of those compared algorithms, we can rank their performance from 1 (the algorithm with the lowest mean testing error rate) to 9 (the algorithm with the highest mean testing error rate) in those total 85 cases (17 UCI data sets and 5 noise levels). Then we calculates the ratio of the data sets for each boosting algorithm among the top- ranked ones and the results are summarized in Fig. 5. It can be easily seen that in most cases, the performance of SPLBoost is much better than other competing boosting algorithms, which clearly confirms that SPLBoost has better resistance to large noise and outliers.

V Conclusion

Boosting can be interpreted as a gradient descent technique to minimize an underlying loss function, and the loss function determines the robustness of the algorithm. Convex loss functions such as the exponential loss used by AdaBoost and the logistic loss used by LogitBoost have been proven to be sensitive to the outliers. Non-convex loss functions such as Savage loss used by SavageBoost and Savage2 loss used by RBoost have illustrated superior robustness over popular convex losses, however, solving the non-convex optimization problem derived from non-convex losses is not an easy task.

In this paper, instead of designing new loss function, we combine the classical Discrete AdaBoost algorithm with self-paced learning regime, that is, a robust algorithm framework which has been attracting troumendous attention in machine learning and computer vision. Thus, we come up with a new robust boosting algorithm named SPLBoost. Experiments shows that SPLBoost could have a superior performance over other popular ones once outliers exist in training data.

However, there are still some interesting works need to be done in the future. On one hand, it is not hard to see that the SPLBoost can be treated as a general framework to improve the robustness of various boosting algorithms besides AdaBoost. As such, one can try some other popular boosting algorithms such as LogitBoost, Boost to get better performance. On the other hand, although we have proven the equivalence between the SPLBoost and a MM algorithm implemented on a latent non-convex objective function, the detailed theoretical properties of SPLBoost, including consistency, convergence rate, and error bound, are needed to be further investigated.

Acknowledgment

This work was supported by the National Natural Science Foundation of China (Grant Nos. 11501440, 61303168, 61333019 and 61373114).

References

  • [1] Yoav Freund and Robert E Schapire. A desicion-theoretic generalization of on-line learning and an application to boosting. In

    European Conference on Computational Learning Theory

    , pages 23–37. Springer, 1995.
  • [2] Robert E Schapire and Yoav Freund. Boosting: Foundations and Algorithms. MIT press, 2012.
  • [3] Ron Meir and Gunnar Rätsch. An introduction to boosting and leveraging. In Advanced Lectures on Machine Learning, pages 118–183. Springer, 2003.
  • [4] C Andy Tsao and Yuan-chin Ivan Chang. A stochastic approximation view of boosting. Computational Statistics & Data Analysis, 52(1):325–334, 2007.
  • [5] Jerome H Friedman.

    Greedy function approximation: a gradient boosting machine.

    The Annals of statistics, 29(5):1189–1232, 2001.
  • [6] Yoav Freund, Robert E Schapire, et al. Experiments with a new boosting algorithm. In International Conference on Machine Learning, volume 96, pages 148–156, 1996.
  • [7] Robert E Schapire and Yoram Singer. Improved boosting algorithms using confidence-rated predictions. Machine Learning, 37(3):297–336, 1999.
  • [8] Paul Viola and Michael Jones. Rapid object detection using a boosted cascade of simple features. In

    Proceeding of the IEEE Conference on Computer Vision and Pattern Recognition

    , pages 511–518. IEEE, 2001.
  • [9] Paul Viola and Michael J Jones.

    Robust real-time face detection.

    International Journal of Computer Vision, 57(2):137–154, 2004.
  • [10] Fengjun Lv and Ramakant Nevatia. Recognition and segmentation of 3-d human action using hmm and multi-class adaboost. In European Conference on Computer Vision, pages 359–372. Springer, 2006.
  • [11] James Bergstra, Norman Casagrande, Dumitru Erhan, Douglas Eck, and Balázs Kégl. Aggregate features and adaboost for music classification. Machine Learning, 65(2-3):473–484, 2006.
  • [12] Jonathan Cheung-Wai Chan and Desiré Paelinckx.

    Evaluation of random forest and adaboost tree-based ensemble classification and spectral band selection for ecotope mapping using airborne hyperspectral imagery.

    Remote Sensing of Environment, 112(6):2999–3011, 2008.
  • [13] Benoît Frénay and Michel Verleysen. Classification in the presence of label noise: a survey.

    IEEE Transactions on Neural Networks and Learning Systems

    , 25(5):845–869, 2014.
  • [14] Taghi M Khoshgoftaar, Jason Van Hulse, and Amri Napolitano. Comparing boosting and bagging techniques with noisy and imbalanced data. IEEE Transactions on Systems, Man, and Cybernetics-Part A: Systems and Humans, 41(3):552–568, 2011.
  • [15] Jingjing Cao, Sam Kwong, and Ran Wang. A noise-detection based adaboost algorithm for mislabeled data. Pattern Recognition, 45(12):4451–4465, 2012.
  • [16] Carla E. Brodley and Mark A. Friedl. Identifying mislabeled training data.

    Journal of Artificial Intelligence Research

    , 11:131–167, 1999.
  • [17] Jerome Friedman, Trevor Hastie, Robert Tibshirani, et al. Additive logistic regression: a statistical view of boosting (with discussion and a rejoinder by the authors). The Annals of Statistics, 28(2):337–407, 2000.
  • [18] Chunhua Shen, Hanxi Li, and Anton Van Den Hengel. Fully corrective boosting with arbitrary loss and regularization. Neural Networks, 48:44–58, 2013.
  • [19] Carlos Domingo and Osamu Watanabe. Madaboost: A modification of adaboost. In Proceeding of the Thirteenth Annual Conference on Computational Learning Theory, pages 180–189. Springer, 2000.
  • [20] Michael Collins, Robert E Schapire, and Yoram Singer. Logistic regression, adaboost and bregman distances. Machine Learning, 48(1):253–285, 2002.
  • [21] Alexander Hanbo Li and Jelena Bradic. Boosting in the presence of outliers: adaptive classification with non-convex loss functions. To appear in Journal of the American Statistical Association, 2016.
  • [22] Vladimir Koltchinskii and Dmitry Panchenko. Empirical margin distributions and bounding the generalization error of combined classifiers. The Annals of Statistics, pages 1–50, 2002.
  • [23] Tong Zhang, Bin Yu, et al. Boosting with early stopping: convergence and consistency. The Annals of Statistics, 33(4):1538–1579, 2005.
  • [24] Philip M Long and Rocco A Servedio. Random classification noise defeats all convex potential boosters. Machine Learning, 78(3):287–304, 2010.
  • [25] Yoav Freund. Boosting a weak learning algorithm by majority. Information and Computation, 121(2):256–285, 1995.
  • [26] Yoav Freund. An adaptive version of the boost by majority algorithm. Machine Learning, 43(3):293–318, 2001.
  • [27] Yoav Freund. A more robust boosting algorithm. arXiv preprint arXiv:0905.2138, 2009.
  • [28] Hamed Masnadi-Shirazi and Nuno Vasconcelos. On the design of loss functions for classification: theory, robustness to outliers, and savageboost. In Advances in Neural Information Processing Systems, pages 1049–1056, 2009.
  • [29] Qiguang Miao, Ying Cao, Ge Xia, Maoguo Gong, Jiachen Liu, and Jianfeng Song. Rboost: label noise-robust boosting algorithm based on a nonconvex loss function and the numerically stable base learners. IEEE Transactions on Neural Networks and Learning Systems, 27(11):2216–2228, 2016.
  • [30] Yoshua Bengio, Jérôme Louradour, Ronan Collobert, and Jason Weston. Curriculum learning. In Proceedings of the 26th Annual International Conference on Machine Learning, pages 41–48. ACM, 2009.
  • [31] M Pawan Kumar, Benjamin Packer, and Daphne Koller. Self-paced learning for latent variable models. In Advances in Neural Information Processing Systems, pages 1189–1197, 2010.
  • [32] Lu Jiang, Deyu Meng, Teruko Mitamura, and Alexander G Hauptmann. Easy samples first: self-paced reranking for zero-example multimedia search. In Proceedings of the 22nd ACM International Conference on Multimedia, pages 547–556. ACM, 2014.
  • [33] Qian Zhao, Deyu Meng, Lu Jiang, Qi Xie, Zongben Xu, and Alexander G Hauptmann. Self-paced learning for matrix factorization. In Proceedings of the Twenty-ninth AAAI Conference on Artificial Intelligence, pages 3196–3202. AAAI Press, 2015.
  • [34] Hao Li, Maoguo Gong, Deyu Meng, and Qiguang Miao. Multi-objective self-paced learning. In Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence, pages 1802–1808. AAAI Press, 2016.
  • [35] Lu Jiang, Deyu Meng, Shoou-I Yu, Zhenzhong Lan, Shiguang Shan, and Alexander Hauptmann. Self-paced learning with diversity. In Advances in Neural Information Processing Systems, pages 2078–2086, 2014.
  • [36] Lu Jiang, Deyu Meng, Qian Zhao, Shiguang Shan, and Alexander G Hauptmann. Self-paced curriculum learning. In Proceedings of the Twenty-ninth AAAI Conference on Artificial Intelligence, pages 2694–2700. AAAI Press, 2015.
  • [37] Dingwen Zhang, Deyu Meng, and Junwei Han. Co-saliency detection via a self-paced multiple-instance learning framework. IEEE Transactions on Pattern Analysis and Machine Intelligence, 39(5):865–878, 2017.
  • [38] Kevin Tang, Vignesh Ramanathan, Li Fei-Fei, and Daphne Koller. Shifting weights: adapting object detectors from image to video. In Advances in Neural Information Processing Systems, pages 638–646, 2012.
  • [39] James S Supancic and Deva Ramanan. Self-paced learning for long-term tracking. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 2379–2386. IEEE, 2013.
  • [40] Yong Jae Lee and Kristen Grauman. Learning the easy things first: Self-paced visual category discovery. In Proceeding of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1721–1728. IEEE, 2011.
  • [41] Liang Lin, Keze Wang, Deyu Meng, Wangmeng Zuo, and Lei Zhang. Active self-paced learning for cost-effective and progressive face identification. To appear in IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017.
  • [42] M Pawan Kumar, Haithem Turki, Dan Preston, and Daphne Koller. Learning specific-class segmentation from diverse data. In 2011 International Conference on Computer Vision, pages 1800–1807. IEEE, 2011.
  • [43] Deyu Meng and Qian Zhao. What objective does self-paced learning indeed optimize? arXiv preprint arXiv:1511.06049, 2015.