ISLR: Chapter 4 Classification
回帰ではレスポンスが量的データの場合を扱ったが,レスポンスを質的データとしたい場合もある.そういう時は回帰ではなく分類を用いる.
4.1 An Overview of Classification
問題設定:顧客がデフォルトするかしないかを判定
4.2 Why Not Linear Regression?
ダミー変数を置いて回帰するアプローチは,その質的データの取りうる値が2値の場合は有効.ダミー変数が2値の場合に最小二乗法で学習された線形回帰モデルはの推定値になってる.ただ,回帰なので実際に予測した時に値がの範囲に収まらないため,確率として解釈するにはちょっと無理がある.
しかし,ダミー変数の数が2つ以上になると,ダミー変数の置き方によってダミー変数の間の差に意味が生じるので基本的にダメ.例えば,ラベルが脳卒中,薬物中毒,癲癇だとして,それぞれのダミー変数を1, 2, 3とする.そうすると,3-2=2-1=1となるので,癲癇と薬物中毒の差は薬物中毒と脳卒中の差と同じであるということを意味してしまう.もちろん差の意味が同じことを表してるなら1, 2, 3とダミー変数を置くのも良いが,そうでない場合が多いので,レスポンスが質的データの場合は分類手法を使う方が良い.
4.3 Logistic Regression
確率を, とする.
4.3.1 The Logistic Model
線形回帰モデルでモデル化するとの範囲を超える値を取ってしまう.そこで,ロジスティック回帰ではをロジスティック関数を使ってモデル化する. 関数の形はFig. 4.2にあるようにS字型.パラメタは最尤推定で求める.式は次のように変形できる. この式の左辺はoddsと呼ばれ,の範囲で値をとる.oddsは0に近いほど低い確率,に近いほど大きい確率であることを表す.
式の対数を取ると, この式の左辺をlog-oddsまたはlogitと呼び,式はについて線形の関係にあるlogitを持っていることがわかる.
説明変数の係数は,線形回帰ではを1単位分動かした時に目的変数に及ぼす変化の平均値を意味しているが,ロジスティック回帰ではを1単位分動かした時にlogitがずつ変化する(つまり,oddsにをかけることと等価).
との関係は直線で表現できない.の変化量はの値によって変化するから,S字カーブを描く.
4.3.2 Estimating the Regression Coefficients
最小二乗法で学習してもいいけど,最尤推定というもっといい方法がある.最尤推定の性質として,式のパラメタを観測に最も近くなるように学習する.最尤推定は以下の形で定式化できる. 線形回帰での最小二乗法は実は最尤推定の特殊なケースになってる.
4.3.3 Making Predictions
パラメタが求まれば予測は簡単にできるという話.ロジスティック回帰でも質的説明変数に対してダミー変数のアプローチを使える.
4.3.4 Multiple Logistic Regression
式を多変量に拡張すると以下のように書ける.
多変量(income, balance, student)でロジスティック回帰した時には,incomeとbalanceを固定した時,学生よりも非学生のほうが高いデフォルト確率を示すが,studentのみでロジスティック回帰した時は非学生よりも学生の方が高いデフォルト確率を示す.これはbalanceとstudentに相関があるから.balanceとstudentを繋ぐ要素は,本書では「学生はより大きな負債を抱えている(奨学金かな?)」とされている.3章でも話したけど,説明変数間に相関があると,単変量と多変量で結果が変わる.この現象は一般に交絡(confounding)と呼ばれる.
4.3.5 Logistic Regression for >2 Response Classes
ロジスティック回帰で多クラス分類もできるけど,実際には次章で紹介する線形判別分析(Linear Discriminant Analysis, LDA)を用いるので本書では割愛.Rでは簡単に使えるらしい.
4.4 Linear Discriminant Analysis
ロジスティック回帰(式)では直接をモデリングした.つまり,説明変数を与えた時のレスポンスの条件付き分布をモデル化している.
ただ,多クラス分類においてロジスティック回帰は,レスポンスを綺麗に分けることができる場合はパラメタ推定が安定しない.また,観測が少なく,かつ各クラス毎の説明変数の分布が正規分布の場合は,もっと良い手法がある.それがLDA.分離平面が綺麗に分かれる場合のパラメタ不安定問題も,この手法なら気にすることはない.
LDAではを直接モデル化しない.代わりに,各クラスごとの説明変数の分布をモデル化し,ベイズの定理を使ってを求める.
4.4.1 Using Bayes' Theorem for Classification
をある観測が番目のクラスに所属している事前確率とする.また,番目のクラスに属する観測を得た時の密度関数をとする.は確率なので,大きな値を取れば番目のクラスに属する観測はだろうし,小さな値をとった時にはである確率は低い.で,ベイズの定理を使うと,求めたい確率は以下のように書ける. は以下と書く.母集団からのランダムなサンプルがある場合はは非常に簡単に求まるが,は密度関数を簡単な形だと仮定しない限りはかなり難しい.
4.4.2 Linear Discriminant Analysis for p=1
まず,説明変数1つの場合を考える.密度関数を正規分布だと仮定する. クラス毎の分散は全て,つまり,と仮定し,式を式に代入すると, となる.ここで,は番目のクラスの平均を表す.ベイズ分類器は式の確率が最大となるクラスを,観測が所属するであろうクラスとする.式のlogを取って整理すると, となる.
実際に予測するためには,を推定する必要がある.LDAは,式を用いてを推定するとベイズ分類器の近似になる.肝心の推定量は下式で与えられる. ここで,はトレーニング用の観測の総数,は番目のクラスのトレーニング用観測の総数を表す.はクラスの観測の平均,はそれぞれのクラスの標本分散の重み付き平均になっている.もし事前確率についての情報がなければ,LDAでは とする. 式を式に代入すると,観測の所属クラスは が最大となるクラス.LDAという名前がついているのは判別関数がの線形関数になっているから.
LDAは各クラスの観測がクラス固有の平均と,クラス共通の分散の正規分布から生成されていると仮定している.Section 4.4.4ではクラス固有の分散を持てるように仮定を緩める.
4.4.3 Linear Discriminant Analysis for p>1
LDAを多変量に拡張する.の時は観測は正規分布に従うとしていたが,多変量の場合,観測は多変量正規分布に従う.それぞれの成分は単変量の正規分布に従い,成分間には多少の相関あり.次元のランダムな変数が平均,共分散の多変量正規分布に従うことをで表す.下式は多変量正規分布の確率密度関数.
番目のクラスに属する観測はクラス固有の平均とクラス共通の共分散を持つ多変量正規分布に従う.観測があるクラスに所属する確率は,式を式に代入し,logを取って整理すると,下式で与えられる. 観測が所属するクラスは上式が最大となるクラス.
単変量でのLDAと同様にを求める必要がある.推定量は式と似たような感じで与えられるみたい.
LDAはベイズ分類器の近似になってる.モデルが正しければベイズ分類器はtotal error rateを最小,つまり誤分類した観測の総数が最も少なくなるようにする.total error rateはどちらのエラーも含んでるので,その辺は,例えばというように,閾値で調整する.
4.4.4 Quadratic Discriminant Analysis
LDAではクラス共通の共分散を用いたが,共分散が共通ではない場合には2次判別分析(Quadratic Discriminant Analysis, QDA)を用いる.
クラス固有の共分散をとすると,観測がクラスに所属する確率は次のようになる. こいつを整理して, クラスに属する確率を求める上式がの2次関数の形になってるので,QDAと呼ぶ.
LDAとQDAのどちらを使うべきなのか?答えはバイアス・バリアンスのトレードオフの関係にある.LDAでは共分散行列を求めるために個のパラメタを推定する必要があり,QDAではクラスによって共分散が異なるため,クラス数をかけた個のパラメタの推定が必要になる.LDAはについて線形なので,QDAより表現力が低い代わりに分散が小さい.つまり,より良い分類精度を示す可能性がある.だが,バイアスとバリアンスはトレードオフの関係にあるので,LDAのバイアスは高い.使い分けとしては,テストデータが小さく,予測器の分散が重要でないならLDA.テストデータが十分に大きい,もしくは,共分散がクラス間で共通しているという仮定が妥当でなければQDAの方が良い.
4.5 A Comparison of Classification Methods
ロジスティック回帰,LDA,QDA,kNNを比較する.
まず,ロジスティック回帰とLDAを比較する.結論から言うと,ロジスティック回帰とLDAはかなり似てる.単変量でクラス1への所属確率を,クラス2への所属確率をとする.ロジスティック回帰のlogitは式.LDAの枠組みでを求めると,をの関数とすると,式より, と書ける.ロジスティック回帰もLDAもの線形関数になってるので,どちらも直線の決定境界を与える.両者の違いはパラメタの求め方.ロジスティック回帰では最尤推定,LDAでは正規分布のパラメタを用いてを求めてる.フィッティングにおけるこの関係性は多変量になっても同じ.だがしかし,フィッティングの方法が似てるからといって必ずしも同じような結果を得るとは限らない.LDAは観測が正規分布に従うと仮定してるので,実際に正規分布に従う場合はロジスティック回帰よりもLDAの方が優れた精度を示すし,正規分布の仮定が間違っているならLDAよりロジスティック回帰の方が優れた精度を示す.
kNN分類器は決定境界の形を仮定しないノンパラメトリックな手法.kNNは非線形な決定境界を与えるので,真の決定境界が非線形の時はロジスティック回帰やLDAより有効.ただ,各説明変数毎のパラメタを持たないので,どの説明変数が効いてるのかはわからない.
QDAは非線形なkNNと線形なロジスティック回帰・LDAとの折衷案.決定境界は2次関数の形になってるので線形な決定境界を与える手法よりはより幅広い問題を扱えるが,ノンパラメトリックなkNNほどではない.訓練用の観測が少ない時には決定境界の形をある程度仮定できるので,kNNよりQDAの方が良い精度を示す.
LDAやロジスティック回帰に2次の項を導入すれば2次関数の形の決定境界を得られるが,その場合はLDA ・ロジスティック回帰とQDAの中間になるらしい.