Captum : Interprétabilité des modèles pour PyTorch

Captum

3.5 | 247 | 0
Type:
Projets Open Source
Dernière mise à jour:
2025/08/25
Description:
Captum est une bibliothèque open source d'interprétabilité de modèles pour PyTorch. Il prend en charge diverses modalités, offre une extensibilité et s'intègre parfaitement aux modèles PyTorch.
Partager:
interprétabilité des modèles
méthodes d'attribution
PyTorch
IA

Vue d'ensemble de Captum

Captum : Interprétabilité des modèles pour PyTorch

Qu’est-ce que Captum ?

Captum est une bibliothèque open source et extensible pour la recherche sur l’interprétabilité des modèles dans PyTorch. Elle fournit des outils pour comprendre et attribuer les prédictions des modèles PyTorch à travers diverses modalités comme la vision et le texte.

Principales caractéristiques

  • Multimodal: Prend en charge l’interprétabilité des modèles à travers des modalités incluant la vision, le texte et plus encore.
  • Basée sur PyTorch: Prend en charge la plupart des types de modèles PyTorch et peut être utilisée avec une modification minimale du réseau neuronal d’origine.
  • Extensible: Bibliothèque générique open source pour la recherche sur l’interprétabilité. Implémentez et comparez facilement de nouveaux algorithmes.

Comment démarrer avec Captum ?

  1. Installer Captum:

    • Via conda (recommandé) :
    conda install captum -c pytorch
    
    • Via pip :
    pip install captum
    
  2. Créer et préparer un modèle:

L’exemple suivant montre comment utiliser Captum avec un simple 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()

Pour rendre les calculs déterministes, corrigeons les graines aléatoires :

torch.manual_seed(123)
np.random.seed(123)

Définir les tenseurs d’entrée et de référence :

input = torch.rand(2, 3)
baseline = torch.zeros(2, 3)
  1. Sélectionner l’algorithme à instancier et à appliquer:

Cet exemple utilise les gradients intégrés :

ig = IntegratedGradients(model)
attributions, delta = ig.attribute(input, baseline, target=0, return_convergence_delta=True)
print('IG Attributions:', attributions)
print('Convergence Delta:', delta)

Sortie :

IG Attributions: tensor([[-0.5922, -1.5497, -1.0067],
                         [ 0.0000, -0.2219, -5.1991]])
Convergence Delta: tensor([2.3842e-07, -4.7684e-07])

Pourquoi Captum est-il important ?

L’interprétabilité des modèles est cruciale pour comprendre comment les modèles d’AI prennent leurs décisions. Captum aide les chercheurs et les praticiens à mieux comprendre le comportement des modèles, ce qui est essentiel pour déboguer, améliorer et renforcer la confiance dans les systèmes d’AI.

Où puis-je utiliser Captum ?

Captum peut être utilisé dans diverses applications, notamment :

  • Classification d’images: Comprendre quels pixels contribuent le plus à la prédiction d’un modèle.
  • Classification de texte: Identifier les mots ou expressions clés qui motivent l’analyse des sentiments d’un modèle.
  • Autres modèles PyTorch: Interpréter n’importe quel modèle PyTorch avec des modifications minimales.

Meilleurs outils alternatifs à "Captum"

Defog.ai
Image non disponible
114 0

Defog.ai fournit une analyse de données basée sur l'IA à l'aide de LLM affinés, permettant aux utilisateurs d'obtenir rapidement des informations à partir des données d'entreprise via SQLCoder. Idéal pour les organisations axées sur les données.

analyse de données IA
SQLCoder
GPTZero
Image non disponible
201 0

GPTZero est un détecteur d'IA gratuit et précis pour ChatGPT, GPT-5 et Gemini. Approuvé par plus de 10 millions d'éducateurs, d'étudiants et de professionnels avec une précision de 99%.

Détection de l'IA
CPUmade
Image non disponible
144 0

CPUmade est une plateforme alimentée par l'IA qui permet aux utilisateurs de créer des designs de t-shirts personnalisés via de simples descriptions textuelles. Générez des designs vestimentaires uniques, personnalisez les couleurs et commandez directement avec livraison mondiale.

vêtements personnalisés
design IA
Claude
Image non disponible
284 0

Claude AI d'Anthropic est conçu pour la fiabilité, l'interprétabilité et la maniabilité. Découvrez Claude Opus et Sonnet pour les applications d'IA avancées, le codage et les agents d'IA.

Sécurité de l'IA
EduWriter.ai
Image non disponible
358 0

EduWriter.ai est le meilleur rédacteur d'essais IA en 2025, générant instantanément des essais indétectables et sans plagiat avec de vraies références. Approuvé par plus de 1,6 million d'étudiants. Essayez-le gratuitement maintenant !

Rédaction d'essais IA
Bethge Lab
Image non disponible
207 0

Bethge Lab à l'Université de Tübingen se concentre sur la recherche en IA, l'apprentissage automatique et la compréhension des représentations cérébrales à l'aide de réseaux neuronaux.

Recherche en IA