![a72a18c5fb70945fea44b5fbf0f63c95.png](https://i-blog.csdnimg.cn/blog_migrate/27b5460d13b861753fab55e6f9b19305.jpeg)
在深度学习中,基于梯度下降的算法是目前最主流的参数优化方法,例如SGD,Adam等等,不过这次介绍的论文就提出了另外一种用来训练神经网络参数的方法。先简单概括一下,论文的核心思想是将神经网络看作是一个动力学系统,而把对网络的训练过程看作是如何实现对这个动力学系统的最优控制,按照这样的思路,作者基于庞特里亚金极大值原理(Pontryagin's maximum principle, PMP)设计了一个迭代算法,来求得这个控制问题的最优解,从而实现对于神经网络参数的优化。
神经网络—>动力学系统
其实将神经网络看作动力学系统的想法并不新鲜,尤其是当残差网络(residual network, ResNet)提出以后,这一观点变得更加流行。简单来说,ResNet可以看作是动力学系统的离散时间近似,具体描述可以接着看下文。
对于监督学习来说,其目的就是通过神经网络来去逼近一个从X映射到Y的函数
![equation?tex=F%3A+%5Cmathcal%7BX%7D+%5Crightarrow+%5Cmathcal%7BY%7D](https://i-blog.csdnimg.cn/blog_migrate/3fdff5ece898698b5a287f6017f3d8b0.png)
![equation?tex=%5Cleft%5C%7Bx%5E%7Bi%7D%2C+y%5E%7Bi%7D%3DF%5Cleft%28x%5E%7Bi%7D%5Cright%29%5Cright%5C%7D_%7Bi%3D1%7D%5E%7BK%7D](https://i-blog.csdnimg.cn/blog_migrate/28ef3d4fcd22015747ecbdb3addcaed8.png)
![equation?tex=x%3D%5Cleft%28x%5E%7B1%7D%2C+%5Cldots%2C+x%5E%7BK%7D%5Cright%29+%5Cin+%5Cmathbb%7BR%7D%5E%7Bd+%5Ctimes+K%7D](https://i-blog.csdnimg.cn/blog_migrate/7638959477e4d73e741361ac8debd21f.png)
现在通过动力学的观点来看神经网络,我们认为输入X就是运动物体的初始状态,比如粒子的位置。在我们的动力学系统中,这些粒子遵循下面的规律运动:
![equation?tex=%5Cdot%7BX%7D_%7Bt%7D%5E%7Bi%7D%3Df%5Cleft%28t%2C+X_%7Bt%7D%5E%7Bi%7D%2C+%5Ctheta_%7Bt%7D%5Cright%29%2C+%5Cquad+X_%7B0%7D%5E%7Bi%7D%3Dx%5E%7Bi%7D%2C+%5Cquad+0+%5Cleq+t+%5Cleq+T+%5C%5C](https://i-blog.csdnimg.cn/blog_migrate/36352625e675a725b4d27ba6306eaa3e.png)
其中t代表时间,
![equation?tex=%5Ctheta_%7Bt%7D](https://i-blog.csdnimg.cn/blog_migrate/317093a2d38440929600793f9c565cdd.png)
![equation?tex=%5Cdot%7BX%7D](https://i-blog.csdnimg.cn/blog_migrate/ae1ddf967518dadff7d5e1b96d620c7c.png)
这就是一个给定初始状态的常微分方程,求解该方程,我们就可以得出粒子的最终状态
![equation?tex=%7BX%7D_%7BT%7D%5E%7Bi%7D](https://i-blog.csdnimg.cn/blog_migrate/e52f54bdae780fdd9840e9c98e6dccf5.png)
现在将时间离散化,为了得出最终状态
![equation?tex=%7BX%7D_%7BN%7D%5E%7Bi%7D](https://i-blog.csdnimg.cn/blog_migrate/e2c9ef448ebf384433b6c913f16be004.png)
![equation?tex=x_%7Bn%2B1%7D%3Dx_%7Bn%7D%2B%5Cdelta+f_%7Bn%7D%5Cleft%28x_%7Bn%7D%2C+%5Cvartheta_%7Bn%7D%5Cright%29%2C+%5Cquad+x_%7B0%7D%3Dx+%5C%5C](https://i-blog.csdnimg.cn/blog_migrate/aebe3b155752fcf5ffbf719ef394caf3.png)
通过上式可以看出,残差网络中的第n层就可以看作是其中的函数
![equation?tex=f_%7Bn%7D](https://i-blog.csdnimg.cn/blog_migrate/cb83251e02d3fb00a1669c87df720793.png)
![equation?tex=x_%7Bn%2B1%7D](https://i-blog.csdnimg.cn/blog_migrate/0d1993c01d57dd52d46c12d3d7143203.png)
![equation?tex=x_%7Bn%7D](https://i-blog.csdnimg.cn/blog_migrate/edf8a9f0f5e1638869f5e815d21674db.png)
![equation?tex=f_%7Bn%7D](https://i-blog.csdnimg.cn/blog_migrate/cb83251e02d3fb00a1669c87df720793.png)
![equation?tex=f_%7Bn%7D%5Cleft%28x_%7Bn%7D%2C+%5Cvartheta_%7Bn%7D%5Cright%29](https://i-blog.csdnimg.cn/blog_migrate/cb83251e02d3fb00a1669c87df720793.png%5Cleft%28x_%7Bn%7D%2C+%5Cvartheta_%7Bn%7D%5Cright%29)
![equation?tex=%5Cdelta+](https://i-blog.csdnimg.cn/blog_migrate/dee92f128b6cee1ca53b6d4a0074649e.png)
方便起见,我们还是先讨论时间连续的情况,对于最终状态
![equation?tex=%7BX%7D_%7BT%7D%5E%7Bi%7D](https://i-blog.csdnimg.cn/blog_migrate/e52f54bdae780fdd9840e9c98e6dccf5.png)
![equation?tex=%5CPhi%5Cleft%28g%5Cleft%28x_%7BT%7D%5E%7Bi%7D%5Cright%29%2C+y%5E%7Bi%7D%5Cright%29](https://i-blog.csdnimg.cn/blog_migrate/e8b4bbbec1ad8aed1a7a0fc68de89c30.png)
![equation?tex=g](https://i-blog.csdnimg.cn/blog_migrate/ac4bed4b4c33bd53f3bdd4090014b8b8.png)
![equation?tex=%5Cbegin%7Barray%7D%7Bl%7D%7B%5Cmin+_%7B%5Ctheta+%5Cin+%5Cmathcal%7BU%7D%7D+%5Csum_%7Bi%3D1%7D%5E%7BK%7D+%5CPhi_%7Bi%7D%5Cleft%28X_%7BT%7D%5E%7Bi%7D%5Cright%29%2B%5Cint_%7B0%7D%5E%7BT%7D+L%5Cleft%28%5Ctheta_%7Bt%7D%5Cright%29+d+t%7D+%5C%5C+%7B%5Cdot%7BX%7D_%7Bt%7D%5E%7Bi%7D%3Df%5Cleft%28t%2C+X_%7Bt%7D%5E%7Bi%7D%2C+%5Ctheta_%7Bt%7D%5Cright%29%2C+%5Cquad+X_%7B0%7D%5E%7Bi%7D%3Dx%5E%7Bi%7D%2C+%5Cquad+0+%5Cleq+t+%5Cleq+T%2C+%5Cquad+i%3D1%2C+%5Cldots%2C+K%7D%5Cend%7Barray%7D+%5C%5C](https://i-blog.csdnimg.cn/blog_migrate/bb9fc0bcc44236b776bf5c32f7491714.png)
其中
![equation?tex=%5Cmathcal%7BU%7D](https://i-blog.csdnimg.cn/blog_migrate/4f322918ff3c006331ede968c606b17e.png)
![equation?tex=L%5Cleft%28%5Ctheta_%7Bt%7D%5Cright%29](https://i-blog.csdnimg.cn/blog_migrate/dabf18e78a4aaca9db774da82cf2ddcb.png)
而这篇论文的核心内容就是对这个优化问题进行求解。
为了简便起见,之后的讨论认为样本数K=1,而这并不会影响最终的结论。
Pontryagin's maximum principle
论文中采用了庞特里亚金极大值原理(Pontryagin's maximum principle, PMP)的思想来求解优化问题,具体方法如下:
首先定义哈密顿量H
![equation?tex=H%28t%2C+x%2C+p%2C+%5Ctheta%29%3A%3Dp+%5Ccdot+f%28t%2C+x%2C+%5Ctheta%29-L%28%5Ctheta%29+%5C%5C](https://i-blog.csdnimg.cn/blog_migrate/8baa4af3e716f7e26ffe2ed62d0a42bb.png)
那么PMP就告诉我们,下列条件:
(1)
(2)