ランダムフォレストの数学的解析 — 分散・相関・バイアスの三角形

木を 1 本より 100 本作ったほうがなぜ良いのか? 「木の相関」という概念を鍵に、分散削減の限界とバイアスとのトレードオフを数学的に解き明かします。

木を無限に増やしたら何に近づくか

木を 1 本だけ作ると、その木は訓練データのランダムなサンプリング(ブートストラップ)や、 各分岐で「どの特徴量を使うか」のランダムな選択に依存して、毎回違う予測を返します。

では木を 100 本、1000 本、それ以上に増やしたら——最終的に何に収束するのでしょうか? アニメーションで見てみましょう。

木の本数が増えるにつれて予測値が一定値に収束していく様子
B 本の木の予測(細い線)が、本数の増加とともに一本の収束値(黄色線)に束なる

バラバラに揺れていた予測が、木を増やすにつれて一本の線に収束しています。 この収束先こそが、ランダムフォレストの理想的な予測です。

2 つのランダム性の源を整理しておきましょう:

木の本数 B を無限大に増やすと、$\Theta$ のランダムさが平均化されて、ランダムフォレストの予測は次の期待値に収束します:

$$\hat{f}_{rf}(x) = \mathrm{E}_{\Theta | \mathbf{Z}} \, T(x; \Theta(\mathbf{Z}))$$

「与えられた訓練データ $\mathbf{Z}$ のもとで、 あらゆる木の予測を平均したもの」——これが B → ∞ の理想的なランダムフォレストです。

ここで自然な問いが生まれます:この平均予測の分散はどうなっているのか? 木を増やせばどこまでも分散をゼロに近づけられるのか?

分散の鍵は「相関」だった

B 本の独立な予測の平均を取ると、分散は $\sigma^2 / B$ になります—— B が大きいほど分散はゼロに近づく。では B → ∞ で分散はゼロになるのでしょうか?

答えはノーです。木どうしが相関しているからです。相関がある値を平均しても、相関分は消えません。

下のアニメーションで確かめてみましょう。左パネルは 2 本の木の予測値どうしの散布図、 右パネルはアンサンブルの分散の大きさを棒グラフで示しています。

相関ρが大から小に変化するとき、散布図の形状と分散の大きさが変わる様子
左:2本の木の予測値の散布図。右:アンサンブルの分散。ρが下がると点群が丸く散らばり、棒が縮む

点群が一直線に並んでいる(相関が高い)ときは分散が大きく、 点群が丸く広がる(相関が低い)ときは分散が小さくなっています。 いくら木を増やしても、分散は「木の相関 × 木の分散」より小さくなりません。

$$\mathrm{Var}\hat{f}_{rf}(x) = \rho(x) \, \sigma^2(x)$$

各記号の意味を確認しましょう:

$$\rho(x) = \mathrm{corr}[T(x; \Theta_1(\mathbf{Z})), \, T(x; \Theta_2(\mathbf{Z}))]$$

つまり、アンサンブルの分散を下げるには $\rho(x)$ を小さくする必要があります。 では、どうすれば $\rho(x)$ を小さくできるのでしょうか?

特徴量のランダム選択数 $m$ を小さくすることです。$m$ が小さいほど木は互いに異なる特徴量を見るので、 予測が似なくなり相関が下がります。

分散を二つに分解する

では $m$ を小さくすると実際に分散はどう変わるのでしょうか? ここに面白い分解があります。

まず準備として、単一の木の全分散を考えましょう——これは 「訓練データ $\mathbf{Z}$ も特徴量の選び方 $\Theta$ もランダム」 という状況でのばらつきです。この全分散は 2 つの成分に分解できます:

$$\underbrace{\mathrm{Var}_{\Theta,\mathbf{Z}}\,T(x;\Theta(\mathbf{Z}))}_{\text{全分散}} = \underbrace{\mathrm{Var}_{\mathbf{Z}}\hat{f}_{rf}(x)}_{\text{アンサンブルの分散}} + \underbrace{\mathrm{E}_{\mathbf{Z}}\mathrm{Var}_{\Theta|\mathbf{Z}}\,T(x;\Theta(\mathbf{Z}))}_{\text{データ内ばらつき}}$$

一言で言えば:
「全体のばらつき」=「データが変わると予測がずれる量」+「同じデータでも木によって予測が異なる量」

$m$ を変えると、この 2 成分の比率がどう変わるか、アニメーションで見てみましょう。 青い部分がアンサンブルの分散、オレンジの部分がデータ内ばらつきです。

