第11回情報科学技術フォーラム

    異異常検知技術の
   ビジネス応⽤用最前線
 株式会社Preferred Infrastructure
リサーチャー&Jubatusチームリーダー
         ⽐比⼾戸  将平
⾃自⼰己紹介

l    ⽐比⼾戸将平(HIDO Shohei)
l    TwitterID: @sla
l    専⾨門:データマイニング、機械学習
l    経歴:
      l    2006: 京都⼤大学⼤大学院情報学研究科修⼠士卒
            l    ⽊木構造データマイニング
      l    2006-2012: IBM東京基礎研究所データ解析グループ
             l  機械学習のアルゴリズム研究開発


             l  お客様案件で数多くの異異常検知プロジェクトに従事

      l    2012-: 株式会社プリファードインフラストラクチャー
            l    ⼤大規模オンライン分散機械学習基盤Jubatusチームリーダー


                                 2
本講演の概要

l    「データあるところに異異常あり」


l    異異常検知はデータ活⽤用において普遍的に存在する問題である


l    主に外れ値検知、変化点検知、異異常状態検知の3タイプがある


l    アルゴリズム研究とソフトウェア開発が⽇日々進展している


l    異異常検知技術はビジネスでの応⽤用が広がっている


l    ビッグデータ解析の花形になりうる


                     3
⽬目次

l    異異常検知とは
                           }
                           ⼊入⾨門編


                           }
l    解決アプローチと既存ソフトウェア
                           実践編
      最新のビジネス応⽤用例例

                           }
l 
                           応⽤用編
l    異異常検知の未来


l    まとめ




                     4
異異常検知のイメージ
               5
               4
               3
               2
               1
                                Outlier
                                外れ値
               0
-5   -3   -1            1   3       5
               -1
               -2
               -3
               -4
               -5


                    5
データあるところに異異常あり(1/2)

            データ種類                                 応⽤用
l  単なる数値ベクトルデータ                  l  外れ値検出  
    l  多次元ベクトル
                                      l  ⺟母集団からの外れ検知
                                      l  ノイズ除去    
l  センサー系  
    l  ヒト装着センサー群  
                                  l  センサー系  
                                      l  健康異異常検知  
    l  ⾞車車制御センサー群  
                                      l  異異常動作検知  
    l  ⼯工場監視センサー群  
                                      l  故障検知  
l  イベント系列列  
                                      l  故障予兆検知  
    l  クレジットカード利利⽤用履履歴  

      l    ヘルスケアデータ              l  イベント系列列系  
                                      l  クレジット不不正利利⽤用検知  

                                        l    診療療誤り検知  

                            6
データあるところに異異常あり(2/2)

         データ種類                                   応⽤用
l  ネットワーク系                       l  ネットワーク系  
                                      l  DDoS攻撃検知  
    l  トラフィック流流量量  
                                      l  侵⼊入検知/マルウェア検出  
    l  アクセスログ  
                                      l  障害検知/障害箇所検出
    l  パケット経路路ログ  

    l  パケット内容  
                                  l  パターン認識識系  
                                      l  異異⾳音検知  
l  パターン認識識系  
                                      l  異異常状態/侵⼊入者検知  
    l  ⾳音声  

    l  画像/動画  
                                  l  テキスト系  
                                      l  ノイズ⽂文章除去  
l    テキスト系  
                                      l  新規トピック検出
      l  新聞記事/ブログ記事  

      l  Twitterタイムライン  
                                        l    トレンドワード検出  

                            7
異異常検知問題の呼び名:○○検出・○○検知
                      Outlier
                      外れ値
            Error                Deviation
            エラー                    変動

   Rare                                     Noise
 レアイベント                                     ノイズ
                       異異常
                     Anomaly                Fraud
  Novelty
   新規                                        不不正

            Defect              Intrusion
             故障                    侵⼊入
                       Fault
                     不不適切切動作
                      8
Noise
外れ値検出問題
               ノイズ
                               Error
               5
                               エラー
               4
                            Rare            Deviation
               3
                          レアイベント              変動
               2
               1
                                             Outlier
                                             外れ値
               0
-5   -3   -1              1             3        5
               -1
               -2
                                            Intrusion
               -3
                                               侵⼊入
               -4              Defect
                                故障           Fraud
               -5
                                              不不正
          Novelty               Fault
           新規       9	
                              不不適切切動作
外れ値の定義:統⼀一的⾒見見解は無い

l  “Anoutlying observation, or outlier, is one that appears to
  deviate markedly from other members of the sample in which
  it occurs.” [Grubbs, 1969]

l  “An
      observation that deviates so much from other observations
  as to arouse suspicion that is was generated by a different
  mechanism.” [Hawkins, 1980]


l  “An
      observation (or subset of observations) which appears
  to be inconsistent with the remainder of that set of
  data.” [Barnett & Lewis, 1994]


                              10
異異常は何から引き起こされるのか?

l  ⾃自然系
     l  ⾃自然変動の範疇:桜開花後の雪

     l  観測ノイズ:不不可避な電磁ノイズ

l  ⼈人間系
     l  ヒューマンエラー:⼊入⼒力力ミスなど

     l  不不正⾏行行動:クレジットカード不不正利利⽤用

