Gaussian processes - Lectures Handouts, Study notes of Machine Learning

Artificial Intelligence. Lectures Handout of Machine Learning. Gaussian processes. Prof. Andrew Ng - Stanford University

Typology: Study notes

2010/2011

Uploaded on 10/30/2011

ilyastrab
ilyastrab 🇺🇸

4.4

(52)

379 documents

1 / 13

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Gaussian processes
Chuong B. Do
December 1, 2007
Many of the classical machine learning algorithms that we talked about during the first
half of this course fit the following pattern: given a training set of i.i.d. examples sampled
from some unknown distribution,
1. solve a convex optimization problem in order to identify the single “best fit” model for
the data, and
2. use this estimated model to make “best guess” predictions for future test input points.
In these notes, we will talk about a different flavor of learning algorithms, known as
Bayesian methods. Unlike classical learning algorithm, Bayesian algorithms do not at-
tempt to identify “best-fit” models of the data (or similarly, make “best guess” predictions
for new test inputs). Instead, they compute a posterior distribution over models (or similarly,
compute posterior predictive distributions for new test inputs). These distributions provide
a useful way to quantify our uncertainty in model estimates, and to exploit our knowledge
of this uncertainty in order to make more robust predictions on new test points.
We focus on regression problems, where the goal is to learn a mapping from some input
space X=Rnof n-dimensional vectors to an output space Y=Rof real-valued targets.
In particular, we will talk about a kernel-based fully Bayesian regression algorithm, known
as Gaussian process regression. The material covered in these notes draws heavily on many
different topics that we discussed previously in class (namely, the probabilistic interpretation
of linear regression1, Bayesian methods2, kernels3, and properties of multivariate Gaussians4).
The organization of these notes is as follows. In Section 1, we provide a brief review
of multivariate Gaussian distributions and their properties. In Section 2, we briefly review
Bayesian methods in the context of probabilistic linear regression. The central ideas under-
lying Gaussian processes are presented in Section 3, and we derive the full Gaussian process
regression model in Section 4.
1See course lecture notes on “Supervised Learning, Discriminative Algorithms.”
2See course lecture notes on “Regularization and Model Selection.”
3See course lecture notes on “Support Vector Machines.”
4See course lecture notes on “Factor Analysis.”
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd

Partial preview of the text

Download Gaussian processes - Lectures Handouts and more Study notes Machine Learning in PDF only on Docsity!

Gaussian processes

Chuong B. Do

December 1, 2007

Many of the classical machine learning algorithms that we talked about during the first half of this course fit the following pattern: given a training set of i.i.d. examples sampled from some unknown distribution,

  1. solve a convex optimization problem in order to identify the single “best fit” model for the data, and
  2. use this estimated model to make “best guess” predictions for future test input points.

In these notes, we will talk about a different flavor of learning algorithms, known as Bayesian methods. Unlike classical learning algorithm, Bayesian algorithms do not at- tempt to identify “best-fit” models of the data (or similarly, make “best guess” predictions for new test inputs). Instead, they compute a posterior distribution over models (or similarly, compute posterior predictive distributions for new test inputs). These distributions provide a useful way to quantify our uncertainty in model estimates, and to exploit our knowledge of this uncertainty in order to make more robust predictions on new test points. We focus on regression problems, where the goal is to learn a mapping from some input space X = Rn^ of n-dimensional vectors to an output space Y = R of real-valued targets. In particular, we will talk about a kernel-based fully Bayesian regression algorithm, known as Gaussian process regression. The material covered in these notes draws heavily on many different topics that we discussed previously in class (namely, the probabilistic interpretation of linear regression^1 , Bayesian methods^2 , kernels^3 , and properties of multivariate Gaussians^4 ). The organization of these notes is as follows. In Section 1, we provide a brief review of multivariate Gaussian distributions and their properties. In Section 2, we briefly review Bayesian methods in the context of probabilistic linear regression. The central ideas under- lying Gaussian processes are presented in Section 3, and we derive the full Gaussian process regression model in Section 4.

(^1) See course lecture notes on “Supervised Learning, Discriminative Algorithms.” (^2) See course lecture notes on “Regularization and Model Selection.” (^3) See course lecture notes on “Support Vector Machines.” (^4) See course lecture notes on “Factor Analysis.”

