Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
オートエンコーダーによる異常検知
Search
Masafumi Abeta
February 17, 2021
Programming
0
280
オートエンコーダーによる異常検知
2021年2月17日の社内勉強会で発表した資料です。
Masafumi Abeta
February 17, 2021
Tweet
Share
More Decks by Masafumi Abeta
See All by Masafumi Abeta
Pythonのパッケージマネージャー「uv」
abeta
0
110
GPTモデルでキャラクター設定する際の課題
abeta
0
240
GPTをLINEで使えるようにして布教した
abeta
0
140
【Nishika】プリント基板の電子部品検出
abeta
0
260
初心者向けChatGPT入門
abeta
0
200
GPT Short Talk
abeta
0
110
拡散モデルについて少しだけ
abeta
0
41
動的計画モデル
abeta
0
140
物体追跡
abeta
0
260
Other Decks in Programming
See All in Programming
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
970
AWS Step Functions は CDK で書こう!
konokenj
4
700
Introduction to kotlinx.rpc
arawn
0
770
React 19アップデートのために必要なこと
uhyo
8
1.6k
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.1k
color-scheme: light dark; を完全に理解する
uhyo
7
500
AIプログラミング雑キャッチアップ
yuheinakasaka
19
4.9k
Learning Kotlin with detekt
inouehi
1
150
iOSでQRコード生成奮闘記
ktcryomm
2
110
TCAを用いたAmebaのリアーキテクチャ
dazy
0
210
GoとPHPのインターフェイスの違い
shimabox
2
210
もう僕は OpenAPI を書きたくない
sgash708
6
1.9k
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
51k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Practical Orchestrator
shlominoach
186
10k
Code Review Best Practice
trishagee
67
18k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
A better future with KSS
kneath
238
17k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Designing Experiences People Love
moore
140
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
オートエンコーダーによる異常検知 Abeta
画像の異常検知 • 異常検知=他の⼤多数のデータとは異なる特徴を持つデータを⾒つける。 正常 異常
オートエンコーダー Encoder Decoder • 正常画像で特徴を抽出、画像を復元するモデルを学習する。 モデルに異常画像を通し、復元できない差分で異常を検知する。 正常 異常
従来モデルの⽋点 Encoder Decoder • 局所的な異常が画像全体の再構成に影響を与える。異常箇所の同定が困難になる。 また、VAEは出⼒画像がぼやけることが知られている。 理想 現実
新⼿法 • 異常画像の異常な部分だけを再構成画像に近づけるようにする。 [arXiv:2002.03734]Iterative energy-based projection on a normal data
manifold for anomaly localization Encoder Decoder 異常箇所のみ 再構成画像に 置き換える ① ② ③ ④ ①〜③を繰り返した後 ⽐較して異常度を出⼒ ⽐較して異常箇所を特定 推論
難しい説明 正常画像の集合 ⼊⼒異常画像 𝒙𝟎 " 𝒙𝟎 VAE再構成画像 𝒙𝒕"𝟏 = 𝒙𝒕
− 𝜶 % 𝛁𝒙 𝑬 𝒙𝒕 ⊙ 𝒙𝒕 − 𝒇 𝒙𝒕 𝟐 再構成誤差 L1正則化 正常部分を⼊⼒画 像に保ちつつ再構 成画像に近づける 異常箇所のピク セルに重み付け " 𝒙𝟏 " 𝒙𝒕 𝒙𝟏 𝒙𝒕 正常箇所のピクセルは𝒙𝟎 と同じ値に保ちつつ異常 箇所のピクセルは再構成 画像に近づける 再構成画像は イテレーションで ほとんど変わらない 𝑬 𝒙𝒕 = 𝓛 𝒙𝒕 + 𝝀||𝒙𝒕 − 𝒙𝟎|| Pixel Space ぼやけるため正常画像の 集合からは少しずれる 異常箇所の ピクセル 正常箇所の ピクセル 正常箇所の ピクセル イテレーション
L1正則化の補⾜ 正常画像の集合 ⼊⼒異常画像 𝒙𝟎 " 𝒙𝟎 VAE再構成画像 𝒙𝒕"𝟏 = 𝒙𝒕
− 𝜶 % 𝛁𝒙 𝑬 𝒙𝒕 ⊙ 𝒙𝒕 − 𝒇 𝒙𝒕 𝟐 再構成誤差 L1正則化 正常部分を⼊⼒画 像に保ちつつ再構 成画像に近づける 異常箇所のピク セルに重み付け " 𝒙𝟏 " 𝒙𝒕 𝒙𝟏 𝒙𝒕 𝑬 𝒙𝒕 = 𝓛 𝒙𝒕 + 𝝀||𝒙𝒕 − 𝒙𝟎|| Pixel Space ぼやけるため正常画像の 集合からは少しずれる 異常箇所の ピクセル 正常箇所の ピクセル 正常箇所の ピクセル イテレーション MSEの場合
知⾒ • そもそもかなり学習させないとVAEで綺麗な再構成画像を作れない • 𝛼と𝜆とイテレーション回数のチューニングはかなり技巧的 • イテレーション数⼗回のオーダーで必要 • イテレーションによる再構成画像はほとんど変化がない(多分) 再構成の精度が低いから?
• 再構成誤差の計測は交差エントロピーよりMAEのほうがよい • “Reduce Failed to Synchronise”エラーが出るとカーネルの再起動が必要
参考 • 「 Iterative energy-based projection on a normal data
manifold for anomaly localization」, David Dehaene, Oriel Frigo, Sébastien Combrexelle, Pierre Eline, ICLR 2020 Conference Blind Submission • “ICLR2020の異常検知論⽂を実装してみた”, https://qiita.com/kogepan102/items/122b2862ad5a51180656 • “ICLR2020の異常検知論⽂の紹介”, https://www.slideshare.net/ssuser9eb780/iclr2020-20191123