10.5 なぜ指数損失なのか — AdaBoostが「正しかった」証拠
損失関数の選択が、究極の分類器への道筋を決める
AdaBoostが使う「指数損失」は、なぜその形なのか? この問いに答えるだけで、AdaBoostが理論上の最強分類器——ベイズ最適分類器——に 直結している深い理由が見えてきます。 指数損失を最小化する関数は何か。その答えを一緒に導きましょう。
損失関数を「選ぶ」とはどういうことか
「機械学習は損失関数の最小化問題だ」とよく言われます。 回帰なら二乗誤差、分類ならクロスエントロピー……。 私たちはほとんど無意識に損失関数を選んでいます。
しかし、本当はここに大きな問いがあります。
「ある損失関数を最小化すると、いったい何が手に入るのか?」
例えば、二乗誤差を最小化すると何が手に入るか考えてみてください。
最適解は条件付き期待値——つまり「平均を予測する」ことを意味します。 同じ考え方で絶対値損失を最小化すると、最適解は条件付き中央値になります。「真ん中を予測する」わけです。
つまり、損失関数が何かを決めると、「最適解が何になるか」も自動的に決まるのです。 これを「母集団最小化解(population minimizer)」と呼びます。 「母集団」とは「全データの真の分布」のことで、データが無限にあるという理想状況で、 その損失関数を最小化したらどんな関数になるか、という意味です。

左から「二乗誤差(緑)→平均」「絶対値損失(黄)→中央値」「指数損失(赤)→?」。 指数損失だけ、答えが明らかでありません。
ここで、AdaBoostが使う指数損失について、 同じ問いを立ててみましょう。
二値分類なので $Y \in \{-1, +1\}$ です。 各 $x$ ごとに、$Y$ が $+1$ か$-1$ の2つしか取らない期待値を最小化すれば良いだけ。 やってみると——意外な結果が出てきます。
指数損失を「微分して0」にすると何が起こるか
期待損失を $f(x)$ について最小化するなら、 微分して0にすれば良い——高校で習った通りです。やってみましょう。
まず、期待値の中身を $Y$ の値で場合分けして展開します。$Y$ は $+1$ か$-1$ しか取らないので、$p(x) = \Pr(Y = +1 | x)$ と置くと:
「$Y=+1$ になる確率 $p$ で$e^{-f}$、$Y=-1$ になる確率 $1-p$ で$e^{+f}$」の重み付き平均ですね。
これを $f(x)$ で微分して0と置きます:

$p(x) \cdot e^{-f(x)} = (1-p(x)) \cdot e^{+f(x)}$ を変形して両辺の対数を取ると:
$f(x)$ を左辺に集めて2で割ると:
驚くべき結果です。これは log-odds(対数オッズ)の半分に他なりません。
ここで:
- $p(x) = \Pr(Y=+1|x)$ は入力 $x$ に対する 「クラス +1 である確率」
- $1 - p(x) = \Pr(Y=-1|x)$ は「クラス -1 である確率」
- $\log(p / (1-p))$ は ロジット(logit)または対数オッズと呼ばれる量。 クラスの偏りを連続値($-\infty$ から$+\infty$ まで)で表現します。 比が大きいほど +1 になりやすく、比が1のとき(五分五分)は 0 になります
ロジスティック回帰でも、この量が中心的な役割を果たします。 指数損失の最小化が、ロジットという統計学の根幹概念に直結していたわけです。
なぜ「半分」なのか — 加法モデルの構造から考える
ここで気になる人もいるはずです。
「あれ?ロジスティック回帰では $\log(p/(1-p))$ を直接モデル化するのに、 なぜここでは『半分』なんだろう?」
これは、AdaBoostが 加法モデル だからです。
AdaBoostは弱学習器を次のように足し合わせていきます:
各弱学習器 $G_m(x) \in \{-1, +1\}$ は強度$\alpha_m$ で予測に貢献します。 最終的な「決定」は $\mathrm{sign}(f(x))$ で行います——$f(x) > 0$ ならクラス +1、$f(x) < 0$ ならクラス -1。
つまりAdaBoostにとって、$f(x)$ の絶対値はどうでもよく、符号だけが重要なのです。 だから、ロジットの「半分」だろうが「2倍」だろうが、最終判断には影響しません。 式の係数 $\frac{1}{2}$ は、 指数の左右対称性 $e^{-f}$ vs$e^{+f}$ から自然に出てきた数学的な調整係数です。

