Captum の概要
Captum:PyTorch のためのモデル解釈可能性
Captum とは?
Captum は、PyTorch におけるモデル解釈可能性の研究のためのオープンソースで拡張可能なライブラリです。視覚やテキストなど、さまざまなモダリティにわたる PyTorch モデルの予測を理解し、属性を特定するためのツールを提供します。
主な機能
- マルチモーダル: 視覚、テキストなど、さまざまなモダリティにわたるモデルの解釈可能性をサポートします。
- PyTorch 上に構築: ほとんどの種類の PyTorch モデルをサポートし、元のニューラルネットワークへの最小限の変更で使用できます。
- 拡張可能: 解釈可能性の研究のためのオープンソースの汎用ライブラリ。新しいアルゴリズムを簡単に実装してベンチマークできます。
Captum の始め方
Captum のインストール:
- conda 経由(推奨):
conda install captum -c pytorch
- pip 経由:
pip install captum
モデルの作成と準備:
次の例は、Captum を簡単な ToyModel
で使用する方法を示しています。
import numpy as np
import torch
import torch.nn as nn
from captum.attr import IntegratedGradients
class ToyModel(nn.Module):
def __init__(self):
super().__init__()
self.lin1 = nn.Linear(3, 3)
self.relu = nn.ReLU()
self.lin2 = nn.Linear(3, 2)
# initialize weights and biases
self.lin1.weight = nn.Parameter(torch.arange(-4.0, 5.0).view(3, 3))
self.lin1.bias = nn.Parameter(torch.zeros(1,3))
self.lin2.weight = nn.Parameter(torch.arange(-3.0, 3.0).view(2, 3))
self.lin2.bias = nn.Parameter(torch.ones(1,2))
def forward(self, input):
return self.lin2(self.relu(self.lin1(input)))
model = ToyModel()
model.eval()
計算を決定的にするために、乱数シードを固定しましょう。
torch.manual_seed(123)
np.random.seed(123)
入力およびベースラインテンソルを定義します。
input = torch.rand(2, 3)
baseline = torch.zeros(2, 3)
- インスタンス化して適用するアルゴリズムを選択:
この例では、積分勾配を使用します。
ig = IntegratedGradients(model)
attributions, delta = ig.attribute(input, baseline, target=0, return_convergence_delta=True)
print('IG Attributions:', attributions)
print('Convergence Delta:', delta)
出力:
IG Attributions: tensor([[-0.5922, -1.5497, -1.0067],
[ 0.0000, -0.2219, -5.1991]])
Convergence Delta: tensor([2.3842e-07, -4.7684e-07])
Captum が重要な理由
モデルの解釈可能性は、AI モデルがどのように意思決定を行うかを理解するために重要です。Captum は、研究者や実務者がモデルの動作に関する洞察を得るのに役立ちます。これは、AI システムのデバッグ、改善、および信頼構築に不可欠です。
Captum はどこで使用できますか?
Captum は、以下を含むさまざまなアプリケーションで使用できます。
- 画像分類: モデルの予測に最も貢献するピクセルを理解します。
- テキスト分類: モデルのセンチメント分析を推進するキーワードまたはフレーズを特定します。
- その他の PyTorch モデル: 最小限の変更で任意の PyTorch モデルを解釈します。
"Captum" のベストな代替ツール

Treppan Technologies:ウガンダを代表する2024年のAIスタートアップ企業で、AI開発、コンサルティング、チャットボットサービスを提供しています。 彼らの専門知識で可能性を解き放ちます。

Weights & Biasesは、モデルのトレーニングと微調整、モデルの管理、GenAIアプリケーションの追跡と評価を行うための主要なAI開発者プラットフォームです。

1つのクラウドでAIモデルを開発、トレーニング、スケーリング。GPU CloudでオンデマンドのGPUを起動し、ServerlessでML推論をスケーリング。

MONAIは、医療画像処理用のオープンソースAIフレームワークであり、研究と臨床展開を結びつけ、イノベーションを推進します。研究者や臨床医から信頼されています。

fast.aiは、実践的な深層学習コース、fastai for PyTorchやnbdevなどのソフトウェアツール、およびニューラルネットへのアクセスを容易にすることに焦点を当てた書籍を提供します。

より高速で優れたモデルのために、ハイパーパラメータ調整と分散トレーニングが組み込まれたオープンソースの深層学習トレーニングプラットフォーム。