社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

深度学习的效果为何如此惊人?看看全息理论怎么说

阿里云云栖社区 • 6 年前 • 586 次点击  

今天,我想和大家谈谈全息理论以及如何应用全息理论的概念来解析深度学习。全息理论是一门学说(详见:现实的薄片),它解释了量子力学与重力间的相互作用是如何构成我们身处的现实生活的。这门学说的产生受到了霍金悖论的启发。霍金在推断黑洞是否散发能量时提出了霍金悖论,该理论违背了信息不可破坏这一基本概念。受到霍金悖论的影响,物理学家经过了数十年的研究与实验,提出了一个基于信息论原理的宇宙的统一理论。整个宇宙是一张全息图的投影。这种观点非常有趣,如此说来,时间的指向以及重力的存在都只不过是信息缠结的结果。

这样一来你可能会误以为这个全息理论只不过是物理学的一些边缘理论。它首次被提出时确实是一个相当疯狂的想法。显然,这个理论依赖于非常坚实的实验与理论基础。但是,当初认为全息理论是一派胡言的史蒂芬·霍金,最终也不得不接受了它的结论。因此,现在我们可以相对安全地着手推导基于全息理论的一些额外推论。

一个基于全息理论的令人惊讶的推论是,全息图能够捕获宇宙中自由度数量级高达d ^ N的动力学特性(其中,d表示维度,N表示粒子总数)。人们原本以为这样的全息图大小的数量级将是同等规模,然而事实并非如此。它的大小取决于其曲面面积,仅与N²成正比。这就引出了一个问题,一个大小仅为N²阶的结构是如何捕获规模为d ^ N的系统动力学特性的?

同时,深度学习(Deep Learning)碰巧也具有类似的映射问题。考虑到问题域的搜索空间具有极高的维度,研究人员并不清楚深度学习的执行效果为何会如此令人印象深刻。因此,来自哈佛大学的Max Tegmark和Henry Lin在"为什么深度学习和廉价学习能够取得这么好的效果?"这个问题上提出了自己的观点。在他们的论文中,他们提出了以下观点:

… 尽管那些著名的数学定理可以保证神经网络能够较好地逼近任意函数,但是我们实际感兴趣的函数类型是可以通过"廉价学习"的方式来逼近的,而且相比于通用的方法,我们可以减少指数规模的参数数量,这是因为追溯到物理定律层面,这些函数具备简化特性。基于物理学的函数所具备的这种特殊的简化特性取决于对称性、局部性、复合性以及多项式对数概率等性质,我们探索这些性质转化成非常简单的神经网络的过程,以及这些神经网络是如何逼近自然现象和抽象表达的,例如图像和绘画。

这篇论文的作者提出了一些不错的新想法,比如"非平滑理论"以及结合信息论和重整化群为他们的猜想提供依据。然而,我并不完全相信他们的论点。这个论点假设所有问题数据都遵循"自然法则",但是我们知道,深度学习在非自然领域中仍然奏效。例如,识别汽车、自动驾驶、创作音乐、围棋对弈等许多案例很明显都属于非自然领域。公平地说,我认为它们一定是建立在某些基础之上的,我会在后面的内容中详细介绍。

在本篇文章中,我提出了一个大胆的观点,支撑它的论据在某种程度上与Tegmark和Lin提出的论据类似。正是因为物理学,深度学习才会取得如此之好的效果。然而,我的想法来源于深度学习的工作方式,因为深度学习与全息理论背后的计算机制相同,都取得了一定的杠杆效果。具体来说,就是使用少量的规模为N²阶的参数表示一个极高维度空间(即d ^ N)的能力。

我们可以通过张量网络(注意:这里的张量网络在某种程度上不同于TensorFlow或张量神经网络)的形式简洁地描述支撑全息理论的计算机制。张量网络的表示如下所示:

物理学中张量网络的价值在于显著简化状态空间,将其转换为一个仅关注相关物理量的网络结构。使用张量网络的主要目的在于减少计算量。张量网络是一种通过将较大张量分解为若干较小且便于管理的部分来实现高维空间计算的有效方式。分解后,我们可以同时对多个较小部分进行计算。通过优化每一个张量部分,人们进而可以有效地优化较大的完整张量。

在全息理论的场景中,张量网络使用了MERA张量,可通过如下形式描述:

在上图中,圆圈表示"解缠器",而三角形则表示"等距变换"。人们可以从映射的角度来观察这些节点。可以这样理解,圆圈将一个矩阵映射至另一个矩阵,而三角形则接收一个矩阵作为输入并将其映射成一个向量。上图的关键之处在于让我们认识到"压缩"能力来自于层次结构与缠结关系。实际上,这个网络包含了互信息的链式法则

