jacobgil/pytorch-grad-cam
Advanced AI Explainability for computer vision. Support for CNNs, Vision Transformers, Classification, Object detection, Segmentation, Image similarity and more.
What it solves
이 라이브러리는 컴퓨터 비전 분야를 위한 포괄적인 픽셀 어트리뷰션(Pixel Attribution) 방법 모음집을 제공하여, 개발자와 연구자가 AI 모델이 이미지의 어느 부분에 집중하고 있는지를 시각화함으로써 모델 예측을을 진단할 수 있게 합니다. 특정 예측에 가장 크게 기여하는 영역을 강조함으로써 "블랙박스" 비전 모델을 설명 가능한 AI(XAI)로 전환하는 데 도움을 줍니다.
How it works
이 패키지는 PyTorch 모델의 타겟 레이어의 활성화(activation)와 그래디언트(gradient)를 분석하는 다양한 Class Activation Mapping (CAM) 방법을 구현합니다. 그래디언트 기반 방식(GradCAM, GradCAM++와 같은), 그래디언트 프리 방식(AblationCAM, ScoreCAM와 같은), 그리고 PCA 기반 방식(EigenCAM와 같은)을 포함한 광범위한 기술을 지원합니다. 다양한 아키텍처를 처리하기 위해, 활성화를 공간적 이미지로 변환하는 "reshape transforms"와 모델 출력이 정확히 무엇을 설명해야 하는지를 정의하는 "model targets"를 사용합니다.
Who it’s for
- AI 연구자: 새로운 설명 가능성 방법을 개발하거나 기존 방법을 벤치마킹하는 연구자.
- ML 엔지니어: 프로덕션 또는 개발 중에 모델 동작을 진단해야 하는 개발자.
- 컴퓨터 비전 실무자: 분류, 객체 탐지, 시맨틱 세그멘테이션과 같은 작업에서 CNN 또는 Vision Transformers (ViT)를 다루는 모든 사람.
Highlights
- 광범위한 방법 지원: GradCAM, HiResCAM, FullGrad, ShapleyCAM과 같은 방대한 최첨단 방법들을 포함합니다.
- 아키텍처에 구애받지 않음: 일반적인 CNN 및 Vision Transformers (예: ResNet, ViT, Swin Transformer)와 함께 작동합니다.
- 작업 Versatility: 분류, 객체 탐지, 시맨틱 세그멘테이션 및 임베딩 유사도(embedding similarity)를 지원합니다.
- 평가 지표: 설명의 신뢰성을 정량적으로 확인하기 위한 내장 지표(ROAD, ARCC와 같은)를 포함합니다.
- SESS Wrapper: 슬라이딩 윈도우와 멀티 스케일을 사용하여 설명의 스케일 변화 및 방해 요소에 대한 견고함을 높이는 메타 방법입니다.
- 평활화 도구: 시각화의 노이즈를 줄이기 위해 테스트 시간 증강(test-time augmentation)과 고유값 평활화(eigen-smoothing)를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트