Rで異常検知
                 @yokkuns : 里 洋平
                 第2回 Japan.R LT
                   2011.11.26




2011年11月28日月曜日
AGENDA
             • 自己紹介
             • 異常検知概要
              • 異常検知とは
              • 考え方
             • Rで簡易版実装
2011年11月28日月曜日
AGENDA
             • 自己紹介
             • 異常検知概要
              • 異常検知とは
              • 考え方
             • Rで簡易版実装
2011年11月28日月曜日
里 洋平
                 • ID : @yokkuns
                 • 名前 : 里 洋平
                 • 職業 : データマイニング
                      エンジニア




2011年11月28日月曜日
動画レコメンド




2011年11月28日月曜日
市場予測




2011年11月28日月曜日
活動例(抜粋): Time Series Analysis

                         Anomaly detection
                     複数時系列から異常な振る舞いを検知する

                                                                           C
                                                                           A
        時系列のモデリング             複数時系列の異常検知                                   B

      時系列A                            時系列A

                                                                       異常な振る舞い
      時系列B


      時系列C                    時系列B           時系列C

                                異常な振る舞いの時系列を検出




                 例1:トラフィック異常検知                 例2:CM効果のノイズ除去

                    トラフィックA                         ケースA
                                                             CM効果
                    トラフィックB                         ケースB

                    トラフィックC    調査                   ケースC

                      異常な振る舞いをしている                  異常な振る舞いをしているケースを
                     トラフィックの原因を調査する                 除外して、CMの効果を算出する
                                                                                 85
2011年11月28日月曜日
活動例(抜粋): Time Series Analysis

                     Anomaly detection
                 新しいデータと過去時系列モデルの乖離から異常検出


                          8000.0000
                                             異常スコア推移   3.0000

  モデル構築
                                       異常値
  ◇例 : ARIMAモデル                                        2.2500




                          5970.7500                    1.5000




                                                       0.7500




                          3941.5000                         0



  異常スコアの算出
                                                       -0.7500

   ◇例 : 対数損失

                          1912.2500                    -1.5000




                                                       -2.2500




                          -117.0000                    -3.0000


                                                t
                                      4/ 週
                                      4/ 1 週
                                      4/ 8 週
                                       5/ 週
                                          2週

                                      5/ 週
                                      5/ 6 週
                                      5/ 3 週
                                       6/ 週
                                      6/ 週
                                      6/ 3 週
                                      6/ 0 週
                                       7/ 週
                                      7/ 週
                                      7/ 1 週
                                      7/ 週
                                            週
                                          4



                                        25


                                          9



                                        30
                                          6



                                        27
                                          4


                                        18
                                        25
                                  4/

                                        1
                                        1



                                       5/

                                        1
                                        2




                                        1
                                        2




                                        1
                                                             86
2011年11月28日月曜日
活動例(抜粋): Time Series Analysis

                      TV Commercial Effects
                 時系列的な振る舞いの特徴から各KPIへのCMの影響度を算出

                                                 イベン
             CM時系列                                   ト

                                        新規
                                        登録


                             CM                  ARPPU




                                        ARPU

            各KPIの時系列
                                                         その他
                                                         外部
                                  継続率
                                                         要因




                                               ケース




                                                           87

2011年11月28日月曜日
Tokyo.R 主催




          ◆ 数少ない社会人中心のRコミュニティ
          ◆ 2010年に設立し、現在第19回まで開催
          ◆ 様々な業種•職種の方が参加

2011年11月28日月曜日
AGENDA
             • 自己紹介
             • 異常検知概要
              • 異常検知とは
              • 考え方
             • Rで簡易版実装
2011年11月28日月曜日
異常検知
    大量のデータから異常なデータや変化を検出する




2011年11月28日月曜日
セキュリティ
                 コンピュータウィルスやDos攻撃




2011年11月28日月曜日
障害対応
                 障害の原因特定




2011年11月28日月曜日
AGENDA
             • 自己紹介
             • 異常検知概要
              • 異常検知とは
              • 考え方
             • Rで簡易版実装
2011年11月28日月曜日
学習
                 過去データからモデルを構築する




2011年11月28日月曜日
予測と観測
                 モデルによる予測値と観測値の差を見る


                             モデルによる予測




                              予測と観測の差

                                観測結果
2011年11月28日月曜日
異常スコア算出
      過去の予測と観測の差と比較して今回の差は異常か否か



                      モデルによる予測




                        予測と観測の差

                         観測結果
2011年11月28日月曜日
AGENDA
             • 自己紹介
             • 異常検知概要
              • 異常検知とは
              • 考え方
             • Rで簡易版実装
2011年11月28日月曜日
Rで簡易版実装
         過去データでARモデルを構築
  残差を過去の残差の標準偏差で割った値を異常スコアとする




2011年11月28日月曜日
Rで簡易版実装
         過去データでARモデルを構築
  残差を過去の残差の標準偏差で割った値を異常スコアとする
                      ARモデルの構築と予測




                          過去の残差




2011年11月28日月曜日
Rで簡易版実装
                 時系列データyを用意しシミュレーション




2011年11月28日月曜日
Rで簡易版実装
                 時系列データyを用意しシミュレーション
                         51∼100個目のデータで異常検知を実行



                         学習データ

                          新しいデータ




                                   結果をデータフレムに整形




2011年11月28日月曜日
結果
                 過去に比べ急激に下がった時に検知

                         異常発生!
                                    観測値
                                    予測値

            異常発生!
                                 異常発生!




                                    異常スコア




