Natural gradient descent

Climbing slower on the tricky bits


A placeholder.

The misalignednment of the magnetic and geographic poles is not an ideal metaphor for the misalignment of natural and euclidean gradients (because magnetic field descent leads to the wrong optimum, not the wrong rate) but I can’t be searching online for illustrations all day there is work to do.

Gradient descent with the natural gradient, or a close approximation thereto. Related: Information geometry, which formalises and generalises this. What is that natural gradient then?

Salimbeni, Eleftheriadis, and Hensman (2018):

The ordinary gradient turns out to be an unnatural direction to follow for variational inference since we are optimizing a distribution, rather than a set of parameters directly. One way to define the gradient is the direction that achieves maximum change subject to a perturbation within a small euclidean ball. To see why the Euclidean distance is an unnatural metric for probability distributions, consider the two Gaussians \(\mathcal{N}(0, 0.1)\) and \(\mathcal{N}(0, 0.2)\), compared to \(\mathcal{N} (0, 1000.1)\) and \(\mathcal{N}(0, 1000.2)\). The former pair are different and the latter similar, yet in Euclidean distance they are equally far apart in the mean and variance. Using the precision in place of the variance gives the opposite result, yet the distributions are unchanged. There is a fundamental mismatch between the ordinary gradient and the objective function: the gradient is dependent on parameterization whereas the objective function is not.

Fortunately there is a way to solve the disparity: the natural gradient. The natural gradient can be defined as the direction that achieves maximum change in KL divergence. It is well known that paths following the natural gradient are invariant to reparameterization (see e.g., (???)), and that the natural gradient direction is the ordinary gradient rescaled by the inverse Fisher information matrix (Amari 1998).

(???) says

Natural gradient descent is an optimization method traditionally motivated from the perspective of information geometry, and works well for many applications as an alternative to stochastic gradient descent. In this paper we critically analyze this method and its properties, and show how it can be viewed as a type of approximate 2nd-order optimization method, where the Fisher information matrix can be viewed as an approximation of the Hessian. This perspective turns out to have significant implications for how to design a practical and robust version of the method. Additionally, we make the following contributions to the understanding of natural gradient and 2nd-order methods: a thorough analysis of the convergence speed of stochastic natural gradient descent (and more general stochastic > 2nd-order methods) as applied to convex quadratics, a critical examination of the oft-used “empirical” approximation of the Fisher matrix, and an analysis of the (approximate) parameterization invariance property possessed by natural gradient methods, which we show still holds for certain choices of the curvature matrix other than the Fisher, but notably not the Hessian.

Returning to Salimbeni, Eleftheriadis, and Hensman (2018):

Our fundamental problem is to minimize \(-\mathcal{L}(\xi)\). All the approaches we consider find a sequence of parameters \(\left\{\boldsymbol{\xi}_{t}\right\}_{t=0}^{T}\) using the iterative update

\[\boldsymbol{\xi}_{t+1}=\boldsymbol{\xi}_{t}-\gamma_{t} \mathrm{P}_{t}^{-1} \mathbf{g}_{t}, \quad \mathbf{g}_{t}=\left.\nabla_{\xi}^{\top} \mathcal{L}\right|_{\xi=\xi_{t}}\] where \(\gamma_{t}\) denotes the step size and \(\mathrm{P}_{t}^{-1} \mathbf{g}_{t}\) the direction

Natural gradient descent (NGD). Another way of interpreting the update \((\sqrt{5})\) is to use the fact that the direction of steepest descent with respect to a norm \(\|\boldsymbol{\delta}\|_{\mathrm{A}}=\boldsymbol{\delta}^{T} \mathrm{A} \boldsymbol{\delta}\) is given by \(\mathrm{A}^{-1} \nabla_{\boldsymbol{\xi}}+\mathcal{L}\). (This can be seen by minimizing \(\frac{1}{\epsilon} \mathcal{L}(\xi+\delta)\) subject to the constraint that \(\|\boldsymbol{\delta}\|_{\mathrm{A}}=\epsilon\) and letting \(\epsilon \rightarrow 0\).) Identifying \(\mathrm{P}\) with \(\mathrm{A},\) the update corresponds to the steepest descent with respect to the norm induced by the matrix \(\mathrm{P}\). Gradient descent (where \(\mathrm{P}\) is the identity and the induced metric is Euclidean) can therefore be seen as moving in the direction that maximizes the change in objective with respect to the Euclidean norm of the parameters. The Euclidean norm is an unnatural way to compare two parameter vectors if the parameters correspond to distributions, however. If instead we consider the KL divergence between two distributions and take the small perturbation limit, we obtain \(\mathrm{KL}[q(\mathbf{u} ; \boldsymbol{\xi}), q(\mathbf{u} ; \boldsymbol{\xi}+\boldsymbol{\delta})]=\frac{1}{2} \delta^{\top}\left[\mathbb{E}_{q(\mathbf{u} ; \xi)} \nabla_{\xi}^{2} \log q(\mathbf{u} ; \boldsymbol{\xi})\right] \boldsymbol{\delta}+\mathcal{O}\left(\|\boldsymbol{\delta}\|^{3}\right) .\) Therefore, in a sufficiently small neighbourhood the KL divergence induces a quadratic norm with curvature given by the expected Hessian of the log density. This matrix is known as the Fisher information \(\mathbf{F}_{\xi}\).

