Optimization-AI/LibAUC

LibAUC: A Deep Learning Library for X-Risk Optimization

What it solves

LibAUC addresses the difficulty of directly optimizing complex performance measures (X-Risk) in deep learning. Instead of relying on standard proxy losses, it provides tools to optimize metrics like AUROC, AUPRC, and NDCG, which are often more critical for specific real-world tasks but harder to optimize directly.

How it works

The library provides a unified framework and a user-friendly API to implement surrogate losses and specialized optimizers. It abstracts the optimization of compositional loss functions across several domains:

  • Classification of Imbalanced Data (CID): Surrogate losses for AUROC, AUPRC/AP, and partial AUROC.
  • Learning to Rank (LTR): Surrogate losses for NDCG, top-K NDCG, and listwise losses.
  • Contrastive Learning of Representation (CLR): Global contrastive losses.

Who it’s for

It is designed for AI researchers and practitioners working on imbalanced datasets, ranking systems, or contrastive representation learning who need to optimize for specific performance metrics rather than generic cross-entropy loss.

Highlights

  • Broad Application Support: Covers imbalanced classification, learning to rank, and contrastive learning.
  • Diverse Metric Support: Includes optimizations for AUROC, AUPRC, NDCG, and pAUC.
  • Integrated Tooling: Features a dedicated LibAUC Trainer and support for distributed training.
  • Model Integration: Compatible with PyTorch and integrates with Hugging Face models.

Related

  • Project
  • Project
  • Project
  • Project
  • Project