Skip to main content

Benchmark Prediction with Fewer Data

BenchPred is a Python package that provides a suite of tools to predict benchmark performances with fewer data. It provides all methods that we examined in our paper.

Our results shows that, these methods are most proficient at interpolating scores among similar models. However, except Random-Sampling and AIPW, all methods face significant difficulties when predicting target models that differ substantially from those they have encountered before.

We caution against the indiscriminate use of benchmark prediction techniques and recommend to use AIPW or, alternatively, Random-Sampling with a larger sampling budget.

Installation

Install the package with the following command,

pip install -e .

or only install the requirements,

pip install -r requirement.txt

Example Usage

from benchpred import all_methods


method = all_methods["aipw"]()
method.fit(
    source_full_scores,  # (n_source_model * n_data) binary matrix
    coreset_size=50,  
    seed=42
)
coreset = method.get_coreset()
target_coreset_scores = ...  # (n_target_model * coreset_size) binary matrix based on coreset
pred_acc = method.predict(target_coreset_scores)

Quick Start

python main.py --dataset_name imagenet --coreset_size 50 --no-multi_process --methods aipw --num_run 1 --seed_start 0 --no-use_git

The supported methods are listed as follows,

  • Random-Sampling: --methods random_sampling
  • AIPW: --methods aipw
  • Random-Sampling-Learn: --methods random_sampling_and_learn
  • Random-Search-Learn: --methods random_search_and_learn
  • PCA: --methods pca
  • Lasso: --methods lasso
  • Double-Optimize: --methods double_optimize
  • Anchor-Points-Weighted: --methods anchor_points_weighted
  • Anchor-Points-Predictor: --methods anchor_points_predictor
  • PIRT: --methods pirt
  • GPIRT: --methods gpirt

Metadata

Release files for benchpred 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for benchpred 1.0.0
File Size Uploaded
benchpred-1.0.0.tar.gz 23.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for benchpred 1.0.0
File Interpreter ABI Platform
benchpred-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 58.8 kB

Release files / benchpred-1.0.0.tar.gz

Download URL benchpred-1.0.0.tar.gz
Size 23.9 kB
Tags Source
SHA-256 checksum
How to use checksums
2b91872e0b8e5cbaa0cc04c0860ea60d9c8773d3ed6805d8e781b1e13377eefe
BLAKE2b-256 checksum
How to use checksums
911b9537427848d1009bbb37d9f0038909be3ce2f76c4890da6925687da1d287
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.16

Release files / benchpred-1.0.0-py3-none-any.whl

Download URL benchpred-1.0.0-py3-none-any.whl
Size 34.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6c152bcc785f525a3866c2a3546e4db5c3bbceb7b23754a5cbc721c44f38e1a9
BLAKE2b-256 checksum
How to use checksums
9c184e71d7acdb676e5aaa2a90f306753a1e0f8612fb9cf371881f4a0d96cdc0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.16

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page