画像に対する異常検知結果をLLMに解説させてみた

Insight Edgeのデータサイエンティストの山科です。 今回はタイトルにもある通り、画像に対する異常検知結果を大規模言語モデル(LLM)で解説させることで説明性を付与できるか検証を行いましたので、その結果について記載したいと思います。
なお、本内容は先日、長崎で開催された自然言語処理学会(NLP2025)でも発表した内容(自然言語での異常解釈:LLMを用いたAI説明モデルの提案)となっています。

目次

はじめに

異常検知は製造業や医療分野で不可欠であり、迅速かつ正確な判断が求められていますが、その出力が抽象的で理解しづらいことがあります。そこで、画像処理アルゴリズムによって検知された異常をLLMを用いて自然言語で説明ことで、より解釈しやすくする新しいアプローチ、言語駆動型説明可能AI(Language-Driven Explainable AI)を提案し、異常検知結果の信頼性と透明性の向上を図ります。また、その出力が実業務に有用であるかも検証しました。

なぜ異常検知タスクで説明性が必要なのか

近年、深層学習技術の進展に伴い、画像認識における異常検知の精度は飛躍的に向上しています。特に製造業や医療分野において、製品の欠陥検出や病変の早期発見など、様々な応用が期待されています。しかし、異常は一般的に発生しにくい事象であるため、正常データに比べて異常データの収集に課題があります。また、異常のパターンは多様で明確に定義することが難しく、各異常は異なる特徴を持つため、一貫して検出するためのモデル設計も困難です。さらに、ラベリングが複雑で誤りが発生しやすく、アノテーションコストが高いことも課題となっています。このため、異常検知の精度向上に向けた多方面での研究が引き続き行われています。
また、既存の深層学習モデルはブラックボックスであることが多く、異常と判断した根拠を人間が理解することが困難なケースも見られます。このため、現場での実運用の場面では、検知結果を信じてプラントを停止すればよいのか、あるいは、大したことのない異常なのでそのまま流せばよいのか、といったように最終決定をする作業員が判断に迷うことがあります。このため、AIの判断に対する信頼性の担保や、さらなる性能向上のために、AIの意思決定プロセスを説明可能なものにするExplainable AI(XAI、説明可能なAI)技術が注目されています。 しかし、XAIの手法で生成される説明が専門家でないと解釈が難しい場合や、説明が多すぎて重要な情報が埋もれたり、逆に詳細に欠けることがあります。これにより、適切な情報量のバランスを取ることが難しいという課題があります。
一方で、近年のLLMの発展はXAIの可能性を大幅に広げています。例えば、画像キャプション生成タスクのように、画像に対する異常検知結果をLLMの入力として説明文を生成することで、画像内の異常の理由を人間が理解しやすく自然な言葉で説明できます。さらには、異常検知結果が誤っていた場合にもその間違いを正すことで異常検知精度の向上が期待できます。また、異常の種類や発生箇所から発生要因をフィードバックすることで、異常検知後の作業の優先順位を指示することも期待できます。

提案アプローチ

説明性付与のアプローチとして、画像に対する異常検知結果を LLM へのインプットとすることで説明性を付与する言語駆動型説明可能 AI(Language-Driven XAI)を提案します。 異常検知モデルとしては、例えば、多クラス分類やセグメンテーション、物体検知モデルなどを想定しています。

提案アプローチ

実験

実験設定

データセットとして、産業用異常検出のベンチマークとしてよく評価されているMVTec ADを用いました。MVTec ADは、合計5354枚の15のクラスの画像で構成されており、各クラスは特定の製品に対してさまざまな欠陥タイプを持つ異常データとなっています。今回は、テストデータである1725枚を対象に評価しました。 異常検知モデルとしては、正常か異常かの二値分類、欠けや印刷ミスといった複数の異常の種類を分類する多クラス分類、画像内の異常箇所をピクセルレベルで評価しヒートマップで表すセグメンテーション、画像内の異常箇所をバウンディングボックス(bbox)で示す物体検知、の4種類を適用して、これらの手法によるキャプション生成の結果を比較評価します。 今回検証に用いた各異常検知種法のモデルは以下の通り。なお、各パラメータに関しては、誤検知や検知漏れの結果に対しても評価するため、ある程度ランダムとしました。

異常検知モデル

また、モデル毎に出力される結果も異なるので、モデル毎に下表の通り指示文(プロンプト)を調整しています。 また、LLMにはgpt-4o(OpenAI)を用いました。

モデル毎のプロンプト例

評価としては、LLMで生成された説明のキャプションの正確性、個数や位置、大きさ、形状などの詳細度、異常のバリエーションに対する柔軟性、を評価項目としました。キャプションの生成結果は定量的に評価する手法も提案されていますが、ここでは、設定した5段階の 評価スケールを用いて人間による定性的な評価としました。「正確性」と「詳細度」は一枚一枚採点し、その平均点を算出し、「柔軟性」は異常のバリエーションに対する評価となるので各手法での全結果を鑑みて採点することとしました。

実験結果

