狠狠撸

狠狠撸Share a Scribd company logo
Copyright?2018 NTT corp. All Rights Reserved.
2018/09/14 @日本音響学会秋季研究発表会
SS: 音による異常検知に関する最近の研究動向
1
?小泉 悠馬, 河内 祐太, 山口 正隆, 齊藤 翔一郎, 植松 尚, 原田 登
NTTメディアインテリジェンス研究所
【招待講演】
统计的手法に基づく异常音検知の理论と応用
Copyright?2018 NTT corp. All Rights Reserved. 2
? 小泉 悠馬(こいずみ ゆうま)
? 専門:音楽音響(修士まで)
? 電気音響(会社から)
略歴
? 2014年: 法政大学 情報科学研究科 修了
? 2014年: NTTメディアインテリジェンス研究所 入所
? 2017年: 博士(工学) (電気通信大学)
研究内容
? 音響信号処理 × 機械学習の基礎研究と実用化
? 音源強調:うるさい中から欲しい音だけ取り出したい!
? 異常検知:周囲の異変を音から検知したい!
指導教官
伊藤 克亘教授
指導教官
羽田 陽一教授
自己紹介
Copyright?2018 NTT corp. All Rights Reserved. 3
今日の話題
異常検知とは
統計的未知異常音検知
? 外れ値検知
? 深層学習を利用した外れ値検知
最近の研究成果の紹介
? 未知異常音の検知精度を上げるには?
? 既知異常音も利用するには?
? 環境変化にロバストにするためには?
実環境の小話とまとめ
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
異常とは、正常と定義されたふるまいに従わないパターンである
Copyright?2018 NTT corp. All Rights Reserved. 5
異常音検知の手法の整理
異常音の詳細(定義)
既知 未知
物
理
or
統
計
物理
ルールベース
特定音検知
ルールベース
外れ値検知
統計
教師あり
音響イベント検知
教師なし
外れ値検知
2つの観点と4つの分類
Copyright?2018 NTT corp. All Rights Reserved. 6
既知異常 or 未知異常
未知異常の検知
既知異常の検知
? どんな異常音かわからない or 網羅的な定義が不可能
? ひび割れ、傷、衝突、パーツの脱落など
? 精度は低いが、実現できれば様々な現場で利用可能
? 事前にどんな異常音が鳴るかわかっているケース
? 漏水音、銃声、悲鳴の検知など
? 精度が高いが、未知の異常音は検知できない
Copyright?2018 NTT corp. All Rights Reserved. 7
物理的手法 or 統計的手法
統計的手法 (SIer 向き)
物理的手法 (メーカーさん向き)
? Data driven な運用
? ドメイン知識不要 = 技術の横展開が容易
? 専門家の知識を反映させづらい
? 機械学習の “常識” が通用しないことも
? 監視対象の構造に基づくルールベースな検知
? 監視対象に特化できるので性能が出やすい
? 構造の詳細を知っている人でないとできない
Copyright?2018 NTT corp. All Rights Reserved. 8
異常音検知の手法の整理
異常音の詳細(定義)
既知 未知
物
理
or
統
計
物理
ルールベース
特定音検知
ルールベース
外れ値検知
統
計
教師あり
音響イベント検知
教師なし
外れ値検知
限定的 & 精度高
概括的 & 精度低
今日の話題:
教師なし異常音検知の精度をどう高めるか
Copyright?2018 NTT corp. All Rights Reserved. 9
今日の話題
異常検知とは
統計的未知異常音検知
? 外れ値検知
? 深層学習を利用した外れ値検知
最近の研究成果の紹介
? 未知異常音の検知精度を上げるには?
? 既知異常音も利用するには?
? 環境変化にロバストにするためには?
実環境の小話とまとめ
Copyright?2018 NTT corp. All Rights Reserved. 10
教師なし異常音検知の難しさ
異常音の
データ
正常音の
データ
学習データ
(音データ)
学習データ
(正解ラベル)
異常判定関数
? ?
正常
異常
正常 or 異常
? 一般的な機械学習(音声認識タイプ):教師あり学習
? 正常な音と異常な音をたくさん集めて、判別ルールを学習
未知異常=異常音のデータがない
異常度計算関数
? ?, Θ
Copyright?2018 NTT corp. All Rights Reserved. 11
教師なし異常音検知の難しさ
異常音の
データ
正常音の
データ
学習データ
(音データ)
学習データ
(正解ラベル)
正常
異常
正常 or 異常
? 一般的な機械学習(音声認識タイプ):教師あり学習
? 正常な音と異常な音をたくさん集めて、判別ルールを学習
? 異常音はほとんど集まらない
? どんな異常音が鳴るかもわからない
教師あり識別問題として解けない
異常判定関数
? ?
異常度計算関数
? ?, Θ
未知異常=異常音のデータがない
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 を考える問題
Copyright?2018 NTT corp. All Rights Reserved. 13
外れ値検知と異常音検知
正常な音を覚え、知らない音がなったら異常とする
? 正常音の学習データから正常モデル
を学習し、その負の対数尤度を異常度 とする
異常度の定義
異常度の閾値判定
Copyright?2018 NTT corp. All Rights Reserved. 14
オートエンコーダを利用した異常検知
再構成誤差を異常度に利用
…
……
……
……
…
…
……
……
……
…
?
Normal
Anomaly
? Θ Θ 再構成誤差 ? 異常度
正常音を再構成するよう学習 → 再構成されるなら正常
Copyright?2018 NTT corp. All Rights Reserved. 15
今日の話題
異常検知とは
統計的未知異常音検知
? 外れ値検知
? 深層学習を利用した外れ値検知
最近の研究成果の紹介
? 未知異常音の検知精度を上げるには?
? 既知異常音も利用するには?
? 環境変化にロバストにするためには?
実環境の小話とまとめ
Copyright?2018 NTT corp. All Rights Reserved. 16
教師なし異常音検知の未解決(だった)問題
1. 異常データに対する精度が保証されない
2. 既知異常データを利用できない
3. 複雑な正常モデルと新規ドメイン適応のトレードオフ
→ ネイマン?ピアソン指標による学習 [Koizumi+, 2017]
→ 補集合VAEによる学習 [Kawachi+, 2018]
→ AdaBN-flowによる学習 [山口ほか, 2018]
Copyright?2018 NTT corp. All Rights Reserved. 17
True-positive-rate (TPR)
& False-positive-rate (FPR)
TPR: 異常を「正しく異常と判定」する確率
FPR: 正常を「誤って異常と判定」する確率
Copyright?2018 NTT corp. All Rights Reserved. 18
異常度関数はどう学習すべきか?
正常音に低い異常度 & 異常音に高い異常度を与えたい
? オートエンコーダ:正常音を再構成するよう学習
→ 「異常は再構成されない」という保証はない
? 既存の外れ値検知は同じ問題が起きる
TPRを高く、FPRを低くしたい
異常音検知は “汎化” してはダメ!
では、どんな目的関数で学習をすればよいか?
Copyright?2018 NTT corp. All Rights Reserved. 19
ネイマン?ピアソン最適化指標
異常検知を仮説検定とみなした目的関数
×:異常な確率が高い音(=MAP推定)
異常音の定義:
○:正常音とはいえない音(=仮説検定)
? 最強力仮説検定の満たす性質(ネイマン?ピアソンの補題)
ネイマン?ピアソンの補題を満たすように
DNNを学習する目的関数を設計
[Koizumi+, EUSIPCO 2017]
Copyright?2018 NTT corp. All Rights Reserved. 20
異常データは作れる!
「異常=正常じゃない」という定義から異常を生成
異常は正常の補集合 ? 異常 = 全体 – 正常
棄却サンプリング & DNNで異常データを生成
Copyright?2018 NTT corp. All Rights Reserved. 21
学習手順
3つのニューラルネットワークを使って学習
? 異常な機械音を棄却サンプリングで生成
? ネイマン?ピアソン指標を最大化するように学習
Copyright?2018 NTT corp. All Rights Reserved. 22
検知結果例
22
Copyright?2018 NTT corp. All Rights Reserved. 23
教師なし異常音検知の未解決(だった)問題
1. 異常データに対する精度が保証されない
2. 既知異常データを利用できない
3. 複雑な正常モデルと新規ドメイン適応のトレードオフ
→ ネイマン?ピアソン指標による学習 [Koizumi+, 2017]
→ 補集合VAEによる学習 [Kawachi+, 2018]
→ AdaBN-flowによる学習 [山口ほか, 2018]
Copyright?2018 NTT corp. All Rights Reserved. 24
既知異常データをどう組み込むか?
運用中に異常データが得られた!
運用中に
得られた異常音
このデータも学習に組み込みたい!
Copyright?2018 NTT corp. All Rights Reserved. 25
既知異常データをどう組み込むか?
教師ありの “識別” 学習を行おう!
識別超平面
Copyright?2018 NTT corp. All Rights Reserved. 26
既知異常データをどう組み込むか?
識別超平面
教師ありの識別学習では
未知異常を検知できない
未知異常を見逃してしまう…
異常音検知は “識別” として解いてはダメ!
では、既知異常と未知異常の両方を検知するには?
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
正常
既知異常
異常判定領域
? 得られた音が、既知異常と正常のどちらに似ているか?
? どんなに正常の確率が小さくても、既知異常の確率の方が小さ
ければ、正常と判定してしまう
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]
※ は、全集合(あらゆる音)の確率分布
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 正常
補集合
異常判定領域
Copyright?2018 NTT corp. All Rights Reserved. 30
どのような学習がされるのか?
? 正常と補集合が隠れ層の事前分布の変分AEを学習
? 中間層を可視化
? 0~8が正常、9が既知異常とした場合
中心付近に
正常の数字が集中
既知異常は
原点から離れた位置
に存在
Copyright?2018 NTT corp. All Rights Reserved. 31
既知異常の結果
1 ?? 1
どの数字が既知異常だったとしても、
教師なしアプローチより高い精度で検知可能
※ 従来法は再構成誤差が良いが、提案法は ELBO がよい
Copyright?2018 NTT corp. All Rights Reserved. 32
未知異常の結果
未知異常も、従来法以上の精度で検知可能
???? 1
? 1~3が正常、7~9が既知異常、4~6が未知異常
Copyright?2018 NTT corp. All Rights Reserved. 33
教師なし異常音検知の未解決(だった)問題
1. 異常データに対する精度が保証されない
2. 既知異常データを利用できない
3. 複雑な正常モデルと新規ドメイン適応のトレードオフ
→ ネイマン?ピアソン指標による学習 [Koizumi+, 2017]
→ 補集合VAEによる学習 [Kawachi+, 2018]
→ AdaBN-flow による学習 [山口ほか, 2018]
本研究発表会の初日のポスターで発表した内容です!
Copyright?2018 NTT corp. All Rights Reserved.
異常音
異常と判定
オレンジが
正常分布
正常音
正常と判定
環境の変化に適応したい
点線が
学習した
正常範囲
34
Copyright?2018 NTT corp. All Rights Reserved.
正常音
異常と誤判定
緑が
変化した
正常分布
点線が
学習した
正常範囲
異常音
正常と誤判定
環境の変化に適応したい
機器や環境の経年変化で正常分布は変動する
現場に GPU なんてないし、データを集めるのはお金がかかる
DNN正常モデルを高速かつ低演算に適応できないか?
35
Copyright?2018 NTT corp. All Rights Reserved.
…
表現したい
正常の分布
? Normalizing flow を利用して正常モデルを学習
? 途中の変換に Batch-normalization を挟んでおく
?1
?1
はBatch-normalization
…
AdaBN-flow
Copyright?2018 NTT corp. All Rights Reserved.
表現したい
正常の分布
…
正常の分布が変化したため
正規化されない
AdaBN-flow
? 観測分布が変化すると、尤度が下がっていく
Copyright?2018 NTT corp. All Rights Reserved.
表現したい
正常の分布
…
…
BN層のみ更新
AdaBN-flow
? Batch-Normalization 層だけを再学習
? 観測ドメインでは高次モーメントマッチングとなる
? 平均と分散の最尤推定のため、Back-propagationは不要
Copyright?2018 NTT corp. All Rights Reserved.
?定量評価実験
【確認ポイント】既存モデルを、少量データを用いて変化させることで
異常検知精度を向上させることができるか
実験1:オートエンコーダとの精度比較
? 大量にデータ収集した場合の従来法との精度比較
? 適応に用いるデータ量と精度の調査
実験2:環境適応のロバスト性
? 同機種異個体、周囲環境の変化、経年変化に対応できるか?
機器や環境などの様々な変化を収集するために、
車の模型の走行音を収集して実験
? 同機種異個体
? 環境音の変化
? モーターにかかる電圧が変化
評価実験
39
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)
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)
Copyright?2018 NTT corp. All Rights Reserved. 42
今日の話題
異常検知とは
統計的未知異常音検知
? 外れ値検知
? 深層学習を利用した外れ値検知
最近の研究成果の紹介
? 未知異常音の検知精度を上げるには?
? 既知異常音も利用するには?
? 環境変化にロバストにするためには?
実環境の小話とまとめ
Copyright?2018 NTT corp. All Rights Reserved.
システムを組む時に大切なこと
その異常音
本当に「機械学習」が必要ですか?
異常音の詳細(定義)
既知 未知
物
理
or
統
計
物理
ルールベース
特定音検知
ルールベース
外れ値検知
統計
教師あり
音響イベント検知
教師なし
外れ値検知
Copyright?2018 NTT corp. All Rights Reserved.
システムを組む時に大切なこと
異常度の後処理
雑音抑圧
? 外れ値検知の極意は、正常のエントロピーを下げること
? そのためにも、ほとんどの環境で雑音抑圧は必須
? Software だけでなく、マイク配置や風防など、Hardware
的な工夫も必須
? フレーム毎の異常度計算は本当に必須か?
? 最終的なアラートを出すために、スムージングや検知ルール
の作りこみは必須
? ゆくゆくは自動化する技術を作りたい…
Copyright?2018 NTT corp. All Rights Reserved.
まとめ
教師なし統計的異常検知は、適応範囲が広い
が、精度向上の余地がたくさん
機械学習の常識が通用しないことばかり
研究分野として Blue Ocean
皆様の、ますますのご参入
お待ちしております!
Copyright?2018 NTT corp. All Rights Reserved. 46
Q&A

