linear network a computational view points

大纲level 1

1) 研究目标,本文的主题是什么

研究目标用计算方法计算一些linear network所有的critical points,看都有什么特点

2) 为什么这个主题or研究目标很重要?

首先讲linear network 和非线性网络除了representaiton上的太多相似性,所以如果研究优化的话,我们可以把linear work当作非线性网络一个前菜,知道所有的关键点是什么样,我们可以研究SGD优化困难或者容易的原因是为什么。计算和理论证明互补,比如deep linear network without poor minima,计算例子可以验证理论证明的结论是否正确。

3)我应该怎么样提出假设

因为线性网络只能表示线性关系,所以输入数据和输出数据由特定的线性关系产生。并且我们暂时不研究输出数据有噪声的情况。最开始假设每层只有一个unit,因为也是非凸优化,随着深度增加,0均值高斯初始化也会有优化困难,用residue和bn也能解决。 假设只有一个train data.因为损失函数看作多项式的话,多个training data和一个data set的损失函数属于同一类型的多项式。最开始输出unit只有一个unit,到后边输出多个unit

4) 我的结果是什么?

对单个训练数据,我们用分析方法和数值代数几何结合解出关键点,对多个训练数据,我们直接用数值代数几何解得witness set of 这些component,并且计算的所有线性网络的loss在各个component上只有两个值

5)我的发现是什么?

我们证明,现在神经网络的关键点的loss只有有限个值

实际计算的线性神经网络的关键点只有两个值

最简单的single unit, single training data就可以catch线性神经网络的绝大部分性质

如果线性网络的所有局部小都是全部最优,saddle points对比全局最优点是测度0,那么优化的困难还有什么?

1)随着深度增加,0均值高斯初始化,从鞍点附近到全局最优会出现平坦化,对应梯度消失。

2)随着深度增加,一些促使化,会使得梯度(数值)爆炸

大纲level 2:

一:前言:

1)为什么这个研究重要

之前的loss surface多数是定性的,我们想提供可以计算的例子,能够知道所有的关键点,并且关键点上的值。

2)关于这个主题已经知道什么?

已经知道的用numerical Algebraic geometry解,不过他们是加了reg后求孤立解,由于神经网络的主要方法是sgd,reg后有局部极小值,所以sgd会收敛到局部极小值。

3)你的假设是什么

线性网络,输入输出满足y=Ax,A已知,x已知,得到y,然后采样的数据

4)你的目标是什么

代数几何有定理variety可以分解成finite的不同维数的component的复流行,可以证明loss在某个的component上的loss是常数,在计算出所有的线性网络的关键点分解成不同的components,验证是否符合,这样我们可以得到线性网络的loss surface大概什么样。

二:方法

1)你用了什么方法

由于线性网络是多项式,因此我们可以用代数几何先分解variety到不同维数的components,然后因为不regular的点是测度0的,因为我们先证明smooth的点的loss是常数,再逼近不是常数的点的loss,证明整个loss在components上都为常数。最后我们用数值代数几何来验证。

2)你的研究对象是什么

线性网络的关键点

3)你的研究是怎么设计的

我们先证明可以分解关键点为不同的variety,证明loss 在同一的components上的值为constants。猜想0属于所有这些saddle points的components, 所以只有两个loss值。然后从简单到复杂我们计算了各种线性网络的关键点。

4)需要遵循哪些步骤

先证明再计算

三:结果

1)你最重要的结果是什么

loss 在同一个comoponents上为常数

loss只有两种value,最优和网络输出y=0(只有一个输出unit的情况,多个输出unit的网络还需要验证)

saddle points数目相对于最优点只是测度0

2)你的支持结果是什么

四:讨论和结论:

1)研究的重大发现是什么

2)结果的意义是什么

实验过程

1)先pytoch写出线性网络代码,最简单的几层,2分类,无BN,只有identity,注意一般用的loss不是多项式,看能否用多项式逼近。