1 Multivariate Gaussians

A vector-valued random variable x ∈ Rn^ is said to have a multivariate normal (or Gaussian) distribution with mean μ ∈ Rn^ and covariance matrix Σ ∈ Sn ++ if

p(x; μ, Σ) =

(2π)n/^2 |Σ|

exp

(x − μ)T^ Σ−^1 (x − μ)

We write this as x ∼ N (μ, Σ). Here, recall from the section notes on linear algebra that Sn ++ refers to the space of symmetric positive definite n × n matrices.^5 Generally speaking, Gaussian random variables are extremely useful in machine learning and statistics for two main reasons. First, they are extremely common when modeling “noise” in statistical algorithms. Quite often, noise can be considered to be the accumulation of a large number of small independent random perturbations affecting the measurement process; by the Central Limit Theorem, summations of independent random variables will tend to “look Gaussian.” Second, Gaussian random variables are convenient for many analytical manipulations, because many of the integrals involving Gaussian distributions that arise in practice have simple closed form solutions. In the remainder of this section, we will review a number of useful properties of multivariate Gaussians. Consider a random vector x ∈ Rn^ with x ∼ N (μ, Σ). Suppose also that the variables in x have been partitioned into two sets xA = [x 1 · · · xr]T^ ∈ Rr^ and xB = [xr+1 · · · xn]T^ ∈ Rn−r (and similarly for μ and Σ), such that

x =

[

xA xB

]

μ =

[

μA μB

]

[

ΣAA ΣAB

ΣBA ΣBB

]

Here, ΣAB = ΣTBA since Σ = E[(x − μ)(x − μ)T^ ] = ΣT^. The following properties hold:

  1. Normalization. The density function normalizes, i.e., ∫

x

p(x; μ, Σ)dx = 1.

This property, though seemingly trivial at first glance, turns out to be immensely useful for evaluating all sorts of integrals, even ones which appear to have no relation to probability distributions at all (see Appendix A.1)!

  1. Marginalization. The marginal densities,

p(xA) =

xB

p(xA, xB ; μ, Σ)dxB

p(xB ) =

xA

p(xA, xB ; μ, Σ)dxA

(^5) There are actually cases in which we would want to deal with multivariate Gaussian distributions where Σ is positive semidefinite but not positive definite (i.e., Σ is not full rank). In such cases, Σ−^1 does not exist, so the definition of the Gaussian density given in (1) does not apply. For instance, see the course lecture notes on “Factor Analysis.”

−5 −4 −3 −2 −1 0 1 2 3 4 5

0

1

2

3

Bayesian linear regression, 95% confidence region

Figure 1: Bayesian linear regression for a one-dimensional linear regression problem, y(i)^ = θx(i)^ + ǫ(i), with ǫ(i)^ ∼ N (0, 1) i.i.d. noise. The green region denotes the 95% confidence region for predictions of the model. Note that the (vertical) width of the green region is largest at the ends but narrowest in the middle. This region reflects the uncertain in the estimates for the parameter θ. In contrast, a classical linear regression model would display a confidence region of constant width, reflecting only the N (0, σ^2 ) noise in the outputs.

In Bayesian linear regression, we assume that a prior distribution over parameters is also given; a typical choice, for instance, is θ ∼ N (0, τ 2 I). Using Bayes’s rule, we obtain the parameter posterior,

p(θ | S) =

p(θ)p(S | θ) ∫ θ′^ p(θ

′)p(S | θ′)dθ′ =^

p(θ)

∏m i=1 p(y

(i) (^) | x(i), θ) ∫ θ′^ p(θ

′) ∏m i=1 p(y (i) (^) | x(i), θ′)dθ′.^ (2)

Assuming the same noise model on testing points as on our training points, the “output” of Bayesian linear regression on a new test point x∗ is not just a single guess “y∗”, but rather an entire probability distribution over possible outputs, known as the posterior predictive distribution:

p(y∗ | x∗, S) =

θ

p(y∗ | x∗, θ)p(θ | S)dθ. (3)

For many types of models, the integrals in (2) and (3) are difficult to compute, and hence, we often resort to approximations, such as MAP estimation (see course lecture notes on “Regularization and Model Selection”). In the case of Bayesian linear regression, however, the integrals actually are tractable! In particular, for Bayesian linear regression, one can show (after much work!) that

