AIモデルとプラットフォーム
異常GPT:LVLMを使用した工業異常検出
最近、LLavaやMiniGPT-4などのLarge Vision Language Models(LVLM)が、画像を理解し、複数の視覚タスクで高精度と効率を実現する能力を示しています。ただし、LVLMは、広範なトレーニングデータセットにより一般的なオブジェクトを認識することに優れていますが、特定のドメイン知識が不足しており、画像内のローカライズされた詳細を理解する能力が限られています。これにより、工業異常検出(IAD)タスクでその有効性が制限されます。一方、既存のIADフレームワークは、異常の源を特定することができますが、正常なサンプルと異常なサンプルを区別するために、手動でしきい値を設定する必要があり、実用的には制限があります。
IADフレームワークの主な目的は、工業シナリオと製品画像で異常を検出してローカライズすることです。ただし、実世界の画像サンプルの予測不可能性と希少性により、モデルは通常、正常なデータのみでトレーニングされます。異常なサンプルは、典型的なサンプルからの偏差に基づいて正常なサンプルから区別されます。現在、IADフレームワークとモデルは、主にテストサンプルに対する異常スコアを提供します。また、各アイテムクラスの正常なインスタンスと異常なインスタンスを区別するために、しきい値を手動で指定する必要があり、実用的には不適切です。

IADフレームワークの課題に対処するために、LVLMの使用と実装を探求するために、AnomalyGPTという新しいIADアプローチが導入されました。AnomalyGPTは、手動でしきい値を設定する必要なく異常を検出してローカライズできます。さらに、AnomalyGPTは、画像に関する関連情報を提供して、ユーザーが異常や特定のニーズに基づいてフォローアップの質問をすることができます。
工業異常検出とLarge Vision Language Models
既存のIADフレームワークは、2つのカテゴリに分類できます。
- 再構築ベースのIAD。
- 特徴埋め込みベースのIAD。
再構築ベースのIADフレームワークでは、異常サンプルを正常な対応サンプルに再構築し、再構築エラーを計算して異常を検出します。SCADN、RIAD、AnoDDPM、InTraは、生成対抗ネットワーク(GAN)とオートエンコーダーから拡散モデルとトランスフォーマーまで、さまざまな再構築フレームワークを使用しています。
一方、特徴埋め込みベースのIADフレームワークでは、正常なデータの特徴埋め込みに焦点を当てます。PatchSSVDなどの方法は、正常なサンプルを密に囲むハイパースフィアを探索し、PyramidFlowとCflなどのフレームワークは、正常化フローを使用して正常なサンプルをガウシアンベースに投影します。CFAとPatchCoreフレームワークは、正常なサンプルのパッチ埋め込みからメモリバンクを確立し、テストサンプルの埋め込みと正常な埋め込みの距離を使用して異常を検出します。
両方の方法は、「一つのクラス、一つのモデル」という学習パラダイムに従います。これは、各オブジェクトクラスの分布を学習するために大量の正常なサンプルを必要とします。正常なサンプルの大量の要件は、新しいオブジェクトカテゴリでは実用的ではなく、動的製品環境での応用も限られています。一方、AnomalyGPTフレームワークは、オブジェクトカテゴリに対してコンテキスト学習パラダイムを使用し、わずかな正常なサンプルのみで干渉を可能にします。
次に、Large Vision Language ModelsまたはLVLMについて説明します。LLMまたはLarge Language Modelsは、NLP業界で大きな成功を収めていますが、現在は視覚タスクへの応用も探求されています。BLIP-2フレームワークは、Q-formerを使用してVision Transformerからの視覚特徴をFlan-T5モデルに入力します。さらに、MiniGPTフレームワークは、BLIP-2フレームワークの画像セグメントとVicunaモデルを線形層で接続し、画像テキストデータを使用して2段階のファインチューニングプロセスを実行します。これらのアプローチは、LLMフレームワークが視覚タスクに応用できる可能性があることを示唆しています。ただし、これらのモデルは一般的なデータでトレーニングされており、広範な応用のために必要なドメイン固有の専門知識が不足しています。
AnomalyGPTのしくみ
AnomalyGPTは、工業異常を検出してローカライズするための新しい会話型IAD大規模ビジョン言語モデルです。AnomalyGPTフレームワークは、LLMと事前トレーニング済みの画像エンコーダーを使用して、画像をその対応するテキスト記述と整列させ、刺激された異常データを使用します。モデルは、IADシステムのパフォーマンスを向上させるために、デコーダーモジュールとプロンプトラーナーモジュールを導入し、ピクセルレベルのローカライズ出力を実現します。
モデルアーキテクチャ