l  システム系
     l  システム故障:HDDが物理理破損して読み取り不不能に

     l  システム故障の予兆:HDD読み取りエラーの頻発

     l  システムへの攻撃:ネットワークDDoS攻撃

l    質的変化
      l  対象の状態変化:マルウェア感染による攻撃⾏行行動開始

      l  新しい知識識:あるトピックにおける新しい情報
                       11
異異常検知問題の3つのタイプ

1.     外れ値検出問題(Outlier detection)
      l  静的
      l  あるデータ点が分布から⼤大きく外れているか
2.     変化点検出問題(Change point detection)
      l  動的
      l  対象に変化が起きたか否か、その時点はどこか
3.     異異常状態問題(Anomaly detection, etc)
      l  動的
      l  対象の状態が正常か異異常か




                      12
外れ値検出問題

l    静的
        i.i.dサンプル
l     検出単位
      l  データ点
                           5
                           4
                           3
                           2
                           1
                           0
           -5    -3   -1               1   3   5
                           -1
                           -2
                           -3
                           -4
                           -5

                                13
変化点検出問題

l     動的
      l    単⼀一の観測対象の時系列列データ
l     検出単位
      l  時刻付きデータ点
             5
             4
             3
             2
             1
             0
                  0   5   10    15    20   25   30
             -1
             -2
             -3
             -4
             -5                14
異異常状態検出

l  動的
    l  複数の観測対象の時系列列データ

l  検出単位
    l  ある単⼀一の観測対象  5
                    4
    l  あるいはある観測対象のある観測区間
                    3

      5                 2

      4                 1

      3                 0
                             0          5        10        15   20   25   30
      2                 -1

      1                 -2

      0                 -3
           0   5   10   15
                        -4         20       25        30
      -1
      -2                -5

      -3
      -4
      -5
                                 15
⽬目次

l    異異常検知とは


l    解決アプローチと既存ソフトウェア


l    最新のビジネス応⽤用例例


l    異異常検知の未来


l    まとめ




                     16
3つの問題タイプの関係性
l  外れ値検出
    l  個々のデータ点の空間上の分布さえ考えれば良良い

l  変化点検出&異異常状態検出
    l  ⽅方向性1:時系列列データを多次元ベクトルに変換してi.i.dと⾒見見なす

            l    様々な⼿手法が適⽤用できるが情報のロスがある
      l    ⽅方向性2:時系列列データをそのままモデル化してあつかう
            l    分野依存の⼯工夫が必要
            l    例例:Unixコマンド系列列からの侵⼊入検知モデル


                                         変化点検出

       外れ値検出                   単純化
                              &情報ロス
                                         異異常状態検出
                                 17
異異常検知のアプローチ(1/3):統計ベース

l    基本⽅方針
      l  データ⺟母集団の形状や確率率率分布に仮定を置く

      l  データをモデルにフィッティング(パラメータを合わせる)

             l    例例:正規分布なら平均と標準偏差を合わせる
l  メリット
    l  データが仮定したモデルに従っていれば⾮非常に⾼高精度度を達成

l  デメリット
    l  ⼀一般にデータは綺麗麗な分布に従っていることは少ない

    l  ⾼高次元になると単純な分布であってもフィッティングが困難

l  代表的⼿手法
      l    Minimum Volume Ellipsoid estimation [Rousseeuw, 1985]
      l    Minimum Covariance Determinant [Rousseeuw, 1999]
             l    多次元正規分布を仮定してマハラノビス距離離を使う
                                      18
異異常検知のアプローチ(2/3):ルールベース

l  基本⽅方針
    l  既知の異異常サンプルを集める

    l  それらを表す汎⽤用的なルールを決める(あるいは学習する)

l  メリット
    l  専⾨門家が持つドメイン知識識をそのまま組み込むことができる

    l  既知の異異常に良良く合致するルール集合を得ることができる

l  デメリット
    l  背後のルールが複雑化しすぎると⼈人間では表現できない

    l  未知の異異常に合致するルールを作ることは困難

l  代表的⼿手法
      l    RIPPER [Cohen, Fast effective rule induction, Machine
            Learning, 1995]

                                       19
異異常検知のアプローチ(3/3):機械学習ベース

l  基本⽅方針
    l  教師有り:少数の異異常サンプルを正常と判別する分類モデルを学習

    l  教師無し:正常データを表すモデルを作り、異異常スコアを計算

l  メリット
    l  ⼀一般にはどのような分布のデータに対しても有効

    l  特に教師有りの場合は未知の異異常に対しても有効

    l  ⾼高次元の場合にもロバストな計算⼿手法がある

l  デメリット
    l  精度度は今得られているデータの品質が全てになる

    l  ドメイン知識を導⼊入するためには変数の作り⽅方などに⼯工夫が必要

l  代表的⼿手法
    l  One-class SVM

    l  Local Outlier Factor (LOF)
                   20
機械学習を⽤用いた教師有り/教師無し異異常検知

      教師有り異異常検知                 教師無し異異常検知

l  少数の既知異異常データが存在        l  異異常データは⽤用いない
l  正常サンプルから判別する          l  与えられた正常データを
    分類モデルを学習                  モデリング
