Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Optimal Distributed GP

Aggregation Models with Optimal Weights for Distributed Gaussian Processes

Installation

Requires Python 3.10.

python -m venv .env
source .env/bin/activate

# Install the package
pip install -e .

Reproduce Results

All commands assume you are at the repository root optimal-distgp with PYTHONPATH set:

export PYTHONPATH="$PWD"

Sparse Grid Experiment (Julia)

OptiCom vs. Smolyak comparison (Figure 1):

Requires Julia. Install dependencies first:

julia -e 'import Pkg; Pkg.add(["AbstractGPs", "Plots", "BenchmarkTools", "JLD2", "Combinatorics"])'

Then run:

cd opticom-gp
julia -e '
  include("src/combination_tech/base_designs/base_design.jl")
  include("src/combination_tech/sparsegrid_designs/sparse_grid.jl")
  include("src/models/optisparse_coeff.jl")
  include("src/models/gp.jl")
  include("experiment/simulation_sg.jl")
'

Synthetic Experiments

Training loss and parameter convergence (Figure 2 and Figure 8):

python experiments/synthetic/train_err.py

GP aggregation models comparison (Figure 3):

python experiments/synthetic/full_aggreg_compare.py -alg svgp -e 100 -b 4 -d 1 -s 6 -t -o FACT -p --no-train-all-params -N 500

Prediction error comparison (Figure 4 and Figure 5):

python experiments/synthetic/pred_err.py

UCI Extrapolation Experiments

Download the datasets first:

python experiments/uci/download.py

Extrapolation prediction (Table 2 and Figure 6):

python experiments/uci/pred_extrapolate.py

About

Codes for Aggregation models with optimal weights for distributed Gaussian processes

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages