Edinburgh Research Archive

Bayesian optimisation & priors: improving air pollution monitoring and hyperparameter optimisation

Item Status

Embargo End Date

Authors

Hellan, Sigrid Passano

Abstract

Bayesian optimisation is a powerful machine learning method for optimising black-box functions. It relies on a surrogate model, typically a Gaussian process, for modelling the optimisation objective. Optimisation proceeds by iteratively evaluating, also called sampling, the function at selected inputs. In the regime of small sample budgets, due for instance to slow or expensive evaluations, only a small number of samples are available to ft the surrogate model. This is particularly challenging because we need to learn both the surrogate hyperparameters and the surrogate model itself. To maximise the usefulness of our limited samples we therefore want to introduce additional information into our model to reduce its uncertainty. This additional information comes from evaluations of related optimisation tasks, an approach that is often called transfer learning. We consider two types of transfer learning. The traditional approach is to assume the optimal input on a new task to be correlated with the optimal inputs on at least some of the previous tasks, so good inputs on previous tasks will perform well on new tasks. We examine the setting where these tasks come with an inherent ordering. For instance, the tasks could come from repeatedly performing hyperparameter optimisation on a machine learning model as more training data are collected. This could be a movie recommendation system which is retrained after new movie ratings are submitted. In the second scenario we assume that we cannot use the optimal inputs on previous tasks directly. One example is locating pollution maxima, where each task is a different city; we do not expect the maximisers to be the same, e.g. 1 km north and 3 km east of the geographical centre, but we do expect the pollution gradients to be similar as we move away from roads. Instead of learning useful inputs, we therefore learn a useful prior for the hyperparameters of the surrogate model. The hyperparameters are important because they encode how we expect the function to vary over its domain. For instance, if we assume a slowly-varying function we will disregard larger areas around low-performing samples. Our methods extend existing approaches to transfer learning for Bayesian optimisation. For the ordered setting we show that a simple method exploiting this ordering can outperform more sophisticated state-of-the-art transfer methods. Our method, SimpleOrdered, works by first evaluating the best inputs from the most recent tasks, before performing non-transfer Bayesian optimisation. For the second scenario, when we cannot use the optimal inputs directly, we develop a method for transferring hyperparameter priors, which we call PLeBO. It consists of two stages. In the preprocessing stage we use Markov chain Monte Carlo and hierarchical modelling to collect samples of the hyperparameter distributions. In the second stage, during the optimisation of a new task, we use importance weighting to ft the hyperparameter samples to the new evaluations. We show on synthetic and air pollution data that PLeBO can be applied to problems where the traditional transfer approach does not work. Our two application domains are hyperparameter optimisation and air pollution monitoring. In hyperparameter optimisation we optimise the hyperparameters of machine learning models, e.g. learning rates and model sizes. The optimisation is expensive, as each evaluation requires training a potentially large model. For air pollution monitoring, the problem is that of iteratively placing sensors in order to locate the pollution maximum in a given area. This is a new problem for Bayesian optimisation, and we prepare data sets for further work. Both applications are difficult, with samples being expensive to collect, so Bayesian optimisation can be strengthened by including transfer learning.

This item appears in the following Collection(s)