上の図は、AnomalyGPTのアーキテクチャを示しています。モデルは、まずクエリ画像を凍結された画像エンコーダーに渡します。モデルは、次に中間層からパッチレベルの特徴を抽出し、これらの特徴を画像デコーダーに渡して、異常なテキストと正常なテキストとの類似性を計算してローカライズの結果を取得します。プロンプトラーナーは、結果をプロンプト埋め込みに変換して、LLMへの入力として使用できるようにします。LLMモデルは、プロンプト埋め込み、画像入力、ユーザー提供のテキスト入力を使用して異常を検出してローカライズし、ユーザー向けの最終的な応答を生成します。
デコーダー
ピクセルレベルの異常ローカライズを実現するために、AnomalyGPTモデルは、WinCLIP、PatchCore、APRIL-GANフレームワークにインスパイアされた、軽量な特徴マッチングベースの画像デコーダーを導入します。AnomalyGPTで使用されるデコーダーの設計は、少数のショットのIADフレームワークと、教師なしのIADフレームワークの両方をサポートします。モデルは、画像エンコーダーを4つの段階に分割し、各段階で中間のパッチレベルの特徴を抽出します。
ただし、これらの中間特徴は、最終的な画像テキスト整列を経ていないため、直接特徴と比較することはできません。AnomalyGPTモデルは、この問題に対処するために、中間特徴を投影して、テキスト特徴と整列させるために追加の層を導入します。
プロンプトラーナー
AnomalyGPTフレームワークは、ローカライズ結果をプロンプト埋め込みに変換して、画像からの微細なセマンティクスを利用し、デコーダーとLLMの出力のセマンティック的一貫性を維持するために、プロンプトラーナーを導入します。さらに、モデルは、デコーダーの出力とは無関係な、学習可能なプロンプト埋め込みをプロンプトラーナーに組み込んで、IADタスクの追加情報を提供します。最後に、モデルは、埋め込みと元の画像情報をLLMに渡します。
プロンプトラーナーは、学習可能なベースプロンプト埋め込みと、ローカライズ結果をプロンプト埋め込みに変換するための畳み込みニューラルネットワークで構成されます。ネットワークは、プロンプト埋め込みのセットを形成し、それらを画像埋め込みと組み合わせてLLMに渡します。
異常シミュレーション
AnomalyGPTモデルは、NSAメソッドを使用して異常データをシミュレートします。NSAメソッドは、カットペーストテクニックを使用して、ポワソン画像編集メソッドで導入される不連続性を緩和します。カットペーストは、IADフレームワークでシミュレートされた異常画像を生成するために一般的に使用されるテクニックです。
カットペースト方法では、画像からランダムにブロック領域を切り取り、別の画像のランダムな場所に貼り付け、シミュレートされた異常領域を生成します。これらのシミュレートされた異常サンプルは、IADモデルのパフォーマンスを向上させることができますが、目立つ不連続性を生じることもあります。ポワソン編集方法は、ポワソン部分微分方程式を解くことで、オブジェクトを一つの画像から別の画像にシームレスにクローンします。

