統計的手法に基づく異常音検知の理論と応用
- 1. Copyright©2018 NTT corp. All Rights Reserved.
2018/09/14 @日本音響学会秋季研究発表会
SS: 音による異常検知に関する最近の研究動向
1
◯小泉 悠馬, 河内 祐太, 山口 正隆, 齊藤 翔一郎, 植松 尚, 原田 登
NTTメディアインテリジェンス研究所
【招待講演】
統計的手法に基づく異常音検知の理論と応用
- 2. Copyright©2018 NTT corp. All Rights Reserved. 2
小泉 悠馬(こいずみ ゆうま)
専門:音楽音響(修士まで)
⇒ 電気音響(会社から)
略歴
2014年: 法政大学 情報科学研究科 修了
2014年: NTTメディアインテリジェンス研究所 入所
2017年: 博士(工学) (電気通信大学)
研究内容
音響信号処理 × 機械学習の基礎研究と実用化
音源強調:うるさい中から欲しい音だけ取り出したい!
異常検知:周囲の異変を音から検知したい!
指導教官
伊藤 克亘教授
指導教官
羽田 陽一教授
自己紹介
- 3. Copyright©2018 NTT corp. All Rights Reserved. 3
今日の話題
異常検知とは
統計的未知異常音検知
外れ値検知
深層学習を利用した外れ値検知
最近の研究成果の紹介
未知異常音の検知精度を上げるには?
既知異常音も利用するには?
環境変化にロバストにするためには?
実環境の小話とまとめ
- 4. Copyright©2018 NTT corp. All Rights Reserved. 4
異常音検知とは
目的:
アプリケーション:
“危険”を予知/早急に察知し,”大事故” を回避
人による(常時)監視を計算機で代替
街頭監視システム
製品検査 / 設備保守
“Anomalies are patterns in data that do not conform to
a well-defined notion of normal behavior” [1]
[1] V. Chandola, et al., “Anomaly detection: A survey,” ACM compt. Surv., 2009
異常とは、正常と定義されたふるまいに従わないパターンである
- 5. Copyright©2018 NTT corp. All Rights Reserved. 5
異常音検知の手法の整理
異常音の詳細(定義)
既知 未知
物
理
or
統
計
物理
ルールベース
特定音検知
ルールベース
外れ値検知
統計
教師あり
音響イベント検知
教師なし
外れ値検知
2つの観点と4つの分類
- 6. Copyright©2018 NTT corp. All Rights Reserved. 6
既知異常 or 未知異常
未知異常の検知
既知異常の検知
どんな異常音かわからない or 網羅的な定義が不可能
ひび割れ、傷、衝突、パーツの脱落など
精度は低いが、実現できれば様々な現場で利用可能
事前にどんな異常音が鳴るかわかっているケース
漏水音、銃声、悲鳴の検知など
精度が高いが、未知の異常音は検知できない
- 7. Copyright©2018 NTT corp. All Rights Reserved. 7
物理的手法 or 統計的手法
統計的手法 (SIer 向き)
物理的手法 (メーカーさん向き)
Data driven な運用
ドメイン知識不要 = 技術の横展開が容易
専門家の知識を反映させづらい
機械学習の “常識” が通用しないことも
監視対象の構造に基づくルールベースな検知
監視対象に特化できるので性能が出やすい
構造の詳細を知っている人でないとできない
- 8. Copyright©2018 NTT corp. All Rights Reserved. 8
異常音検知の手法の整理
異常音の詳細(定義)
既知 未知
物
理
or
統
計
物理
ルールベース
特定音検知
ルールベース
外れ値検知
統
計
教師あり
音響イベント検知
教師なし
外れ値検知
限定的 & 精度高
概括的 & 精度低
今日の話題:
教師なし異常音検知の精度をどう高めるか
- 9. Copyright©2018 NTT corp. All Rights Reserved. 9
今日の話題
異常検知とは
統計的未知異常音検知
外れ値検知
深層学習を利用した外れ値検知
最近の研究成果の紹介
未知異常音の検知精度を上げるには?
既知異常音も利用するには?
環境変化にロバストにするためには?
実環境の小話とまとめ
- 10. Copyright©2018 NTT corp. All Rights Reserved. 10
教師なし異常音検知の難しさ
異常音の
データ
正常音の
データ
学習データ
(音データ)
学習データ
(正解ラベル)
異常判定関数
ℋ 𝐱
正常
異常
正常 or 異常
一般的な機械学習(音声認識タイプ):教師あり学習
⇒ 正常な音と異常な音をたくさん集めて、判別ルールを学習
未知異常=異常音のデータがない
異常度計算関数
𝒜 𝐱, Θ
- 11. Copyright©2018 NTT corp. All Rights Reserved. 11
教師なし異常音検知の難しさ
異常音の
データ
正常音の
データ
学習データ
(音データ)
学習データ
(正解ラベル)
正常
異常
正常 or 異常
一般的な機械学習(音声認識タイプ):教師あり学習
⇒ 正常な音と異常な音をたくさん集めて、判別ルールを学習
異常音はほとんど集まらない
どんな異常音が鳴るかもわからない
教師あり識別問題として解けない
異常判定関数
ℋ 𝐱
異常度計算関数
𝒜 𝐱, Θ
未知異常=異常音のデータがない
- 12. Copyright©2018 NTT corp. All Rights Reserved. 12
異常とは (再掲)
“Anomalies are patterns in data that do not conform to
a well-defined notion of normal behavior” [1]
[1] V. Chandola, et al., “Anomaly detection: A survey,” ACM compt. Surv., 2009
異常とは、正常と定義されたふるまいに従わないパターンである
normal behavior をモデルで定義し、
そこからの乖離を計算すれば実現できそう
A or B ではなく、A or not A を考える問題
- 13. Copyright©2018 NTT corp. All Rights Reserved. 13
外れ値検知と異常音検知
正常な音を覚え、知らない音がなったら異常とする
正常音の学習データから正常モデル
を学習し、その負の対数尤度を異常度 とする
異常度の定義
異常度の閾値判定
- 14. Copyright©2018 NTT corp. All Rights Reserved. 14
オートエンコーダを利用した異常検知
再構成誤差を異常度に利用
…
……
……
……
…
…
……
……
……
…
𝐱
Normal
Anomaly
𝐱 Θ Θ 再構成誤差 ⇒ 異常度
正常音を再構成するよう学習 → 再構成されるなら正常
- 15. Copyright©2018 NTT corp. All Rights Reserved. 15
今日の話題
異常検知とは
統計的未知異常音検知
外れ値検知
深層学習を利用した外れ値検知
最近の研究成果の紹介
未知異常音の検知精度を上げるには?
既知異常音も利用するには?
環境変化にロバストにするためには?
実環境の小話とまとめ
- 16. Copyright©2018 NTT corp. All Rights Reserved. 16
教師なし異常音検知の未解決(だった)問題
1. 異常データに対する精度が保証されない
2. 既知異常データを利用できない
3. 複雑な正常モデルと新規ドメイン適応のトレードオフ
→ ネイマン・ピアソン指標による学習 [Koizumi+, 2017]
→ 補集合VAEによる学習 [Kawachi+, 2018]
→ AdaBN-flowによる学習 [山口ほか, 2018]
- 17. Copyright©2018 NTT corp. All Rights Reserved. 17
True-positive-rate (TPR)
& False-positive-rate (FPR)
TPR: 異常を「正しく異常と判定」する確率
FPR: 正常を「誤って異常と判定」する確率
- 18. Copyright©2018 NTT corp. All Rights Reserved. 18
異常度関数はどう学習すべきか?
正常音に低い異常度 & 異常音に高い異常度を与えたい
オートエンコーダ:正常音を再構成するよう学習
→ 「異常は再構成されない」という保証はない
既存の外れ値検知は同じ問題が起きる
TPRを高く、FPRを低くしたい
異常音検知は “汎化” してはダメ!
では、どんな目的関数で学習をすればよいか?
- 19. Copyright©2018 NTT corp. All Rights Reserved. 19
ネイマン・ピアソン最適化指標
異常検知を仮説検定とみなした目的関数
×:異常な確率が高い音(=MAP推定)
異常音の定義:
○:正常音とはいえない音(=仮説検定)
最強力仮説検定の満たす性質(ネイマン・ピアソンの補題)
ネイマン・ピアソンの補題を満たすように
DNNを学習する目的関数を設計
[Koizumi+, EUSIPCO 2017]
- 20. Copyright©2018 NTT corp. All Rights Reserved. 20
異常データは作れる!
「異常=正常じゃない」という定義から異常を生成
異常は正常の補集合 ➡ 異常 = 全体 – 正常
棄却サンプリング & DNNで異常データを生成
- 21. Copyright©2018 NTT corp. All Rights Reserved. 21
学習手順
3つのニューラルネットワークを使って学習
異常な機械音を棄却サンプリングで生成
ネイマン・ピアソン指標を最大化するように学習
- 23. Copyright©2018 NTT corp. All Rights Reserved. 23
教師なし異常音検知の未解決(だった)問題
1. 異常データに対する精度が保証されない
2. 既知異常データを利用できない
3. 複雑な正常モデルと新規ドメイン適応のトレードオフ
→ ネイマン・ピアソン指標による学習 [Koizumi+, 2017]
→ 補集合VAEによる学習 [Kawachi+, 2018]
→ AdaBN-flowによる学習 [山口ほか, 2018]
- 26. Copyright©2018 NTT corp. All Rights Reserved. 26
既知異常データをどう組み込むか?
識別超平面
教師ありの識別学習では
未知異常を検知できない
未知異常を見逃してしまう…
異常音検知は “識別” として解いてはダメ!
では、既知異常と未知異常の両方を検知するには?
- 27. Copyright©2018 NTT corp. All Rights Reserved. 27
「補集合の分布」という考え方
なぜ “識別” がダメなのか
-10 -8 -6 -4 -2 0 2 4 6 8 10
0
0.2
0.4
0.6
正常
既知異常
異常判定領域
得られた音が、既知異常と正常のどちらに似ているか?
どんなに正常の確率が小さくても、既知異常の確率の方が小さ
ければ、正常と判定してしまう
- 28. Copyright©2018 NTT corp. All Rights Reserved.
-10 -8 -6 -4 -2 0 2 4 6 8 10
0
0.1
0.2
0.3
0.4 正常
補集合
28
「補集合の分布」という考え方
異常 = 正常の補集合
→ 既知異常は、補集合分布からのサンプルと考える
補集合の近似分布 [Kawachi+, ICASSP 2018]
※ は、全集合(あらゆる音)の確率分布
- 29. Copyright©2018 NTT corp. All Rights Reserved.
-10 -8 -6 -4 -2 0 2 4 6 8 10
0
0.1
0.2
0.3
0.4 正常
補集合
29
「補集合の分布」という考え方
異常 = 正常の補集合
→ 既知異常は、補集合分布からのサンプルと考える
補集合の近似分布 [Kawachi+, ICASSP 2018]
※ は、全集合(あらゆる音)の確率分布
-10 -8 -6 -4 -2 0 2 4 6 8 10
0
0.1
0.2
0.3
0.4 正常
補集合
異常判定領域
- 30. Copyright©2018 NTT corp. All Rights Reserved. 30
どのような学習がされるのか?
正常と補集合が隠れ層の事前分布の変分AEを学習
中間層を可視化
0~8が正常、9が既知異常とした場合
中心付近に
正常の数字が集中
既知異常は
原点から離れた位置
に存在
- 31. Copyright©2018 NTT corp. All Rights Reserved. 31
既知異常の結果
1 𝑣𝑠 1
どの数字が既知異常だったとしても、
教師なしアプローチより高い精度で検知可能
※ 従来法は再構成誤差が良いが、提案法は ELBO がよい
- 33. Copyright©2018 NTT corp. All Rights Reserved. 33
教師なし異常音検知の未解決(だった)問題
1. 異常データに対する精度が保証されない
2. 既知異常データを利用できない
3. 複雑な正常モデルと新規ドメイン適応のトレードオフ
→ ネイマン・ピアソン指標による学習 [Koizumi+, 2017]
→ 補集合VAEによる学習 [Kawachi+, 2018]
→ AdaBN-flow による学習 [山口ほか, 2018]
本研究発表会の初日のポスターで発表した内容です!
- 35. Copyright©2018 NTT corp. All Rights Reserved.
正常音
異常と誤判定
緑が
変化した
正常分布
点線が
学習した
正常範囲
異常音
正常と誤判定
環境の変化に適応したい
機器や環境の経年変化で正常分布は変動する
現場に GPU なんてないし、データを集めるのはお金がかかる
DNN正常モデルを高速かつ低演算に適応できないか?
35
- 36. Copyright©2018 NTT corp. All Rights Reserved.
…
表現したい
正常の分布
Normalizing flow を利用して正常モデルを学習
途中の変換に Batch-normalization を挟んでおく
ℱ1
−1
はBatch-normalization
…
AdaBN-flow
- 38. Copyright©2018 NTT corp. All Rights Reserved.
表現したい
正常の分布
…
…
BN層のみ更新
AdaBN-flow
Batch-Normalization 層だけを再学習
観測ドメインでは高次モーメントマッチングとなる
平均と分散の最尤推定のため、Back-propagationは不要
- 39. Copyright©2018 NTT corp. All Rights Reserved.
定量評価実験
【確認ポイント】既存モデルを、少量データを用いて変化させることで
異常検知精度を向上させることができるか
実験1:オートエンコーダとの精度比較
大量にデータ収集した場合の従来法との精度比較
適応に用いるデータ量と精度の調査
実験2:環境適応のロバスト性
同機種異個体、周囲環境の変化、経年変化に対応できるか?
機器や環境などの様々な変化を収集するために、
車の模型の走行音を収集して実験
同機種異個体
環境音の変化
モーターにかかる電圧が変化
評価実験
39
- 40. Copyright©2018 NTT corp. All Rights Reserved. 40
同機種異個体の実験
検知対象の
学習データ量
[sample]
AUROC
(異常判定精度)
オートエンコーダ
(適応不可)
- 0.808
提案法
(少量データ+CPUで適応)
100 sample 0.859
オートエンコーダ再学習 74,000 sample 0.868
提案法で再学習 74,000 sample 0.880
AEの 約0.1% のデータで、ほぼ同等の異常検知精度を実現
AEと同量のデータを利用すると、AEより性能が向上
1. 適応で精度向
上
2. ほぼ同等の性
能
3. 同量のデータ
を使えば凌駕
※ 1台のミニ四駆で、74,000 sample 利用して学習。それを2台目のミニ四駆の少量データ
で適応した結果。異常データは疑似的に生成した金属のぶつかり音など140種類。
評価実験(1/2)
- 41. Copyright©2018 NTT corp. All Rights Reserved.
(1)周囲雑音の変化
検知対象の
学習データ量
[sample]
AUROC
(異常判定精度)
適応前 - 0.814
適応後 1,000 sample 0.859
(2)電圧変化(経年変化の模擬)
検知対象の
学習データ量
[sample]
AUROC
(異常判定精度)
適応前 - 0.763
適応後 1,000 sample 0.832
周囲環境の変化、電圧変化にも適応できることを確認
※ 新品の状態より、電圧が1V低下
した状況を想定
評価実験(2/2)
- 42. Copyright©2018 NTT corp. All Rights Reserved. 42
今日の話題
異常検知とは
統計的未知異常音検知
外れ値検知
深層学習を利用した外れ値検知
最近の研究成果の紹介
未知異常音の検知精度を上げるには?
既知異常音も利用するには?
環境変化にロバストにするためには?
実環境の小話とまとめ
- 43. Copyright©2018 NTT corp. All Rights Reserved.
システムを組む時に大切なこと
その異常音
本当に「機械学習」が必要ですか?
異常音の詳細(定義)
既知 未知
物
理
or
統
計
物理
ルールベース
特定音検知
ルールベース
外れ値検知
統計
教師あり
音響イベント検知
教師なし
外れ値検知
- 44. Copyright©2018 NTT corp. All Rights Reserved.
システムを組む時に大切なこと
異常度の後処理
雑音抑圧
外れ値検知の極意は、正常のエントロピーを下げること
そのためにも、ほとんどの環境で雑音抑圧は必須
Software だけでなく、マイク配置や風防など、Hardware
的な工夫も必須
フレーム毎の異常度計算は本当に必須か?
最終的なアラートを出すために、スムージングや検知ルール
の作りこみは必須
⇒ ゆくゆくは自動化する技術を作りたい…
- 45. Copyright©2018 NTT corp. All Rights Reserved.
まとめ
教師なし統計的異常検知は、適応範囲が広い
が、精度向上の余地がたくさん
機械学習の常識が通用しないことばかり
研究分野として Blue Ocean
皆様の、ますますのご参入
お待ちしております!