l  既知異異常に⾮非常に有効          l  未知の異異常にも有効




                     21
機械学習による外れ値検知の代表例例(1/2)
One-class SVM [Schoelkopf et al., 1999]
l    Support Vector Machineの改変版
l    オリジナルデータ空間のサンプルを
      カーネル関数で特徵空間に射影
l    元のSVMの⽬目的
       l  2クラスを分類する境界⾯面を探す

l    OC-SVMの⽬目的
       l  (1-ρ)割のサンプルを最⼩小の体積に

           押し込める境界⾯面を探す
l    メリット
       l  適切切なカーネル関数を設計する

        ことで様々なデータに対応

          Manevitz et al, One-Class SVMs for Document Classification, 2001
                                           22
機械学習による外れ値検知の代表例例(2/2)
Local Outlier Factor (LOF)による外れ値スコア
[Breunig, 2000]
l  汎⽤用的な外れ値検出⼿手法
l  近傍探索索ベース
     l  基本の異異常スコア  ≒ 近傍への距離離

     l  ☆LOFスコア  ≒ 近傍への距離離 * 近傍の密集度度

l  例例:
     l  o2は密集クラスタC2からの外れ値として⾼高いLOFスコア

     l  C1中のサンプルは密集度度の低い疎なクラスタなので低いLOFスコア

     l  o1はいずれにせよ外れ値なので⾼高いLOFスコア

l  メリット
     l  ⽐比較的⾼高次元かつ分布を特定しなくても適⽤用可能

  l    データ分布に密度度の異異なる多峰性があっても適⽤用可能
(応⽤用)多次元センサーデータからの
異異常状態検出⼿手法




                                     normal
l  基本アプローチ:外れ値検出への帰着
    l  特徴ベクトル=滑滑⾛走窓⽅方式による移動平均が

l  最新⼿手法:
    近傍保存原理理による相関異異常検知[井⼿手, 2009]
    l  変数間の相関をグラフで表し、正常時と⽐比較

      l    グラフが有意に異異なる ⇛ 異異常状態とする




                                     faulty
      l    多重共線性の問題をL1正則化によって回避




                           24
既存ソフトウェアの異異常検知機能(1/3):
Rの異異常検知系パッケージ
l    統計⽤用S⾔言語の独⾃自拡張オープンソース実装
l    ベクトル・⾏行行列列演算・統計処理理を標準装備
l    多種多様な分野の様々な⼿手法が公開(CRAN)
l    ほぼ全てのパッケージはGPLライセンス
l  LOF
     l  dprepパッケージ:lofactor関数

     l  Rlofパッケージ(マルチコア並列列版):lof関数

l  One-class SVM
     l  Kernlabパッケージ(LIBSVMラッパー):one-svcオプション

l  変化点検出
      l    cpmパッケージ(パラメトリック):detectChangePoint
      l    ADM3パッケージ:ADM3アルゴリズム

                             25
既存ソフトウェアの異異常検知機能(2/3):
その他の商⽤用・OSSソフトウェア
l    代償的なOSSデータ解析ソフトウェア
      l  Weka: Javaベースの著名なデータマイニング統合環境

             l    Distance Based & Spatial outlier detection
      l    SHOGUN: SVM中⼼心の機械学習ツールボックス
             l    One-class SVM
      l    Scikits-learn: Pythonの機械学習ライブラリ
             l    One-class SVM, EllipticEnvelop
      l    ELKI: 著名な異異常検知研究グループが教育⽬目的で公開、AGPL
             l    LOF DB-outlier, LOCI, LDOF OPTICS-OF EM-Outlier
                      ,                      ,         ,
l    商⽤用ソフトウェア
      l    RapidMiner: 旧YALE, WekaをベースにRでも機能拡張可能な環境
             l    LOF DB-outlier, Class Outlier Factor,
                      ,
      l    SAS: 業界別ソリューションに⾦金金融不不正検知等
                                             26
既存ソフトウェアの異異常検知機能(3/3):
分野を限定した場合の異異常検知ソフトウェア
l    ネットワークの侵⼊入・攻撃検出
      l  NECのデータマイニング製品

             l    Smart Sifterによる侵⼊入検出(外れ値検知)
             l    オンライン忘却アルゴリズムChange Detector
                   によるネットワーク攻撃検出(変化点検出)
             l    Naïve Bayesによるなりすまし検出(異異常状態検出)
      l    Malheur
             l    機械学習(クラスタリング&分類ベース)
l    ⾦金金融業における不不正検知
       l  FICO社Falcon Fraud Manager

             l    クレジットカードの不不正利利⽤用検知
             l    Nerural networkベース(Multi-layered self-calibrating analytics)
      l    IBM, SAS, Oracle, NEC各社ソリューション
                                          27
⽬目次

l    異異常検知とは


l    解決アプローチと既存ソフトウェア


l    最新のビジネス応⽤用例例


l    異異常検知の未来


l    まとめ




                     28
機械設備の監視と異異常検知
l  例例(1) ⼯工場機械の遠隔監視データからの故障予兆検知
     l  データ:燃料料投⼊入量量や施設内温度度・圧⼒力力や出⼒力力レベル

     l  ⽬目的:壊れる前に挙動がおかしくなるという予兆を捉えたい

     l  難しさ:稼働⽇日営業時間中のみ稼働するため稼働時と停⽌止時でま

         ったく取れるデータの分布が異異なる
