Captum: PyTorch 모델 해석 가능성

Captum

3.5 | 170 | 0
유형:
오픈 소스 프로젝트
최종 업데이트:
2025/08/25
설명:
Captum은 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"의 최고의 대체 도구

AmberESG
이미지가 없습니다
275 0

AmberESG GenAI SaaS 구독을 통해 ESG 관련 활동을 최대한 활용하십시오. 공개 소스에서 ESG 관련 정보를 배우고 ESG 관련 콘텐츠 및 캠페인을 만드십시오.

ESG
인공지능
GenAI
Green Suggest
이미지가 없습니다
317 0

Green Suggest: 오래된 의류를 업사이클링하여 패션을 변화시키고 섬유 폐기물을 줄이며 지속 가능성을 촉진하는 AI 기반 플랫폼입니다.

업사이클링
패션
지속 가능성
PromptLayer
이미지가 없습니다
261 0

PromptLayer는 프롬프트 관리, 평가 및 LLM 관찰 가능성을 위한 AI 엔지니어링 플랫폼입니다. 전문가와 협업하고 AI 에이전트를 모니터링하며 강력한 도구로 프롬프트 품질을 개선하십시오.

프롬프트 엔지니어링 플랫폼
InterviewJam
이미지가 없습니다
186 0

InterviewJam은 AI 기반 면접 준비 웹 앱으로 구직자가 고품질 면접 답변을 생성하고 진행 상황을 추적하며 개인 브랜드를 구축하여 꿈의 직업을 더 빨리 얻을 수 있도록 도와줍니다.

면접 준비
구직 도구
AI 경력
AIndLeads
이미지가 없습니다
157 0

AIndLeads: 리드 생성을 위한 AI 기반 B2B 데이터베이스 및 CRM 도구입니다. 6억 명 이상의 연락처에 액세스하고, 아웃리치를 자동화하고, 하나의 플랫폼에서 판매 파이프라인을 관리하세요.

리드 생성
B2B 영업
CRM
Chatbase
이미지가 없습니다
169 0

Chatbase는 고객 서비스를 위한 AI 상담원을 구축하는 플랫폼입니다. 더 나은 고객 경험을 제공하는 AI 지원 상담원을 만들고 배포하십시오. 9000개 이상의 기업에서 신뢰합니다.

AI 챗봇
고객 서비스 자동화
KubeHA
이미지가 없습니다
194 0

KubeHA: GenAI 기반 Kubernetes 모니터링 및 관찰 가능성 플랫폼입니다. 실시간 메트릭, 이상 감지 및 AI 기반 수정 기능을 제공합니다.

Kubernetes
모니터링
Zukino StyleMind - Where AI Meets Your Style
이미지가 없습니다
246 0

Zukino StyleMind는 AI를 활용한 플랫폼으로 맞춤형 패션 디자인을 제공하며, 가상 착용과 트렌드 지향적인 스타일을 갖추고 있습니다.

AI 패션
가상 착용
Validator by Yazero
이미지가 없습니다
182 0

Validator by Yazero를 사용하여 스타트업 아이디어를 빠르게 검증하십시오. 아이디어 분석, 개선 및 공유를 위한 AI 기반 도구입니다. 귀중한 피드백을 얻고 협력자를 찾으십시오.

아이디어 검증
스타트업
AI 분석