θ | S ∼ N

σ^2

A−^1 XT^ ~y, A−^1

y∗ | x∗, S ∼ N

σ^2

xT ∗ A−^1 XT^ ~y, xT ∗ A−^1 x∗ + σ^2

where A = (^) σ^12 XT^ X + (^) τ^1 2 I. The derivation of these formulas is somewhat involved.^6 Nonethe- less, from these equations, we get at least a flavor of what Bayesian methods are all about: the posterior distribution over the test output y∗ for a test input x∗ is a Gaussian distribution— this distribution reflects the uncertainty in our predictions y∗ = θT^ x∗ + ε∗ arising from both the randomness in ε∗ and the uncertainty in our choice of parameters θ. In contrast, classical probabilistic linear regression models estimate parameters θ directly from the training data but provide no estimate of how reliable these learned parameters may be (see Figure 1).

3 Gaussian processes

As described in Section 1, multivariate Gaussian distributions are useful for modeling finite collections of real-valued variables because of their nice analytical properties. Gaussian processes are the extension of multivariate Gaussians to infinite-sized collections of real- valued variables. In particular, this extension will allow us to think of Gaussian processes as distributions not just over random vectors but in fact distributions over random functions.^7

3.1 Probability distributions over functions with finite domains

To understand how one might paramterize probability distributions over functions, consider the following simple example. Let X = {x 1 ,... , xm} be any finite set of elements. Now, consider the set H of all possible functions mapping from X to R. For instance, one example of a function h 0 (·) ∈ H is given by

h 0 (x 1 ) = 5, h 0 (x 2 ) = 2. 3 , h 0 (x 2 ) = − 7 ,... , h 0 (xm− 1 ) = −π, h 0 (xm) = 8.

Since the domain of any h(·) ∈ H has only m elements, we can always represent h(·) com-

pactly as an m-dimensional vector, ~h =

[

h(x 1 ) h(x 2 ) · · · h(xm)

]T

. In order to specify a probability distribution over functions h(·) ∈ H, we must associate some “probability density” with each function in H. One natural way to do this is to exploit the one-to-one correspondence between functions h(·) ∈ H and their vector representations, ~h. In partic-

ular, if we specify that ~h ∼ N (~μ, σ^2 I), then this in turn implies a probability distribution over functions h(·), whose probability density function is given by

p(h) =

∏^ m

i=

2 πσ

exp

2 σ^2

(h(xi) − μi)^2

(^6) For the complete derivation, see, for instance, [1]. Alternatively, read the Appendices, which gives a number of arguments based on the “completion-of-squares” trick, and derive this formula yourself! (^7) Let H be a class of functions mapping from X → Y. A random function h(·) from H is a function which

is randomly drawn from H, according to some probability distribution over H. One potential source of confusion is that you may be tempted to think of random functions as functions whose outputs are in some way stochastic; this is not the case. Instead, a random function h(·), once selected from H probabilistically, implies a deterministic mapping from inputs in X to outputs in Y.

−2.5 0 1 2 3 4 5 6 7 8 9 10

−1.

−0.

0

1

2

2.5^ Samples from GP with k(x,z) = exp(−||x−z||^2 / (2*tau^2 )), tau = 0.

−1.5 0 1 2 3 4 5 6 7 8 9 10

−0.

0

1

2 Samples from GP with k(x,z) = exp(−||x−z||^2 / (2*tau^2 )), tau = 2.

−2 0 1 2 3 4 5 6 7 8 9 10

−1.

−0.

0

1

1.5^ Samples from GP with k(x,z) = exp(−||x−z||^2 / (2*tau^2 )), tau = 10.

(a) (b) (c)

Figure 2: Samples from a zero-mean Gaussian process prior with kSE (·, ·) covariance function, using (a) τ = 0.5, (b) τ = 2, and (c) τ = 10. Note that as the bandwidth parameter τ increases, then points which are farther away will have higher correlations than before, and hence the sampled functions tend to be smoother overall.

set of elements x 1 ,... , xm ∈ X , the resulting matrix

K =

k(x 1 , x 1 ) · · · k(x 1 , xm) .. .

