Post

Conversation

引用ポストでは、良品学習について分かりやすく解説しました。 次は実際の製造現場で、「良品学習で陥りやすい罠」について話します。(今回は少し技術よりな話です) ————— ■ 現場で苦手なケース① 👉 色ムラ 良品学習は、製品の色ムラを検査NGとするのが苦手です。 TeacherのCNNはImageNetの学習時、Data Augmentation(データ拡張処理)として明度・彩度・色相をランダムに変えた画像も「同じクラス」として訓練されています。 つまりTeacherの重みは「色の違いを無視して形状やテクスチャの構造的特徴を抽出する」方向に最適化されています。 (皆さんもネットのAI画像処理の記事で、黒っぽい車であっても明るい車であっても「車」として検出しているのを見たことがあると思います) 結果、正常品と色ムラ品でTeacherの出力がほぼ変わらず、Studentとの差分が閾値に届かず見逃してしまいます。 「Teacherが色の違いを特徴として拾わない重みを持っている = 信号がそもそも存在しない」ので、差分の取りようがないのです。 ————— ■ 現場で苦手なケース② 👉 論理的異常 これは何かというと、 ・部品の向きが逆 ・印字が抜けている ・部品が足りない といったケースです。 テクスチャは正常なのに「あるべきものがない」という異常です。 これはCNNのWeight Sharing(重み共有)に起因します。 畳み込みフィルタは画像の全位置で同一の重みパラメータを使い回します。フィルタは「自分が画像のどこを処理しているか」を知りません。入力は3×3のピクセル値だけで、位置情報は含まれません。 印字抜けのケースで見ると、Studentが学ぶのは 「文字パターン → 文字の特徴値」 「無地パターン → 無地の特徴値」 という位置“非”依存の変換ルールです。 例えばキャップのロットNo.が消えた不良品が来ても、その位置の「無地パターン」は、画像の他の場所(印字のないキャップ表面)で学習済みです。なのでTeacherもStudentも正常に処理できてしまい、差分はほぼゼロになります。 Weight Sharingの仕組み上、「位置Aには文字があるべき」という位置固有の期待は学習できません。これが論理的異常の検出が構造的に困難な理由です。
Image
Image
Quote
とき@engineer
@toki_engineer
【AI画像処理の「良品学習(異常検知)】 実際の製造現場では、異常品が滅多に出ない為、良品のみを用いて学習させる良品学習が使われることが多いです。 ここでは良品学習の「Teacher-Student Network」について、もの凄く分かりやすく解説します。
Image