4.1-4.2 分類への線形アプローチ

回帰では「連続的な値」を予測しました。しかし現実には「どちらのグループに属するか」という問題もたくさんあります。病気か健康か、スパムか正規メールか、購入するかしないか。

この章では、分類問題に線形手法を適用する方法を探ります。「直線(または平面)で空間を切り分ける」というシンプルなアイデアから始め、その数学的な仕組みと限界を一緒に見ていきましょう。

分類とは何か?

回帰と分類、この2つは何が違うのでしょうか?

回帰では、入力 $x$ から連続的な出力 $y$(例えば価格、温度)を予測しました。一方、分類では離散的なカテゴリ $G$(例えばクラス1、クラス2、...)を予測します。

ここで面白いことに気づきます。どちらの問題も、実は「空間を分割する」という視点で捉えられるのです。

入力空間を想像してください。データ点がたくさん散らばっています。分類とは、この空間に「境界線」を引いて、異なるクラスを分離することです。

回帰と分類の違いを視覚的に対比。左側では散布図に曲線がフィット、右側では2色の点群に境界線が引かれる

では、どんな境界線を引けばいいのでしょうか? 最もシンプルな答えは「直線」です。

決定境界という考え方

分類器を作るとき、私たちは入力空間を「領域」に分割しています。各領域には1つのクラスが割り当てられ、新しいデータ点がどの領域に落ちるかで予測が決まります。

この領域の境目を決定境界(decision boundary)と呼びます。

決定境界が空間を分割する様子。直線の両側が異なる色で塗りつぶされ、新しい点がどちらの領域に属するか示される

もし決定境界が直線なら、その分類器は線形分類器です。決定境界が曲線なら非線形分類器です。

ちなみに、2次元では「直線」、3次元では「平面」で空間を分割しますが、4次元以上ではこれを超平面と呼びます。数学的には同じ「線形な境界」という概念の一般化です。

線形分類器はシンプルですが、驚くほど多くの実問題で有効です。なぜでしょうか? それは、多くの現実のデータが「おおむね線形に分離可能」だからです。

判別関数のアプローチ

決定境界を数式で表現する方法はいくつかあります。最も直接的なのは判別関数(discriminant function)を使う方法です。

各クラス $k$ に対して、判別関数 $\delta_k(x)$ を定義します。そして、新しい入力 $x$ が与えられたとき、最も大きな値を持つ判別関数のクラスに分類します:

$$G(x) = \arg\max_k \delta_k(x)$$

$G(x)$ は入力 $x$ に対する予測クラス。全ての判別関数 $\delta_k(x)$ の中で最大値を与えるクラス $k$ を選びます。

複数の判別関数が競い合う様子。上部で入力空間をスキャンし、下部で各判別関数の値が変化する

判別関数が入力 $x$ の線形関数なら:

$$\delta_k(x) = x^T \beta_k$$

ここで $\beta_k$ は各クラス $k$ に対応する重みベクトルです。入力 $x$$\beta_k$ の内積が大きいほど、クラス $k$ らしいことを意味します。

この場合、クラス $k$$\ell$ の決定境界は $\delta_k(x) = \delta_\ell(x)$ を満たす点の集合、つまり:

$$x^T(\beta_k - \beta_\ell) = 0$$

これは原点を通る超平面です。実用上は定数項(バイアス項)を加えて、より柔軟な位置に境界を置けるようにします。

指示行列による回帰

判別関数 $\delta_k(x)$ を定義する方法はいくつかありますが、ここで驚くべきアイデアを紹介しましょう。分類問題を回帰問題として解くという発想です。

$K$ 個のクラスがあるとき、各クラスを $K$ 次元のベクトルで表現します。例えば3クラスなら:

これを指示行列(indicator matrix)と呼びます。1が立っている位置でクラスを表現するのです。

カテゴリから指示行列への変換。形状(円、四角、三角)がそれぞれ(1,0,0)、(0,1,0)、(0,0,1)に対応

$N$ 個の訓練サンプルがあれば、$N \times K$ の行列 $\mathbf{Y}$ ができます。各行は1つだけ1を持ち、残りは0です。

