#はじパタの数学 第3章#
最大事後確率基準
ここではベイズの定理を整理しておくことにします。
$P(C_i|x)=\frac{p(C_i|x)×P(x)}{p(x)}=\frac{p(C_i,x)}{p(x)}=\frac{p(C_i,x)}{\sum_{i=1}^{K}p(C_i,x)}=\frac{p(x|C_i)×P(C_i)}{p(x)}$
ここで
$P(C_i|x)$ :事後確率(これが最も大きいクラスに観測データを分類する)
$p(x)$ :事前確率
$p(x|C_i)$ :クラス条件付き確率(尤度)
と呼びます。
$P(C_i|x)=\frac{p(x|C_i)×P(C_i)}{p(x)}$の形が一般的かもしれませんが、上述したように、いろんな表現に慣れておくといいかもしれません。
ベイズの識別規則は誤り率最小
2クラス {$C_1,C_2$} の識別問題のケースを扱っています。この証明の式を追ってみましょう。
まず、条件付きベイズ誤り率は $ε(x)=min[P(C_1|x),P(C_2|x)]$ と表されます。事後確率が大きい方のクラスが採択されているはずですから、誤り率は残った方の事後確率となります。(例えば$C_1$に識別したならば、$ε=1-P(C_1|x)=P(C_2|x)$です。2クラス問題であることにも注意です。)
ベイズ誤り率はこの条件付きベイズ誤り率の期待値で表されます。
$ε^*=E[ε(x)]=\int_{R_1+R_2}ε(x)p(x)dx=\int_{R_1+R_2}min[P(C_1|x),P(C_2|x)]p(x)dx$
ここで $R_i$はクラス $C_i$に識別される $x$の領域とします。これをもう少し変形していきます。
$ε^*=\int_{R_1+R_2}min[\frac{P(x|C_1)}{p(x)},\frac{P(x|C_2)}{p(x)}]p(x)dx=\int_{R_1+R_2}min[P(x|C_1)P(C_1),P(x|C_2)P(C_2)]dx$
$=\int_{R_1+R_2}(p(C_1,x\in R_2)+p(C_2,x\in R_1))dx$ ----★
$=\int_{R_2}p(x|C_1)P(C_1)dx+\int_{R_1}p(x|C_2)P(C_2)dx$
この変形で?となる場所が ★ のところではないでしょうか?ここを少し解説したいと思います。まず変形する前の $min$の中身を見て見たいと思います。
もし、$min[P(x|C_1)P(C_1),P(x|C_2)P(C_2)]=P(x|C_1)P(C_1)$であった場合はどうでしょうか。$P(x|C_1)P(C_1)<P(x|C_2)P(C_2)$ な訳ですから、$x$は $C_2$に識別される領域にいるはずです。つまり$x\in R_2$であり、$P(x|C_1)P(C_1)=p(C_1,x\in R_2)$ となります。(ここで、$P(x|C_i)P(C_i)=p(C_i,x)$だったことを思い出しておきます。) $min[P(x|C_1)P(C_1),P(x|C_2)P(C_2)]=P(x|C_1)P(C_1)$の場合も同様に考えれば ★ に変形できるというわけです。
得られた最後の式から、グラフを書いてみると、$p(x|C_1)P(C_1)=p(x|C_2)P(C_2)$となる場所以外に識別境界を取ってしまうとベイズ誤り率が増加してしまうことがわかります。
最小損失基準に基づくベイズの識別規則
誤ったクラス判断をすることで被る損失がそれぞれ異なるため、ここでは、損失を定義しています。
クラス $C_i$と判断した時の損失は
$r(C_i|x)=\sum_{k=1}^KL_{iK}P(C_k|x)$
ここで $L_{iK}$は真のクラスが $C_k$の時に $C_i$と判断した時の損失です。
真のクラスが $C_i〜C_K$だった場合についての損失と事後確率の積を足し合わせたものです。
識別規則は損失の最も小さいクラスに識別することとなります。
2クラスの場合の損失期待値は以下のようになります。上述したベイズ識別規則と要領は同じです。
$r=E[min[r(C_1|x),r(C_2|x)]]=\int_{R_1+R_2}min[L_{11}p(x|C_1)P(C_1)+L_{12}p(x|C_2)P(C_2),L_{21}p(x|C_1)P(C_1)+L_{22}p(x|C_2)P(C_2)]dx$
$=\int_{R_1}L_{11}p(x|C_1)P(C_1)+L_{12}p(x|C_2)P(C_2)+\int_{R_2}L_{21}p(x|C_1)P(C_1)+L_{22}p(x|C_2)P(C_2)$ ----★
この ★ の変形だけ解説を入れておこうと思います。
積分領域を $R_1$と $R_2$に分けています。 $R_1$とはなんだったかというとクラス $C_1$に識別されるような $x$の領域でした。ということは $R_1$では $C_1$と判断した方が損失が小さいわけです。よって $R_1$では $min[L_{11}p(x|C_1)P(C_1)+L_{12}p(x|C_2)P(C_2),L_{21}p(x|C_1)P(C_1)+L_{22}p(x|C_2)P(C_2)]=L_{11}p(x|C_1)P(C_1)+L_{12}p(x|C_2)P(C_2)$
となり、 $R_2$についても同様に考えると ★ が得られます。
なお、識別規則は被積分項の小さな方に判断されるよう領域を定めます。
リジェクト
リジェクトを含めた識別規則は次のようになります。
識別クラス $=C_i\Leftarrow P(C_i|x)=max_jP(C_j|x)>1-t$
ただし、すべてのクラスについて $P(C_i|x)\le 1-t$の場合はリジェクトする。
ここでリジェクトについて少し確認してみます。
誤り率を $ε(x)$とすると、 $ε(x)\ge t$となる場合はリジェクトするというものでした。これを踏まえて上記の識別規則を見直してみると、 $ε(x)=1-P(C_i|x)$ですから、上記のように識別規則が書けることがわかります。
ROC曲線の求め方
ここでは適合率と再現率のトレードオフ関係について確認しておきます。
その前に言葉の整理をしたいと思います。
定義 | 補足説明 | |
---|---|---|
偽陽性率 | $ \frac{Np}{Np+Nn}$ | 陰性(間違った判断故偽)のものを陽性と判断 |
真陽性率 | $ \frac{Pp}{Pp+Pn}$ | 陽性のものを正しく陽性と判断(正しい判断故真) |
適合率 | $\frac{Pp}{Pp+Np}$ | 識別された母集団での正しいものの割合 |
再現率 | $\frac{Pp}{Pp+Np}$ | 真陽性率と同じ式だが、分母は予測であることに注意 |
正確度 | $\frac{Pp+Nn}{Pp+Pn+Np+Nn}$ | 真偽を正しく識別した割合 |
F-値 | 適合率と再現率の調和平均 | 適合率と再現率のトレードオフ関係に対応した指標 |
上記の表において、テキストと使っている記号が違いますが(Pp,Pn,Np,Nn)、大文字は真のクラスを、小文字は識別クラスを表します。例えばPpは、真のクラスが陽性で、陽性のクラスに属していると判断したということになります。
本題に戻ります。適合率を上げるためには分母を減らすか分子を大きくすることになりますが、このうち弄ることができるのは分母です。テキストの例でいうと、検索するページ数を減らします。すると再現率の分母は変わらず分子が減ってしまうことになるので、再現率は減少してしまいます。
テキストの例の数値を使って確認してみると、適合率は $\frac{80}{100}→\frac{75}{80}$と増加しますが、必要な全ページをnページだとすると、再現率は $\frac{80}{n}→\frac{75}{n}$と減少してしまうのがわかります。