google/uncertainty-baselines

High-quality implementations of standard and SOTA methods on a variety of tasks.

What it solves

Uncertainty Baselines는 딥러닝의 불확실성과 강건성에 집중하는 연구자들을 위해 표준화된 템플릿과 최첨단(SOTA) 방법론의 고품질 구현체를 제공합니다. 이는 아키텍처, 하이퍼파라미터, 전처리 방식의 불일치로 인해 연구자들이 새로운 아이디어를 빠르게 프로토타이핑하거나 서로 다른 프로젝트 간의 결과를 정확하게 비교하기 어렵게 만드는 파편화된 일회성 실험 코드베이스 문제를 해결합니다.

How it works

이 프로젝트는 세 가지 주요 구성 요소로 구성됩니다:

  • Baselines: 표준 및 최첨단 불확실성 방법을 구현하는 트레이닝 데이터셋(예: CIFAR-10)별로 정리된 스크립트 모음입니다. 의존성을 줄이기 위해 최소한의 구성으로 쉽게 포크할 수 있도록 설계되었습니다.

  • Datasets: TensorFlow Datasets (TFDS)를 래핑하여 TensorFlow, Jax, PyTorch를 위한 기본 데이터 전처리와 간편한 로딩을 제공하는 모듈 (ub.datasets)입니다.

  • Models: tf.keras.Model API를 따르는 모델 아키텍처를 포함하는 모듈 (ub.models)입니다.

연구자들은 TPU (via Colab 또는 Google Cloud) 또는 GPU를 사용하여 이러한 베이스라인을 실행할 수 있으며, 플래그를 조정하여 코어 수와 하드웨어 가속기 유형을 제어할 수 있습니다.

Who it’s for

딥러닝의 불확실성 정량화, 강건성 벤치마킹, 그리고 분포 외 검출(out-of-distribution detection)을 전문으로 하는 AI 연구자 및 개발자입니다.

Highlights

  • Standardized Benchmarking: 불확실성과 강건성 평가를 위한 베스트 프랙티스를 규정합니다.

  • High-Quality Implementations: 표준 작업에 대한 최첨단 방법론의 라이브러리를 제공합니다.

  • Detailed Metrics: Test Accuracy, Expected Calibration Error (ECE), Negative Log-Likelihood (NLL), 그리고 정확한 트레이닝/테스트 실행 시간을 측정하기 위한 내장 지원을 포함합니다.

  • Hardware Flexibility: TPU 및 GPU 트레이닝에 대한 네이티브 지원과 명확한 설정 경로를 제공합니다.

  • TFDS Integration: 일관된 데이터 처리를 위한 TensorFlow Datasets와의 원활한한 통합을 제공합니다.