全分散が2成分に分かれ、mが変わると両者の比率が入れ替わる積み上げ棒グラフ
左から右へ m が小さくなる。青(アンサンブルの分散)が縮み、オレンジ(データ内ばらつき)が伸びるが、総高さはほぼ変わらない

棒の総高さ(単一の木の全分散 $\sigma^2(x)$)はほとんど変わらないのに、 中身の比率だけが入れ替わっています。

重要なのは:単一の木の分散 $\sigma^2(x)$ はほとんど変わらないのに、 相関 $\rho$ が劇的に下がるため、 アンサンブルの分散 $\rho(x)\sigma^2(x)$ は大幅に減少するという点です。 これがランダムフォレストがバギングより優れる核心的な理由です。

バイアスとのトレードオフ

「では $m$ をゼロに近づければ分散を限りなく小さくできる!」 と思うかもしれません。しかし、そうはいきません。

ランダムフォレストのバイアスを計算すると:

$$\mathrm{Bias}(x) = \mu(x) - \mathrm{E}_{\mathbf{Z}}\mathrm{E}_{\Theta|\mathbf{Z}}\,T(x;\Theta(\mathbf{Z}))$$

ここで $\mu(x)$ は真の関数値(知りたい「答え」)、 バイアスは「平均的にどれほど的外れか」を表します。 この式が示す重要な事実:バギングやランダムフォレストによる予測改善は、 バイアス削減ではなく、純粋に分散削減の効果です。

さらに $m$ を小さくすると何が起きるか、下のグラフで確認しましょう。 青線が分散、赤線がバイアス²、黄線が合計 MSE です。

mの変化に応じてバイアスと分散が逆方向に動くトレードオフ曲線
横軸右ほど m が大きい。分散(青)と バイアス²(赤)が逆方向に動き、MSE(黄)は U 字型。緑の縦線が最適な m

$m$ を小さくするにつれて:

これがバイアス・バリアンスのトレードオフの ランダムフォレスト版です。 MSE(黄線)が U 字型を描き、最低点(緑の縦線)が最適な $m$ になります。

リッジ回帰との類比も興味深いところです。リッジが係数を縮小して分散を下げる代わりにバイアスを増やすように、 ランダムフォレストでも $m$ による特徴量の制限が「正則化」として機能しています。 実践では、回帰問題では $m = p/3$、 分類問題では $m = \lfloor\sqrt{p}\rfloor$ が目安とされています。

別の視点——ランダムフォレストは賢い最近傍法だった

ここまで「なぜランダムフォレストが効くのか(分散削減)」を見てきました。 最後に「どのように効くのか」を直感的に理解する、もう一つの視点を紹介しましょう。

教師あり学習の古典的な手法、 k-最近傍法を思い出してください:予測点 x の近くにある k 個の訓練点に均等な重みをかけて多数決する手法です。 実はランダムフォレストは、この最近傍法の適応的な重み付きバージョンとして解釈できます。

予測点の近くに自動的に重みが集中する様子。適応的最近傍としてのランダムフォレスト
黄色の★が予測点。近い訓練点ほど太く明るい線で結ばれる——距離に応じた自動的な重みの集中

アニメーションで見えるように、予測点に近い訓練点ほど太い線(大きな重み)で強調されています。 この「局所的な重みの集中」こそが、ランダムフォレストの本質的な仕組みです。

各木を最大サイズまで成長させると、各葉ノードには通常 1 つの訓練サンプルが含まれます。 多数の木での投票を集計すると、こんな重み付けが自然に生まれます:

「x が落ちた葉と同じ葉に収まっている訓練点ほど大きな重みを持つ」

これはカーネル(局所的な重みを与える関数)として機能します。 通常の k-NN との違いは、「近さ」が軸方向の分岐で定義される点です。 木が軸に沿った分岐を繰り返すため、ランダムフォレストの決定境界は軸に沿ったギザギザを持つ傾向があります。

この視点は「なぜランダムフォレストが非線形な境界をうまく学習できるのか」を直感的に説明します: x の近くにある訓練点に自動的に注目する、適応的な局所平均を行っているからです。

まとめると、ランダムフォレストの強さは 3 つの要素から来ています:

  1. 収束性:木を増やせば予測は安定した期待値に収束する
  2. 相関削減:特徴量のランダム選択が木の相関を下げ、分散を削減する
  3. 適応的局所化:予測点の近傍に自動的に注目する、賢い最近傍法として機能する