a:已经写出几层网络,先checkbias的网络是否有区别,即有无bias是否有影响.为了分析方便,我们不用bias,有无没多少影响,即浅层线性网络没有identityBN的难训练。现在是8层的,residual+BN > residual > 无,基本就是96%>91%>50%左右,所以先研究无residual residual 对比的看一下,okey

b:residual residual 里边非多项式或者有理多项式的地方换算成多项式或者有理多项式,写成代码看是否一样,loss比较不好,有loss比较好,主要是cross entropy, 为什么不继续classificationc,转化太复杂了,直接用mean square loss省事点。

c: 分类问题非多项式转化觉得比较复杂,先把分类改成regression的试一下,看是否和分类一样,深层困难,但是residual BN可以用。试了下,改成regression后,用MSEloss,有的数据集不能很好的优化,有的能,见http://localhost:8888/notebooks/software/linear%20neural%20nets/linear%20neural%20nets-regression.ipynb。一个数据集能找到全局最优,另外一个则不能,虽然损失函数也下降,但是下降不到0。如果能找到全局最优的数据集2x+3y=z,则residualBN都有效. 不能找到最优的随机生成的,identity workBN+residual也能work。不过lr的特别小,大概是0.00001。虽然loss下降的,但是得到的不是最优解。

d,继续在c的基础上,验证是不是3个点的数据集合性质和别的一样(采用3个点,是因为3个点决定一个平面,存在最优值是唯一的),是的。但是还存在问题是否2个点,1个点,线性网络也这样?

e2个点的时候是的,1个点residual connection能加速和无residual,bn也是不能训练和别的一样,BN需要至少2个点, 所以把代码改成1个点,copy成两个点,结果证明BNBN + residue都让神经网络很好的优化,1个点residueBNresidue+BN都能到02个点时不到0,大概是2.65residue), BNresidue+BN2.0

f,以上的实验都是10层的,从f开始实验层数,找到最小的一个深度,使得和上边观察的现象一致,2个训练数据的时候,大概是7层开始(实际是9层),不能训练。证明了1个训练数据都能收敛到全局最优,2个训练数据dim>1时,推到不出来,现在先可视化几种最简单的神经网络,只有3个参数,4个参数,6个参数,这里可视化完就两种loss surface,和前边类似的那种还有0.01\cdot (1-0.01\cdot x-0.01y)^2,这两种都存在一个平面。所以还要回到证明或者计算上来,看看loss surface 的关键点到底有没有局部最优,这里用数值代数几何。如果没有局部最优,则鞍点是最大的问题。

2)把上边这个转化为bertini能用的多项式方程组形式

2.a,这里研究随着深度增加,critical points有什么变化?1维输入的情况,随着深度增加,非全局最优解的关键点增加,见草稿或者89号手机照片,这些非全局最优的关键点是鞍点还是局部最优?2个参数(即深度为2dim = 1的情况,可以画loss function的图https://www.geogebra.org/3dz=(5-4y x)^2, z = (1-0.01y*x)^(2),然后深度为3的情况,可以取w3 = 5, 4, 3, 2, 1, 0.5, 0.1, 0.001,画z = (1-w3y*x)^2来看看,得出结论随着深度增加,用0均值高斯初始化会导致在非全局最优的关键点附近的loss surface越来越平缓,从优化的角度,jacobian矩阵在这个点的最大特征值和最小特征值越接近。并且如果reg的话很容易转化为凸优化,z=(1-0.001 x y)^(2)+x^(2)+y^(2)-1。这里给出非全局最优的关键点是鞍点的证明,然后证明随着深度增加,和平面越来越近。所以优化两个困难是非全局最优的关键点随着深度增加站的比例增加,还有随着深度增加,非全局最优的关键点附近越来越接近平面(梯度消失),2维的情况用数值代数几何解一下,是否是一样的情况。这里可视化已经ok,就是深度增加会出现平坦的saddle point和最优值附近会出现narrow vally,所以会有数值溢出和梯度消失.具体理论证明没有。

2b,研究residual connectionBN的影响, 1dim的,residual不改变loss surface,只是把没有residue connectionloss surface平移等价于更好的初始化方法。1dimbatch normalization一个训练data的作用就是减少参数,这个residue connection等价于初始化,ok。

3)用bertini解出,维数等,okey

