4.1-4.2 分類への線形アプローチ
回帰では「連続的な値」を予測しました。しかし現実には「どちらのグループに属するか」という問題もたくさんあります。病気か健康か、スパムか正規メールか、購入するかしないか。
この章では、分類問題に線形手法を適用する方法を探ります。「直線(または平面)で空間を切り分ける」というシンプルなアイデアから始め、その数学的な仕組みと限界を一緒に見ていきましょう。
分類とは何か?
回帰と分類、この2つは何が違うのでしょうか?
回帰では、入力 $x$ から連続的な出力 $y$(例えば価格、温度)を予測しました。一方、分類では離散的なカテゴリ $G$(例えばクラス1、クラス2、...)を予測します。
ここで面白いことに気づきます。どちらの問題も、実は「空間を分割する」という視点で捉えられるのです。
入力空間を想像してください。データ点がたくさん散らばっています。分類とは、この空間に「境界線」を引いて、異なるクラスを分離することです。

では、どんな境界線を引けばいいのでしょうか? 最もシンプルな答えは「直線」です。
決定境界という考え方
分類器を作るとき、私たちは入力空間を「領域」に分割しています。各領域には1つのクラスが割り当てられ、新しいデータ点がどの領域に落ちるかで予測が決まります。
この領域の境目を決定境界(decision boundary)と呼びます。

もし決定境界が直線なら、その分類器は線形分類器です。決定境界が曲線なら非線形分類器です。
ちなみに、2次元では「直線」、3次元では「平面」で空間を分割しますが、4次元以上ではこれを超平面と呼びます。数学的には同じ「線形な境界」という概念の一般化です。
線形分類器はシンプルですが、驚くほど多くの実問題で有効です。なぜでしょうか? それは、多くの現実のデータが「おおむね線形に分離可能」だからです。
判別関数のアプローチ
決定境界を数式で表現する方法はいくつかあります。最も直接的なのは判別関数(discriminant function)を使う方法です。
各クラス $k$ に対して、判別関数 $\delta_k(x)$ を定義します。そして、新しい入力 $x$ が与えられたとき、最も大きな値を持つ判別関数のクラスに分類します:
$G(x)$ は入力 $x$ に対する予測クラス。全ての判別関数 $\delta_k(x)$ の中で最大値を与えるクラス $k$ を選びます。

判別関数が入力 $x$ の線形関数なら:
ここで $\beta_k$ は各クラス $k$ に対応する重みベクトルです。入力 $x$ と $\beta_k$ の内積が大きいほど、クラス $k$ らしいことを意味します。
この場合、クラス $k$ と $\ell$ の決定境界は $\delta_k(x) = \delta_\ell(x)$ を満たす点の集合、つまり:
これは原点を通る超平面です。実用上は定数項(バイアス項)を加えて、より柔軟な位置に境界を置けるようにします。
指示行列による回帰
判別関数 $\delta_k(x)$ を定義する方法はいくつかありますが、ここで驚くべきアイデアを紹介しましょう。分類問題を回帰問題として解くという発想です。
$K$ 個のクラスがあるとき、各クラスを $K$ 次元のベクトルで表現します。例えば3クラスなら:
- クラス1 → $(1, 0, 0)$
- クラス2 → $(0, 1, 0)$
- クラス3 → $(0, 0, 1)$
これを指示行列(indicator matrix)と呼びます。1が立っている位置でクラスを表現するのです。

$N$ 個の訓練サンプルがあれば、$N \times K$ の行列 $\mathbf{Y}$ ができます。各行は1つだけ1を持ち、残りは0です。
そして、この $\mathbf{Y}$ を目的変数として線形回帰を実行します!
この式は前章で見た最小二乗法の解です。$\mathbf{X}$ はデータを並べた行列、$\hat{\mathbf{Y}}$ は予測値の行列です。各データ点に対して、$K$ 個の予測値(各クラスへの「スコア」)が得られます。
新しいデータが来たら、$K$ 個の予測値のうち最大のものを選んで分類すればよいのです。
なぜ回帰で分類ができるのか
不思議に思いませんか? 0と1のターゲットに対して回帰をすると、なぜ分類器になるのでしょうか?
結論を先に言うと、回帰の予測値は「そのクラスに属する確率」の推定値になっているのです。
2クラスの場合を考えましょう。$Y$ を0または1とする指示変数とします。条件付き期待値とは、「$X=x$ という条件のもとでの $Y$ の平均値」のことです。$Y$ は0か1しか取らないので、この平均値は「$Y=1$ となる確率」そのものになります:
これは「$X=x$ のときにクラス2に属する確率」です。

つまり、回帰の予測値 $\hat{f}(x)$ はクラス2に属する確率の推定値になっているのです!
だから、$\hat{f}(x) > 0.5$ ならクラス2、そうでなければクラス1と予測すれば、理論上最も誤り率の低い分類器(ベイズ最適分類器と呼ばれます)の近似になります。
マスキング問題
指示行列による回帰は美しいアイデアですが、深刻な弱点があります。それがマスキング問題です。
3クラス以上の問題で、あるクラスが他のクラスの「間」に挟まれている場合を考えてください。
例えば、クラス1が左端、クラス2が中央、クラス3が右端にあるとします。回帰は各クラスの条件付き期待値を推定しようとしますが、クラス2に対する予測値が、クラス1と3の予測値に「負けて」しまうことがあります。

結果として、クラス2のデータ点が正しく分類されなくなる。まるでクラス2が「マスク」されて見えなくなるかのように。
これは線形回帰が「最小二乗」で全体的なフィットを目指すため、局所的なクラス構造を無視してしまうからです。
回帰からより良い方法へ
指示行列による回帰の限界を見てきました。では、どうすればいいのでしょうか?
いくつかの改良があります:
- 線形判別分析(LDA): 各クラスのデータ分布を仮定し、統計的に最適な境界を導出
- ロジスティック回帰: 確率を直接モデル化し、0〜1の範囲に収まる予測を保証
- 分離超平面: 2クラスの場合、クラス間の余裕(マージン)を最大化する境界を探索

これらの手法は次章以降で詳しく見ていきますが、共通するのは「線形な決定境界」という基本構造です。
線形分類器のシンプルさは、計算効率、解釈のしやすさ、そして過学習への耐性という実用的な利点をもたらします。
まとめ
この章では、分類問題への線形アプローチの基礎を学びました:
- 分類と決定境界: 入力空間を領域に分割し、境界線でクラスを分離
- 判別関数: 各クラスにスコアを与え、最大のクラスを選択
- 指示行列による回帰: 分類を回帰問題として解く巧みなアイデア
- マスキング問題: 単純な回帰アプローチの限界
次章では、これらの問題を解決するより洗練された手法、線形判別分析とロジスティック回帰を見ていきます。