🧮 Brain Teaser

The Boosting Paradox: Can a Committee of Weak Learners Beat a Strong One?

AdaBoost constructs a strong classifier by combining many weak learners — classifiers that do only slightly better than random guessing (error rate ϵt<1/2\epsilon_t < 1/2).

Each weak learner ht:X{1,+1}h_t : \mathcal{X} \to \{-1, +1\} has weighted error ϵt\epsilon_t on the current distribution, and is assigned weight

αt=12ln ⁣(1ϵtϵt).\alpha_t = \frac{1}{2} \ln\!\left(\frac{1 - \epsilon_t}{\epsilon_t}\right).

The final classifier is H(x)=sign ⁣(t=1Tαtht(x))H(x) = \text{sign}\!\left(\sum_{t=1}^T \alpha_t h_t(x)\right).

Show that the training error of AdaBoost decreases exponentially fast:

If each weak learner achieves error ϵt12γ\epsilon_t \leq \frac{1}{2} - \gamma for some fixed γ>0\gamma > 0, then after TT rounds the training error satisfies

TrainingError(H)e2γ2T.\text{TrainingError}(H) \leq e^{-2\gamma^2 T}.

Hint: Track the exponential loss 1ni=1neyiFT(xi)\frac{1}{n}\sum_{i=1}^n e^{-y_i F_T(x_i)} where FT(x)=t=1Tαtht(x)F_T(x) = \sum_{t=1}^T \alpha_t h_t(x), and show each round multiplies this quantity by at most e2γ2e^{-2\gamma^2}.

AdaBoostboostingexponential losstraining errorweak learners

Answer: AdaBoost Exponential Training Error Bound

Key Idea / Intuition

The insight is that training error is upper bounded by an exponential loss, and each round of AdaBoost multiplies that exponential loss by a factor strictly less than 1. The weights αt\alpha_t are chosen precisely to make this multiplicative factor as small as possible — in fact, minimizing the per-round factor is what uniquely determines αt\alpha_t. Once you see the bound as a telescoping product, exponential decay in TT is immediate.


Formal Proof / Solution

Step 1: Training error is bounded by exponential loss.

For any margin yiFT(xi)y_i F_T(x_i): if H(xi)yiH(x_i) \neq y_i, then yiFT(xi)0y_i F_T(x_i) \leq 0, so eyiFT(xi)1e^{-y_i F_T(x_i)} \geq 1. Therefore,

TrainingError(H)=1ni=1n1[yiFT(xi)0]1ni=1neyiFT(xi).\text{TrainingError}(H) = \frac{1}{n}\sum_{i=1}^n \mathbf{1}[y_i F_T(x_i) \leq 0] \leq \frac{1}{n}\sum_{i=1}^n e^{-y_i F_T(x_i)}.

Step 2: Track how the exponential loss evolves each round.

AdaBoost maintains sample weights wi(t)w_i^{(t)}, initialized to wi(1)=1/nw_i^{(1)} = 1/n, and updated as

wi(t+1)=wi(t)eαtyiht(xi).w_i^{(t+1)} = w_i^{(t)} \cdot e^{-\alpha_t y_i h_t(x_i)}.

Unrolling the recursion gives wi(T+1)=1neyiFT(xi)w_i^{(T+1)} = \frac{1}{n} e^{-y_i F_T(x_i)}, so

1ni=1neyiFT(xi)=i=1nwi(T+1).\frac{1}{n}\sum_{i=1}^n e^{-y_i F_T(x_i)} = \sum_{i=1}^n w_i^{(T+1)}.

It suffices to show iwi(T+1)e2γ2T\sum_i w_i^{(T+1)} \leq e^{-2\gamma^2 T}.

Step 3: Per-round multiplicative factor.

Define Zt=iwi(t+1)/iwi(t)Z_t = \sum_i w_i^{(t+1)} / \sum_i w_i^{(t)} (the normalization constant at round tt). Then

iwi(T+1)=t=1TZt.\sum_i w_i^{(T+1)} = \prod_{t=1}^T Z_t.

Expanding ZtZ_t:

Zt=iwi(t)eαtyiht(xi)=ϵteαt+(1ϵt)eαt,Z_t = \sum_i w_i^{(t)} e^{-\alpha_t y_i h_t(x_i)} = \epsilon_t e^{\alpha_t} + (1-\epsilon_t)e^{-\alpha_t},

where ϵt\epsilon_t is the weighted error of hth_t and we split into misclassified (yiht(xi)=1y_i h_t(x_i) = -1) and correct (yiht(xi)=+1y_i h_t(x_i) = +1) examples.

Step 4: Minimize ZtZ_t over αt\alpha_t.

Setting ddαtZt=0\frac{d}{d\alpha_t} Z_t = 0 gives the optimal

αt=12ln ⁣(1ϵtϵt),\alpha_t = \frac{1}{2}\ln\!\left(\frac{1-\epsilon_t}{\epsilon_t}\right),

which is exactly what AdaBoost uses! Substituting back:

Zt=ϵt1ϵtϵt+(1ϵt)ϵt1ϵt=2ϵt(1ϵt).Z_t = \epsilon_t \sqrt{\frac{1-\epsilon_t}{\epsilon_t}} + (1-\epsilon_t)\sqrt{\frac{\epsilon_t}{1-\epsilon_t}} = 2\sqrt{\epsilon_t(1-\epsilon_t)}.

Step 5: Apply the weak learning assumption.

Since ϵt12γ\epsilon_t \leq \frac{1}{2} - \gamma, we have ϵt(1ϵt)14γ2\epsilon_t(1-\epsilon_t) \leq \frac{1}{4} - \gamma^2, so

Zt=2ϵt(1ϵt)214γ2=14γ2e2γ2,Z_t = 2\sqrt{\epsilon_t(1-\epsilon_t)} \leq 2\sqrt{\tfrac{1}{4}-\gamma^2} = \sqrt{1-4\gamma^2} \leq e^{-2\gamma^2},

where the last step uses 1xex/2\sqrt{1-x} \leq e^{-x/2} for x[0,1]x \in [0,1].

Step 6: Conclude.

TrainingError(H)t=1TZt(e2γ2)T=e2γ2T.\text{TrainingError}(H) \leq \prod_{t=1}^T Z_t \leq \left(e^{-2\gamma^2}\right)^T = e^{-2\gamma^2 T}.

Conceptual punchline: The weight αt\alpha_t is not chosen by guesswork — it is the unique value that minimizes the per-round multiplicative factor ZtZ_t. The entire algorithm can be derived by asking: "what assignment of αt\alpha_t makes the exponential loss shrink fastest?" This reveals AdaBoost as coordinate descent on the exponential loss, a beautiful unification of a seemingly heuristic procedure with proper optimization.

Source: The Elements of Statistical Learning, Hastie, Tibshirani, Friedman (2nd ed.), Chapter 10

Type: ML/StatsSource: The Elements of Statistical Learning, Hastie, Tibshirani, Friedman (2nd ed.), Chapter 10Edit on GitHub ↗