url-benchmark-eval
Uncertainties of Latent Representations in Computer Vision — Kirchhof et al. (2024) (arXiv:2408.14281, 2024)
What this evaluates
Evaluates how well uncertainty estimates for latent representations predict the correctness of the representation itself, specifically whether the nearest neighbor in the embedding space belongs to the same class. It tests the transferability and scalability of uncertainty quantification methods across different backbones and unseen datasets.
Datasets
- ImageNet-1k — total ?; splits: train (-1)
Metrics
R-AUROC(primary) — range: [0, 1]- Area under the ROC curve measuring the predictive power of uncertainty estimates $u(x)$ against a binary 0/1 correctness loss derived from Recall@1 in the latent space. For each test sample, correctness is 1 if its nearest neighbor in the embedding space shares the same class, else 0. AUROC is computed over all test samples.
Input / output format
Input: Latent representation vectors (embeddings) from a pretrained backbone (e.g., ResNet 50 or ViT Medium), along with ground-truth class labels for the test set.
Output: A scalar uncertainty estimate $u(x)$ per instance.
Scoring recipe
def compute_r_auroc(embeddings, labels, uncertainties):
correctness = []
for i, (e_i, y_i) in enumerate(zip(embeddings, labels)):
dists = [np.linalg.norm(e_i - e_j) for j, e_j in enumerate(embeddings) if i != j]
nn_label = labels[np.argmin(dists)]
correctness.append(1 if nn_label == y_i else 0)
return roc_auc_score(correctness, uncertainties)
Common pitfalls
- R-AUROC evaluates uncertainty against latent-space nearest-neighbor correctness, not standard classification accuracy or confidence scores.
- Class labels are strictly required only at test time for the Recall@1 binary outcome; the method is designed to be class-agnostic during training.
- Optimizing for R-AUROC can conflict with optimizing for the main task (Recall@1), as gradient directions for representation and uncertainty may diverge.
Evidence (verbatim from paper)
To quantify this, we use the area under the ROC curve (AUROC) that tells if the uncertainties are predictive of the binary outcome variable. We name this the representation AUROC (R-AUROC). The R-AUROC allows evaluating a broad range of approaches, including ones that give a variance estimate $u(x)\in\mathbb{R}$ instead of a probability $u(x)\in[0,1]$. It can be evaluated on any classification dataset without new annotations, overcoming the previous hurdle, and can be added to existing representation learning benchmarks in four lines of code, thereby taking the practical hurdle for the field.
Citation
@misc{kirchhof2024uncertainties,
title={Uncertainties of Latent Representations in Computer Vision},
author={Kirchhof et al. (2024)},
year={2024},
note={arXiv:2408.14281}
}
- arXiv: 2408.14281