55
R R 言語による 言語による 異常検知入門 異常検知入門 @yokkuns @yokkuns 里 洋平 里 洋平 2011/07/02 Tokyo.R#15 2011/07/02 Tokyo.R#15

Tokyo r15 異常検知入門

Embed Size (px)

Citation preview

Page 1: Tokyo r15 異常検知入門

RR言語による言語による異常検知入門異常検知入門

@yokkuns @yokkuns 里 洋平里 洋平2011/07/02 Tokyo.R#152011/07/02 Tokyo.R#15

Page 2: Tokyo r15 異常検知入門

本日は、本日は、Tokyo.R#15Tokyo.R#15ににご参加頂きありがとうございます!ご参加頂きありがとうございます!

Page 3: Tokyo r15 異常検知入門

発表の前に発表の前に皆さんに謝らなければ皆さんに謝らなければならないことがありますならないことがあります

Page 4: Tokyo r15 異常検知入門
Page 5: Tokyo r15 異常検知入門
Page 6: Tokyo r15 異常検知入門
Page 7: Tokyo r15 異常検知入門

実装間に合いませんでした。すみません・・・

Page 8: Tokyo r15 異常検知入門

時系列分析による時系列分析による異常検知入門異常検知入門

@yokkuns @yokkuns 里 洋平里 洋平2011/07/02 Tokyo.R#152011/07/02 Tokyo.R#15

Page 9: Tokyo r15 異常検知入門

本日の内容本日の内容

● 変化点検出

Page 10: Tokyo r15 異常検知入門

AGENDAAGENDA

● 自己紹介● 異常検知とは● 3つの異常検知● 変化点検出● 最後に

Page 11: Tokyo r15 異常検知入門

AGENDAAGENDA

● 自己紹介● 異常検知とは● 3つの異常検知● 変化点検出● 最後に

Page 12: Tokyo r15 異常検知入門

自己紹介自己紹介

● 名前 : 里 洋平● ID : yokkuns

● 職業 : データマイニングエンジニア

Page 13: Tokyo r15 異常検知入門

Tokyo.RTokyo.Rを主催していますを主催しています

参加ありがとうございます!

http://groups.google.com/group/r-study-tokyo

Page 14: Tokyo r15 異常検知入門

本を執筆しました本を執筆しました

Page 15: Tokyo r15 異常検知入門

AGENDAAGENDA

● 自己紹介● 異常検知とは● 3つの異常検知● 変化点検出● 最後に

Page 16: Tokyo r15 異常検知入門

異常検知とは異常検知とは

大量データから異常なデータや変化を検出する技術

Page 17: Tokyo r15 異常検知入門

異常検知とは異常検知とは

大量データから異常なデータや変化を検出する技術

ログ

Page 18: Tokyo r15 異常検知入門

異常検知とは異常検知とは

大量データから異常なデータや変化を検出する技術

ログ データマイニング

Page 19: Tokyo r15 異常検知入門

異常検知とは異常検知とは

大量データから異常なデータや変化を検出する技術

ログ データマイニング

Page 20: Tokyo r15 異常検知入門

セキュリティ分野での活用例セキュリティ分野での活用例

コンピュータウイルスやDos攻撃の早期発見

Page 21: Tokyo r15 異常検知入門

障害検出•故障診断での活用例障害検出•故障診断での活用例

障害発生から原因特定までを時間を短縮する

Page 22: Tokyo r15 異常検知入門

障害検出•故障診断での活用例障害検出•故障診断での活用例

障害発生から原因特定までを時間を短縮する

ログ

解析解析

解析 解析

Page 23: Tokyo r15 異常検知入門

障害検出•故障診断での活用例障害検出•故障診断での活用例

障害発生から原因特定までを時間を短縮する

ログ ログ

解析解析

解析 解析解析

解析

高い異常スコア

Page 24: Tokyo r15 異常検知入門

マーケティングでの活用例マーケティングでの活用例

新しい流行の兆しを検出する

Page 25: Tokyo r15 異常検知入門

マーケティングでの活用例マーケティングでの活用例

新しい流行の兆しを検出する

消費行動口コミ アンケート

Page 26: Tokyo r15 異常検知入門

