frgfm/torch-cam

Class activation maps for your PyTorch models (CAM, Grad-CAM, Grad-CAM++, Smooth Grad-CAM++, Score-CAM, SS-CAM, IS-CAM, XGrad-CAM, Layer-CAM, Finer-CAM, LeGrad, RefineCAM)

何を解決するか

TorchCAMは、PyTorchモデルの畳み込み層におけるクラス固有の活性化を視覚化・探索する簡単な方法を提供します。モデルが特定の予測を行う際にどの画像部分に注目しているかを示すヒートマップを生成することで、予期しない分類結果のデバッグを支援します。

動作方法

このライブラリはPyTorchのフックメカニズムを使用して、モデルのアーキテクチャを変更せずに内部情報を取得します。CAM抽出器はモデルのラッパーとして機能し、モデルが推論を行う際に必要な活性化をキャプチャします。ユーザーはクラスインデックスを指定して活性化マップを生成でき、これを生のヒートマップとして可視化したり、元の画像に重ねて表示したりできます。

対象ユーザー

PyTorchベースのコンピュータビジョンモデルを扱い、モデルの意思決定プロセスを解釈したい研究者や開発者向けに設計されています。

特徴

  • 広範な手法のコレクション: Grad-CAM、Grad-CAM++、Score-CAM、Layer-CAM、およびVision Transformers向けのLeGradを含む多数のCAM手法を実装。
  • スムーズな統合: フックを使用して既存のPyTorchモデルにラッパーとして統合可能。コード変更は最小限です。
  • Hugging Face Space: 異なるCAM手法をテストできるライブデモアプリを提供。
  • パフォーマンスベンチマーク: 各手法の分類信頼度とレイテンシーオーバーヘッドに関する詳細なメトリクスを提供。
  • 広範な互換性: 標準的な畳み込み層、Vision Transformers、3D/動画データ、バッチ入力に対応。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト