深度学习的几何观点
新书预告
笔者团队将过去几年中有关最优传输理论和算法的课堂讲义与研究报告加以整理总结,成书出版【1】。最优传输理论可以从多个角度去理解学习,例如线性规划和对偶的观点,凸微分几何的观点,蒙日-安培偏微分方程的观点和流体力学的观点。每种观点都发展出一套相对完备的计算方法,例如Sinkhorn类型的算法,实际上是基于线性规划加上熵正则项、或者用Nesterov方法进行光滑化,目前在深度学习领域如日中天;利用计算几何中Voronoi Diagram算法(最优传输几何变分法的C++实现)是基于凸微分几何,这种方法可以推广到球面几何情形(球面最优传输的C++实现);将强烈非线性蒙日-安培方程用线性泊松方程来迭代逼近,并且用快速傅里叶变换来求解,实际上是基于经典的偏微分方程理论(FFT-OT:最优传输映射的快速傅里叶变换方法);流体力学方法的物理直观最强,特别是可以将最优传输映射和黎曼几何联系起来。这本书的最后一章讲解了基于最优传输理论,从几何角度来理解深度学习,解释了模式坍塌的内在原因和新型生成模型。这本书所涉及的主要算法都配有开源代码和测试数据集合,以便于广大学生自学。新书将于2021年10月中旬开始发行,大家可以通过下面的条纹码订购:
图1:新书的网购链接。
希望能够对于广大的青年学生有所帮助。我们也会进一步开源更多的相关算法。由于准备仓促,作者们的学术修养不足,书中会有不严密之处,欢迎广大读者批评指正!
基本问题
最近,笔者受邀给了一个公开演讲,题目为"基于最优传输的深度学习的几何理解",基本上是新书的最后一章。这里笔者将演讲的概要记录下来,以方便听众。
感谢邀请!这项工作是和丘成桐先生以及很多数学家和计算机科学家共同合作的成果。目前,深度学习在很大领域都取得了空前的成功,但是对于深度学习的理论理解依然处于较为初始的状态。我们试图回答下面的几个基本问题:
深度学习究竟在学习什么?
深度学习如何学习?系统究竟是学会了还只是记住了?
深度学习的学习质量如何?系统能够学会所有的知识吗?还是迫不得已要遗忘一些学习内容?
学习什么
如何学习
这里,每个神经元只能表达简单的函数,但是多个神经元复合,构成网络就可以表达非常复杂的函数。
例如,模式识别问题可以归结为这样的简单情形:拓扑空间中给定两个闭集与,彼此不交,根据Urysohn引理, 存在一个连续函数,并且。因此如果神经网络能够足够好的逼近这个函数,就可以实现模式识别。对于一般的流形,由Whiteny嵌入定理,流形都可以嵌入到足够高的欧氏空间里。因此编码、解码映射都存在,学习的目的就是用神经网络来逼近编解码映射。图4显示了最为简单的自动编码器,网络中间有一层瓶颈层,对应着隐空间,瓶颈层神经元的个数等于隐空间的维数。瓶颈层左侧的网络逼近编码映射,右侧网络逼近解码映射。我们在流形上稠密采样,损失函数的设计使得编解码映射的复合等于恒同映射,这样编、解码映射互为逆映射,从原始背景空间到隐空间。
图4. 自动编码器。
图5显示了学习效果,我们在弥勒佛曲面上稠密采样,用自动编码器将曲面映入隐空间,即编码映射;然后解码映射再将隐空间映回曲面。我们对比初始数据流形与最终重建的曲面,我们看到没有太大的几何信息的丢失,所有的手指、脚趾都被展开在隐空间,即我们得到的编码解码映射都是拓扑同胚。
图5. 用自动编码器学习的流形编码、解码映射。
如图6所示,我们用的是ReLU 深度神经网络,这种网络将背景空间和隐空间都剖分成很多胞腔,每个胞腔用一个颜色来表示。在相应胞腔之间,映射是线性映射,可以用一个矩阵来表示。换言之,与传统的有限元方法相类似,都是用分片线性函数来逼近一般映射。只是有限元方法是用基函数的线性组合来逼近任意函数,而深度神经网络是用分片线性函数的复合来逼近。由此,我们可以说流形结构的学习是通过深度神经网络做万有逼近,在欧氏空间之间的所有映射组成的空间中做变分来得到。但是学习的动力学机制迄今为止没有统一的理论,学习过程是否收敛、收敛速率如何、是否收敛到全局最优,这些都有各种理论解释。
图6. 编码、解码映射是用分片线性映射来逼近的。
概率分布的学习比较复杂。我们用著名的对抗生成网络来解释(GAN)。依照Goodfellow的解释,如图7所示,在隐空间
图7. GAN模型的理论解释。
在隐空间上有一个已知的白噪声(例如高斯噪声),生成器将白噪声变换成数据流形上的生成分布;数据流形上的训练样本点给出了真实数据分布;判别器计算了生成分布和真实分布之间的距离。判别器和生成器彼此竞争,达到Nash均衡,人眼也无法区分生成分布与真实分布,训练终止。这里,我们看到数据分布的所有信息是由变换来表达,而两个分布之间的距离是由和之间的变换得来。因此,最终归结为两个概率分布之间的变换。而计算这些变换都是基于最优传输映射的理论和方法。
更加广泛而言,统计学习的基本算法归结为如下框架:我们希望学习某个概率分布,我们通过观察,得到这个概率分布的部分信息,表达成特定函数的期望,然后制定一个特殊的能量,在所有可能的概率分布中,优化这个能量。比如,最大熵原则就是最大化概率分布的熵(entropy)。最大似然法、后验估计,互熵等算法也类似。从理论角度而言,概率分布的学习归结为在所有分布构成的空间中做带有限制的、关于特定能量的优化。给定数据流形,上面所有的概率分布构成一个无穷维的空间,被称为是Wasserstein空间。最优传输理论为Wasserstein空间定义了一个黎曼度量,有了黎曼度量可以定义协变微分,从而使得变分法得以实行。那么用最优传输理论框架进行优化,与用信息论为理论进行的优化在经典问题上得到同样的结论(最大熵原理和最优传输)。
Wasserstein空间是无穷维的,如何定义距离、测地线、切向量和黎曼度量?换句话说,如何将统计、概率分布黎曼几何化?这是最优传输理论抽象中的抽象,可能最为直观的讲法来自流体力学。假设我们有个水池(流形),水中溶解了盐分,盐的密度并不均匀,给出了一个概率分布。我们搅动水池,让水流动起来,这样盐分会重新分配,从而得到了另外的概率分布。水池中所有可能的盐分分布构成了Wasserstein空间,给定初始分布和目标分布,我们可以设计水的定义在时空上的流场,即每一刹那,水池中的每一点处的速度向量,使得水流将初始分布变换成目标分布。在所有可能的时空流场中,存在唯一的一个使得水流的总动能(同时进行空间、时间积分)达到最小,这个最小总动能,被定义为初始和目标分布之间的Wasserstein距离。那么,这个流场在每一个时刻都有一个盐分的分布,我们得到一系列概率分布,它们构成了连接初始和目标分布之间的测地线。在每一刹那,流场可以被分解为一个无散场和一个梯度场,无散场对于密度的改变没有贡献,那么水池中的梯度场被定义为Wasserstein空间中,那一时刻对应的概率密度处的切向量。那么两个梯度场,点点计算内积再关于空间整个积分起来,如此得到了Wasserstein空间的黎曼度量。假如我们在Wasserstein空间中进行优化,我们首先关于给定能量求变分,得到水池中的一个梯度场,我们让水沿着这个梯度场持续流动一个很小的时间,然后得到新的分布,重新计算变分,得到新的流场,再次流动,直至所得的流场处处为0.
现在我们可以回答上面的问题:深度学习如何进行学习?深度学习系统在所有映射构成的空间中进行变分来学习拓扑结构,用深度神经网络来万有逼近编解码映射;在Wasserstein空间中进行优化来学习概率分布,概率分布用传输映射来表示。
学会还是记住
深度神经网络的参数非常庞大,往往是训练样本的数十倍。那么一个自然的问题在于:深度学习是否真正学会了?还是只是记住了?我们通过最优传输的几何解释来回答这个问题。
图8. Minkowski和Alexandrov问题。
最优传输和凸几何具有非常密切的亲缘关系。如图8所示,左帧是著名的Minkowski问题:给定凸多面体每个面的法向量和面积,则凸多面体的形状被确定;右帧是Alexandrov 问题:给定开放凸多面体每个面的法向量,和向平面凸集投影的面积,则凸多面体的形状被确定。而Alexandrov问题等价于欧氏平方距离下的最优传输问题。
图9. Brenier势能函数。
如图9所示,根据Brenier理论,欧氏平方距离下的最优传输映射等于某个凸函数(即Brenier势能函数)的梯度映射。Brenier势能函数与Alexandrov凸多面体都是由蒙日-安培方程来控制,因此计算上彼此等价。图9显示了图3中两个分布之间的最优传输映射,和对应的Brenier势能函数,以及最优传输映射的逆映射(也是最优的),及其对应的Brenier势能函数。通过几何变分法(最优传输几何变分法的C++实现),我们可以精确计算最优传输映射,这时我们发现Brenier势能函数的表示包括了所有的训练样本,同时也包含新的计算变量。
由此,我们可以回答上面的问题:这种深度学习一方面记住了所有的训练样本,同时也学会了新的内容。
学习得如何
目前的深度学习方法不尽如人意,一个突出的问题是所谓的模式坍塌。假设我们要学习的概率分布的支集有多个连通分支,例如手写体数字有十个种类,学习之后只学会了六七个,而忘掉了其余的几种;还有一种是模式混淆,即生成的数字是几个数字的混合,而难以辨认。如图10左帧所示。
图10. WGAN生成的手写体数字,与AE-OT生成的手写体数字比较。
模式坍塌的问题可以用最优传输映射的正则性理论来解释。如果源和目标分布的支撑集合都是凸的,则传输映射的正则性有所保证,否则可能存在奇异点,在奇异点处映射间断。如图11所示,我们计算平面概率分布间的最优传输映射,源分布是定义在单位圆盘上的均匀分布,目标分布是定义在海马形状上的均匀分布。我们看到Brenier势能函数连续,但不是处处可导,在红色的曲线处,Brenier势能函数不可导。红色曲线投影到单位圆盘上,得到黑色的奇异点集合,最优传输映射在奇异点处间断。给定平面区域,我们可以用算法确定是否存在奇异点(深度学习的“瓶颈”与“遛狗”定理)。这样就产生了一个不可回避的本质矛盾:深度神经网络只能逼近连续映射,而传输映射有可能在奇异点处间断,这样学习过程或者不收敛,或者收敛后像集与目标并不吻合,从而造成模式坍塌。
图11. 最优传输映射的奇异集合。
我们可以基于最优传输理论来构造新的生成模型来避免模式坍塌。如图12所示,我们用自动编码器(Auto-encoder)来学习流形结构,用最优传输映射来学习概率分布。深度神经网络不再用来逼近传输映射,而是逼近连续的Brenier势能函数,或者用几何变分法来直接计算Brenier势能函数,这样传输映射即便是非连续的也不会影响计算精度和稳定性。
图12. AE-OT生成模型。
图13. 人脸图像流形的边缘。
这一生成模型可以精确地检测到数据流形的边缘,并且在边缘处生成新的样本。如图13所示,我们用AE-OT模型学习了一个人脸图像的流形,我们检测到流形的两处边界,一处是人脸图像带有棕黑色的眼睛,另一处是人脸图像带有蓝色的眼睛。我们在隐空间画上一条直线,映射到数据流形上的一条曲线,图13中每一幅图像是一个点,每一行是一条曲线。在曲线上出现了一只眼睛为黑色、一只眼睛为蓝色的人脸图像。这种人脸在现实生活中遇到的概率为0,实际上是人脸图像流形的边界上。学习过程非常稳定,收敛很快,没有遇到模式坍塌的问题。
小结
这里我们给出深度学习的一个几何解释:自然数据的内在模式可以表示成流形上的概率分布;深度学习的主要任务就是学习流形的结构和概率分布;流形结构学习归结为用深度神经网的万有逼近特性在映射空间中变分,概率分布学习归结为在Wasserstein空间中进行变分;最优传输理论为Wasserstein空间定义了黎曼度量,使得统计黎曼几何化;最优传输的正则性理论解释了模式坍塌,AE-OT模型可以从理论上避免,从而使得深度学习的黑箱部分透明。
演讲的详细内容请参考【2】,新书“最优传输的理论与计算”【1】可以通过扫描二维码预定。平面最优传输映射几何变分法的代码与数据从【3】可以得到,详细说明在(最优传输几何变分法的C++实现)中;球面最优传输映射几何变分法的代码与数据从【4】可以得到,详细说明在(球面最优传输映射的C++实现)中;应用快速傅里叶变换来加速求解的算法在(FFT-OT: 最优传输映射的快速傅里叶变换方法)中。
【1】N. Lei, X. Gu, 最优传输的理论与计算,高等教育出版社,2021年10月。
【2】Na Lei, Dongsheng An, Yang Guo, Kehua Su, Shixia Liu, Zhongxuan Luo, Shing-Tung Yau and Xianfeng Gu, "Geometric Understanding of Deep Learning", Journal of Engineering, 2020.
https://doi.org/10.1016/j.eng.2019.09.010
【3】https://www3.cs.stonybrook.edu/~gu/software/OT/index.html
【4】https://www3.cs.stonybrook.edu/~gu/software/SOT/index.html
请长按下方二维码,选择“识别图中二维码”,即可关注。
【老顾谈几何】邀请国内国际著名纯粹数学家,应用数学家,理论物理学家和计算机科学家,讲授现代拓扑和几何的理论,算法和应用。