换句话说,当你从网络的底部向顶部移动时,信息缠结也随之增加。

我之前写文章讨论过关于深度学习与"全息记忆"的相似之处,然而,在这里我将提出更进一步的观点。深度学习网络也是张量网络的一种。尽管深度学习网络并不像MERA网络那样统一,但是它们表现出了相似的缠结。无论是全连接网络还是卷积网络,随着信息从输入流向输出,信息都会出现相似的缠结情况。

几位研究人员最近对张量网络的具体应用展开了研究。Miles Stoudenmire写了一篇名为"张量网络:将量子波函数纳入机器学习"的文章,在文中他描述了自己在MNIST和CIFAR-10数据集上应用的方法。关于这种方法,Miles Stoudenmire提到了一个关键思路:

问题的关键在于维度,低维空间中难以解决的问题在"提升"至更高维空间后,可能会变得容易得多。想一想,如果你可以在我们称之为时间的额外维度上自由移动,你一天的生活会变得多么轻松。当我们从更高维的角度考虑问题时,低维度下交织缠绕在一起的数据点将变成线性可分的形式。

Amnon Shashua等人也在这个问题上进行了相关的研究。他们最新的论文"张量混合模型"(2016年10月)提出了一种新型的卷积网络。

总而言之,尽管全息理论由量子计算驱动,但是它也向我们揭示了通用计算机制的存在,这种机制可以使用数量相对较少的模型参数来表示高维问题。在这里,我猜测正是同样的机制使得深度学习能够取得如此令人震惊的效果。

关于深度学习的大多数解释都围绕着我在这里介绍的三个特性。这三个特性分别是可表达性、可训练性以及泛化能力。我们对"可表达性"有一个明确的定义,即一个分层网络相比一个浅层网络而言需要更少的模型参数。然而,可训练性和泛化能力究竟是什么则是一个难以回答的问题。解释这两个特性的最大困难在于它们不适用于任何传统的机器学习概念。可训练性在高维非凸空间中可能是不可行的,然而简单的随机梯度下降算法(SGD)在这种情况下却似乎非常有效。泛化能力只有在连续的流形上才有意义,然而对抗生成网络(GAN)却展现出了令人印象深刻的泛化能力:

上图展示了StackGAN的生成过程,给定文本描述,分两个阶段输出图像。StackGAN共包含两个生成网络,很难想象第二个生成器是如何做到仅对图像进行细化的。在深度学习中有很多类似这样无法说明的现象。而全息理论则为此提供了一个大胆的解释。

目前,对于深度学习为何能够取得这么好的效果这个问题,主流的观点是在高维空间中存在着一个非常薄的流形,这个流形能够表示被训练的自然现象。模型的学习过程就是这个"薄流形"的发现过程。然而,结合最近的实验数据,人们对这种观点产生了分歧。文章"重新思考泛化"的作者写道:

即使是对随机标签的优化也依然很容易。实际上,相比于对真实标签训练所需的时间,训练随机标签的时间仅仅增长了一个很小的常数因子。

Tegmark和"薄流形"的论据在随机数据上都不太可能成立。因此,随之产生了这样一个假设,即可能存在一个完全不同的计算机制,可降低自由度(或者问题维度),进而确保计算可行。这种压缩机制的存在依据可在深度学习的网络架构中找到,正如它存在于MERA张量网络中一样。

传统的机器学习观点认为,优化的过程是寻找数据内在的流形结构的过程。相比之下,我的猜想认为,数据自身并没有那么重要,相反,深度学习网络的拓扑结构才是探寻数据本质的关键所在。也就是说,即使随机初始化网络底层参数,整个网络也有可能因为网络顶层学习得到的映射关系进而取得很好的效果。

实际上,我甚至还会在我们寻求无监督学习的过程中作出进一步的推论,我们可能忽略了这样一个事实,神经网络在随机初始化之后,已经可以创建自己的数据表示形式了。我们只不过是不能证明这种表示是否有问题罢了。保留了不变性(即局部性、对称性等等)的随机表示也可能和其他的数据表示形式一样好。Yann LeCun描绘的蛋糕可能已经存在了,那么现在就需要蛋糕上的糖霜和樱桃来说明这块蛋糕究竟代表着什么了。

读者请注意:在1991年,心理学家Karl Pribham和物理学家David Bohm一起提出了"普雷布拉姆全脑理论"。我并不清楚大脑与深度学习之间具体存在什么样的关系。因此,我无法作出与他们在1991年得到的相同的结论。


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/yLzBwYHKpD
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/6443
 
586 次点击