Captum: PyTorch 모델 해석 가능성

Captum

3.5 | 374 | 0
유형:
오픈 소스 프로젝트
최종 업데이트:
2025/08/25
설명:
Captum은 PyTorch용 오픈 소스 모델 해석 가능성 라이브러리입니다. 다양한 양식을 지원하고 확장성을 제공하며 PyTorch 모델과 원활하게 통합됩니다.
공유:
모델 해석 가능성
속성 부여 방법
PyTorch

Captum 개요

Captum: PyTorch 모델 해석 가능성

Captum이란 무엇입니까?

Captum은 PyTorch에서 모델 해석 가능성 연구를 위한 오픈 소스, 확장 가능한 라이브러리입니다. 비전 및 텍스트와 같은 다양한 양식에서 PyTorch 모델의 예측을 이해하고 속성을 부여하는 도구를 제공합니다.

주요 기능

  • 다중 모드: 비전, 텍스트 등을 포함한 다양한 양식에서 모델 해석 가능성을 지원합니다.
  • PyTorch 기반: 대부분의 PyTorch 모델 유형을 지원하며 원래 신경망을 최소한으로 수정하여 사용할 수 있습니다.
  • 확장 가능: 해석 가능성 연구를 위한 오픈 소스, 일반 라이브러리입니다. 새로운 알고리즘을 쉽게 구현하고 벤치마킹할 수 있습니다.

Captum 시작 방법

  1. Captum 설치:

    • conda를 통해 (권장):
    conda install captum -c pytorch
    
    • pip를 통해:
    pip install captum
    
  2. 모델 생성 및 준비:

다음 예제는 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)
  1. 인스턴스화하고 적용할 알고리즘 선택:

이 예제에서는 통합 그라데이션을 사용합니다.

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"의 최고의 대체 도구

Summarize.ing
이미지가 없습니다
397 0

Summarize.ing에서 YouTube 비디오의 빠른 AI 기반 요약을 발견하세요. 1분 이내에 하이라이트, 마인드맵, 세그먼트 요약을 얻으세요. 시간을 절약하고 핵심 내용을 쉽게 파악하세요!

YouTube 요약기
CEBRA
이미지가 없습니다
359 0

CEBRA는 행동 및 신경 데이터를 공동으로 분석하여 신경과학 연구를 위한 일관되고 해석 가능한 잠재 임베딩을 생성하는 자가 감독 AI 알고리즘으로, 종을 초월한 위치, 비디오, 움직임의 고정밀 디코딩을 가능하게 합니다。

신경 디코딩
잠재 임베딩
Fast3D
이미지가 없습니다
413 0

Fast3D를 발견하세요. AI 기반 솔루션으로 텍스트와 이미지에서 몇 초 만에 고품질 3D 모델을 생성합니다. 기능, 게임 응용, 미래 트렌드를 탐구하세요.

3D 모델 생성
텍스트에서 3D
Wonder AI
이미지가 없습니다
435 0

Wonder AI는 텍스트 프롬프트를 멋진 디지털 아트워크로 변환하는 AI 아트 생성기입니다. 40개 이상의 아트 스타일과 AI 기반 도구를 제공하여 개인화된 아트, 로고 및 문신 디자인을 만들 수 있습니다. iOS 및 Android에서 사용 가능합니다.

AI 아트
이미지 생성
AI 로고