そして、この $\mathbf{Y}$ を目的変数として線形回帰を実行します!

$$\hat{\mathbf{Y}} = \mathbf{X}(\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{Y}$$

この式は前章で見た最小二乗法の解です。$\mathbf{X}$ はデータを並べた行列、$\hat{\mathbf{Y}}$ は予測値の行列です。各データ点に対して、$K$ 個の予測値(各クラスへの「スコア」)が得られます。

新しいデータが来たら、$K$ 個の予測値のうち最大のものを選んで分類すればよいのです。

なぜ回帰で分類ができるのか

不思議に思いませんか? 0と1のターゲットに対して回帰をすると、なぜ分類器になるのでしょうか?

結論を先に言うと、回帰の予測値は「そのクラスに属する確率」の推定値になっているのです。

2クラスの場合を考えましょう。$Y$ を0または1とする指示変数とします。条件付き期待値とは、「$X=x$ という条件のもとでの $Y$ の平均値」のことです。$Y$ は0か1しか取らないので、この平均値は「$Y=1$ となる確率」そのものになります:

$$E(Y|X=x) = 0 \cdot P(G=1|X=x) + 1 \cdot P(G=2|X=x) = P(G=2|X=x)$$

これは「$X=x$ のときにクラス2に属する確率」です。

回帰の予測値が確率になる仕組み。y=0とy=1の位置に点群があり、回帰直線がフィットする。y=0.5の閾値で領域が分割される

つまり、回帰の予測値 $\hat{f}(x)$クラス2に属する確率の推定値になっているのです!

だから、$\hat{f}(x) > 0.5$ ならクラス2、そうでなければクラス1と予測すれば、理論上最も誤り率の低い分類器(ベイズ最適分類器と呼ばれます)の近似になります。

マスキング問題

指示行列による回帰は美しいアイデアですが、深刻な弱点があります。それがマスキング問題です。

3クラス以上の問題で、あるクラスが他のクラスの「間」に挟まれている場合を考えてください。

例えば、クラス1が左端、クラス2が中央、クラス3が右端にあるとします。回帰は各クラスの条件付き期待値を推定しようとしますが、クラス2に対する予測値が、クラス1と3の予測値に「負けて」しまうことがあります。

マスキング問題の発生メカニズム。上部で3色の点群が左・中央・右に配置。下部で回帰直線が交差し、中央のクラスが消える領域が出現

結果として、クラス2のデータ点が正しく分類されなくなる。まるでクラス2が「マスク」されて見えなくなるかのように。

これは線形回帰が「最小二乗」で全体的なフィットを目指すため、局所的なクラス構造を無視してしまうからです。

回帰からより良い方法へ

指示行列による回帰の限界を見てきました。では、どうすればいいのでしょうか?

いくつかの改良があります:

  1. 線形判別分析(LDA): 各クラスのデータ分布を仮定し、統計的に最適な境界を導出
  2. ロジスティック回帰: 確率を直接モデル化し、0〜1の範囲に収まる予測を保証
  3. 分離超平面: 2クラスの場合、クラス間の余裕(マージン)を最大化する境界を探索
様々な線形分類手法の比較。左から回帰、ロジスティック回帰(確率等高線付き)、分離超平面(マージン付き)

これらの手法は次章以降で詳しく見ていきますが、共通するのは「線形な決定境界」という基本構造です。

線形分類器のシンプルさは、計算効率、解釈のしやすさ、そして過学習への耐性という実用的な利点をもたらします。


まとめ

この章では、分類問題への線形アプローチの基礎を学びました:

  1. 分類と決定境界: 入力空間を領域に分割し、境界線でクラスを分離
  2. 判別関数: 各クラスにスコアを与え、最大のクラスを選択
  3. 指示行列による回帰: 分類を回帰問題として解く巧みなアイデア
  4. マスキング問題: 単純な回帰アプローチの限界

次章では、これらの問題を解決するより洗練された手法、線形判別分析とロジスティック回帰を見ていきます。