肝心なのは、母集団最小化解$f^*(x) = \frac{1}{2} \log \frac{p(x)}{1-p(x)}$の 符号 です:
- $p(x) > 0.5$(+1 になりやすい)なら$\log(p/(1-p)) > 0$ なので$f^*(x) > 0$
- $p(x) < 0.5$ なら$f^*(x) < 0$
- $p(x) = 0.5$ ちょうど五分五分で$f^*(x) = 0$
つまり、$\mathrm{sign}(f^*(x))$ は 「クラス +1 の確率が 0.5 より大きいか」を返します。
これこそが ベイズ最適分類器 です。
「ベイズ最適」とは「事後確率に従って多数派に賭ける」戦略のこと。 確率が高い方のクラスを答えれば、長期的には誤分類の回数が最小になる—— これは情報理論の基本的な結果で、どんなアルゴリズムを使っても、これより誤分類率を小さくすることは原理的に不可能な 「理論上の天井」です。
AdaBoostが目指している到達点が、この理論上の天井そのものだった。 これが10.5節の核心です。
確率にも変換できる — 隠れていたシグモイド
ところで、$f^*(x)$ から逆に$p(x) = \Pr(Y=+1|x)$ を求めるとどうなるでしょう。
$f^*(x) = \frac{1}{2} \log \frac{p(x)}{1 - p(x)}$ を$p(x)$ について解いてみます。 両辺を2倍して指数を取ると$e^{2f(x)} = \frac{p(x)}{1-p(x)}$。 これを整理すると——

これは ロジスティック関数(シグモイド関数)そのものです。
ロジスティック回帰でも、ニューラルネットワークの最終層でも、確率を表現するために必ず登場する、 あの S 字カーブ。$f(x)$ が大きいほど確率は 1 に近づき、 小さいほど 0 に近づきます。
つまり AdaBoost の出力 $f(x)$ は、それ自体は単なる「重み付き多数決の合計値」のはずなのに、 無限のデータと無限の弱学習器があれば、シグモイド変換を1つかますだけで確率になる—— 指数損失の最小化はそういう性質を内包していたのです。
AdaBoost は確率モデルではない、ヒューリスティックなアルゴリズムだ—— そう長い間思われていました。しかしこの導出は、その印象を真っ向から覆します。 AdaBoost は:
- アルゴリズム的には「重みを更新して弱学習器を足す」だけ
- 統計的には「ロジットを推定している」
- 結果として「ベイズ最適分類器」になる
この3つが、実は 同じ操作の3つの顔 だった、ということです。
ロジスティック損失との「双子の関係」
ここまで来ると、もう一つ気になることがあります。
「同じロジットを最適解に持つ損失関数は、他にもあるのでは?」
その通りです。代表例が 二項負対数尤度(ロジスティック損失)です:
驚くべきことに、これも母集団最小化解は指数損失と全く同じ$f^*(x) = \frac{1}{2} \log(p/(1-p))$ になります。
つまり、無限データの理想世界では、指数損失とロジスティック損失は同じ関数を学習しているのです。

ではどう違うのか?それは「有限データでの振る舞い」、 特に 誤分類された点に対する反応の激しさ です。
横軸 $y f(x)$(マージン)を考えてみてください:
- $y f(x) > 0$:正しく分類できている
- $y f(x) < 0$:誤分類している
指数損失は$y f(x)$ が大きく負(=大きく外れた誤分類)になると、$e^{-yf(x)}$ が 爆発的に増えます。 一方、ロジスティック損失は $\log(1 + e^{-2yf(x)})$ なので、 誤分類が深まっても 線形的にしか増えません。
この差は、ノイズや誤ラベルが含まれるデータで決定的になります。 指数損失は外れ値に強く引っ張られ、AdaBoost のパフォーマンスを下げる原因になるのです。 これが次のチャプター「損失関数とロバストネス」につながる伏線です。
このチャプターで見たことを整理
- 損失関数は最適解を決める:二乗誤差なら平均、絶対値なら中央値、 そして指数損失なら log-oddsの半分。
- 指数損失の最適解はロジット:$f^*(x) = \frac{1}{2} \log \frac{p(x)}{1-p(x)}$
- 符号を取るとベイズ最適分類器:$\mathrm{sign}(f^*(x))$ は誤分類率の理論上の最小値を達成する。
- 逆変換で確率が出る:$p(x) = 1 / (1 + e^{-2f(x)})$ は典型的なシグモイド関数。
- ロジスティック損失と双子:母集団最適解は同じだが、外れ値への耐性が違う。
AdaBoostは「ヒューリスティックな重み更新法」ではなく、 「統計的に意味のある損失関数の貪欲最適化」だった。 指数損失を選ぶことが、ベイズ最適分類器という 理論上の天井に至る正しい道筋だった——これが10.5節が伝える、もっとも重要なメッセージです。