入門 機械学習による異常検知―Rによる実践ガイド: ノート1

異常を検知したいので以下の本を読みます。

入門 機械学習による異常検知―Rによる実践ガイド入門 機械学習による異常検知―Rによる実践ガイド
井手 剛

コロナ社 2015-02-19
売り上げランキング : 9910

Amazonで詳しく見る
by G-Tools

次回: ノート2
目次: 入門 機械学習による異常検知―Rによる実践ガイド

読んだページ: i~v、1~23ページ
以下、メモと雑談。

  • 機械学習による異常検知(タイトル)」機械学習とは、特定の目的のためデータから有用な情報を引き出して利用する方法という理解。異常検知は一般的な日本語で、読んで字の如く異常を検知すること。人間が検知することも機械的に検知することもありうる。異常検知は機械学習を使用する目的の1つの例といえる。なので、この本は目的面から切り取った機械学習の一分野である、はず。
  • 異常検知モデル構築の手順(5ページ): 以下のように示されている。
    • 正常なデータのしたがうモデルをつくる。
    • 異常度を定義する。
    • 異常度の閾値を設定する。

これが人間が異常を検知するのと同じなのかと考えると: 教科書のBMIの例でいうと、まず最初に普通の人の身長と体重はだいたいどれくらいだという前提知識があって、「太りすぎ」という異常をもっている人は(体重)÷((身長)×(身長))が大きいという経験則があって、実際にどれくらいに閾値を置くかは健康診断の対象者の居住地域なり年齢層なり性別なりの過去データをもとに慎重に検討しないといけない。というのと上の3ステップは似ていると思う。

  • 異常度の例(9ページ): 例えばそのデータが観測される確率(尤度)の対数のマイナス。正常だったら観測されるのが珍しいデータは異常と疑う。閾値は「1%も起きない珍しいことだから異常っぽい」という意味合いをもってくる。「帰無仮説が正しかったら1%も起きない珍しいことが起きていることになっているから帰無仮説は正しくないっぽい」と似ているが、こちらでは仮説を棄却するのではなく観測データを異常認定する。
  • ホテリング理論(20ページ): 個々のデータが独立に正規分布にしたがうときに、所定の異常度がしたがう分布に関する定理。正常データ群が既に手に入っているとき、新しくデータ  x を観測したとする。 x も正常データ群と同じ分布にしたがうとすると、 (x-\mu)^2/\sigma^2 は自由度  (1, N-1) F分布にしたがう(正常データの個数  N が大きいときは、\chi^2分布にしたがう)。
    • ここでの異常度はマハラノビス距離の2乗になっている(雑記:マハラノビス距離)。
    • これは F検定(等分散性の検定)にかなり似ている。
  • R の car パッケージの Davis データには実測の身長・体重とともに自己申告の身長・体重が入っているらしい。自己申告って自己申告をさせるときに「実測もしますよ」と伝えてあるかないかでも違いそうだけど、help を見てもよくわからない。1番の男性は自分の身長をきりのいい数字で認識していたのだろうとか、2番の女性は自己申告の体重詐称しすぎだろうとかいうのがわかる。自己申告の方が身長が5cm低くなっている6番の男性は、何なのかよくわからない。
    > head(Davis)
    sex weight height repwt repht
    1 M 77 182 77 180
    2 F 58 161 51 159
    3 F 53 161 54 158
    4 M 68 177 70 175
    5 F 59 157 59 155
    6 M 76 170 76 165