Slide 1

Slide 1 text

実務で使える異常検知 SOTA 手法 PatchCore 機械学習の社会実装勉強会第14回 Henry 2022/8/27

Slide 2

Slide 2 text

自己紹介 ■ 東京大学理学部情報科学科 ■ 同大学大学院情報理工学系研究科コンピュター科学専攻 ■ 博士(情報理工学)取得 ● ICMLなどの国際・国内学会・ジャーナルに論文発表 ● 学振DC2 ● AIPチャレンジなどの競争的研究費取得 ● 中国の東北大学などを訪問 ■ 在学中に株式会社パンハウスを共同創業 2

Slide 3

Slide 3 text

内容 ■ 画像異常検知 ■ PatchCore ■ デモ 3

Slide 4

Slide 4 text

画像異常検知 ■ 想定シーン ● 自動車部品工場・サラダ工場など ■ 問題設定 ● 正常データはたくさんある ■ 正常部品が手元にある ■ ある程度集められる ● 異常データはほぼない ■ すべての異常パターンを網羅的に用意することが難しい ■ そもそも異常パターンがまれ ■ AIにやってほしいこと ● 正常データだけでモデル構築して、運用時に異常検知できる ● 「Unsupervised Anomaly Detection」とも呼ぶ 4

Slide 5

Slide 5 text

最近のアプローチ ImageNetで学習されたモデルを活用 ■ ImageNetは巨大なデータセットで、それを学習したモデルは だいたいのドメインの特徴量を取り出せる、と仮定 ■ 上記モデルと使って、画像の特徴量が簡単に出せる ■ 特徴量間の距離を上手く使えば、学習なしで異常検知でき ちゃう? ■ はい、実際高精度でできてしまう 5

Slide 6

Slide 6 text

内容 ■ 画像異常検知 ■ PatchCore ■ デモ 6

Slide 7

Slide 7 text

PatchCoreとは ■ Towards Total Recall in Industrial Anomaly Detection, CVPR 2022 ■ 工業異常検知用データセット MVTec AD において現状SOTA ● https://paperswithcode.com/sota/anomaly-detection-on-mvtec-ad 7

Slide 8

Slide 8 text

PatchCoreの中身 8

Slide 9

Slide 9 text

PatchCoreの中身 以下の3つの部分からなっている ■ 特徴量作成 ● 手元にある正常画像に関する特徴量を作成 ■ 特徴量サンプリング ● 上記ステップで作成される特徴量が膨大 ● 保存・距離測定時の探索のコストがかかるので、少なめにする ■ 距離測定 ● 運用時に新しい画像が来るときに、正常の特徴量との距離を持って異 常の度合いを決める 9

Slide 10

Slide 10 text

(1/3) 特徴量作成 ■ 先行研究PaDiMの図示と大まかに同じことをやっている ■ ある座標 (i, j) に対して ● 周り window size p の特徴量を adaptive average pooling ● 中間の2つの層だけを取り出す ■ 上記PaDiMの図では3つを示してる ■ 後ろよりすぎだと、特徴量がImageNet分類に特化しすぎ問題 ● 短い方を bilinearly rescale して長さ揃って concat する 10

Slide 11

Slide 11 text

(2/3) 特徴量サンプリング ■ ここで使う Coreset はもともと独立に研究された分野で、色ん な手法が確立された ■ 最近は、機械学習に影響しつつあり、回帰や能動学習などに 使われ始めている ■ ある目的の達成が維持されるような部分集合を探す ● k-NN、回帰を行うときに見つかる関数が変わらない ■ 今回は最大カバレージを求める 11

Slide 12

Slide 12 text

(2/3) 特徴量サンプリング ■ Toy データでの Coreset VS Random Sampling 効果 12

Slide 13

Slide 13 text

(3/3) 距離測定 ■ 新しい画像に対する異常スコア s を coreset 内要素との最短 距離で計算 ■ s は s* を coreset 内要素の分布を考慮してスケールした値に なる 13

Slide 14

Slide 14 text

実験結果(すごく良かったよ、何ならSOTA) 14 他にも ablation study 色々...

Slide 15

Slide 15 text

内容 ■ 画像異常検知 ■ PatchCore ■ デモ ● 公式実装 https://github.com/amazon-research/patchcore-inspection 15