about
Scalable Bayesian Optimization Using Deep Neural Networks (arxiv.org)
63 points by groar on Sep 1, 2015 | hide | past | pdf | 3 comments on HN

In plain words: It uses a neural network as a cheap stand-in for a slow-to-test function, to pick which settings to try next. It matches the usual statistical model's accuracy while its cost grows with the data rather than its cube, so many tests run at once.

Abstract

Bayesian optimization is an effective methodology for the global optimization of functions with expensive evaluations. It relies on querying a distribution over functions defined by a relatively cheap surrogate model. An accurate model for this distribution over functions is critical to the effectiveness of the approach, and is typically fit using Gaussian processes (GPs). However, since GPs scale cubically with the number of observations, it has been challenging to handle objectives whose optimization requires many evaluations, and as such, massively parallelizing the optimization. In this work, we explore the use of neural networks as an alternative to GPs to model distributions over functions. We show that performing adaptive basis function regression with a neural network as the parametric form performs competitively with state-of-the-art GP-based approaches, but scales linearly with the number of data rather than cubically. This allows us to achieve a previously intractable degree of parallelism, which we apply to large scale hyperparameter optimization, rapidly finding competitive models on benchmark object recognition tasks using convolutional networks, and image caption generation using neural language models.

Jasper Snoek, Oren Rippel, Kevin Swersky, Ryan Kiros, Nadathur Satish, Narayanan Sundaram, Md. Mostofa Ali Patwary, Prabhat, Ryan P. Adams
arXiv:1502.05700 · stat.ML · submitted Feb 19, 2015 · updated Jul 13, 2015
abstract · pdf · html

add comment on HN
Also discussed: Feb 2015 (4 points, 1 comment)

In short, these guys are using deep neural nets to find good hyperparameters for training other deep neural nets, and this works as well as a Gaussian Process[1] but is more scalable and can be parallelized, allowing for faster optimization of hyperparameters.

--

[1] For example, like Spearmint: https://github.com/JasperSnoek/spearmint

I haven't read the paper, just skimmed through it, but isn't this a sort of unreasonable comparison? Full GPs are O(N^3) because they do inverse on a covariance matrix that basically allows every datapoint to be related to every other datapoint. There exists a bunch of literature on sparse approximate Gaussian processes which iirc are basically O(N*M) where N is the data and M is basically the size of some set of active points (which is tunable). That seems like the natural point of comparison to their neural net approach. Broadly, in their deep net, they've chosen some architecture which determines the number of parameters. It seems like either the neural net or the sparse GP approach can claim to have runtime which is linear with the data size, and is doing less work than the full GP for basically the same reasons.
As a completely trival point, one of the co-authors only has one name, Prabhat. Google, to its credit, has his work page as the first result.