l  例例(2) トラックの遠隔監視データから部品交換時期を予測
     l  データ:運転時の様々なセンサーデータや保守履履歴

      l    ⽬目的:壊れる前に部品を交換したい
      l    難しさ:保守作業員の書いた履履歴データの信頼性が低い
l    例例(3) 汎⽤用の施設監視システムとして⾳音声センサの活⽤用
       l  データ:機器に取り付けた⾳音声のみ

      l    ⽬目的:動作⾳音から異異⾳音などを捉えてアラートを上げたい
      l    難しさ:処理理しているモノの種類やタイミングによっても動作⾳音
            が異異なる中で、正常時と異異常時を⾒見見分ける必要がある
                           29
画像認識識技術を⽤用いた侵⼊入者検知
l    画像認識識における機械学習⼿手法の進展
      l    特定物体認識識・⼀一般物体認識識精度度とスケーラビリティの進展
      l    様々な特徴量量抽出・前処理理⼿手法において機械学習⼿手法
      l    最終的な分類モデルにもSVMを始めとした機械学習
l    例例1:監視カメラ動画からの侵⼊入者検知への応⽤用
       l  居住者のシルエット・顔・歩き⽅方・⾏行行動モデルを学習

       l  それらに合致しない⼈人物が現れた時に注意アラートを発報

l    例例2:製品製造過程で画像認識識により異異常を検出・除外




                                      Jegou,
                                      CVPR tutorial, 2012
                           30
Machine Learning for the New York City Power
Grid [Rudin et al., TPAMI, 2012]
l  ⽬目的:電⼒力力配電設備からの障害予測・検知
l  状況
     l  ニューヨーク市の地下配電設備は

         ⽼老老朽化が進んでいる
     l  保守・修復復計画が重要

l  ⽤用いたデータ




l     機械学習の応⽤用
        l    Rule&k-means: 障害危険度度ランキング
        l    SVR: MTBF(平均故障間隔)推定
      http://web.mit.edu/rudin/www/TPAMIPreprint.pdf
                                    31
⽬目次

l    異異常検知とは


l    解決アプローチと既存ソフトウェア


l    最新のビジネス応⽤用例例


l    異異常検知の未来


l    まとめ




                     32
“Machine learning that matters”
Kiri L. Wagstaff, ICML, 2012.
l  機械学習研究におけるベンチマーク性能向上への偏向、
    評価関数の有⽤用性、実応⽤用との乖離離を批判し実⽤用指向を推奨
l  もっと応⽤用を指向した機械学習研究と開発が今後加速する
l  異異常検知は特にドメイン知識識が重要で専⾨門家の強⼒力力が不不可⽋欠




                       33
Edge-Heavy Data:
データ価値の多くはエッジ(縁)に存在する
l センサデータの増加により、データの総価値は増加する
l その⼀一⽅方、データの価値の密度度⾃自体は下がりつつある
    l    現在のビッグデータの殆どは排気データ(exhaust  data)
          ※排気データ:他の事業活動の副産物として⽣生成されたデータ
l 多くのデータが収集されるが利利⽤用されない。利利⽤用を⾒見見込んで投機的
に収集したり、解析することは割に合わない場合が多い
  l  コスト:ネットワーク,  ストレージ,  個⼈人情報管理理



   推測:多くのデータは収集された地点で管理理、処理理され  
         濃縮された重要な情報のみがやりとりされる

丸山宏, 岡野原大輔 Edge-Heavy Data: CPS・ビッグデータ・クラウド・スマホがもたらす次世代アーキテクチャ
GICTF総会 特別講演 2012, http://www.gictf.jp/doc/20120709GICTF.pdf

                              34
Jubatus: Hadoopの次のデータ処理理基盤として

l  従来のビッグデータ解析:集計やルール処理理がベース
l  これからのビッグデータ解析:
    l  データのサイズだけでなくリアルタイム性や深い解析が重要

l  そのためにはオンラインかつ分散計算可能な機械学習が必要

        1. Bigger data

      2. More in real-time

       3. Deep analysis
l  分散オンライン化したアルゴリズムを実装済みの処理理機能
     l  分類/回帰/統計処理理/近傍探索索/レコメンド/

l  Jubatus 0.4.0で外れ値検知を追加(2013年年1⽉月リリース)

                             35
異異常検知はビッグデータ解析の花形になる

l    理理由(1)
       l  ビジネス的に重要な応⽤用がたくさんある
l    理理由(2)
       l  ⾼高次元・⾮非構造データにおいて研究が進んでいる
l    理理由(3)
       l  データを削減することが原理理的にできない
            l  分類や回帰問題の場合

                    ‒  モデルが⼗十分シンプルならばサンプリングを使い
                       少数データで学習可能
            l    異異常検知の場合
                    ‒  全サンプルを平等に処理理しなければならない
l    理理由(4)
      l    近傍探索索ベースの⼿手法は計算効率率率化に限界
                         36
⽬目次

l    異異常検知とは


