kkirchheim/pytorch-ood

👽 Out-of-Distribution Detection with PyTorch

해결하는 문제

딥러닝 모델은 훈련 세트와 크게 다른 데이터(분포 외 또는 OOD 데이터)를 접할 때 종종 조용히 실패합니다. 이 라이브러리는 모델이 그러한 '알 수 없는' 입력을 만날 때 이를 감지하는 표준화된 도구 키트를 제공하여 프로덕션 환경에서 신뢰할 수 없는 예측을 방지하는 데 도움을 줍니다.

작동 방식

이 라이브러리는 모델의 내부 상태(예: softmax 확률, 에너지 점수, 특징 활성화)를 분석하여 입력이 이상치일 가능성이 있는지 결정하는 다양한 학술 OOD 탐지 알고리즘을 구현합니다. 이러한 탐지기에 일관된 인터페이스를 제공하여 사용자가 서로 다른 방법을 전환하고, 표준 벤치마크에 대해 평가하고, 기존 PyTorch 워크플로우에 통합할 수 있습니다.

대상 사용자

이 프로젝트는 모델 견고성을 평가하고, 불확실성 추정을 구현하거나, 모델의 훈련 분포를 벗어나는 입력을 안전하게 거부할 수 있는 시스템을 구축해야 하는 머신러닝 연구자와 엔지니어를 위해 설계되었습니다.

주요 특징

  • 최첨단 OOD 탐지 알고리즘의 광범위한 컬렉션(예: Energy-Based, ODIN, Mahalanobis, ReAct, ViM).
  • OpenOOD와 같은 일반적인 OOD 벤치마크에 대한 내장 지원.
  • PyTorch Lightning 및 segmentation-models-pytorch와 같은 인기 있는 프레임워크와 호환됩니다.
  • 사전 훈련된 모델 가중치와 데이터 증대 및 사용자 정의 손실 함수를 위한 유틸리티가 포함되어 있습니다.
  • 다양한 탐지 전략을 평가하고 비교하기 위한 표준화된 API.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트