Captum: Interpretabilidad de modelos para PyTorch

Captum

3.5 | 249 | 0
Tipo:
Proyectos de Código Abierto
Última actualización:
2025/08/25
Descripción:
Captum es una biblioteca de código abierto para la interpretabilidad de modelos en PyTorch. Admite varias modalidades, ofrece extensibilidad y se integra perfectamente con los modelos de PyTorch.
Compartir:
interpretabilidad de modelos
métodos de atribución
PyTorch
IA

Descripción general de Captum

Captum: Interpretabilidad de Modelos para PyTorch

¿Qué es Captum?

Captum es una biblioteca de código abierto y extensible para la investigación de la interpretabilidad de modelos en PyTorch. Proporciona herramientas para comprender y atribuir las predicciones de los modelos de PyTorch en diversas modalidades como la visión y el texto.

Características Clave

  • Multi-Modal: Admite la interpretabilidad de modelos en diversas modalidades, incluyendo visión, texto y más.
  • Construido sobre PyTorch: Admite la mayoría de los tipos de modelos de PyTorch y se puede usar con una modificación mínima de la red neuronal original.
  • Extensible: Biblioteca genérica de código abierto para la investigación de la interpretabilidad. Implementa y compara fácilmente nuevos algoritmos.

¿Cómo empezar con Captum?

  1. Instalar Captum:

    • Vía conda (recomendado):
    conda install captum -c pytorch
    
    • Vía pip:
    pip install captum
    
  2. Crear y Preparar un Modelo:

El siguiente ejemplo demuestra cómo usar Captum con un ToyModel simple:

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()

Para que los cálculos sean deterministas, fijemos las semillas aleatorias:

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

Definir los tensores de entrada y de línea base:

input = torch.rand(2, 3)
baseline = torch.zeros(2, 3)
  1. Seleccionar el Algoritmo para Instanciar y Aplicar:

Este ejemplo usa Integrated Gradients:

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

Resultado:

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

¿Por qué es importante Captum?

La interpretabilidad del modelo es crucial para comprender cómo los modelos de AI llegan a sus decisiones. Captum ayuda a los investigadores y profesionales a obtener información sobre el comportamiento del modelo, lo cual es esencial para depurar, mejorar y generar confianza en los sistemas de AI.

¿Dónde puedo usar Captum?

Captum se puede usar en varias aplicaciones, incluyendo:

  • Clasificación de Imágenes: Comprender qué píxeles contribuyen más a la predicción de un modelo.
  • Clasificación de Texto: Identificar las palabras o frases clave que impulsan el análisis de sentimiento de un modelo.
  • Otros Modelos de PyTorch: Interpretar cualquier modelo de PyTorch con modificaciones mínimas.

Mejores herramientas alternativas a "Captum"

Defog.ai
Imagen no disponible
114 0

Defog.ai proporciona análisis de datos impulsado por IA mediante LLM ajustados, lo que permite a los usuarios obtener rápidamente información de los datos empresariales a través de SQLCoder. Ideal para organizaciones basadas en datos.

análisis de datos con IA
SQLCoder
GPTZero
Imagen no disponible
201 0

GPTZero es un detector de IA gratuito y preciso para ChatGPT, GPT-5 y Gemini. Con la confianza de más de 10 millones de educadores, estudiantes y profesionales con una precisión del 99%.

Detección de IA
detección de plagio
CPUmade
Imagen no disponible
144 0

CPUmade es una plataforma impulsada por IA que permite a los usuarios crear diseños de camisetas personalizadas mediante descripciones de texto simples. Genere diseños de ropa únicos, personalice colores y solicite directamente con envío global.

ropa personalizada
diseño con IA
Claude
Imagen no disponible
284 0

Claude AI de Anthropic está diseñado para la fiabilidad, la interpretabilidad y la dirigibilidad. Explora Claude Opus y Sonnet para aplicaciones avanzadas de IA, codificación y agentes de IA.

Seguridad de la IA
EduWriter.ai
Imagen no disponible
358 0

EduWriter.ai es el mejor escritor de ensayos con IA en 2025, que genera instantáneamente ensayos indetectables y sin plagio con referencias reales. Con la confianza de más de 1,6 millones de estudiantes. ¡Pruébalo gratis ahora!

Escritura de ensayos con IA
Bethge Lab
Imagen no disponible
208 0

Bethge Lab en la Universidad de Tübingen se centra en la investigación en IA, el aprendizaje automático y la comprensión de las representaciones cerebrales mediante redes neuronales.

Investigación en IA