l    解決アプローチと既存ソフトウェア


l    最新のビジネス応⽤用例例


l    異異常検知の未来


l    まとめ




                     37
まとめ

l    「データあるところに異異常あり」


l    異異常検知はデータ活⽤用において普遍的に存在する問題である


l    主に外れ値検知、変化点検知、異異常状態検知の3タイプがある


l    アルゴリズム研究とソフトウェア開発が⽇日々進展している


l    異異常検知技術はビジネスでの応⽤用が広がっている


l    ビッグデータ解析の花形になりうる


                     38

FIT2012招待講演「異常検知技術のビジネス応用最前線」

  • 1.
    第11回情報科学技術フォーラム 異異常検知技術の ビジネス応⽤用最前線 株式会社Preferred Infrastructure リサーチャー&Jubatusチームリーダー ⽐比⼾戸  将平
  • 2.
    ⾃自⼰己紹介 l  ⽐比⼾戸将平(HIDO Shohei) l  TwitterID: @sla l  専⾨門:データマイニング、機械学習 l  経歴: l  2006: 京都⼤大学⼤大学院情報学研究科修⼠士卒 l  ⽊木構造データマイニング l  2006-2012: IBM東京基礎研究所データ解析グループ l  機械学習のアルゴリズム研究開発 l  お客様案件で数多くの異異常検知プロジェクトに従事 l  2012-: 株式会社プリファードインフラストラクチャー l  ⼤大規模オンライン分散機械学習基盤Jubatusチームリーダー 2
  • 3.
    本講演の概要 l  「データあるところに異異常あり」 l  異異常検知はデータ活⽤用において普遍的に存在する問題である l  主に外れ値検知、変化点検知、異異常状態検知の3タイプがある l  アルゴリズム研究とソフトウェア開発が⽇日々進展している l  異異常検知技術はビジネスでの応⽤用が広がっている l  ビッグデータ解析の花形になりうる 3
  • 4.
    ⽬目次 l  異異常検知とは } ⼊入⾨門編 } l  解決アプローチと既存ソフトウェア 実践編 最新のビジネス応⽤用例例 } l  応⽤用編 l  異異常検知の未来 l  まとめ 4
  • 5.
    異異常検知のイメージ 5 4 3 2 1 Outlier 外れ値 0 -5 -3 -1 1 3 5 -1 -2 -3 -4 -5 5
  • 6.
    データあるところに異異常あり(1/2) データ種類 応⽤用 l  単なる数値ベクトルデータ   l  外れ値検出   l  多次元ベクトル l  ⺟母集団からの外れ検知 l  ノイズ除去     l  センサー系   l  ヒト装着センサー群   l  センサー系   l  健康異異常検知   l  ⾞車車制御センサー群   l  異異常動作検知   l  ⼯工場監視センサー群   l  故障検知   l  イベント系列列   l  故障予兆検知   l  クレジットカード利利⽤用履履歴   l  ヘルスケアデータ   l  イベント系列列系   l  クレジット不不正利利⽤用検知   l  診療療誤り検知   6
  • 7.
    データあるところに異異常あり(2/2) データ種類 応⽤用 l  ネットワーク系   l  ネットワーク系   l  DDoS攻撃検知   l  トラフィック流流量量   l  侵⼊入検知/マルウェア検出   l  アクセスログ   l  障害検知/障害箇所検出 l  パケット経路路ログ   l  パケット内容   l  パターン認識識系   l  異異⾳音検知   l  パターン認識識系   l  異異常状態/侵⼊入者検知   l  ⾳音声   l  画像/動画   l  テキスト系   l  ノイズ⽂文章除去   l  テキスト系   l  新規トピック検出 l  新聞記事/ブログ記事   l  Twitterタイムライン   l  トレンドワード検出   7
  • 8.
    異異常検知問題の呼び名:○○検出・○○検知 Outlier 外れ値 Error Deviation エラー 変動 Rare Noise レアイベント ノイズ 異異常 Anomaly Fraud Novelty 新規 不不正 Defect Intrusion 故障 侵⼊入 Fault 不不適切切動作 8
  • 9.
    Noise 外れ値検出問題 ノイズ Error 5 エラー 4 Rare Deviation 3 レアイベント 変動 2 1 Outlier 外れ値 0 -5 -3 -1 1 3 5 -1 -2 Intrusion -3 侵⼊入 -4 Defect 故障 Fraud -5 不不正 Novelty Fault 新規 9 不不適切切動作
  • 10.
    外れ値の定義:統⼀一的⾒見見解は無い l  “Anoutlying observation,or outlier, is one that appears to deviate markedly from other members of the sample in which it occurs.” [Grubbs, 1969] l  “An observation that deviates so much from other observations as to arouse suspicion that is was generated by a different mechanism.” [Hawkins, 1980] l  “An observation (or subset of observations) which appears to be inconsistent with the remainder of that set of data.” [Barnett & Lewis, 1994] 10
  • 11.
    異異常は何から引き起こされるのか? l  ⾃自然系 l  ⾃自然変動の範疇:桜開花後の雪 l  観測ノイズ:不不可避な電磁ノイズ l  ⼈人間系 l  ヒューマンエラー:⼊入⼒力力ミスなど l  不不正⾏行行動:クレジットカード不不正利利⽤用 l  システム系 l  システム故障:HDDが物理理破損して読み取り不不能に l  システム故障の予兆:HDD読み取りエラーの頻発 l  システムへの攻撃:ネットワークDDoS攻撃 l  質的変化 l  対象の状態変化:マルウェア感染による攻撃⾏行行動開始 l  新しい知識識:あるトピックにおける新しい情報 11
  • 12.
    異異常検知問題の3つのタイプ 1.  外れ値検出問題(Outlier detection) l  静的 l  あるデータ点が分布から⼤大きく外れているか 2.  変化点検出問題(Change point detection) l  動的 l  対象に変化が起きたか否か、その時点はどこか 3.  異異常状態問題(Anomaly detection, etc) l  動的 l  対象の状態が正常か異異常か 12
  • 13.
    外れ値検出問題 l  静的 i.i.dサンプル l  検出単位 l  データ点 5 4 3 2 1 0 -5 -3 -1 1 3 5 -1 -2 -3 -4 -5 13
  • 14.
    変化点検出問題 l  動的 l  単⼀一の観測対象の時系列列データ l  検出単位 l  時刻付きデータ点 5 4 3 2 1 0 0 5 10 15 20 25 30 -1 -2 -3 -4 -5 14
  • 15.
    異異常状態検出 l  動的 l  複数の観測対象の時系列列データ l  検出単位 l  ある単⼀一の観測対象 5 4 l  あるいはある観測対象のある観測区間 3 5 2 4 1 3 0 0 5 10 15 20 25 30 2 -1 1 -2 0 -3 0 5 10 15 -4 20 25 30 -1 -2 -5 -3 -4 -5 15
  • 16.
    ⽬目次 l  異異常検知とは l  解決アプローチと既存ソフトウェア l  最新のビジネス応⽤用例例 l  異異常検知の未来 l  まとめ 16
  • 17.
    3つの問題タイプの関係性 l  外れ値検出 l  個々のデータ点の空間上の分布さえ考えれば良良い l  変化点検出&異異常状態検出 l  ⽅方向性1:時系列列データを多次元ベクトルに変換してi.i.dと⾒見見なす l  様々な⼿手法が適⽤用できるが情報のロスがある l  ⽅方向性2:時系列列データをそのままモデル化してあつかう l  分野依存の⼯工夫が必要 l  例例:Unixコマンド系列列からの侵⼊入検知モデル 変化点検出 外れ値検出 単純化 &情報ロス 異異常状態検出 17
  • 18.
    異異常検知のアプローチ(1/3):統計ベース l  基本⽅方針 l  データ⺟母集団の形状や確率率率分布に仮定を置く l  データをモデルにフィッティング(パラメータを合わせる) l  例例:正規分布なら平均と標準偏差を合わせる l  メリット l  データが仮定したモデルに従っていれば⾮非常に⾼高精度度を達成 l  デメリット l  ⼀一般にデータは綺麗麗な分布に従っていることは少ない l  ⾼高次元になると単純な分布であってもフィッティングが困難 l  代表的⼿手法 l  Minimum Volume Ellipsoid estimation [Rousseeuw, 1985] l  Minimum Covariance Determinant [Rousseeuw, 1999] l  多次元正規分布を仮定してマハラノビス距離離を使う 18
  • 19.
    異異常検知のアプローチ(2/3):ルールベース l  基本⽅方針 l  既知の異異常サンプルを集める l  それらを表す汎⽤用的なルールを決める(あるいは学習する) l  メリット l  専⾨門家が持つドメイン知識識をそのまま組み込むことができる l  既知の異異常に良良く合致するルール集合を得ることができる l  デメリット l  背後のルールが複雑化しすぎると⼈人間では表現できない l  未知の異異常に合致するルールを作ることは困難 l  代表的⼿手法 l  RIPPER [Cohen, Fast effective rule induction, Machine Learning, 1995] 19
  • 20.
    異異常検知のアプローチ(3/3):機械学習ベース l  基本⽅方針 l  教師有り:少数の異異常サンプルを正常と判別する分類モデルを学習 l  教師無し:正常データを表すモデルを作り、異異常スコアを計算 l  メリット l  ⼀一般にはどのような分布のデータに対しても有効 l  特に教師有りの場合は未知の異異常に対しても有効 l  ⾼高次元の場合にもロバストな計算⼿手法がある l  デメリット l  精度度は今得られているデータの品質が全てになる l  ドメイン知識を導⼊入するためには変数の作り⽅方などに⼯工夫が必要 l  代表的⼿手法 l  One-class SVM l  Local Outlier Factor (LOF) 20
  • 21.
    機械学習を⽤用いた教師有り/教師無し異異常検知 教師有り異異常検知 教師無し異異常検知 l  少数の既知異異常データが存在 l  異異常データは⽤用いない l  正常サンプルから判別する l  与えられた正常データを 分類モデルを学習 モデリング l  既知異異常に⾮非常に有効 l  未知の異異常にも有効 21
  • 22.
    機械学習による外れ値検知の代表例例(1/2) One-class SVM [Schoelkopfet al., 1999] l  Support Vector Machineの改変版 l  オリジナルデータ空間のサンプルを カーネル関数で特徵空間に射影 l  元のSVMの⽬目的 l  2クラスを分類する境界⾯面を探す l  OC-SVMの⽬目的 l  (1-ρ)割のサンプルを最⼩小の体積に 押し込める境界⾯面を探す l  メリット l  適切切なカーネル関数を設計する ことで様々なデータに対応 Manevitz et al, One-Class SVMs for Document Classification, 2001 22
  • 23.
    機械学習による外れ値検知の代表例例(2/2) Local Outlier Factor(LOF)による外れ値スコア [Breunig, 2000] l  汎⽤用的な外れ値検出⼿手法 l  近傍探索索ベース l  基本の異異常スコア  ≒ 近傍への距離離 l  ☆LOFスコア  ≒ 近傍への距離離 * 近傍の密集度度 l  例例: l  o2は密集クラスタC2からの外れ値として⾼高いLOFスコア l  C1中のサンプルは密集度度の低い疎なクラスタなので低いLOFスコア l  o1はいずれにせよ外れ値なので⾼高いLOFスコア l  メリット l  ⽐比較的⾼高次元かつ分布を特定しなくても適⽤用可能 l  データ分布に密度度の異異なる多峰性があっても適⽤用可能
  • 24.
    (応⽤用)多次元センサーデータからの 異異常状態検出⼿手法 normal l  基本アプローチ:外れ値検出への帰着 l  特徴ベクトル=滑滑⾛走窓⽅方式による移動平均が l  最新⼿手法: 近傍保存原理理による相関異異常検知[井⼿手, 2009] l  変数間の相関をグラフで表し、正常時と⽐比較 l  グラフが有意に異異なる ⇛ 異異常状態とする faulty l  多重共線性の問題をL1正則化によって回避 24
  • 25.
    既存ソフトウェアの異異常検知機能(1/3): Rの異異常検知系パッケージ l  統計⽤用S⾔言語の独⾃自拡張オープンソース実装 l  ベクトル・⾏行行列列演算・統計処理理を標準装備 l  多種多様な分野の様々な⼿手法が公開(CRAN) l  ほぼ全てのパッケージはGPLライセンス l  LOF l  dprepパッケージ:lofactor関数 l  Rlofパッケージ(マルチコア並列列版):lof関数 l  One-class SVM l  Kernlabパッケージ(LIBSVMラッパー):one-svcオプション l  変化点検出 l  cpmパッケージ(パラメトリック):detectChangePoint l  ADM3パッケージ:ADM3アルゴリズム 25
  • 26.
    既存ソフトウェアの異異常検知機能(2/3): その他の商⽤用・OSSソフトウェア l  代償的なOSSデータ解析ソフトウェア l  Weka: Javaベースの著名なデータマイニング統合環境 l  Distance Based & Spatial outlier detection l  SHOGUN: SVM中⼼心の機械学習ツールボックス l  One-class SVM l  Scikits-learn: Pythonの機械学習ライブラリ l  One-class SVM, EllipticEnvelop l  ELKI: 著名な異異常検知研究グループが教育⽬目的で公開、AGPL l  LOF DB-outlier, LOCI, LDOF OPTICS-OF EM-Outlier , , , l  商⽤用ソフトウェア l  RapidMiner: 旧YALE, WekaをベースにRでも機能拡張可能な環境 l  LOF DB-outlier, Class Outlier Factor, , l  SAS: 業界別ソリューションに⾦金金融不不正検知等 26
  • 27.
    既存ソフトウェアの異異常検知機能(3/3): 分野を限定した場合の異異常検知ソフトウェア l  ネットワークの侵⼊入・攻撃検出 l  NECのデータマイニング製品 l  Smart Sifterによる侵⼊入検出(外れ値検知) l  オンライン忘却アルゴリズムChange Detector によるネットワーク攻撃検出(変化点検出) l  Naïve Bayesによるなりすまし検出(異異常状態検出) l  Malheur l  機械学習(クラスタリング&分類ベース) l  ⾦金金融業における不不正検知 l  FICO社Falcon Fraud Manager l  クレジットカードの不不正利利⽤用検知 l  Nerural networkベース(Multi-layered self-calibrating analytics) l  IBM, SAS, Oracle, NEC各社ソリューション 27
  • 28.
    ⽬目次 l  異異常検知とは l  解決アプローチと既存ソフトウェア l  最新のビジネス応⽤用例例 l  異異常検知の未来 l  まとめ 28
  • 29.
    機械設備の監視と異異常検知 l  例例(1) ⼯工場機械の遠隔監視データからの故障予兆検知 l  データ:燃料料投⼊入量量や施設内温度度・圧⼒力力や出⼒力力レベル l  ⽬目的:壊れる前に挙動がおかしくなるという予兆を捉えたい l  難しさ:稼働⽇日営業時間中のみ稼働するため稼働時と停⽌止時でま ったく取れるデータの分布が異異なる l  例例(2) トラックの遠隔監視データから部品交換時期を予測 l  データ:運転時の様々なセンサーデータや保守履履歴 l  ⽬目的:壊れる前に部品を交換したい l  難しさ:保守作業員の書いた履履歴データの信頼性が低い l  例例(3) 汎⽤用の施設監視システムとして⾳音声センサの活⽤用 l  データ:機器に取り付けた⾳音声のみ l  ⽬目的:動作⾳音から異異⾳音などを捉えてアラートを上げたい l  難しさ:処理理しているモノの種類やタイミングによっても動作⾳音 が異異なる中で、正常時と異異常時を⾒見見分ける必要がある 29
  • 30.
    画像認識識技術を⽤用いた侵⼊入者検知 l  画像認識識における機械学習⼿手法の進展 l  特定物体認識識・⼀一般物体認識識精度度とスケーラビリティの進展 l  様々な特徴量量抽出・前処理理⼿手法において機械学習⼿手法 l  最終的な分類モデルにもSVMを始めとした機械学習 l  例例1:監視カメラ動画からの侵⼊入者検知への応⽤用 l  居住者のシルエット・顔・歩き⽅方・⾏行行動モデルを学習 l  それらに合致しない⼈人物が現れた時に注意アラートを発報 l  例例2:製品製造過程で画像認識識により異異常を検出・除外 Jegou, CVPR tutorial, 2012 30
  • 31.
    Machine Learning forthe New York City Power Grid [Rudin et al., TPAMI, 2012] l  ⽬目的:電⼒力力配電設備からの障害予測・検知 l  状況 l  ニューヨーク市の地下配電設備は ⽼老老朽化が進んでいる l  保守・修復復計画が重要 l  ⽤用いたデータ l  機械学習の応⽤用 l  Rule&k-means: 障害危険度度ランキング l  SVR: MTBF(平均故障間隔)推定 http://web.mit.edu/rudin/www/TPAMIPreprint.pdf 31
  • 32.
    ⽬目次 l  異異常検知とは l  解決アプローチと既存ソフトウェア l  最新のビジネス応⽤用例例 l  異異常検知の未来 l  まとめ 32
  • 33.
    “Machine learning thatmatters” Kiri L. Wagstaff, ICML, 2012. l  機械学習研究におけるベンチマーク性能向上への偏向、 評価関数の有⽤用性、実応⽤用との乖離離を批判し実⽤用指向を推奨 l  もっと応⽤用を指向した機械学習研究と開発が今後加速する l  異異常検知は特にドメイン知識識が重要で専⾨門家の強⼒力力が不不可⽋欠 33
  • 34.
    Edge-Heavy Data: データ価値の多くはエッジ(縁)に存在する l センサデータの増加により、データの総価値は増加する l その⼀一⽅方、データの価値の密度度⾃自体は下がりつつある l  現在のビッグデータの殆どは排気データ(exhaust  data) ※排気データ:他の事業活動の副産物として⽣生成されたデータ l 多くのデータが収集されるが利利⽤用されない。利利⽤用を⾒見見込んで投機的 に収集したり、解析することは割に合わない場合が多い l  コスト:ネットワーク,  ストレージ,  個⼈人情報管理理 推測:多くのデータは収集された地点で管理理、処理理され         濃縮された重要な情報のみがやりとりされる 丸山宏, 岡野原大輔 Edge-Heavy Data: CPS・ビッグデータ・クラウド・スマホがもたらす次世代アーキテクチャ GICTF総会 特別講演 2012, http://www.gictf.jp/doc/20120709GICTF.pdf 34
  • 35.
    Jubatus: Hadoopの次のデータ処理理基盤として l  従来のビッグデータ解析:集計やルール処理理がベース l これからのビッグデータ解析: l  データのサイズだけでなくリアルタイム性や深い解析が重要 l  そのためにはオンラインかつ分散計算可能な機械学習が必要 1. Bigger data 2. More in real-time 3. Deep analysis l  分散オンライン化したアルゴリズムを実装済みの処理理機能 l  分類/回帰/統計処理理/近傍探索索/レコメンド/ l  Jubatus 0.4.0で外れ値検知を追加(2013年年1⽉月リリース) 35
  • 36.
    異異常検知はビッグデータ解析の花形になる l  理理由(1) l  ビジネス的に重要な応⽤用がたくさんある l  理理由(2) l  ⾼高次元・⾮非構造データにおいて研究が進んでいる l  理理由(3) l  データを削減することが原理理的にできない l  分類や回帰問題の場合 ‒  モデルが⼗十分シンプルならばサンプリングを使い 少数データで学習可能 l  異異常検知の場合 ‒  全サンプルを平等に処理理しなければならない l  理理由(4) l  近傍探索索ベースの⼿手法は計算効率率率化に限界 36
  • 37.
    ⽬目次 l  異異常検知とは l  解決アプローチと既存ソフトウェア l  最新のビジネス応⽤用例例 l  異異常検知の未来 l  まとめ 37
  • 38.
    まとめ l  「データあるところに異異常あり」 l  異異常検知はデータ活⽤用において普遍的に存在する問題である l  主に外れ値検知、変化点検知、異異常状態検知の3タイプがある l  アルゴリズム研究とソフトウェア開発が⽇日々進展している l  異異常検知技術はビジネスでの応⽤用が広がっている l  ビッグデータ解析の花形になりうる 38