マーケティングでの活用例マーケティングでの活用例

新しい流行の兆しを検出する

消費行動口コミ アンケート

いつもと違った異常を検知

Page 27: Tokyo r15 異常検知入門

マーケティングでの活用例マーケティングでの活用例

新しい流行の兆しを検出する

消費行動口コミ アンケート

いつもと違った異常を検知

新しい流行に気付き、新商品の開発へ

Page 28: Tokyo r15 異常検知入門

過去データからモデルを作る過去データからモデルを作る

統計モデルを用いて異常を検出する

入力データ

確率モデルの学習 スコア計算

出力

Page 29: Tokyo r15 異常検知入門

AGENDAAGENDA

● 自己紹介● 異常検知とは● 3つの異常検知● 変化点検出● 最後に

Page 30: Tokyo r15 異常検知入門

33つの異常検知つの異常検知

基本的な異常検知機能 入力対象 確率モデル 検出対象 応用

Page 31: Tokyo r15 異常検知入門

33つの異常検知つの異常検知

基本的な異常検知機能 入力対象 確率モデル 検出対象 応用

はずれ値検出 多次元ベクトル 独立モデル 外れ値 不正検出侵入検知故障検知

Page 32: Tokyo r15 異常検知入門

33つの異常検知つの異常検知

基本的な異常検知機能 入力対象 確率モデル 検出対象 応用

はずれ値検出 多次元ベクトル 独立モデル 外れ値 不正検出侵入検知故障検知

変化点検出 多次元時系列 時系列モデル

時系列上の 急激な変化バースト的異常

攻撃検出ワーム検出障害予兆検出

Page 33: Tokyo r15 異常検知入門

33つの異常検知つの異常検知

基本的な異常検知機能 入力対象 確率モデル 検出対象 応用

はずれ値検出 多次元ベクトル 独立モデル 外れ値 不正検出侵入検知故障検知

変化点検出 多次元時系列 時系列モデル

時系列上の 急激な変化バースト的異常

攻撃検出ワーム検出障害予兆検出

異常行動検出 セッション時系列

行動モデル 異常セッション異常行動パターン

なりすまし検出障害予兆検出不審行動検出

Page 34: Tokyo r15 異常検知入門

33つの異常検知つの異常検知

基本的な異常検知機能 入力対象 確率モデル 検出対象 応用

はずれ値検出 多次元ベクトル 独立モデル 外れ値 不正検出侵入検知故障検知

変化点検出 多次元時系列 時系列モデル

時系列上の 急激な変化バースト的異常

攻撃検出ワーム検出障害予兆検出

異常行動検出 セッション時系列

行動モデル 異常セッション異常行動パターン

なりすまし検出障害予兆検出不審行動検出

Page 35: Tokyo r15 異常検知入門

33つの異常検知つの異常検知

基本的な異常検知機能 入力対象 確率モデル 検出対象 応用

はずれ値検出 多次元ベクトル 独立モデル 外れ値 不正検出侵入検知故障検知

変化点検出 多次元時系列 時系列モデル

時系列上の 急激な変化バースト的異常

攻撃検出ワーム検出障害予兆検出

異常行動検出 セッション時系列

行動モデル 異常セッション異常行動パターン

なりすまし検出障害予兆検出不審行動検出

本日のテーマは、変化点検出

Page 36: Tokyo r15 異常検知入門

AGENDAAGENDA

● 自己紹介● 異常検知とは● 3つの異常検知● 変化点検出● 最後に

Page 37: Tokyo r15 異常検知入門

変化点を検出する必要性変化点を検出する必要性

Page 38: Tokyo r15 異常検知入門

変化点を検出する必要性変化点を検出する必要性

決まった閾値による検知では手遅れな場合がある

Page 39: Tokyo r15 異常検知入門

変化点を検出する必要性変化点を検出する必要性

決まった閾値による検知では手遅れな場合がある

● 新種のワームの発生● 決まった閾値を超えた時点では手遅れ

– ウイルスの増殖速度は相当速い

Page 40: Tokyo r15 異常検知入門

変化点を検出する必要性変化点を検出する必要性

決まった閾値による検知では手遅れな場合がある

● 新種のワームの発生● 決まった閾値を超えた時点では手遅れ