k(xm, x 1 ) · · · k(xm, xm)

is a valid covariance matrix corresponding to some multivariate Gaussian distribution. A standard result in probability theory states that this is true provided that K is positive semidefinite. Sound familiar? The positive semidefiniteness requirement for covariance matrices computed based on arbitrary input points is, in fact, identical to Mercer’s condition for kernels! A function k(·, ·) is a valid kernel provided the resulting kernel matrix K defined as above is always positive semidefinite for any set of input points x 1 ,... , xm ∈ X. Gaussian processes, therefore, are kernel-based probability distributions in the sense that any valid kernel function can be used as a covariance function!

3.3 The squared exponential kernel

In order to get an intuition for how Gaussian processes work, consider a simple zero-mean Gaussian process,

h(·) ∼ GP(0, k(·, ·)).

defined for functions h : X → R where we take X = R. Here, we choose the kernel function k(·, ·) to be the squared exponential^9 kernel function, defined as

kSE (x, x′) = exp

2 τ 2

||x − x′||^2

(^9) In the context of SVMs, we called this the Gaussian kernel; to avoid confusion with “Gaussian” processes, we refer to this kernel here as the squared exponential kernel, even though the two are formally identical.

for some τ > 0. What do random functions sampled from this Gaussian process look like? In our example, since we use a zero-mean Gaussian process, we would expect that for the function values from our Gaussian process will tend to be distributed around zero. Furthermore, for any pair of elements x, x′^ ∈ X.

  • h(x) and h(x′) will tend to have high covariance x and x′^ are “nearby” in the input space (i.e., ||x − x′|| = |x − x′| ≈ 0, so exp(− (^21) τ 2 ||x − x′||^2 ) ≈ 1).
  • h(x) and h(x′) will tend to have low covariance when x and x′^ are “far apart” (i.e., ||x − x′|| ≫ 0, so exp(− (^2) τ^1 2 ||x − x′||^2 ) ≈ 0).

More simply stated, functions drawn from a zero-mean Gaussian process prior with the squared exponential kernel will tend to be “locally smooth” with high probability; i.e., nearby function values are highly correlated, and the correlation drops off as a function of distance in the input space (see Figure 2).

4 Gaussian process regression

As discussed in the last section, Gaussian processes provide a method for modelling probabil- ity distributions over functions. Here, we discuss how probability distributions over functions can be used in the framework of Bayesian regression.

4.1 The Gaussian process regression model

Let S = {(x(i), y(i))}mi=1 be a training set of i.i.d. examples from some unknown distribution. In the Gaussian process regression model,

y(i)^ = h(x(i)) + ε(i), i = 1,... , m

where the ε(i)^ are i.i.d. “noise” variables with independent N (0, σ^2 ) distributions. Like in Bayesian linear regression, we also assume a prior distribution over functions h(·); in particular, we assume a zero-mean Gaussian process prior,

h(·) ∼ GP(0, k(·, ·))

for some valid covariance function k(·, ·).

Now, let T = {(x( ∗i ), y( ∗i ))}m i=1∗ be a set of i.i.d. testing points drawn from the same unknown

0 1 2 3 4 5 6 7 8 9 10

−2.

−1.

−0.

0

1

Gaussian process regression, 95% confidence region

0 1 2 3 4 5 6 7 8 9 10

−2.

−1.

−0.

0

1

Gaussian process regression, 95% confidence region

0 1 2 3 4 5 6 7 8 9 10

−2.

−1.

−0.

0

1

Gaussian process regression, 95% confidence region

(a) (b) (c)

Figure 3: Gaussian process regression using a zero-mean Gaussian process prior with kSE (·, ·) covariance function (where τ = 0.1), with noise level σ = 1, and (a) m = 10, (b) m = 20, and (c) m = 40 training examples. The blue line denotes the mean of the posterior predictive distribution, and the green shaded region denotes the 95% confidence region based on the model’s variance estimates. As the number of training examples increases, the size of the confidence region shrinks to reflect the diminishing uncertainty in the model estimates. Note also that in panel (a), the 95% confidence region shrinks near training points but is much larger far away from training points, as one would expect.

The sums of independent Gaussian random variables is also Gaussian, so [ ~y ~y∗

]∣

