Distributed Gaussian Processes
Marc Deisenroth
Department of ComputingImperial College London
http://wp.doc.ic.ac.uk/sml/marc-deisenroth
Gaussian Process Summer School, University of Sheffield15th September 2015
Table of Contents
Gaussian Processes
Sparse Gaussian Processes
Distributed Gaussian Processes
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 2
Problem Setting
−5 −4 −3 −2 −1 0 1 2 3 4 5 6 7 8 9 10
−2
0
2
x
f(x)
Objective
For a set of N observations yi “ f pxiq ` ε, ε „ N`
0, σ2ε
˘
, find adistribution over functions pp f |X, yq that explains the data
GP is a good solution to this probabilistic regression problem
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 3
GP Training via Marginal Likelihood Maximization
GP TrainingMaximize the evidence/marginal likelihood ppy|X, θqwith respect tothe hyper-parameters θ: θ˚ P arg maxθ log ppy|X, θq
log ppy|X, θq “ ´12 yJK´1y ´ 1
2 log |K| ` const
§ Automatic trade-off between data fit and model complexity
§ Gradient-based optimization possible:
B log ppy|X, θq
Bθ“ 1
2 yJK´1 BKBθ
K´1y´ 12 tr
`
K´1 BKBθ
˘
§ Computational complexity: OpN3q for |K| and K´1
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 4
GP Training via Marginal Likelihood Maximization
GP TrainingMaximize the evidence/marginal likelihood ppy|X, θqwith respect tothe hyper-parameters θ: θ˚ P arg maxθ log ppy|X, θq
log ppy|X, θq “ ´12 yJK´1y ´ 1
2 log |K| ` const
§ Automatic trade-off between data fit and model complexity
§ Gradient-based optimization possible:
B log ppy|X, θq
Bθ“ 1
2 yJK´1 BKBθ
K´1y´ 12 tr
`
K´1 BKBθ
˘
§ Computational complexity: OpN3q for |K| and K´1
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 4
GP Training via Marginal Likelihood Maximization
GP TrainingMaximize the evidence/marginal likelihood ppy|X, θqwith respect tothe hyper-parameters θ: θ˚ P arg maxθ log ppy|X, θq
log ppy|X, θq “ ´12 yJK´1y ´ 1
2 log |K| ` const
§ Automatic trade-off between data fit and model complexity
§ Gradient-based optimization possible:
B log ppy|X, θq
Bθ“ 1
2 yJK´1 BKBθ
K´1y´ 12 tr
`
K´1 BKBθ
˘
§ Computational complexity: OpN3q for |K| and K´1
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 4
GP Predictions
At a test point x˚ the predictive (posterior) distribution is Gaussian:
pp f px˚q|x˚, X, y, θq “ N`
f˚ |m˚, σ2˚
˘
m˚ “ kpX, x˚qJK´1y
σ2˚ “ kpx˚, x˚q ´ kpX, x˚qJK´1kpX, x˚q
When you cache K´1 and K´1y after training, then
§ The mean prediction can be computed in OpNq§ The variance prediction can be computed in OpN2q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 5
GP Predictions
At a test point x˚ the predictive (posterior) distribution is Gaussian:
pp f px˚q|x˚, X, y, θq “ N`
f˚ |m˚, σ2˚
˘
m˚ “ kpX, x˚qJK´1y
σ2˚ “ kpx˚, x˚q ´ kpX, x˚qJK´1kpX, x˚q
When you cache K´1 and K´1y after training, then
§ The mean prediction can be computed in OpNq§ The variance prediction can be computed in OpN2q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 5
Application Areas
§ Bayesian Optimization (Experimental Design)Model unknown utility functions with GPs
§ Reinforcement Learning and RoboticsModel value functions and/or dynamics with GPs
§ Data visualizationNonlinear dimensionality reduction (GP-LVM)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 6
Limitations of Gaussian Processes
Computational and memory complexity
§ Training scales in OpN3q
§ Prediction (variances) scales in OpN2q
§ Memory requirement: OpND` N2q
Practical limit N « 10, 000
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 7
Table of Contents
Gaussian Processes
Sparse Gaussian Processes
Distributed Gaussian Processes
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 8
GP Factor Graph
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values Training function values fi
§ Probabilistic graphical model (factor graph) of a GP§ All function values are jointly Gaussian distributed (e.g., training
and test function values)
§ GP prior
pp f , f˚q “ N˜«
00
ff
,
«
K f f K f˚
K˚ f K˚˚
ff¸
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 9
GP Factor Graph
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values Training function values fi
§ Probabilistic graphical model (factor graph) of a GP§ All function values are jointly Gaussian distributed (e.g., training
and test function values)§ GP prior
pp f , f˚q “ N˜«
00
ff
,
«
K f f K f˚
K˚ f K˚˚
ff¸
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 9
Inducing Variables
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values Training function values fi
Hypothetical function values uj
§ Introduce inducing function values fu
“Hypothetical” function values
§ All function values are still jointly Gaussian distributed (e.g.,training, test and inducing function values)
§ Approach: “Compress” real function values into inducingfunction values
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 10
Inducing Variables
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values Training function values fi
Hypothetical function values uj
§ Introduce inducing function values fu
“Hypothetical” function values§ All function values are still jointly Gaussian distributed (e.g.,
training, test and inducing function values)§ Approach: “Compress” real function values into inducing
function valuesDistributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 10
Central Approximation Scheme
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values
§ Approximation: Training and test set are conditionallyindependent given the inducing function values: f KK f˚| fu
§ Then, the effective GP prior is
qp f , f˚q “ż
pp f | fuqpp f˚| fuqpp fuqd fu “ N
¨
˝
«
00
ff
,
»
–
K f f Q f˚
Q˚ f K˚˚
fi
fl
˛
‚ ,
Q˚ f :“ K˚ fu K´1fu fu
K fu f Nystrom approximation
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 11
Central Approximation Scheme
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values
§ Approximation: Training and test set are conditionallyindependent given the inducing function values: f KK f˚| fu
§ Then, the effective GP prior is
qp f , f˚q “ż
pp f | fuqpp f˚| fuqpp fuqd fu “ N
¨
˝
«
00
ff
,
»
–
K f f Q f˚
Q˚ f K˚˚
fi
fl
˛
‚ ,
Q˚ f :“ K˚ fu K´1fu fu
K fu f Nystrom approximation
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 11
FI(T)C Sparse Approximation
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values
§ Assume that training (and test sets) arefully independent given the inducingvariables (Snelson & Ghahramani, 2006)
§ Effective GP prior with this approximation
qp f , f˚q “ N
¨
˝
«
00
ff
,
»
–
Q f f ´ diagpQ f f ´K f f q Q f˚
Q˚ f K˚˚
fi
fl
˛
‚
§ Q˚˚ ´ diagpQ˚˚ ´K˚˚q can be used instead of K˚˚ FIC
§ Training: OpNM2q, Prediction: OpM2q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 12
FI(T)C Sparse Approximation
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values
§ Assume that training (and test sets) arefully independent given the inducingvariables (Snelson & Ghahramani, 2006)
§ Effective GP prior with this approximation
qp f , f˚q “ N
¨
˝
«
00
ff
,
»
–
Q f f ´ diagpQ f f ´K f f q Q f˚
Q˚ f K˚˚
fi
fl
˛
‚
§ Q˚˚ ´ diagpQ˚˚ ´K˚˚q can be used instead of K˚˚ FIC
§ Training: OpNM2q, Prediction: OpM2q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 12
FI(T)C Sparse Approximation
f(x1) f(xN ) f∗1 f∗
L
Training data Test data
f(u1) f(uM )
Inducing function values
§ Assume that training (and test sets) arefully independent given the inducingvariables (Snelson & Ghahramani, 2006)
§ Effective GP prior with this approximation
qp f , f˚q “ N
¨
˝
«
00
ff
,
»
–
Q f f ´ diagpQ f f ´K f f q Q f˚
Q˚ f K˚˚
fi
fl
˛
‚
§ Q˚˚ ´ diagpQ˚˚ ´K˚˚q can be used instead of K˚˚ FIC
§ Training: OpNM2q, Prediction: OpM2q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 12
Inducing Inputs
§ FI(T)C sparse approximation exploits inducing function valuesf puiq, where ui are the corresponding inputs
§ These inputs are unknown a priori Find “optimal” ones
§ Find them by maximizing the FI(T)C marginal likelihood withrespect to the inducing inputs (and the standardhyper-parameters):
u˚1:M P arg maxu1:M
qFITCpy|X, u1:M, θq
§ Intuitively: The marginal likelihood is not only parameterized bythe hyper-parameters θ, but also by the inducing inputs u1:M.
§ End up with a high-dimensional non-convex optimizationproblem with MD additional parameters
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 13
Inducing Inputs
§ FI(T)C sparse approximation exploits inducing function valuesf puiq, where ui are the corresponding inputs
§ These inputs are unknown a priori Find “optimal” ones
§ Find them by maximizing the FI(T)C marginal likelihood withrespect to the inducing inputs (and the standardhyper-parameters):
u˚1:M P arg maxu1:M
qFITCpy|X, u1:M, θq
§ Intuitively: The marginal likelihood is not only parameterized bythe hyper-parameters θ, but also by the inducing inputs u1:M.
§ End up with a high-dimensional non-convex optimizationproblem with MD additional parameters
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 13
Inducing Inputs
§ FI(T)C sparse approximation exploits inducing function valuesf puiq, where ui are the corresponding inputs
§ These inputs are unknown a priori Find “optimal” ones
§ Find them by maximizing the FI(T)C marginal likelihood withrespect to the inducing inputs (and the standardhyper-parameters):
u˚1:M P arg maxu1:M
qFITCpy|X, u1:M, θq
§ Intuitively: The marginal likelihood is not only parameterized bythe hyper-parameters θ, but also by the inducing inputs u1:M.
§ End up with a high-dimensional non-convex optimizationproblem with MD additional parameters
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 13
Inducing Inputs
§ FI(T)C sparse approximation exploits inducing function valuesf puiq, where ui are the corresponding inputs
§ These inputs are unknown a priori Find “optimal” ones
§ Find them by maximizing the FI(T)C marginal likelihood withrespect to the inducing inputs (and the standardhyper-parameters):
u˚1:M P arg maxu1:M
qFITCpy|X, u1:M, θq
§ Intuitively: The marginal likelihood is not only parameterized bythe hyper-parameters θ, but also by the inducing inputs u1:M.
§ End up with a high-dimensional non-convex optimizationproblem with MD additional parameters
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 13
Inducing Inputs
§ FI(T)C sparse approximation exploits inducing function valuesf puiq, where ui are the corresponding inputs
§ These inputs are unknown a priori Find “optimal” ones
§ Find them by maximizing the FI(T)C marginal likelihood withrespect to the inducing inputs (and the standardhyper-parameters):
u˚1:M P arg maxu1:M
qFITCpy|X, u1:M, θq
§ Intuitively: The marginal likelihood is not only parameterized bythe hyper-parameters θ, but also by the inducing inputs u1:M.
§ End up with a high-dimensional non-convex optimizationproblem with MD additional parameters
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 13
FITC Example
Figure from Ed Snelson
§ Pink: Original data
§ Red crosses: Initialization ofinducing inputs
§ Blue crosses: Location of inducinginputs after optimization
§ Efficient compression of the original data set
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 14
Summary Sparse Gaussian Processes
§ Sparse approximations typically approximate a GP with N datapoints by a model with M ! N data points
§ Selection of these M data points can be tricky and may involvenon-trivial computations (e.g., optimizing inducing inputs)
§ Simple (random) subset selection is fast and generally robust(Chalupka et al., 2013)
§ Computational complexity: OpM3q or OpNM2q for training
§ Practical limit M ď 104. Often: M P Op102q in the case ofinducing variables
§ If we set M “ N{100, i.e., each inducing function valuesummarizes 100 real function values, our practical limit isN P Op106q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 15
Summary Sparse Gaussian Processes
§ Sparse approximations typically approximate a GP with N datapoints by a model with M ! N data points
§ Selection of these M data points can be tricky and may involvenon-trivial computations (e.g., optimizing inducing inputs)
§ Simple (random) subset selection is fast and generally robust(Chalupka et al., 2013)
§ Computational complexity: OpM3q or OpNM2q for training
§ Practical limit M ď 104. Often: M P Op102q in the case ofinducing variables
§ If we set M “ N{100, i.e., each inducing function valuesummarizes 100 real function values, our practical limit isN P Op106q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 15
Summary Sparse Gaussian Processes
§ Sparse approximations typically approximate a GP with N datapoints by a model with M ! N data points
§ Selection of these M data points can be tricky and may involvenon-trivial computations (e.g., optimizing inducing inputs)
§ Simple (random) subset selection is fast and generally robust(Chalupka et al., 2013)
§ Computational complexity: OpM3q or OpNM2q for training
§ Practical limit M ď 104. Often: M P Op102q in the case ofinducing variables
§ If we set M “ N{100, i.e., each inducing function valuesummarizes 100 real function values, our practical limit isN P Op106q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 15
Summary Sparse Gaussian Processes
§ Sparse approximations typically approximate a GP with N datapoints by a model with M ! N data points
§ Selection of these M data points can be tricky and may involvenon-trivial computations (e.g., optimizing inducing inputs)
§ Simple (random) subset selection is fast and generally robust(Chalupka et al., 2013)
§ Computational complexity: OpM3q or OpNM2q for training
§ Practical limit M ď 104. Often: M P Op102q in the case ofinducing variables
§ If we set M “ N{100, i.e., each inducing function valuesummarizes 100 real function values, our practical limit isN P Op106q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 15
Summary Sparse Gaussian Processes
§ Sparse approximations typically approximate a GP with N datapoints by a model with M ! N data points
§ Selection of these M data points can be tricky and may involvenon-trivial computations (e.g., optimizing inducing inputs)
§ Simple (random) subset selection is fast and generally robust(Chalupka et al., 2013)
§ Computational complexity: OpM3q or OpNM2q for training
§ Practical limit M ď 104. Often: M P Op102q in the case ofinducing variables
§ If we set M “ N{100, i.e., each inducing function valuesummarizes 100 real function values, our practical limit isN P Op106q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 15
Summary Sparse Gaussian Processes
§ Sparse approximations typically approximate a GP with N datapoints by a model with M ! N data points
§ Selection of these M data points can be tricky and may involvenon-trivial computations (e.g., optimizing inducing inputs)
§ Simple (random) subset selection is fast and generally robust(Chalupka et al., 2013)
§ Computational complexity: OpM3q or OpNM2q for training
§ Practical limit M ď 104. Often: M P Op102q in the case ofinducing variables
§ If we set M “ N{100, i.e., each inducing function valuesummarizes 100 real function values, our practical limit isN P Op106q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 15
Table of Contents
Gaussian Processes
Sparse Gaussian Processes
Distributed Gaussian Processes
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 16
Distributed Gaussian Processes
Joint work with Jun Wei Ng
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 17
An Orthogonal Approximation: Distributed GPs
−1
−1 −1−1−1−1
=
Standard GP
Data set Kernelmatrix
Distributed GP
GP GP GP GP
O(N 3)
O(MP 3)
§ Randomly split the full data set into M chunks
§ Place M independent GP models (experts) on these small chunks
§ Independent computations can be distributed
§ Block-diagonal approximation of kernel matrix K
§ Combine independent computations to an overall result
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 18
An Orthogonal Approximation: Distributed GPs
−1
−1 −1−1−1−1
=
Standard GP
Data set Kernelmatrix
Distributed GP
GP GP GP GP
O(N 3)
O(MP 3)
§ Randomly split the full data set into M chunks
§ Place M independent GP models (experts) on these small chunks
§ Independent computations can be distributed
§ Block-diagonal approximation of kernel matrix K
§ Combine independent computations to an overall result
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 18
An Orthogonal Approximation: Distributed GPs
−1
−1 −1−1−1−1
=
Standard GP
Data set Kernelmatrix
Distributed GP
GP GP GP GP
O(N 3)
O(MP 3)
§ Randomly split the full data set into M chunks
§ Place M independent GP models (experts) on these small chunks
§ Independent computations can be distributed
§ Block-diagonal approximation of kernel matrix K
§ Combine independent computations to an overall result
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 18
An Orthogonal Approximation: Distributed GPs
−1
−1 −1−1−1−1
=
Standard GP
Data set Kernelmatrix
Distributed GP
GP GP GP GP
O(N 3)
O(MP 3)
§ Randomly split the full data set into M chunks
§ Place M independent GP models (experts) on these small chunks
§ Independent computations can be distributed
§ Block-diagonal approximation of kernel matrix K
§ Combine independent computations to an overall result
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 18
An Orthogonal Approximation: Distributed GPs
−1
−1 −1−1−1−1
=
Standard GP
Data set Kernelmatrix
Distributed GP
GP GP GP GP
O(N 3)
O(MP 3)
§ Randomly split the full data set into M chunks
§ Place M independent GP models (experts) on these small chunks
§ Independent computations can be distributed
§ Block-diagonal approximation of kernel matrix K
§ Combine independent computations to an overall result
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 18
An Orthogonal Approximation: Distributed GPs
−1
−1 −1−1−1−1
=
Standard GP
Data set Kernelmatrix
Distributed GP
GP GP GP GP
O(N 3)
O(MP 3)
§ Randomly split the full data set into M chunks
§ Place M independent GP models (experts) on these small chunks
§ Independent computations can be distributed
§ Block-diagonal approximation of kernel matrix K
§ Combine independent computations to an overall result
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 18
Training the Distributed GP
§ Split data set of size N into M chunks of size P
§ Independence of experts Factorization of marginal likelihood:
log ppy|X, θq «ÿM
k“1log pkpypkq|Xpkq, θq
§ Distributed optimization and training straightforward
§ Computational complexity: OpMP3q [instead of OpN3q]But distributed over many machines
§ Memory footprint: OpMP2 ` NDq [instead of OpN2 ` NDq]
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 19
Training the Distributed GP
§ Split data set of size N into M chunks of size P
§ Independence of experts Factorization of marginal likelihood:
log ppy|X, θq «ÿM
k“1log pkpypkq|Xpkq, θq
§ Distributed optimization and training straightforward
§ Computational complexity: OpMP3q [instead of OpN3q]But distributed over many machines
§ Memory footprint: OpMP2 ` NDq [instead of OpN2 ` NDq]
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 19
Training the Distributed GP
§ Split data set of size N into M chunks of size P
§ Independence of experts Factorization of marginal likelihood:
log ppy|X, θq «ÿM
k“1log pkpypkq|Xpkq, θq
§ Distributed optimization and training straightforward
§ Computational complexity: OpMP3q [instead of OpN3q]But distributed over many machines
§ Memory footprint: OpMP2 ` NDq [instead of OpN2 ` NDq]
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 19
Empirical Training Time
103 104 105 106 107 108
Training data set size
10-2
10-1
100
101
102
103
Com
puta
tion t
ime o
f N
LML
and its
gra
die
nts
(s)
101
102
103
104
105
106
107
Num
ber
of
GP e
xpert
s (D
GP)
Computation time (DGP)
Computation time (Full GP)
Computation time (FITC)
Number of GP experts (DGP)
§ NLML is proportional to training time
§ Full GP (16K training points) « sparse GP (50K training points)« distributed GP (16M training points)
Push practical limit by order(s) of magnitude
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 20
Empirical Training Time
103 104 105 106 107 108
Training data set size
10-2
10-1
100
101
102
103
Com
puta
tion t
ime o
f N
LML
and its
gra
die
nts
(s)
101
102
103
104
105
106
107
Num
ber
of
GP e
xpert
s (D
GP)
Computation time (DGP)
Computation time (Full GP)
Computation time (FITC)
Number of GP experts (DGP)
§ NLML is proportional to training time
§ Full GP (16K training points) « sparse GP (50K training points)« distributed GP (16M training points)
Push practical limit by order(s) of magnitudeDistributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 20
Practical Training Times
§ Training* with N “ 106, D “ 1 on a laptop: « 10–30 min
§ Training* with N “ 5ˆ 106, D “ 8 on a workstation: « 4 hours
*: Maximize the marginal likelihood, stop when converged**
**: Convergence often after 30–80 line searches***
***: Line search « 2–3 evaluations of marginal likelihood andits gradient (usually OpN3q)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 21
Practical Training Times
§ Training* with N “ 106, D “ 1 on a laptop: « 10–30 min
§ Training* with N “ 5ˆ 106, D “ 8 on a workstation: « 4 hours
*: Maximize the marginal likelihood, stop when converged**
**: Convergence often after 30–80 line searches***
***: Line search « 2–3 evaluations of marginal likelihood andits gradient (usually OpN3q)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 21
Practical Training Times
§ Training* with N “ 106, D “ 1 on a laptop: « 10–30 min
§ Training* with N “ 5ˆ 106, D “ 8 on a workstation: « 4 hours
*: Maximize the marginal likelihood, stop when converged**
**: Convergence often after 30–80 line searches***
***: Line search « 2–3 evaluations of marginal likelihood andits gradient (usually OpN3q)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 21
Practical Training Times
§ Training* with N “ 106, D “ 1 on a laptop: « 10–30 min
§ Training* with N “ 5ˆ 106, D “ 8 on a workstation: « 4 hours
*: Maximize the marginal likelihood, stop when converged**
**: Convergence often after 30–80 line searches***
***: Line search « 2–3 evaluations of marginal likelihood andits gradient (usually OpN3q)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 21
Predictions with the Distributed GP
µ, σ
§ Prediction of each GP expert is Gaussian N`
µi, σ2i
˘
§ How to combine them to an overall prediction N`
µ, σ2˘
?
Product-of-GP-experts
§ PoE (product of experts; Ng & Deisenroth, 2014)
§ gPoE (generalized product of experts; Cao & Fleet, 2014)
§ BCM (Bayesian Committee Machine; Tresp, 2000)
§ rBCM (robust BCM; Deisenroth & Ng, 2015)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 22
Predictions with the Distributed GP
µ, σ
§ Prediction of each GP expert is Gaussian N`
µi, σ2i
˘
§ How to combine them to an overall prediction N`
µ, σ2˘
?
Product-of-GP-experts
§ PoE (product of experts; Ng & Deisenroth, 2014)
§ gPoE (generalized product of experts; Cao & Fleet, 2014)
§ BCM (Bayesian Committee Machine; Tresp, 2000)
§ rBCM (robust BCM; Deisenroth & Ng, 2015)Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 22
Objectives
µ, σ
µ, σ
µ1, σ1 µ2, σ2
µ11, σ11 µ12, σ12 µ13, σ13 µ21, σ21 µ22, σ22 µ23, σ23
Figure: Two computational graphs
§ Scale to large data sets 3
§ Good approximation of full GP (“ground truth”)
§ Predictions independent of computational graphRuns on heterogeneous computing infrastructures (laptop,
cluster, ...)
§ Reasonable predictive variances
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 23
Objectives
µ, σ
µ, σ
µ1, σ1 µ2, σ2
µ11, σ11 µ12, σ12 µ13, σ13 µ21, σ21 µ22, σ22 µ23, σ23
Figure: Two computational graphs
§ Scale to large data sets 3
§ Good approximation of full GP (“ground truth”)
§ Predictions independent of computational graphRuns on heterogeneous computing infrastructures (laptop,
cluster, ...)
§ Reasonable predictive variances
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 23
Objectives
µ, σ
µ, σ
µ1, σ1 µ2, σ2
µ11, σ11 µ12, σ12 µ13, σ13 µ21, σ21 µ22, σ22 µ23, σ23
Figure: Two computational graphs
§ Scale to large data sets 3
§ Good approximation of full GP (“ground truth”)
§ Predictions independent of computational graphRuns on heterogeneous computing infrastructures (laptop,
cluster, ...)
§ Reasonable predictive variances
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 23
Objectives
µ, σ
µ, σ
µ1, σ1 µ2, σ2
µ11, σ11 µ12, σ12 µ13, σ13 µ21, σ21 µ22, σ22 µ23, σ23
Figure: Two computational graphs
§ Scale to large data sets 3
§ Good approximation of full GP (“ground truth”)
§ Predictions independent of computational graphRuns on heterogeneous computing infrastructures (laptop,
cluster, ...)
§ Reasonable predictive variances
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 23
Running Example
Investigate various product-of-experts modelsSame training procedure, but different mechanisms for predictions
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 24
Product of GP Experts
§ Prediction model (independent predictors):
pp f˚|x˚,Dq9Mź
k“1
pkp f˚|x˚,Dpkqq ,
pkp f˚|x˚,Dpkqq “ N`
f˚ | µkpx˚q, σ2k px˚q
˘
§ Predictive precision (inverse variance) and mean:
pσpoe˚ q´2 “
ÿ
kσ´2
k px˚q
µpoe˚ “ pσ
poe˚ q2
ÿ
kσ´2
k px˚qµkpx˚q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 25
Product of GP Experts
§ Prediction model (independent predictors):
pp f˚|x˚,Dq9Mź
k“1
pkp f˚|x˚,Dpkqq ,
pkp f˚|x˚,Dpkqq “ N`
f˚ | µkpx˚q, σ2k px˚q
˘
§ Predictive precision (inverse variance) and mean:
pσpoe˚ q´2 “
ÿ
kσ´2
k px˚q
µpoe˚ “ pσ
poe˚ q2
ÿ
kσ´2
k px˚qµkpx˚q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 25
Computational Graph
GP Experts
PoE
PoE
Prediction:
pp f˚|x˚,Dq9Mź
k“1
pkp f˚|x˚,Dpkqq
Multiplication is associative: a ˚ b ˚ c ˚ d “ pa ˚ bq ˚ pc ˚ dq
Mź
k“1
pkp f˚|Dpkqq “Lź
k“1
Lkź
i“1
pkip f˚|Dpkiqq ,ÿ
k
Lk “ M
Independent of computational graph 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 26
Computational Graph
GP Experts
PoE
PoE
Prediction:
pp f˚|x˚,Dq9Mź
k“1
pkp f˚|x˚,Dpkqq
Multiplication is associative: a ˚ b ˚ c ˚ d “ pa ˚ bq ˚ pc ˚ dq
Mź
k“1
pkp f˚|Dpkqq “Lź
k“1
Lkź
i“1
pkip f˚|Dpkiqq ,ÿ
k
Lk “ M
Independent of computational graph 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 26
Product of GP Experts
§ Unreasonable variances for M ą 1:
pσpoe˚ q´2 “
ÿ
kσ´2
k px˚q
§ The more experts the more certain the prediction, even if everyexpert itself is very uncertain 7 Cannot fall back to the prior
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 27
Product of GP Experts
§ Unreasonable variances for M ą 1:
pσpoe˚ q´2 “
ÿ
kσ´2
k px˚q
§ The more experts the more certain the prediction, even if everyexpert itself is very uncertain 7 Cannot fall back to the prior
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 27
Generalized Product of GP Experts
§ Weight the responsiblity of each expert in PoE with βk
§ Prediction model (independent predictors):
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq
pkp f˚|x˚,Dpkqq “ N`
f˚ | µkpx˚q, σ2k px˚q
˘
§ Predictive precision and mean:
pσgpoe˚ q´2 “
ÿ
kβkσ´2
k px˚q
µgpoe˚ “ pσ
gpoe˚ q2
ÿ
kβkσ´2
k px˚q µkpx˚q
§ Withř
k βk “ 1, the model can fall back to the prior 3
“Log-opinion pool” model (Heskes, 1998)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 28
Generalized Product of GP Experts
§ Weight the responsiblity of each expert in PoE with βk
§ Prediction model (independent predictors):
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq
pkp f˚|x˚,Dpkqq “ N`
f˚ | µkpx˚q, σ2k px˚q
˘
§ Predictive precision and mean:
pσgpoe˚ q´2 “
ÿ
kβkσ´2
k px˚q
µgpoe˚ “ pσ
gpoe˚ q2
ÿ
kβkσ´2
k px˚q µkpx˚q
§ Withř
k βk “ 1, the model can fall back to the prior 3
“Log-opinion pool” model (Heskes, 1998)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 28
Generalized Product of GP Experts
§ Weight the responsiblity of each expert in PoE with βk
§ Prediction model (independent predictors):
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq
pkp f˚|x˚,Dpkqq “ N`
f˚ | µkpx˚q, σ2k px˚q
˘
§ Predictive precision and mean:
pσgpoe˚ q´2 “
ÿ
kβkσ´2
k px˚q
µgpoe˚ “ pσ
gpoe˚ q2
ÿ
kβkσ´2
k px˚q µkpx˚q
§ Withř
k βk “ 1, the model can fall back to the prior 3
“Log-opinion pool” model (Heskes, 1998)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 28
Generalized Product of GP Experts
§ Weight the responsiblity of each expert in PoE with βk
§ Prediction model (independent predictors):
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq
pkp f˚|x˚,Dpkqq “ N`
f˚ | µkpx˚q, σ2k px˚q
˘
§ Predictive precision and mean:
pσgpoe˚ q´2 “
ÿ
kβkσ´2
k px˚q
µgpoe˚ “ pσ
gpoe˚ q2
ÿ
kβkσ´2
k px˚q µkpx˚q
§ Withř
k βk “ 1, the model can fall back to the prior 3
“Log-opinion pool” model (Heskes, 1998)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 28
Computational Graph
GP Experts
gPoE
PoE
PoE
Prediction:
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq “Lź
k“1
Lkź
i“1
pβki
kip f˚|Dpkiqq ,
ÿ
k,i
βki “ 1
§ Independent of computational graph ifř
k,i βki “ 1 3
§ A priori setting of βki required 7
βki “ 1{M a priori (3)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 29
Computational Graph
GP Experts
gPoE
PoE
PoE
Prediction:
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq “Lź
k“1
Lkź
i“1
pβki
kip f˚|Dpkiqq ,
ÿ
k,i
βki “ 1
§ Independent of computational graph ifř
k,i βki “ 1 3
§ A priori setting of βki required 7
βki “ 1{M a priori (3)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 29
Computational Graph
GP Experts
gPoE
PoE
PoE
Prediction:
pp f˚|x˚,Dq9Mź
k“1
pβk
k p f˚|x˚,Dpkqq “Lź
k“1
Lkź
i“1
pβki
kip f˚|Dpkiqq ,
ÿ
k,i
βki “ 1
§ Independent of computational graph ifř
k,i βki “ 1 3
§ A priori setting of βki required 7
βki “ 1{M a priori (3)
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 29
Generalized Product of GP Experts
§ Same mean as PoE§ Model no longer overconfident and falls back to prior 3
§ Very conservative variances 7Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 30
Bayesian Committee Machine
§ Apply Bayes’ theorem when combining predictions (and not onlyfor computing predictions)
§ Prediction model (Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
§ Predictive precision and mean:
pσbcm˚ q´2 “
ÿM
k“1σ´2
k px˚q ´pM´ 1qσ´2˚˚
µbcm˚ “ pσbcm
˚ q2ÿM
k“1σ´2
k px˚qµkpx˚q
§ Product of GP experts, divided by M´ 1 times the prior
§ Guaranteed to fall back to the prior outside data regime 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 31
Bayesian Committee Machine
§ Apply Bayes’ theorem when combining predictions (and not onlyfor computing predictions)
§ Prediction model (Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
§ Predictive precision and mean:
pσbcm˚ q´2 “
ÿM
k“1σ´2
k px˚q ´pM´ 1qσ´2˚˚
µbcm˚ “ pσbcm
˚ q2ÿM
k“1σ´2
k px˚qµkpx˚q
§ Product of GP experts, divided by M´ 1 times the prior
§ Guaranteed to fall back to the prior outside data regime 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 31
Bayesian Committee Machine
§ Apply Bayes’ theorem when combining predictions (and not onlyfor computing predictions)
§ Prediction model (Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
§ Predictive precision and mean:
pσbcm˚ q´2 “
ÿM
k“1σ´2
k px˚q ´pM´ 1qσ´2˚˚
µbcm˚ “ pσbcm
˚ q2ÿM
k“1σ´2
k px˚qµkpx˚q
§ Product of GP experts, divided by M´ 1 times the prior
§ Guaranteed to fall back to the prior outside data regime 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 31
Bayesian Committee Machine
§ Apply Bayes’ theorem when combining predictions (and not onlyfor computing predictions)
§ Prediction model (Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
§ Predictive precision and mean:
pσbcm˚ q´2 “
ÿM
k“1σ´2
k px˚q ´pM´ 1qσ´2˚˚
µbcm˚ “ pσbcm
˚ q2ÿM
k“1σ´2
k px˚qµkpx˚q
§ Product of GP experts, divided by M´ 1 times the prior
§ Guaranteed to fall back to the prior outside data regime 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 31
Bayesian Committee Machine
§ Apply Bayes’ theorem when combining predictions (and not onlyfor computing predictions)
§ Prediction model (Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
§ Predictive precision and mean:
pσbcm˚ q´2 “
ÿM
k“1σ´2
k px˚q ´pM´ 1qσ´2˚˚
µbcm˚ “ pσbcm
˚ q2ÿM
k“1σ´2
k px˚qµkpx˚q
§ Product of GP experts, divided by M´ 1 times the prior
§ Guaranteed to fall back to the prior outside data regime 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 31
Computational Graph
GP Experts
PoE
PoE
Prior
Prediction:
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
śMk“1 pkp f˚|Dpkqq
pM´1p f˚q“
śLk“1
śLki“1 pkip f˚|Dpkiqq
pM´1p f˚q
Independent of computational graph 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 32
Computational Graph
GP Experts
PoE
PoE
Prior
Prediction:
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
śMk“1 pkp f˚|Dpkqq
pM´1p f˚q“
śLk“1
śLki“1 pkip f˚|Dpkiqq
pM´1p f˚q
Independent of computational graph 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 32
Computational Graph
GP Experts
PoE
PoE
Prior
Prediction:
pp f˚|x˚,Dq9śM
k“1 pkp f˚|x˚,DpkqqpM´1p f˚q
śMk“1 pkp f˚|Dpkqq
pM´1p f˚q“
śLk“1
śLki“1 pkip f˚|Dpkiqq
pM´1p f˚q
Independent of computational graph 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 32
Bayesian Committee Machine
§ Variance estimates are about right 3
§ When leaving the data regime, the BCM can produce junk 7
Robustify
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 33
Robust Bayesian Committee Machine
§ Merge gPoE (weighting of experts) with the BCM (Bayes’theorem when combining predictions)
§ Prediction model (conditional independence Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pβk
k p f˚|x˚,Dpkqqpř
k βk´1p f˚q
§ Predictive precision and mean:
pσrbcm˚ q´2 “
ÿM
k“1βkσ´2
k px˚q `p1´řM
k“1 βkqσ´2˚˚ ,
µrbcm˚ “ pσrbcm
˚ q2ÿ
kβkσ´2
k px˚q µkpx˚q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 34
Robust Bayesian Committee Machine
§ Merge gPoE (weighting of experts) with the BCM (Bayes’theorem when combining predictions)
§ Prediction model (conditional independence Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pβk
k p f˚|x˚,Dpkqqpř
k βk´1p f˚q
§ Predictive precision and mean:
pσrbcm˚ q´2 “
ÿM
k“1βkσ´2
k px˚q `p1´řM
k“1 βkqσ´2˚˚ ,
µrbcm˚ “ pσrbcm
˚ q2ÿ
kβkσ´2
k px˚q µkpx˚q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 34
Robust Bayesian Committee Machine
§ Merge gPoE (weighting of experts) with the BCM (Bayes’theorem when combining predictions)
§ Prediction model (conditional independence Dpjq KK Dpkq| f˚):
pp f˚|x˚,Dq9śM
k“1 pβk
k p f˚|x˚,Dpkqqpř
k βk´1p f˚q
§ Predictive precision and mean:
pσrbcm˚ q´2 “
ÿM
k“1βkσ´2
k px˚q `p1´řM
k“1 βkqσ´2˚˚ ,
µrbcm˚ “ pσrbcm
˚ q2ÿ
kβkσ´2
k px˚q µkpx˚q
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 34
Computational Graph
GP Experts
gPoE
PoE
PoE
Prior
Prediction:
pp f˚|x˚,Dq9śM
k“1 pβk
k p f˚|x˚,Dpkqqpř
k βk´1p f˚q“
śLk“1
śLki“1 p
βki
kip f˚|Dpkiqq
př
kiβki´1p f˚q
Independent of computational graph, even with arbitrary βki 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 35
Computational Graph
GP Experts
gPoE
PoE
PoE
Prior
Prediction:
pp f˚|x˚,Dq9śM
k“1 pβk
k p f˚|x˚,Dpkqqpř
k βk´1p f˚q“
śLk“1
śLki“1 p
βki
kip f˚|Dpkiqq
př
kiβki´1p f˚q
Independent of computational graph, even with arbitrary βki 3
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 35
Robust Bayesian Committee Machine
§ Does not break down in case of weak experts Robustified 3
§ Robust version of BCM Reasonable predictions 3
§ Independent of computational graph (for all choices of βk) 3Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 36
Empirical Approximation Error
100 101 102 103
Gradient time in sec
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
RM
SE
rBCM
BCM
gPoE
PoE
SOD
GP
39 156 625 2500 10000#Points/Expert
§ Simulated robot arm data (10K training, 10K test)§ Hyper-parameters of ground-truth full GP§ RMSE as a function of the training time§ Sparse GP (SOR) performs worse than any distributed GP§ rBCM performs best with “weak” GP experts
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 37
Empirical Approximation Error (2)
100 101 102 103
Gradient time in sec
−3
−2
−1
0
1
2
NL
PD
rBCM
BCM
gPoE
PoE
SOD
GP
39 156 625 2500 10000#Points/Expert
§ NLPD as a function of the training time Mean and variance§ BCM and PoE are not robust for weak experts§ gPoE suffers from too conservative variances§ rBCM consistently outperforms other methods
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 38
Large Data Sets: Airline Data (700K)
rBCM BCM gPoE PoE Dist−VGP SVI−GP
24
26
28
30
32
34DGP, random data assignment
Sparse GP
Airline Delay, 700K
RMSE
§ (r)BCM and (g)PoE with4096 GP experts
§ Gradient time: 13 seconds(12 cores)
§ Inducing inputs:Dist-VGP (Gal et al., 2014),SVI-GP (Hensman et al.,2013)
§ rBCM performs best
§ (g)PoE and BCM perform not worse than sparse GPs
§ KD-tree data assignment clearly helps (r)BCM
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 39
Large Data Sets: Airline Data (700K)
rBCM rBCM−KD BCM BCM−KD gPoE gPoE−KD PoE PoE−KDDist−VGP SVI−GP
24
26
28
30
32
34DGP, KD- tree data assignment
DGP, random data assignment
Sparse GP
Airline Delay, 700K
RMSE
§ (r)BCM and (g)PoE with4096 GP experts
§ Gradient time: 13 seconds(12 cores)
§ Inducing inputs:Dist-VGP (Gal et al., 2014),SVI-GP (Hensman et al.,2013)
§ rBCM performs best
§ (g)PoE and BCM perform not worse than sparse GPs
§ KD-tree data assignment clearly helps (r)BCM
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 39
Summary: Distributed Gaussian Processes
µ, σ
µ1, σ1 µ2, σ2
µ11, σ11 µ12, σ12 µ13, σ13 µ21, σ21 µ22, σ22 µ23, σ23
§ Scale Gaussian processes to large data (beyond 106)§ Model conceptually straightforward and easy to train§ Key: Distributed computation§ Currently tested with N P Op107q
§ Scales to arbitrarily large data sets (with enough computingpower)
Thank you for your attentionDistributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 40
References
[1] Y. Cao and D. J. Fleet. Generalized Product of Experts for Automatic and Principled Fusion of Gaussian ProcessPredictions. http://arxiv.org/abs/1410.7827, October 2014.
[2] K. Chalupka, C. K. I. Williams, and I. Murray. A Framework for Evaluating Approximate Methods for Gaussian ProcessRegression. Journal of Machine Learning Research, 14:333–350, February 2013.
[3] M. P. Deisenroth and J. W. Ng. Distributed Gaussian Processes. In Proceedings of the International Conference on MachineLearning, 2015.
[4] M. P. Deisenroth, C. E. Rasmussen, and D. Fox. Learning to Control a Low-Cost Manipulator using Data-EfficientReinforcement Learning. In Proceedings of Robotics: Science and Systems, Los Angeles, CA, USA, June 2011.
[5] Y. Gal, M. van der Wilk, and C. E. Rasmussen. Distributed Variational Inference in Sparse Gaussian Process Regressionand Latent Variable Models. In Advances in Neural Information Processing Systems. 2014.
[6] J. Hensman, N. Fusi, and N. D. Lawrence. Gaussian Processes for Big Data. In A. Nicholson and P. Smyth, editors,Proceedings of the Conference on Uncertainty in Artificial Intelligence. AUAI Press, 2013.
[7] T. Heskes. Selecting Weighting Factors in Logarithmic Opinion Pools. In Advances in Neural Information Processing Systems,pages 266–272. Morgan Kaufman, 1998.
[8] N. Lawrence. Probabilistic Non-linear Principal Component Analysis with Gaussian Process Latent Variable Models.Journal of Machine Learning Research, 6:1783–1816, November 2005.
[9] J. Ng and M. P. Deisenroth. Hierarchical Mixture-of-Experts Model for Large-Scale Gaussian Process Regression.http://arxiv.org/abs/1412.3078, December 2014.
[10] J. Quinonero-Candela and C. E. Rasmussen. A Unifying View of Sparse Approximate Gaussian Process Regression.Journal of Machine Learning Research, 6(2):1939–1960, 2005.
[11] E. Snelson and Z. Ghahramani. Sparse Gaussian Processes using Pseudo-inputs. In Y. Weiss, B. Scholkopf, and J. C. Platt,editors, Advances in Neural Information Processing Systems 18, pages 1257–1264. The MIT Press, Cambridge, MA, USA, 2006.
[12] M. K. Titsias. Variational Learning of Inducing Variables in Sparse Gaussian Processes. In Proceedings of the InternationalConference on Artificial Intelligence and Statistics, 2009.
[13] V. Tresp. A Bayesian Committee Machine. Neural Computation, 12(11):2719–2741, 2000.
Distributed Gaussian Processes Marc Deisenroth @GPSS, 15th September 2015 41