More Related Content

统计的手法に基づく异常音検知の理论と応用

  • 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つのニューラルネットワークを使って学習 ? 異常な機械音を棄却サンプリングで生成 ? ネイマン?ピアソン指標を最大化するように学習
  • 22. Copyright?2018 NTT corp. All Rights Reserved. 22 検知結果例 22
  • 23. Copyright?2018 NTT corp. All Rights Reserved. 23 教師なし異常音検知の未解決(だった)問題 1. 異常データに対する精度が保証されない 2. 既知異常データを利用できない 3. 複雑な正常モデルと新規ドメイン適応のトレードオフ → ネイマン?ピアソン指標による学習 [Koizumi+, 2017] → 補集合VAEによる学習 [Kawachi+, 2018] → AdaBN-flowによる学習 [山口ほか, 2018]
  • 24. Copyright?2018 NTT corp. All Rights Reserved. 24 既知異常データをどう組み込むか? 運用中に異常データが得られた! 運用中に 得られた異常音 このデータも学習に組み込みたい!
  • 25. Copyright?2018 NTT corp. All Rights Reserved. 25 既知異常データをどう組み込むか? 教師ありの “識別” 学習を行おう! 識別超平面
  • 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 がよい
  • 32. Copyright?2018 NTT corp. All Rights Reserved. 32 未知異常の結果 未知異常も、従来法以上の精度で検知可能 ???? 1 ? 1~3が正常、7~9が既知異常、4~6が未知異常
  • 33. Copyright?2018 NTT corp. All Rights Reserved. 33 教師なし異常音検知の未解決(だった)問題 1. 異常データに対する精度が保証されない 2. 既知異常データを利用できない 3. 複雑な正常モデルと新規ドメイン適応のトレードオフ → ネイマン?ピアソン指標による学習 [Koizumi+, 2017] → 補集合VAEによる学習 [Kawachi+, 2018] → AdaBN-flow による学習 [山口ほか, 2018] 本研究発表会の初日のポスターで発表した内容です!
  • 34. Copyright?2018 NTT corp. All Rights Reserved. 異常音 異常と判定 オレンジが 正常分布 正常音 正常と判定 環境の変化に適応したい 点線が 学習した 正常範囲 34
  • 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
  • 37. Copyright?2018 NTT corp. All Rights Reserved. 表現したい 正常の分布 … 正常の分布が変化したため 正規化されない 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 皆様の、ますますのご参入 お待ちしております!
  • 46. Copyright?2018 NTT corp. All Rights Reserved. 46 Q&A