Papers › Robust Gaussian Processes via Relevance Pursuit

Robust Gaussian Processes via Relevance Pursuit

31 Oct 2024arXiv:2410.24222archive 2025-07-28

Sebastian Ament, Elizabeth Santorella, David Eriksson, Ben Letham, Maximilian Balandat, Eytan Bakshy

Gaussian processes (GPs) are non-parametric probabilistic regression models that are popular due to their flexibility, data efficiency, and well-calibrated uncertainty estimates. However, standard GP models assume homoskedastic Gaussian noise, while many real-world applications are subject to non-Gaussian corruptions. Variants of GPs that are more robust to alternative noise models have been proposed, and entail significant trade-offs between accuracy and robustness, and between computational requirements and theoretical guarantees. In this work, we propose and study a GP model that achieves robustness against sparse outliers by inferring data-point-specific noise levels with a sequential selection procedure maximizing the log marginal likelihood that we refer to as relevance pursuit. We show, surprisingly, that the model can be parameterized such that the associated log marginal likelihood is strongly concave in the data-point-specific noise variances, a property rarely found in either robust regression objectives or GP marginal likelihoods. This in turn implies the weak submodularity of the corresponding subset selection problem, and thereby proves approximation guarantees for the proposed algorithm. We compare the model's performance relative to other approaches on diverse regression and Bayesian optimization tasks, including the challenging but common setting of sparse corruptions of the labels within or close to the function range.

PaperPDFCode Syntology ran

In Syntology Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.

For agents, Syntology's MCP tool lists every function and class Syntology harvested from this paper and whether it ran (how to connect): get_harvested_code_for_paper(arxiv_id="2410.24222")

Code

Syntology Ran 17 of 26 code samples harvested from 1 repository linked to this paper; 9 have no recorded run. Of those that ran: 2 ran · honoured contract; 1 ran · violated contract; 6 ran · our draft was wrong; 1 ran · fixture could not drive it; 7 ran with no contract checked.

By repository: found in paper text by Syntology: 26 samples from 1 repository, 17 ran. The run record, sample by sample. “Ran” means executed on a synthesized input, not that the code is correct or reproduces the paper.

andrade-stats/TrimmedMarginalLikelihoodGP found in paper text by Syntology report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

26 samples harvested; 17 ran; 2 honoured the contract we drafted; 9 have no recorded run. Read from Syntology's graph 2026-09-24; that is when this build read the record, not when the samples ran.

2ran · honoured contract
1ran · violated contract
6ran · our draft was wrong
1ran · fixture could not drive it
7ran
9unverified

Licence: 26 of the 26 samples are pointer only, meaning Syntology does not serve that copy's text. This page shows no code text for any sample; each one links to its file in the repository.

Harvested from andrade-stats/TrimmedMarginalLikelihoodGP. “Ran” means the sample executed on a synthesized input. It does not mean the output is correct, and nothing here reproduces the paper's results. “Honoured” and “violated” refer to a contract Syntology drafted from the code itself; “our draft was wrong” and “fixture could not drive it” are failures of Syntology's instrument, not of the code.

Each sample ends with its code_sha256, Syntology's identity for that exact code. An agent fetches the stored sample with Syntology's MCP tool get_code(code_sha256="…") (how to connect); click an identity to copy that call.

Repository labels, per sample. official repository: The archive marks this repository official for the paper. named in the paper: The archive records that the paper mentions this repository; it is not marked official. community (archive-listed): In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper. found in paper text by Syntology: Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted. community: Not in the archive's code links for this paper; a community repository Syntology harvested. Samples from a repository marked official are listed first. Licence labels name the repository's licence as recorded at harvest. “Pointer only” means Syntology does not serve that copy's text, for one of four reasons: no licence file was found; the licence was not identified; the licence is recorded as permissive but that copy's record is not marked cleared; or the licence is outside the permissive list Syntology serves text under (MIT, Apache-2.0, BSD and similar). Some licences outside that list permit redistribution, such as WTFPL, and GPL-3.0 under its conditions; they are simply not on the list. Hover a licence label for the reason. File links open the file on GitHub at the default branch, which may have changed since the harvest.

COVARIANCE_FUNCTION andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · our draft was wrong licence not identified · pointer only · d2cd91460bd9f7b1 · report
evalObjectiveFunction andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran fingerprinted licence not identified · pointer only · 4c3525cb9ae83944 · report
getInlierAndOutliersBasedOnMarginalLikelihood_hardthresholding andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran licence not identified · pointer only · 448aa062840163cd · report
getLogPValues_fromSigmaEstimate_and_absValues andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran fingerprinted licence not identified · pointer only · 291dd8e1b906e90e · report
getMarginalLogLikelihood_fromLogDetL_and_invK andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · violated contract fingerprinted licence not identified · pointer only · d991eef4d3475a0a · report
getMeanPredictions andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · honoured contract licence not identified · pointer only · 0b47181a947ba565 · report
getNumpyDet andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · our draft was wrong fingerprinted licence not identified · pointer only · 99dd0e885dedd225 · report
getPredictions andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · our draft was wrong licence not identified · pointer only · a5d23e9cec06fbaf · report
getTorchTensor andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran licence not identified · pointer only · 86df8413ca1c1181 · report
mean_standardized_log_loss andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran licence not identified · pointer only · 946645cc1e652efe · report
median_absolute_error andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · our draft was wrong fingerprinted licence not identified · pointer only · f7b2a5ca26e674d4 · report
negative_log_predictive_density andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran licence not identified · pointer only · da369a0ea11acfa1 · report
project_b andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · our draft was wrong fingerprinted licence not identified · pointer only · ff86313999ae79a3 · report
root_mean_squared_error andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · fixture could not drive it fingerprinted licence not identified · pointer only · a13c53202405f060 · report
setDataType andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · our draft was wrong fingerprinted licence not identified · pointer only · 87eaafe54e24c911 · report
setSigma andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran · honoured contract licence not identified · pointer only · 799d79416d288b43 · report
set_new_data_and_get_loss andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology ran licence not identified · pointer only · 4459709d201b16c7 · report
BasicGP andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · a255e6bf79d3626b · report
ExactGPModel andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · 8237f76c5e519459 · report
assertOnDevice andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · 08a889a7dc6ba985 · report
calculateAllMLL_oneRemoved andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · b2969362affc8d48 · report
getInlierAndOutliersBasedOnMarginalLikelihood_greedy andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · 0ed2f438f56e0ab0 · report
greedyMaximizeMLL_RemoveBatch andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · 3b9b9f2c25f04e82 · report
greedyMaximizeMLL_RemoveOneByOne andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · 5a264b3cf0728c53 · report
showProgressGP andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · cbe4ecbe2e4d098f · report
trainTrimmedGP andrade-stats/TrimmedMarginalLikelihoodGP/trimmedGP.py found in paper text by Syntology unverified licence not identified · pointer only · 7a03cb273dab01a2 · report

Tasks

Bayesian OptimizationGaussian Processesregression

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

GPS

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections