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

このプロジェクトは、主に3つのコンポーネントで構成されています:

  • Baselines: トレーニング用データセット(例:CIFAR-10)ごとに整理された、標準的および最先端の不確実性手法を実装するスクリプトのコレクションです。これらは、依存関係を減らすために、最小限の構成で、簡単にフォーク可能なように設計されています。
  • Datasets: TensorFlow Datasets (TFDS) をラップし、TensorFlow, Jax, PyTorch 用のデフォルトのデータ前処理と簡単なロードを可能にするモジュール (ub.datasets) です。
  • Models: tf.keras.Model API に従ったモデルアーキテクチャを含むモジュール (ub.models) です。

研究者は、TPUs (via Colab または Google Cloud) または GPUs を使用してこれらのベースラインを実行し、フラグを調整することでコア数やハードウェアアクセラレータのタイプを制御できます。

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 とのシームレスな統合を実現しています。