∣ X, X∗^ =

[

~h ~h∗

]

[

~ε ~ε∗

]

∼ N

[

K(X, X) + σ^2 I K(X, X∗) K(X∗, X) K(X∗, X∗) + σ^2 I

])

Now, using the rules for conditioning Gaussians, it follows that

y ~∗ | ~y, X, X∗ ∼ N (μ∗, Σ∗)

where

μ∗^ = K(X∗, X)(K(X, X) + σ^2 I)−^1 ~y Σ∗^ = K(X∗, X∗) + σ^2 I − K(X∗, X)(K(X, X) + σ^2 I)−^1 K(X, X∗).

And that’s it! Remarkably, performing prediction in a Gaussian process regression model is very simple, despite the fact that Gaussian processes in themselves are fairly complicated!^11

5 Summary

We close our discussion of our Gaussian processes by pointing out some reasons why Gaussian processes are an attractive model for use in regression problems and in some cases may be preferable to alternative models (such as linear and locally-weighted linear regression):

(^11) Interestingly, it turns out that Bayesian linear regression, when “kernelized” in the proper way, turns out to be exactly equivalent to Gaussian process regression! But the derivation of the posterior predictive distribution is far more complicated for Bayesian linear regression, and the effort needed to kernelize the algorithm is even greater. The Gaussian process perspective is certainly much easier!

  1. As Bayesian methods, Gaussian process models allow one to quantify uncertainty in predictions resulting not just from intrinsic noise in the problem but also the errors in the parameter estimation procedure. Furthermore, many methods for model selec- tion and hyperparameter selection in Bayesian methods are immediately applicable to Gaussian processes (though we did not address any of these advanced topics here).
  2. Like locally-weighted linear regression, Gaussian process regression is non-parametric and hence can model essentially arbitrary functions of the input points.
  3. Gaussian process regression models provide a natural way to introduce kernels into a regression modeling framework. By careful choice of kernels, Gaussian process regres- sion models can sometimes take advantage of structure in the data (though, we also did not examine this issue here).
  4. Gaussian process regression models, though perhaps somewhat tricky to understand conceptually, nonetheless lead to simple and straightforward linear algebra implemen- tations.

References

[1] Carl E. Rasmussen and Christopher K. I. Williams. Gaussian Processes for Machine Learning. MIT Press, 2006. Online: http://www.gaussianprocess.org/gpml/

To simplify this expression, observe that

([ xA xB

]

[

μA μB

])T [

VAA VAB

VBA VBB

] ([

xA xB

]

[

μA μB

])

= (xA − μA)T^ VAA(xA − μA) + (xA − μA)T^ VAB (xB − μB )

  • (xB − μB )T^ VBA(xA − μA) + (xB − μB )T^ VBB (xB − μB ).

Retaining only terms dependent on xA (and using the fact that VAB = V (^) BAT ), we have

p(xA | xB ) =

Z 2

exp

[

xTAVAAxA − 2 xTAVAAμA + 2xTAVAB (xB − μB )

]

where Z 2 is a new proportionality constant which again does not depend on xA. Finally, using the “completion-of-squares” argument (see Appendix A.1), we have

p(xA | xB ) =

Z 3

exp

(xA − μ′)T^ VAA(xA − μ′)

where Z 3 is again a new proportionality constant not depending on xA, and where mu′^ = μA −V (^) AA−^1 VAB (xB −μB ). This last statement shows that the distribution of xA, conditioned on xB , again has the form of a multivariate Gaussian. In fact, from the normalization property, it follows immediately that

xA | xB ∼ N (μA − V (^) AA−^1 VAB (xB − μB ), V (^) AA−^1 ).

To complete the proof, we simply note that

[ VAA VAB VBA VBB

]

[

(ΣAA − ΣAB Σ− BB^1 ΣBA)−^1 −(ΣAA − ΣAB Σ− BB^1 ΣBA)−^1 ΣAB Σ− BB^1

−Σ− BB^1 ΣBA(ΣAA − ΣAB Σ− BB^1 ΣBA)−^1 (ΣBB − ΣBAΣ− AA^1 ΣAB )−^1

]

follows from standard formulas for the inverse of a partitioned matrix. Substituting the relevant blocks into the previous expression gives the desired result.