Extends GPyTorch with Gaussian Process Regression Conformal Prediction
Project description
GPyConform
GPyConform extends the GPyTorch library by implementing Conformal Prediction (CP) for Gaussian Process Regression (GPR), providing distribution-free, finite-sample valid Prediction Intervals (PIs) under the sole assumption of data exchangeability.
GPyConform supports both the Transductive (Full) CP and Inductive (Split) CP versions of the framework through a unified interface. In both cases it implements a GPR-specific normalized nonconformity measure [1] that leverages the GP predictive variance to construct adaptive symmetric or asymmetric conformal prediction intervals.
Key Features
- Provably Valid Prediction Intervals: Distribution-free, finite-sample coverage guarantees under minimal assumptions (data exchangeability).
- Two CP Framework Versions:
- Transductive (Full) CP for Exact GPs:
ExactGPCP - Inductive (Split) CP for any GPyTorch regression model:
GPRICPWrapper, plus a model-agnosticInductiveConformalRegressor
- Transductive (Full) CP for Exact GPs:
- Symmetric and Asymmetric PIs in both frameworks.
- Normalized Nonconformity that leverages the GP predictive variance for tighter, adaptive intervals.
- Unified PI Container + Metrics:
PredictionIntervalssupports retrieving intervals at multiple confidence levels and evaluating empirical coverage error and interval widths. - Torch-native + GPU-friendly: Works directly with
torch.Tensors and can leverage GPU acceleration.
Note
- Transductive CP (
ExactGPCP) targets ExactGP models withGaussianLikelihoodand relies on an internal patch to GPyTorch’sDefaultPredictionStrategy(applied automatically by default). You can control patching via theGPYCONFORM_AUTOPATCHenvironment variable, or callgpyconform.apply_patches()manually. - Inductive CP does not modify the model internals and can be used with any GPyTorch regression model (including approximate/deep GPs and different likelihoods).
InductiveConformalRegressorcan also be used with non-GPyTorch regressors that provide predictive means/variances.
Documentation
For detailed documentation and usage examples, see GPyConform Documentation.
Installation
From PyPI
pip install gpyconform
From conda-forge
conda install conda-forge::gpyconform
Citing GPyConform
If you use GPyConform for a scientific publication, you are kindly requested to cite the following paper:
Harris Papadopoulos. "GPyConform: Conformal Prediction with Gaussian Process Regression in Python". In: K. An Nguyen, Z. Luo (eds), The Importance of Being Learnable, Lecture Notes in Computer Science, vol. 16290, pp. 449–466. Springer, 2026. DOI: 10.1007/978-3-032-15120-9_20.
Bibtex entry:
@Inbook{gpyconform,
author="Papadopoulos, Harris",
editor="An Nguyen, Khuong and Luo, Zhiyuan",
title="GPyConform: Conformal Prediction with Gaussian Process Regression in Python",
bookTitle="The Importance of Being Learnable: Essays Dedicated to Alexander Gammerman",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="449--466",
isbn="978-3-032-15120-9",
doi="10.1007/978-3-032-15120-9_20",
url="https://doi.org/10.1007/978-3-032-15120-9_20"
}
For the Gaussian Process Regression Conformal Prediction approach and nonconformity measure, please also cite:
Harris Papadopoulos. "Guaranteed Coverage Prediction Intervals with Gaussian Process Regression", IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 46, no. 12, pp. 9072-9083, Dec. 2024. DOI: 10.1109/TPAMI.2024.3418214. (arXiv version)
Bibtex entry:
@ARTICLE{gprcp,
author={Papadopoulos, Harris},
journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
title={Guaranteed Coverage Prediction Intervals with Gaussian Process Regression},
year={2024},
volume={46},
number={12},
pages={9072-9083},
doi={10.1109/TPAMI.2024.3418214}
}
References
[1] Harris Papadopoulos. "Guaranteed Coverage Prediction Intervals with Gaussian Process Regression", IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 46, no. 12, pp. 9072-9083, Dec. 2024. DOI: 10.1109/TPAMI.2024.3418214. (arXiv version)
[2] Vladimir Vovk, Alexander Gammerman, and Glenn Shafer. Algorithmic Learning in a Random World, 2nd Ed. Springer, 2023. DOI: 10.1007/978-3-031-06649-8.
[3] Harris Papadopoulos. "GPyConform: Conformal Prediction with Gaussian Process Regression in Python". In: K. An Nguyen, Z. Luo (eds), The Importance of Being Learnable, Lecture Notes in Computer Science, vol. 16290, pp. 449–466. Springer, 2026. DOI: 10.1007/978-3-032-15120-9_20.
Author: Harris Papadopoulos (h.papadopoulos@frederick.ac.cy) / Copyright 2024-2026 Harris Papadopoulos / License: BSD 3 clause
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gpyconform-0.2.0.post1.tar.gz.
File metadata
- Download URL: gpyconform-0.2.0.post1.tar.gz
- Upload date:
- Size: 24.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dfd97d2d05aa34fbf3ef7df05dfdb003b3148e8b7dfdef8774de383c961ba366
|
|
| MD5 |
5b5976c91dff20a70213fe20f021fed9
|
|
| BLAKE2b-256 |
b0bd8e3d339df93b7256413f4cd306a1f4d80369e9fcec5f1e0b565f5628711a
|
File details
Details for the file gpyconform-0.2.0.post1-py3-none-any.whl.
File metadata
- Download URL: gpyconform-0.2.0.post1-py3-none-any.whl
- Upload date:
- Size: 24.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb16fe749a6002f511f5ab0a2a85c4a61d2cc02d6f7bb95e364851ac3ca2345f
|
|
| MD5 |
71876dad2b3e9c4d338e6e865c6b76ee
|
|
| BLAKE2b-256 |
32fef1a172435aff9593d1c946de77bea2c45855fb68b8a59bbe7211dadbf67f
|