2011年11月28日月曜日
AGENDA
             • 自己紹介
             • 異常検知概要
              • 異常検知とは
              • 考え方
             • Rで簡易版実装
2011年11月28日月曜日
次回以降の
    発表者を募集しています


2011年11月28日月曜日

Japan r2 lt_yokkuns

  • 1.
    Rで異常検知 @yokkuns : 里 洋平 第2回 Japan.R LT 2011.11.26 2011年11月28日月曜日
  • 2.
    AGENDA • 自己紹介 • 異常検知概要 • 異常検知とは • 考え方 • Rで簡易版実装 2011年11月28日月曜日
  • 3.
    AGENDA • 自己紹介 • 異常検知概要 • 異常検知とは • 考え方 • Rで簡易版実装 2011年11月28日月曜日
  • 4.
    里 洋平 • ID : @yokkuns • 名前 : 里 洋平 • 職業 : データマイニング エンジニア 2011年11月28日月曜日
  • 5.
  • 6.
  • 7.
    活動例(抜粋): Time SeriesAnalysis Anomaly detection 複数時系列から異常な振る舞いを検知する C A 時系列のモデリング 複数時系列の異常検知 B 時系列A 時系列A 異常な振る舞い 時系列B 時系列C 時系列B 時系列C 異常な振る舞いの時系列を検出 例1:トラフィック異常検知 例2:CM効果のノイズ除去 トラフィックA ケースA CM効果 トラフィックB ケースB トラフィックC 調査 ケースC 異常な振る舞いをしている 異常な振る舞いをしているケースを トラフィックの原因を調査する 除外して、CMの効果を算出する 85 2011年11月28日月曜日
  • 8.
    活動例(抜粋): Time SeriesAnalysis Anomaly detection 新しいデータと過去時系列モデルの乖離から異常検出 8000.0000 異常スコア推移 3.0000 モデル構築 異常値 ◇例 : ARIMAモデル 2.2500 5970.7500 1.5000 0.7500 3941.5000 0 異常スコアの算出 -0.7500 ◇例 : 対数損失 1912.2500 -1.5000 -2.2500 -117.0000 -3.0000 t 4/ 週 4/ 1 週 4/ 8 週 5/ 週 2週 5/ 週 5/ 6 週 5/ 3 週 6/ 週 6/ 週 6/ 3 週 6/ 0 週 7/ 週 7/ 週 7/ 1 週 7/ 週 週 4 25 9 30 6 27 4 18 25 4/ 1 1 5/ 1 2 1 2 1 86 2011年11月28日月曜日
  • 9.
    活動例(抜粋): Time SeriesAnalysis TV Commercial Effects 時系列的な振る舞いの特徴から各KPIへのCMの影響度を算出 イベン CM時系列 ト 新規 登録 CM ARPPU ARPU 各KPIの時系列 その他 外部 継続率 要因 ケース 87 2011年11月28日月曜日
  • 10.
    Tokyo.R 主催 ◆ 数少ない社会人中心のRコミュニティ ◆ 2010年に設立し、現在第19回まで開催 ◆ 様々な業種•職種の方が参加 2011年11月28日月曜日
  • 11.
    AGENDA • 自己紹介 • 異常検知概要 • 異常検知とは • 考え方 • Rで簡易版実装 2011年11月28日月曜日
  • 12.
    異常検知 大量のデータから異常なデータや変化を検出する 2011年11月28日月曜日
  • 13.
    セキュリティ コンピュータウィルスやDos攻撃 2011年11月28日月曜日
  • 14.
    障害対応 障害の原因特定 2011年11月28日月曜日
  • 15.
    AGENDA • 自己紹介 • 異常検知概要 • 異常検知とは • 考え方 • Rで簡易版実装 2011年11月28日月曜日
  • 16.
    学習 過去データからモデルを構築する 2011年11月28日月曜日
  • 17.
    予測と観測 モデルによる予測値と観測値の差を見る モデルによる予測 予測と観測の差 観測結果 2011年11月28日月曜日
  • 18.
    異常スコア算出 過去の予測と観測の差と比較して今回の差は異常か否か モデルによる予測 予測と観測の差 観測結果 2011年11月28日月曜日
  • 19.
    AGENDA • 自己紹介 • 異常検知概要 • 異常検知とは • 考え方 • Rで簡易版実装 2011年11月28日月曜日
  • 20.
    Rで簡易版実装 過去データでARモデルを構築 残差を過去の残差の標準偏差で割った値を異常スコアとする 2011年11月28日月曜日
  • 21.
    Rで簡易版実装 過去データでARモデルを構築 残差を過去の残差の標準偏差で割った値を異常スコアとする ARモデルの構築と予測 過去の残差 2011年11月28日月曜日
  • 22.
    Rで簡易版実装 時系列データyを用意しシミュレーション 2011年11月28日月曜日
  • 23.
    Rで簡易版実装 時系列データyを用意しシミュレーション 51∼100個目のデータで異常検知を実行 学習データ 新しいデータ 結果をデータフレムに整形 2011年11月28日月曜日
  • 24.
    結果 過去に比べ急激に下がった時に検知 異常発生! 観測値 予測値 異常発生! 異常発生! 異常スコア 2011年11月28日月曜日
  • 25.
    AGENDA • 自己紹介 • 異常検知概要 • 異常検知とは • 考え方 • Rで簡易版実装 2011年11月28日月曜日
  • 26.
    次回以降の 発表者を募集しています 2011年11月28日月曜日