上の図は、ポワソン編集とカットペースト画像編集の比較を示しています。カットペースト方法では目立つ不連続性が見られますが、ポワソン編集の結果はより自然に見えます。
質問と回答の内容
大規模ビジョン言語モデルへのプロンプトチューニングを実行するために、AnomalyGPTモデルは、異常画像に基づいて対応するテキストクエリを生成します。各クエリは、2つの主要なコンポーネントで構成されます。クエリの最初の部分は、画像内のオブジェクトとその予想される属性に関する情報を提供する画像の説明です。クエリの2番目の部分は、画像内の異常の存在を検出すること、または画像に異常があるかどうかを確認することです。
LVLMは最初に、画像に異常があるかどうかのクエリに応答します。モデルが異常を検出すると、異常領域の位置と数を指定します。モデルは、異常の位置を示すために、画像を3×3のグリッドの異なる領域に分割します。

LVLMモデルは、画像の説明と基礎知識を入力として受け取り、画像コンポーネントの理解を向上させます。
データセットと評価指標
モデルは、主にVisAとMVTec-ADデータセットで実験を実行します。MVTec-ADデータセットには、トレーニング用に3629枚の画像と、15つのカテゴリにわたって1725枚のテスト画像があります。トレーニング画像には正常な画像のみが含まれていますが、テスト画像には正常な画像と異常な画像の両方が含まれています。一方、VisAデータセットには、12つのカテゴリにわたって9621枚の正常な画像と約1200枚の異常な画像があります。
既存のIADフレームワークと同様に、AnomalyGPTモデルは、AUC(受信者操作特性曲線の下の面積)を評価指標として使用します。ピクセルレベルのAUCと画像レベルのAUCは、それぞれ異常ローカライズのパフォーマンスと異常検出のパフォーマンスを評価するために使用されます。ただし、モデルは、異常の存在を決定するために手動でしきい値を設定する必要がないため、画像レベルの精度も評価指標として使用します。
結果
定量的結果
少数ショットの工業異常検出
AnomalyGPTモデルは、PaDiM、SPADE、WinCLIP、PatchCoreなどの既存の少数ショットIADフレームワークと比較して結果を示します。

上の図は、AnomalyGPTモデルの結果と少数ショットIADフレームワークの比較を示しています。両方のデータセットで、AnomalyGPTが使用する方法は、画像レベルのAUCと精度の両方で、以前のモデルよりも優れています。
教師なしの工業異常検出
大規模な正常なサンプルのセットで教師なしのトレーニング設定で、AnomalyGPTは、データセット内のすべてのクラスから得られたサンプルで単一のモデルをトレーニングします。AnomalyGPTの開発者は、同じ設定でトレーニングされたため、比較のベースラインとしてUniADフレームワークを選択しました。さらに、モデルは、同じ統一設定でJNLDとPaDimフレームワークと比較します。

上の図は、AnomalyGPTモデルのパフォーマンスと他のフレームワークの比較を示しています。
定性的結果

上の図は、AnomalyGPTモデルの教師なし異常検出方法のパフォーマンスを示しています。以下の図は、モデルの1ショットのコンテキスト学習方法のパフォーマンスを示しています。

AnomalyGPTモデルは、異常の存在を示し、位置をマークし、ピクセルレベルのローカライズ結果を提供することができます。モデルの1ショットのコンテキスト学習方法では、教師なしの学習方法と比較して、ローカライズのパフォーマンスがわずかに低下しますが、これはトレーニングの欠如によるものです。
結論
AnomalyGPTは、工業異常を検出してローカライズするための新しい会話型IADビジョン言語モデルです。AnomalyGPTは、異常を検出してローカライズするだけでなく、異常の正確な位置を示すことができます。さらに、AnomalyGPTは、異常検出に焦点を当てたマルチターンダイアログを促進し、少数ショットのコンテキスト学習で優れたパフォーマンスを示します。AnomalyGPTは、IAD業界に対するLVLMの潜在的な応用について、新しいアイデアと可能性を探求します。












