カジュアル勉強会 @仙台
機械学習と異常検知 第1回
株式会社 エクテック
取締役 兼データサイエンティスト
エクテックのミッション
(Introduction)
東北を、仙台を、
データサイエンスで
盛り上げる
始 動: 2019年10⽉
拠 点: 仙台市内 2拠点
資本⾦: 2,000,000円 (⾃⼰資本)
社員数: 3名(+若⼲名)
株式会社 エクテック
自己紹介
⼤⼿通信キャリアにて
NWエンジニア・データエンジニアを
国内No.1 名刺管理クラウド企業にて
データサイエンス関連の研究員 を経て
自己紹介
⼤⼿通信キャリアにて
NWエンジニア・データエンジニアを
国内No.1 名刺管理クラウド企業にて
データサイエンス関連の研究員 を経て
現在は東北を、仙台を、
データサイエンスで盛り上げるため
様々な取り組みを⾏っています
プライベートな趣味として
データサイエンスはもちろん,
PUBG(Player Unknown Battle Ground),
Monster Hunter PS4, 第五⼈格
お酒全般,
新しい物好き,
⽇本史好きです
自己紹介
第8回までの流れ
第1回
第2回
第3回
第4回
第5回
第6回
第7回
第8回
異常検知の基本的な考え方
1変数正規分布に基づく異常検知
カイ二乗分布とホテリングT^2法(1変数)
ホテリングT^2(多変数)
マハラノビス=タグチ法
非対称な分布における異常検知
期待値-最大化法(1次元)
k近傍法
性能評価の方法
正常標本精度と異常標本精度
異常検出の様々な指標
モデル精度の検証
正規混合分布モデル
サポートベクタによる異常検知
k平均法
不要な次元を含むデータの異常検知
次元削減
主成分分析を利用した正常標本の算出
主成分分析やカーネル主成分分析による異常検知
Input/Outputがあるデータの異常検知
線形回帰モデルによる異常検知
リッジ回帰モデルによる異常検知
ベイズ的線形回帰モデルによる異常検知
時系列データの異常検知
近傍法による異常部位検出
特異スペクトル変換法
自己回帰モデルによる異常検知
総括
前段
勉強会に参加する以上...
『なにか』を
持って帰って欲しい
『すべて』は難しいけれど
気になった、興味をもった
キーワードでも良いので
⼿元に持って帰って
いただけると幸いです
初回、第1回⽬ですので、
導⼊な話がメインとなってしまいます。
ご了承ください。
異常検知の基本的な考え⽅
(Basic Idea of Anomaly Detection)
IoT
Fin-tech
Manufacture
Web
HR-tech
異常とは?
(1分間)
普段とは異なるパターンや振る舞い
イベント, アイテム, 観測結果, ...
『異常』
Webサービスの不正アクセス
⾦融機関の不正利⽤
ラインにある製品の不良品判定
センサーデバイスからの異常検知
ヒトや⾞の交通量変化検知
…etc
あらゆるビジネスの現場で
変化あるいは異常の兆候を
捉えること
⾮常に重要な課題
プログラムによる条件分岐
や統計学によって1世紀にわたり
試⾏錯誤されてきた
※おもちゃの問題、ルールベース、エキスパートエンジン
ルールベースでいく?
ルールベースでいく?
IF (気温 ≧ 28℃) AND (湿度 ≧ 75%)
THEN 不快.
職⼈技で、過去の事例を「ルール」という
形で蓄えることで対処すること
取得できるデータが多くなく、データの
性質について⼗⼆分な知識がある場合、
⼿作業的にルールを作成しても⼗分
IF-THENルール
わかりやすさでいえば魅⼒的である
⼀⽅で...
ただ実⽤上のほとんどの場合、⼈間の経験を
直接ルール化するのは難しい。
(⼈間を主たる判定ルール⽣成源として
監視システムを構築するアプローチはほぼ必ず
失敗することがわかっている)
なぜなら、⼈間が明⽰的に意識できる
ルールは実世界の多様性に⽐べれば
桁違いに乏しいから。
『知識獲得のボトルネック』
この問題を解決するために、
統計的機械学習の技術が進歩してきた
機械学習により、近年
異常検知や変化検知にも
様々な取り組みがされてきている
実⽤的な監視システムの構築には
データからパターンを⾃動学習する、とか
⼈⼯知能
(Artificial Intelligence)
ヒトの脳を模して
学習するコンピュータ
現実的な課題、理論的な
膨⼤な計算は AIに任せませんか?
な雰囲気になってきた
異常検知と変化検知のいろいろな問題
『仲間から値が外れている』
外れ値検出(Outlier Detection)
『周波数の振る舞いの変化データ』
変化点検出(Change-point Detection)
『⼼電図データの異常』
異常部位検出(Discard Detection)
スパムメール(広告メール)の判定問題
(⽂字列の数値ベクトルから異常を判定)
統計学的機械学習に基づく
異常検知や変化検知の問題
データの性質に応じて確率分布を
何のように「学習」するか
データの性質
ラベル付き?ラベルなし?
教師あり学習?教師なし学習?
そのデータは、正規分布に従う?
それとも⾮対称で重なり合う分布?
そのデータは、「正常」なデータのみ?
それとも「異常」なデータを含む?
第1回
第2回
第3回
第4回
第5回
第6回
第7回
第8回
異常検知の基本的な考え方
1変数正規分布に基づく異常検知
カイ二乗分布とホテリングT^2法(1変数)
ホテリングT^2(多変数)
マハラノビス=タグチ法
非対称な分布における異常検知
期待値-最大化法(1次元)
k近傍法
性能評価の方法
正常標本精度と異常標本精度
異常検出の様々な指標
モデル精度の検証
正規混合分布モデル
サポートベクタによる異常検知
k平均法
不要な次元を含むデータの異常検知
次元削減
主成分分析を利用した正常標本の算出
主成分分析やカーネル主成分分析による異常検知
Input/Outputがあるデータの異常検知
線形回帰モデルによる異常検知
リッジ回帰モデルによる異常検知
ベイズ的線形回帰モデルによる異常検知
時系列データの異常検知
近傍法による異常部位検出
特異スペクトル変換法
自己回帰モデルによる異常検知
総括
第1回
第2回
第3回
第4回
第5回
第6回
第7回
第8回
異常検知の基本的な考え方
1変数正規分布に基づく異常検知
カイ二乗分布とホテリングT^2法(1変数)
ホテリングT^2(多変数)
マハラノビス=タグチ法
非対称な分布における異常検知
期待値-最大化法(1次元)
k近傍法
性能評価の方法
正常標本精度と異常標本精度
異常検出の様々な指標
モデル精度の検証
正規混合分布モデル
サポートベクタによる異常検知
k平均法
不要な次元を含むデータの異常検知
次元削減
主成分分析を利用した正常標本の算出
主成分分析やカーネル主成分分析による異常検知
Input/Outputがあるデータの異常検知
線形回帰モデルによる異常検知
リッジ回帰モデルによる異常検知
ベイズ的線形回帰モデルによる異常検知
時系列データの異常検知
近傍法による異常部位検出
特異スペクトル変換法
自己回帰モデルによる異常検知
総括
全8回を通して
学んでいきます
密度推定問題
密度推定問題
⼊出⼒に区別がなく、データの観測
順序が重要でない場合
次元削減問題
次元削減問題
データが多次元だけれど、データの
パターン把握に役⽴つ次元とそうでない
次元が混在している場合
回帰問題
回帰問題
ある⼊⼒に対して出⼒に興味があるけど
観測データの順序が特に重要でない場合
分類問題
分類問題
ある⼊⼒に対して出⼒に区別があって
観測データからその区別に分類したい場合
時系列問題
時系列問題
観測データの順序に意味があって
特にデータが典型的な時系列データに
なっている場合
環境について
(Surroundings)
Python
パイソン
R
アール
Windows -> Anaconda
Mac -> Anaconda
Linux -> Anaconda
Data science technology for
groundbreaking research.
a competitive edge.
a better world.
human sensemaking.
A movement that brings together millions of data
science practitioners, data-driven enterprises, and
the open source community.
Data science technology for
groundbreaking research.
a competitive edge.
a better world.
human sensemaking.
A movement that brings together millions of data
science practitioners, data-driven enterprises, and
the open source community.
要は、データ分析環境を
提供してくれるもの
『Pandas(ぱんだ)』です
Pandasって??
pandas: powerful Python data
analysis toolkit Release 1.0.3
Wes McKinney and the Pandas Development Team
Mar 18, 2020
データ操作に
よく⽤いられるパッケージ
データの読み込みや、
条件を指定しての⼀部データの抽出
機械学習⼿法で取り扱うデータを
整理するのに便利
オープンソース(BSDライセンス)で
公開されており、個⼈/商⽤問わず、
誰でも無料で利⽤できる...!!!
Pandasには、⼤きく
“Series” (シリーズ)
“DataFrame” (データフレーム)
があります...!!!
どちらもデータ構造を指してます
Series
⼀次元のデータ構造
DataFrame
多次元のデータ構造
プログラミング⾔語Python
科学計算⽤ライブラリNumPy
これらのための
描画サポートライブラリ
BSDライセンス
無償で利⽤できる
MATLABとの類似性
あまりメジャーじゃない...??
https://qiita.com/taai/items/
bdcdb96513c93f7ba5a6
matplotlibに基づく
Pythonデータ可視化ライブラリ
魅⼒的で有益な統計グラフィックス
⾼レベルのインターフェイス
1変数正規分布に基づく異常検知
(Basic Idea of Anomaly Detection)
カイ⼆乗分布とホテリングT^2法(1変数)
(Basic Idea of Anomaly Detection)
Jupyter Notebook
を使っていきます
(環境が⽤意できていないかた→ブラウザから⾒れます)
EoF

Casual learning anomaly_detection_with_machine_learning_no1