– ウイルスの増殖速度は相当速い

急激な時系列的振る舞いの変わり目の時点の検出が重要

Page 41: Tokyo r15 異常検知入門

統計的検定に基づく変化点検出統計的検定に基づく変化点検出

前後の時系列モデルへの当てはまりで検出する

あてはめ曲線

時系列データ

当てはめ誤差 変化点ERROR1ERROR1

当てはめ誤差 ERROR2

変化点

時間

Page 42: Tokyo r15 異常検知入門

統計的検定に基づく変化点検出統計的検定に基づく変化点検出

リアルタイムで検出できない

● 全ての候補点に対して検定を行うため時間がかかる● セキュリティ監視や障害監視に使えない

Page 43: Tokyo r15 異常検知入門

統計的検定に基づく変化点検出統計的検定に基づく変化点検出

リアルタイムで検出できない

● 全ての候補点に対して検定を行うため時間がかかる● セキュリティ監視や障害監視に使えない

計算効率が高くオンライン処理に向いた変化点検出が必要

Page 44: Tokyo r15 異常検知入門

変化点検出エンジン変化点検出エンジンChange FinderChange Finder

リアルタイムに変化点を検出できる

スコア

時系列データ

変化点

Page 45: Tokyo r15 異常検知入門

変化点検出エンジン変化点検出エンジンChange FinderChange Finder

2段階学習により本質的な変動を捉える

データ時系列モデルの忘却学習

スコアリング

スコアの平滑化 スコア時系列モデルの忘却学習

スコアリング

入力 Xt

第1段階学習 第2段階学習

Page 46: Tokyo r15 異常検知入門

Change FinderChange Finderの基本原理の基本原理

● Step1 : 第1段階学習

データ時系列モデルの忘却学習

スコアリング

時系列データの確率モデルを用意し、オンライン忘却学習アルゴリズムで学習

対数損失 :

ヘリンジャースコア :

Page 47: Tokyo r15 異常検知入門

Change FinderChange Finderの基本原理の基本原理

● Step1 : 第1段階学習

データ時系列モデルの忘却学習

スコアリング

時系列データの確率モデルを用意し、オンライン忘却学習アルゴリズムで学習

対数損失 :

ヘリンジャースコア :

過去のモデルに対するデータの意外性

Page 48: Tokyo r15 異常検知入門

Change FinderChange Finderの基本原理の基本原理

● Step1 : 第1段階学習

データ時系列モデルの忘却学習

スコアリング

時系列データの確率モデルを用意し、オンライン忘却学習アルゴリズムで学習

対数損失 :

ヘリンジャースコア : 学習前後で確率分布がどれくらい動いたか

Page 49: Tokyo r15 異常検知入門

Change FinderChange Finderの基本原理の基本原理

● Step2 : 平滑化

スコアの平滑化

Given : T

Page 50: Tokyo r15 異常検知入門

Change FinderChange Finderの基本原理の基本原理

● Step3 : 第2段階学習

スコア時系列モデルの忘却学習

スコアリング

時系列データの確率モデルを用意し、オンライン忘却学習アルゴリズムで学習

対数損失 :

ヘリンジャースコア :

Given : T'

Page 51: Tokyo r15 異常検知入門

Change FinderChange Finderのポイントのポイント

ノイズを除去し、本質的な変動のみを捉える

● 第1段階学習では時系列中の外れ値を検出● 外れ値スコアを平滑化→ノイズに反応した外れ値を除去● 第2段階学習によって本質的な変動のみを検出

Page 52: Tokyo r15 異常検知入門

変化点検出の応用例変化点検出の応用例

攻撃検知1 : MS.Blast

変化点スコアアクセスドロップ数

第1次検知(発生)

第2次検知(爆発的増加)

Page 53: Tokyo r15 異常検知入門

AGENDAAGENDA

● 自己紹介● 異常検知とは● 3つの異常検知● 変化点検出● 最後に

Page 54: Tokyo r15 異常検知入門

最後に最後に

次回以降の次回以降の発表者を募集しています!発表者を募集しています!

Page 55: Tokyo r15 異常検知入門

ご清聴ありがとうございましたご清聴ありがとうございました