4)用bertini判断1)里边sgd得到的解在哪个component上,由于sgd得到的解不精确,判断时的精度不够,但是我们可以sample component dim>1上的点,因为是connected的,所以loss在这个component是constant,实验得出所有这些component的loss只有两个值,一个是全局最优,一个是saddle points(得到的输出y是0)。这个结论我们能证明吗?证明思路是把最优值的方程和关键点的多项式方程写出来,然后证明这个定义的variety等价于原来的variety.如果这个能够得到证明,则原来的variety就的loss就只有两个值,一个是loss,一个是saddle points.证明是全局最优很容易,证明是saddle points比较困难。

5)验证是否得到的解最优解都比saddle points大2维?

6)验证是否0都是不是最优的components的点?如果是的话,证明这些components的loss是一个值就有方法了。

6)证明saddle points附近的平坦会是大问题

参考文献

Gradient Descent Only Converges to Minimizers: Non-Isolated Critical Points and Invariant Regions,

The Loss Surface Of Deep Linear Networks Viewed Through The Algebraic Geometry Lens

deep learning without poor minima

还有两篇关于loss surface和优化的综述

Dynamical isometry and a mean field theory of cnns: How to train 10,000-layer vanilla convolutional neural networks. 没有skip connetion和BN 训练神经网络

Identifying and attacking the saddle point problem in high-dimensional non-convex optimization. 这篇文章which showed that empirically bad local minima are not found and a bigger challenge is plateaus,和我们的发现一致

Explaining landscape connectivity of low-cost solutions for multilayer nets和 On connected sublevel sets in deep learning,The connectivity for deep neural networks was theoretically justified in 这两篇文章。

Chulhee Yun, Suvrit Sra, and Ali Jadbabaie. Global optimality conditions for deep neural networks. arXiv preprint arXiv:1707.02444, 2017.和Yi Zhou and Yingbin Liang. Critical points of linear neural networks: Analytical forms and landscape properties. 2018. 这两篇文章present necessary and sufficient conditions for a stationary point to be a global minimum.

Ohad Shamir. Exponential convergence time of gradient descent for one-dimensional deep linear neural networks. arXiv preprint arXiv:1809.08587, 2018.it takes GD exponential time to converge

C. Yun, S. Sra, and A. Jadbabaie. Global optimality conditions for
deep neural networks. In International Conference on Learning
Representations, 2018.和Y. Zhou and Y. Liang. Critical points of neural networks:
Analytical forms and landscape properties. In International
Conference on Learning Representations, 2018. 这两篇论文
provided a more precise characterization of the critical
points of deep linear networks. 

A. Choromanska, M. Henaff, M. Mathieu, G. B. Arous, and
Y. LeCun. The loss surfaces of multilayer networks. In Artificial
Intelligence and Statistics, pages 192–204, 2015

T. Ding, D. Li, and R. Sun. Sub-optimal local minima exist for
almost all over-parameterized neural networks. arXiv preprint
arXiv:1911.01413, 2019.

H. Lu and K. Kawaguchi. Depth creates no bad local minima.
arXiv preprint arXiv:1702.08580, 2017.这篇的证明思路可能会用上。

S. Hochreiter and J. Schmidhuber, “Flat minima,” Neural Computation, vol. 9, no. 1, pp. 1–42, 1997.和 [78] S. Hochreiter and J. Schmidhuber, “Simplifying neural nets by discovering flat minima,” in Advances in neural information processing systems, pp. 529–536, 1995.这两篇关于flat minima的文章

Q. Liao and T. Poggio, “Theory ii: Landscape of the empirical risk in deep learning,” arXiv preprint arXiv:1703.09833, 2017.这篇文章,, deep nonlinear networks with rectified linear units (ReLUs) were considered and the ReLUs were approximated with polynomials of certain degree. Then, the classical Bézout theorem was applied to conclude that for the case when there are more weights than the number of data points, there always are infinitely many global minima expected.

留下评论