前回扱った内容を密度比推定により直接的にかっこよく解く。
やりたいこと
- 正常であると分かっているデータを元に異常が含まれるかもしれないデータの中から異常な標本を見つけ出す
- 個々に外れ値検出するのではなく、テストデータ全体の確率分布も考える
- 全体を考えることでノイズを減らせるのではないか、という期待がある
やる方法としては、密度比を基底関数の線形モデルで表わし、KLダイバージェンスなり、最小二乗の考え方で目的関数に落とし込んで線形モデルのパラメータを求める、というもの。割とシンプル。
密度比による外れ値検出問題の定式化
正常なデータ集合Dと異常標本が混入しているかもしれないデータ集合が与えられているとする。ネイマンピアソン決定則によるとに対する異常さの度合いと表わす尺度として、を自然に考えることができる(ただし、で、はテストデータが従う確率密度)。
密度比のふるまいについてまとめる。において、異常標本の割合をとすると、連続性など適切な条件を満たせばのような形を仮定できる(はpとの差に対応する規格化条件を満たす関数)。これを使うと密度比は
と表現できる。
- 正常なxに対してはが1より小さい値を取る
- 異常なxに対してはは1より大きな値を取る
↑より、以下のことが分かる。
- 正常なxに対しては密度比が大きな値を取る
- 異常なxに対しては密度比が小さな値を取る
また、密度比はなので、に対する異常度はを満たす。実用上、異常標本の割合は1より圧倒的に小さいので、左辺はで近似でき(0周辺でテイラー展開)、これが異常度の近似的な下限となる。これより、異常度がのオーダーより非常に小さい場合は異常が疑われる、ということになる。
ここで問題になることが1つあって、との推定には誤差が必ず含まれ、割り算によってその誤差が増幅されてしまうということ。今回欲しいのは異常度であるから、個々の分布が分からなくても密度比が分かればそれでよい。バプニックの原理から密度比を直接的に求めていくことを考えよう。
カルバックライブラー密度比推定法
密度比を表わすモデルとして線形モデル
を仮定する。ただし、はb次元の非負値を取る基底関数、はb次元のパラメータである。このような仮定を入れると、密度比推定はパラメータの推定問題に落ちる。あとは、その目的関数を決めてやればよいが、以下のような基準を考えることができる。
- パラメータはがにできるだけ近くなるように
- は非負値で規格化条件を満たす
これらを満たす基準として、非負関数fとgの情報理論的な距離を測る一般化カルバックライブラーダイバージェンス
を考える(これの気持ちはよく分からない...)。fとgにとを代入すると
となる。上の式の期待値を経験分布で近似して、定数項を無視すると、以下の目的関数の最小化を考えればよいことになる。
第一項は異常度の期待値なので、異常度の期待値を最小化したいということを表わしていて、第二項は規格化条件を表わしている。
なお、本では一般化カルバックライブラーダイバージェンスの最小化で定式化されているが、元の論文ではカルバックライブラーダイバージェンスに正規化項等を陽に制約に加えた最適化問題を解いているので、理解する分には制約付きのカルバックライブラーダイバージェンスの最小化と思って普通に問題ない。
パラメータの最適化
の最小化は凸最適化問題なので、勾配法などで求めることができる。基底関数は例えばRBFカーネルを使うことができる。RBFカーネルのバンド幅は交差検定によって求めることができる。
最小二乗密度比推定法
カルバックライブラー密度比推定法では目的関数を一般化カルバックライブラーダイバージェンスに置いたが、他の目的関数を置くことももちろんできる。ここでは最小二乗の考え方でやっていて、正則化項を付け加えても閉じた形でパラメータを求めることができる。閉じた形で表わせる分計算としては楽だが、KLダイバージェンスを最小化した場合で得られた解との性質の違いは後で抑えておきたい。
参考
- 作者: 井手剛,杉山将
- 出版社/メーカー: 講談社
- 発売日: 2015/08/08
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
- 作者: 井手剛
- 出版社/メーカー: コロナ社
- 発売日: 2015/02/19
- メディア: 単行本
- この商品を含むブログ (4件) を見る