查看本案例完整的数据、代码和报告请登录数据酷客(cookdata.cn)案例板块。
这是谷歌和斯坦福最新的一项合作研究综述报告,发表在物理学的顶级期刊“凝聚态物理年鉴”(Annual Review of Condensed Matter Physics)。作者:Yasaman Bahri, Jonathan Kadmon, Jeffrey Pennington, Sam S. Schoenholz, Jascha Sohl-Dickstein, and Surya Ganguli
英文原报告“深度学习统计力学”。
深度神经网络最近在机器学习方面取得了显著的成功,这就对其成功背后的理论原理提出了深刻的问题。例如,这样的深层网络可以计算什么?我们如何训练他们?信息是如何通过它们传播的?为什么他们泛化能力很好?我们怎么能教他们想象呢?
我们回顾了最近的工作,其中的物理分析方法植根于统计力学已经开始提供这些问题的概念见解。这些见解产生了深度学习与各种物理和数学主题之间的联系,包括随机曲面、自旋玻璃、干扰、动态相变、混沌、黎曼几何、随机矩阵理论、自由概率和非平衡统计力学。事实上,统计力学和机器学习领域长期以来都有着丰富的强耦合相互作用的历史,而统计力学和深度学习交叉点的最新进展表明,这些相互作用只会加深未来的发展。
1 介绍
深层神经网络具有多个隐含层[1],在许多领域都取得了显著的成功,从机器视觉[2]、语音识别[3]、自然语言处理[4]、强化学习[5],到神经科学[6、7]、心理学[8、9]和教育[10]中对动物和人类自身建模。然而,深层神经网络的成功方法仍然是一门高度实践的艺术,包含了许多启发,而不是一门精确的科学。这给理论科学带来了令人兴奋的挑战和机遇,使其能够建立一种成熟的深神经网络理论。这种理论在深度学习中足以指导广泛的工程设计选择。尽管我们目前还远远没有任何这样成熟的理论,但最近出现的统计力学和深度学习一系列交叉工作已经开始为深度网络如何学习和计算提供理论见解,还提出了由这些理论见解驱动的新的和改进的深度学习方法。
我们对这些工作进行综述,它们建立在统计力学和机器学习[11-15]之间长期而丰富的相互作用历史的基础上。有趣的是,正如我们下面讨论的,这项工作在统计力学和深入学习之间建立了许多新的桥梁。在节其余部分中,我们将为机器学习的两种主要分支提供框架。第一种是有监督学习,它涉及到从样本中学习输入输出映射的过程。第二种是无监督学习,它涉及到学习和挖掘数据中隐藏的结构模式的过程。有了这两个框架,我们在第1.3节中介绍本综述中讨论的几个深入学习的基本理论问题,以及它们与统计力学相关的各种主题的联系。
1.1 有监督学习的总体框架
1.2 无监督学习的总体框架
除了学习输入输出映射,机器学习的另一个关键分支是无监督学习,涉及复杂数据结构的建模和理解。例如,我们如何描述自然图像、声音和语言的结构?如果我们能够精确地对这些复杂数据的概率分布建模,那么我们就可以生成自然数据,以及纠正图像采集[16]、语音记录[17]或人类语言生成[4]中的错误。
当然,图像和声音等复杂数据的分布不能用数学方法来描述,但我们通常可以得到 P 个样本的经验分布:
例如每个 xμ 可以表示图像的像素强度向量,或者表示声音的压力变化时间序列。
无监督学习的目标是通过调整一簇分布p(x;w)的参数w,从而找到一个分布与数据分布q(x)类似。这通常是通过最大化与模型参数 w 有关的数据的对数似然函数来实现的:
这种学习的原理是修改 p ,将高概率分配给数据点,将低概率分配给其他地方,从而使模型分布 p(x;w) 更接近数据分布 q(x) 。我们在第6.2节中回顾了对数似然函数和分布之间的信息论分歧以及自由能和熵之间的进一步联系。
当找到一个好的模型 p(x;w) 以后,它有很多用处。例如可以从中进行采样生成新数据。也可以用来去噪或者填补数据向量 x 中的缺失值。更进一步地,如果分布 p 包含一个将潜在或隐含变量 h 转换为观察数据向量 x 的生成过程,那么推断的隐含变量 h 可以代替数据向量本身帮助解决后续的有监督学习任务。例如,在自然语言处理中,这种方法非常成功,在自然语言处理中,网络的隐藏层被训练成简单地生成语言,形成有用的内部表示,用于解决随后的语言处理任务[4]。
有趣的是,选择 p 的过程可以看作是一个统计力学反问题[18]。在平衡态统计力学理论中,很多问题通常涉及到从一个微态 x 上Boltzmann分布 p(x;w) 出发,从 p 计算 x 的批量统计。相反的是,机器学习往往涉及对微态 x 进行采样,从而推导出合适的分布 p(x;w) 。
1.3 深度学习中的基础理论问题
有了上述有监督和无监督学习的最小框架,我们现在可以介绍深度学习领域的基本理论问题,以及如何用统计物理学的观点阐明这些问题。在有监督方面,我们讨论了四个问题。
首先,深度 D 的优点是什么?公式(1)中的哪些函数在 D 很大时可计算? 我们在第二节中通过把有序和混沌之间的动态相变联系来解决这个问题。
第二,很多最小化公式(3)的训练误差的方法使用(随机)梯度下降来降低参数 w 上的 εTrain(w,D) 的误差曲面。这个误差曲面的形状是怎样的?我们何时能够下降到低训练误差点? 我们将在第三节解决这些问题,并与淬火无序的能量景观的统计力学建立了各种联系,包括随机高斯场、自旋玻璃和干扰等现象。实际上 εTrain(w,D) 可以认为是热自由度 w 上的能量函数,其中数据 D 起着猝灭无序的作用。
第三,在使用梯度下降最小化 εTrain(w,D) 时需要从一个初始点 w 出发,通常是随机选择的。如何选择随机初始化来加速后续的梯度下降? 在第四节中,我们将展示使用随机深网络信号传播的理论可以为好的初始化提供线索,并与随机矩阵理论、自由概率和泛函路径积分中的主题建立联系。
第四,虽然很多学习算法最小化公式(3)中的 εTrain ,也可能对参数 w 增加额外的正则项,关键的目标是优化公式(2)中的测试误差 εTrain ,即在训练集 D 中不存在的随机选择的新样本上的误差。因此达到小的泛化误差 εGen = εTest- εTrain 非常关键。什么时候能够获得小的泛化误差,特别是在参数数量 N 远大于数据点数量P的情况下? 我们将在第5节中讨论这个问题,并与随机矩阵谱中的相变、自由场理论和接触粒子系统等主题建立联系。
在无监督方面,理论发展还不是很成熟。在第6节中我们介绍与平衡态力学(如自由能最小化)和非平衡态统计力学(如Jarzynski等式和不可逆过程中的热耗散)有关的深层无监督学习的工作。