These cells operate like normal LSTM cells, but their outgoing activations are averaged at each step
across all coordinates. These global averaging cells (GACs) are sufﬁcient to allow the networks to
implement L2 gradient clipping [Bengio et al., 2013] assuming that each LSTM can compute the
square of the gradient. This architecture is denoted as an LSTM+GAC optimizer.
NTM-BFGS optimizer
We also consider augmenting the LSTM+GAC architecture with an external memory that is shared
between coordinates. Such a memory, if appropriately designed could allow the optimizer to learn
algorithms similar to (low-memory) approximations to Newton’s method, e.g. (L-)BFGS [see Nocedal
and Wright, 2006]. The reason for this interpretation is that such methods can be seen as a set of
independent processes working coordinatewise, but communicating through the inverse Hessian
approximation stored in the memory. We designed a memory architecture that, in theory, allows the
12
Step 1−10010
Step 2 Step 3 Step 4
Step 5−10010
Step 6 Step 7 Step 8
Step 9−10010
Step 10 Step 11 Step 12
Step 13−10010
Step 14 Step 15 Step 16
Step 17−10010
The move from hand-designed features to learned features in machine learning
has been wildly successful. In spite of this, optimization algorithms are still
designed by hand. In this paper we show how the design of an optimization
algorithm can be cast as a learning problem, allowing the algorithm to learn to
exploit structure in the problems of interest in an automatic way. Our learned
algorithms, implemented by LSTMs, outperform generic, hand-designed competitors
on the tasks for which they are trained, and also generalize well to new tasks
with similar structure. We demonstrate this on a number of tasks, including
simple convex problems, training neural networks, and styling images with
neural art.
Marcin Andrychowicz Misha Denil Sergio Gomez Matthew W. Hoffman David Pfau Tom Schaul Brendan Shillingford Nando de Freitas