Upgrade to Pro — share decks privately, control downloads, hide ads and more …

外観検査の難しさ

OHNO
November 16, 2021

 外観検査の難しさ

OHNO

November 16, 2021
Tweet

More Decks by OHNO

Other Decks in Research

Transcript

  1. 外観検査の難しさ
    大野 宏
    Python機械学習勉強会in新潟
    2021/11/14

    View Slide

  2. 本日の概要
    ・外観検査は認識率100%を求められるので難しい
    ・運用方法で工夫する
    ・Attention Branch Network (ABN)で認識率の向上
    ・良品画像だけの学習で不良品を検査
    オートエンコーダ
    GAN

    View Slide

  3. ディープラーニングを使った外観検査
    ・良品と不良品の画像を集めてネットワークを学習させる。
    ・学習データにないパターンの不良品は検出できないこと
    がある。
    不良パターンを予測しその画像を作り学習データとする。
    運用しながら不良品の画像を集めて再学習させる。
    → 再学習しても不良と判定するとは限らない
    ・99%の検査装置はできるが、100%は難しいのでどう
    運用するか。

    View Slide

  4. 混同行列による評価1
    予測
    良品 不良品
    実際
    良品 95 0
    不良品 0 5
    ・混同行列とは、2値分類問題で実際の良・不良と予想し
    た良・不良を表したもの
    ・理想的な検査装置は認識率100%
    ・正確さは、(良品を良品と予測+不良品を不良品と予測)
    /(全数)=(95+5)/100=100%

    View Slide

  5. 混同行列による評価2
    予測
    良品 不良品
    実際
    良品 92 3
    不良品 1 4
    ・不良品を良品と予測したものがあると、不良品を出荷し
    てしまう。
    ・偽陽性率は、不良品のうち良品と予測された割合は、
    1/(1+4)=25%
    ・正確さは、(92+4)/100=96%

    View Slide

  6. 混同行列による評価3
    予測
    良品 不良品
    実際
    良品 90 5
    不良品 0 5
    ・不良品を良品と予測したものがゼロであれば、不良品と
    予測した10個を再度目視検査すればよい。
    ・目視検査数が100個から10個に減る
    ・偽陽性率は、0/(0+5)=0%
    ・正確さは、 (90+5)/100=95%

    View Slide

  7. アテンション・ブランチ・ネットワーク1
    ・誤認識したサンプルを正しく認識できるようにしたい
    ・誤認識したサンプルを学習に追加
    → 正しく認識できるとは限らない
    ・ネットワークのパラメータを正しく認識できるように調整
    すればいいが、数が膨大なのでどうしたら良いか?
    ・Attention Branch Network (ABN)を使い手動でパラメー
    タを調整(中部大の山下研が提案)
    ・もともと視覚的説明による注視領域の可視化と精度向上
    を同時に行うネットワーク、Grad-CAMより高性能

    View Slide

  8. アテンション・ブランチ・ネットワーク2
    ・Feature Extractor の後ろに Attenstion Branch と
    Perception Branch をつなぎ、両者の誤差で学習
    http://mprg.jp/research/abn_j (中部大のABNの紹介)

    View Slide

  9. アテンション・ブランチ・ネットワーク3

    View Slide

  10. GitHubにて公開

    View Slide

  11. オートエンコーダ
    ・不良品画像の収集が難しい場合に有効。
    ・入力画像と出力画像が同じになるよう学習させる。
    ・エンコーダで圧縮してデコーダで復元する。
    エンコーダ
    (圧縮)
    デコーダ
    (復元)
    入力 出力
    圧縮され
    た特徴
    (潜在変数)

    View Slide

  12. 良品画像だけから不良品を判別1
    ・オートエンコーダは真似が得意で、良品画像を入力すると
    ほぼ同じ画像が出力される。
    ・不良品画像では学習していないので、入力と出力の差が
    大きくなる
    ・ラベル付けやアノテーションが不要
    オート
    エンコーダ

    View Slide

  13. 入力
    出力
    良品画像だけから不良品を判別2
    ・手書き数字で学習したオートエンコーダにひらがなを入力
    すると、入出力に差が生じる。差が大きいと不良品と判定。
    ・ただし出力画像がぼけてしまう。

    View Slide

  14. 入力
    出力
    画像のぼけを防ぐオートエンコーダ
    ・正常データだけでAEベースのモデル学習を行った後、推
    論時に損失関数の勾配を利用し、AEによって得られた正
    常データの多様体の最も近い所にマッピングされるように
    ICLR2020の異常検知論文を実装してみた
    https://qiita.com/kogepan102/items/122b2862ad5a51180656

    View Slide

  15. MVTEC AD
    ・色々な工業製品の画像データ集
    ・MVTECはドイツの画像処理メーカ、HALCONが有名
    https://www.mvtec.com/company/research/datasets/mvtec-ad

    View Slide

  16. GAN(Generative Adversarial Network)
    ・生成器と識別器が競い合って画像を生成するGANを
    使い、良品画像だけから不良品を判別する。
    16

    View Slide

  17. AnoGAN
    ・GANでは画像のもととなる潜在変数を想定しており、こ
    れから学習に使う正常画像を生成する生成器を学習。
    ・zの探索に時間がかかる。これも学習で→EfficientGAN
    17
    z G(z) x’
    D(x’,x)

    Generator
    Discriminator

    View Slide

  18. EfficientGAN
    18
    良品 不良品
    出典:GANディープラーニング実装ハンドブック (秀和システム)

    View Slide

  19. まとめ
    ・外観検査では混同行列で評価
    ・Attention Branch Network (ABN)で認識率が向上
    ・良品画像だけの学習で不良品を検出
    オートエンコーダ
    GAN

    View Slide