\[ \mathbf{F}_{\xi}=-\mathbb{E}_{q(\mathbf{u} ; \xi)} \nabla_{\xi}^{2} \log q(\mathbf{u} ; \boldsymbol{\xi})\] The direction of steepest descent with respect to this norm is called the natural gradient \(\tilde{\nabla}_{\xi} \mathcal{L},\) given by the gradient scaled by the inverse Fisher information: \(\tilde{\nabla}_{\boldsymbol{\xi}} \mathcal{L}=\left(\nabla_{\boldsymbol{\xi}} \mathcal{L}\right) \mathbf{F}_{\boldsymbol{\xi}}^{-1}\) (Amari 1998)

Ahhhh.

Other people’s study blogs:

Natural Policy Gradient

What the reinforcement learning people do? A brutally short explanation here, and a longer informal one here, and a downright lengthy one here.

Abt, Markus, and William J. Welch. 1998. “Fisher Information and Maximum-Likelihood Estimation of Covariance Parameters in Gaussian Stochastic Processes.” Canadian Journal of Statistics 26 (1): 127–37. https://doi.org/10.2307/3315678.

Amari, Shun-ichi. 1998. “Natural Gradient Works Efficiently in Learning.” Neural Computation 10 (2): 251–76. https://doi.org/10.1162/089976698300017746.

Amari, Shun-ichi, Ryo Karakida, and Masafumi Oizumi. 2018. “Fisher Information and Natural Gradient Learning of Random Deep Networks.” August 21, 2018. http://arxiv.org/abs/1808.07172.

Amari, Shun-ichi, Hyeyoung Park, and Kenji Fukumizu. 2000. “Adaptive Method of Realizing Natural Gradient Learning for Multilayer Perceptrons.” Neural Computation 12 (6): 1399–1409. https://doi.org/10.1162/089976600300015420.

Efron, Bradley, and David V. Hinkley. 1978. “Assessing the Accuracy of the Maximum Likelihood Estimator: Observed Versus Expected Fisher Information.” Biometrika 65 (3): 457–83. https://doi.org/10.1093/biomet/65.3.457.

Kakade, Sham M. 2002. “A Natural Policy Gradient.” In Advances in Neural Information Processing Systems, 8.

Ly, Alexander, Maarten Marsman, Josine Verhagen, Raoul P. P. P. Grasman, and Eric-Jan Wagenmakers. 2017. “A Tutorial on Fisher Information.” Journal of Mathematical Psychology 80 (October): 40–55. https://doi.org/10.1016/j.jmp.2017.05.006.

Martens, James. 2016. “SECOND-ORDER OPTIMIZATION FOR NEURAL NETWORKS.” University of Toronto. http://www.cs.toronto.edu/~jmartens/docs/thesis_phd_martens.pdf.

———. 2020. “New Insights and Perspectives on the Natural Gradient Method.” Journal of Machine Learning Research 21 (146): 1–76. http://jmlr.org/papers/v21/17-678.html.

Nielsen, Frank. 2018. “An Elementary Introduction to Information Geometry.” August 16, 2018. http://arxiv.org/abs/1808.08271.

Ollivier, Yann. 2017. “Online Natural Gradient as a Kalman Filter.” March 1, 2017. http://arxiv.org/abs/1703.00209.

Salimbeni, Hugh, Stefanos Eleftheriadis, and James Hensman. 2018. “Natural Gradients in Practice: Non-Conjugate Variational Inference in Gaussian Process Models.” In International Conference on Artificial Intelligence and Statistics, 689–97. http://proceedings.mlr.press/v84/salimbeni18a.html.

Schraudolph, Nicol N. 2002. “Fast Curvature Matrix-Vector Products for Second-Order Gradient Descent.” Neural Computation 14 (7): 1723–38. https://doi.org/10.1162/08997660260028683.

Zhang, Guodong, Shengyang Sun, David Duvenaud, and Roger Grosse. 2017. “Noisy Natural Gradient as Variational Inference.” December 6, 2017. http://arxiv.org/abs/1712.02390.