-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexperiment_fix_inducing_inputs.py
28 lines (21 loc) · 1.22 KB
/
experiment_fix_inducing_inputs.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from collections import namedtuple
import GPy
from gaussian_processes_variational.num_inducing_dimension_experiments import run_single_experiment
from gaussian_processes_variational.parameter_containers import FixedParameterSettings
from gaussian_processes_variational.simulation import RBFSimulator, LinearSimulator
def main():
"""Run experiment for different datasets where a grid of number of inducings points and dimensions is explored."""
Experiment = namedtuple('Experiment', ['tag', 'simulator', 'kernel', 'dimensions', 'num_inducings'])
n = 801
inducing_points = [1, 2, 3, 4, 5, 10, 20, 50, 100, 200, 300, 400, n]
dimensions = [1, 2, 3, 4, 5, 10, 15, 20]
experiments = [
# Experiment('rbf_fix_covariance', RBFSimulator, GPy.kern.RBF, dimensions, inducing_points),
Experiment('linear_fix_covariance', LinearSimulator, GPy.kern.Linear, dimensions, inducing_points),
]
opt_settings = FixedParameterSettings(fix_inducing_inputs=True)
for experiment in experiments:
run_single_experiment(experiment.tag, experiment.kernel, experiment.simulator, n, experiment.dimensions,
experiment.num_inducings, opt_settings)
if __name__ == "__main__":
main()