二値分類

まず、異常検知モデルとして二値分類モデルを用いた場合について示します。入力画像と異常検知結果、生成されたキャプション例は以下の通りです。亀裂と割目から異常であることを正確に説明できており、また、保存状態にも言及することができていますが、位置や傷の数などについての説明はなく詳細度はやや低い結果となりました。

二値分類モデル結果例

多クラス分類

次に多クラス分類モデルを用いいた場合の結果を示します。入力画像と異常検知結果、生成されたキャプションは次の通りです。

多クラス分類モデル結果例

異常の種類としてはsqueeze(へこみ)が正しいのですが、crack(割れ)と誤分類してしまったケースになります。しかし、生成されたキャプションでは、右側に凹みがあることを説明しており、誤判定である可能性があることを説明してくれています。また、「右側」や「オレンジ色の部分」といっ位置の情報も示されており詳細度が高く、ユーザーも理解がしやすく、検知精度向上へのフィードバックにも活用が期待できる結果を得られました。

セグメンテーション

次にセグメンテーションモデルについてです。セグメンテーションモデルへの入力画像と異常検知結果は次のようになりました。

セグメンテーションモデルの入出力

見えにくいですが赤枠の箇所に縦のほつれがありますが、セグメンテーション結果では、ほつれ付近の異常度が高くなっているものの左上と左下が特に異常度が高い結果となっています。LLMへの入力画像と生成されたキャプションを見ると、ほつれだけでなく色ムラや擦り傷の可能性についても言及できていますが、ヒートマップで元の画像が判断しにくくなっているためか、上から下にわたってほつれがあることまでは言及できませんでした。しかし、異常度が高い箇所以外にも言及できており詳細度は高い結果と言えます。

セグメンテーション結果例

物体検知

物体検知結果と生成したキャプションの例を示します。異常箇所2箇所のうち、1箇所を検知漏れしているのですが、キャプションではもう1箇所についても異常であることを言及してくれています。 検知できている異常箇所に対しては、テクスチャ、色、形の違いなど、様々な要因から異常の理由を詳述しており、検知漏れの箇所に関しても同様の要因から異常であることを言及しています。生成されたキャプションは異常の理由を多角的に説明できており、正確性と詳細度が高い結果となりました。

物体検知結果例

実験結果まとめ

他のクラスなど全テストデータに対して検証を行った評価結果は下表のとおりです。

評価結果

二値分類や多クラス分類では異常画像をそのまま入力としているため か、より詳細な説明をしやすく、また、誤検知や誤分類の際に訂正するようなキャプションを生成できるケースが多く見られました。異常の種類や発生要因についても言及できており、全体的に高い評価結果となっています。セグメンテーションでは、正しく検知できている場合は異常箇所の位置や個数なども詳述できているケースが多く得られました。しかし、ヒートマップを重ねているためか異常の種類について詳細に説明することが難しく、また、ヒートマップがあることによって検知漏れしている場合に検知漏れ箇所を言及できているケースも少なく、全体的にやや劣る結果となりました。物体検知では、異常箇所の位置や個数に関して言及するケースが多く、検知漏れしている場合でも異常箇所を指摘できていたりと、正確性、詳細度、柔軟性とも高いキャプションが生成されやすい結果がえられました。しかし、bboxによっては異常箇所と重なってしまい、異常の種類を間違えてしまったり、検知漏れしている場合に、bboxが無いのにあるような説明をしてしまったりと、プロンプトの改善などが必要なケースもいくつか確認できました。
しかしながら、いずれの異常検知手法においても正しく検知できている場合には正確性、詳細度 が高いキャプションが生成できており、誤検知や検知漏れしている場合にも訂正したり、保存や輸送状態に起因するなどと言った異常の発生した要因についても言及したりと、詳細かつユーザビリティが高いキャプションが生成でき、本アプローチの有効性を確認することができました。

まとめ

本記事では、画像に対する異常検知結果に説明性を付与するLanguage-Driven XAIを提案し、産業用異常検出のベンチマークとしてよく用いられているMVTecADを対象に評価を行いました。異常についての説明だけでなく、発生要因や誤検知時に訂正できることも確認でき、よりユーザビリティの高い検知システムに寄与できることを確認できました。今後は、以下についても引き続き検証を進めたいと思っています。

  • 複数の異常検知結果を入力とすることでより安定性の高いキャプションの生成可否
  • マニュアルや事故事例集をRAGに活用して、作業工程へのフィードバックや、設備へのメンテナンスへのフィードバックの可否
  • 実データを対象とした検証

参照

[1] 自然言語での異常解釈:LLMを用いたAI説明モデルの提案 https://www.anlp.jp/proceedings/annual_meeting/2025/pdf_dir/Q5-9.pdf
[2] 私のブックマーク「機械学習における解釈性(Interpretability in Machine Learning)」 https://www.ai-gakkai.or.jp/resource/my-bookmark/my-bookmark_vol33-no3/
[3] The MVTec anomaly detection dataset https://www.mvtec.com/company/research/datasets/mvtec-ad