专栏首页灯塔大数据塔秘 | 深度学习应该使用复数吗?

塔秘 | 深度学习应该使用复数吗?

深度学习只能使用实数吗?本文简要介绍了近期一些将复数应用于深度学习的若干研究,并指出使用复数可以实现更鲁棒的层间梯度信息传播、更高的记忆容量、更准确的遗忘行为、大幅降低的网络规模,以及 GAN 训练中更好的稳定性。

深度学习只能使用实数,大家不觉得奇怪吗?或许,深度学习使用复数才是更加奇怪的事情吧(注意:复数是有虚部的)。一个有价值的论点是:大脑在计算的时候不太可能使用复数。当然你也可以提出这样的论点:大脑也不用矩阵运算或者链式法则微分啊。此外,人工神经网络(ANN)具有实际神经元的模型。长期以来,我们用实分析代替了生物合理性(biological plausibility)。

然而,为什么我们要止步于实分析呢?我们已经用了这么久线性代数和微分方程,那我们也可以将这一切都推倒,用复分析建立新的一套。或许更加奇妙的复分析会赋予我们更强大的方法。毕竟它对量子力学奏效,那么它也有可能在深度学习领域发挥作用。此外,深度学习和量子力学都与信息处理有关,二者可能是同一件事情。

由于论据的原因,我们暂且不考虑生物合理性。这是一个很古老的观点,可以追溯到 1957 年 Frank Rosenblatt 第一次提出人工神经网络的时候。那么问题来了,复数可以提供哪些实数不能提供的东西呢?

在过去几年里,曾经出现过一些探索在深度学习中使用复数的文章。奇怪的是,它们中的大部分都没有被同行评议的期刊接受。因为深度学习的正统观念在该领域已经很流行了。但是,我们还是要评述一些有趣的论文。

DeepMind 的论文《Associative Long Short-Term Memory》(Ivo Danihelka, Greg Wayne, Benigno Uria, Nal Kalchbrenner, Alex Graves)探讨了使用复数值形成联想记忆神经网络。该系统被用来增强 LSTM 的记忆。论文的结论是使用复数的网络可获取更大的记忆容量。根据数学原理,与仅仅使用实数的情况相比,使用复数需要的矩阵更小。如下图所示,使用复数的神经网络在内存开销上与传统 LSTM 有显著区别。

Yoshua Bengio 及其在蒙特利尔的团队探索了另一种使用复数的方式。研究者在《Unitary Evolution Recurrent Neural Networks》(Martin Arjovsky, Amar Shah, Yoshua Bengio)一文中探讨了酉矩阵。他们认为,如果矩阵的特征值接近 1 的话,消失的梯度或许会带来实际的好处。该研究使用复数作为 RNN 网络的权重。结论如下:

实证表明我们的 uRNN 能够更好地通过长序列传递梯度信息,并且不会遇到像 LSTM 一样多的饱和隐藏状态(saturating hidden states)。

他们做了多次实验对使用复数的网络与传统 RNN 的性能进行了量化比较:

使用复数的系统明显拥有更鲁棒、更稳定的性能。

Bengio 团队和 MIT 合作的一篇论文《Gated Orthogonal Recurrent Units: On Learning to Forget》(Li Jing, Caglar Gulcehre, John Peurifoy, Yichen Shen, Max Tegmark, Marin Soljačić, Yoshua Bengio)提出了使用门控机制的方法。这篇论文探讨了长期依赖能够更好地被捕获以及形成一个更加鲁棒的遗忘机制的可能性。下图展示了其他基于 RNN 的系统在复制任务中的失败;

FAIR 和 EPFL 的一个团队出了一篇类似的论文《Kronecker Recurrent Units》(Cijo Jose, Moustpaha Cisse, Francois Fleuret),他们在论文里也展现了在复制任务中使用酉矩阵的可行性。他们展示了一种能够大幅减少所需参数的矩阵分解方法。文中描述了他们使用复数的动机。

由于实空间的行列式是连续函数,所以实空间的酉集是不连贯的。因而,使用标准的连续优化程序不能在实值网络上跨越全酉集。相反,酉集在复空间中是连接在一起的,因为它的行列式是复空间中单位圆上的点,所以使用复数就不会出现这个问题。

这篇论文的精华之一就是下面这则富有建设性的思想:

状态应当保持高维度,以使用高容量的网络将输入编码成内部状态、提取预测值。但 recurrent dynamic 可使用低容量模型实现。

目前,这些方法已经探索了在 RNN 上对复数值的使用。MILA(蒙特利尔学习算法研究所)最近的一篇论文《Deep Complex Networks》(Chiheb Trabelsi 等人)进一步探索了这些方法在卷积神经网络上的使用。论文作者在计算机视觉任务上测试了他们的网络,结果很有竞争力。

最后,我们必须说一下复数在 GAN 中的使用。毕竟 GAN 可以说是最热的话题了。论文《Numerics of GANs》(Lars Mescheder, Sebastian Nowozin, Andreas Geiger)探讨了 GAN 中棘手的收敛性能。他们研究了带有复数值的雅克比矩阵的特点,并使用它创建解决 GAN 均衡问题的最先进方法。

在去年的一篇博文中,我介绍了全息原理和深度学习的关系。博文中的方法探索了张量网络和深度学习架构网络之间的相似性。量子力学可以被认为是使用了一种更加通用的概率形式。对复数的使用则提供了常规概率无法提供的额外能力。具体来说就是叠加和干扰的能力。为了实现全息术,在处理过程中使用复数会比较好。

在机器和深度学习空间中进行的大多数数学分析倾向于使用贝叶斯思想作为参数。事实上,大多数从业者都认为它是贝叶斯的,但实际上来自与统计学机制(除去名字,这里没有统计学的那些繁文缛节)。

但如果量子力学是广义的概率,那如果我们使用 QM 启发的方法作为替代会如何呢?一些论文试图研究这一方向,结果值得一看。在去年的一篇论文《Quantum Clustering and Gaussian Mixtures》中,作者探索了无监督均值聚类的使用情况。报告是这样说的:

因此,我们观察到了量子类干扰现象并不在高斯混合模型中出现。我们展示了量子方法在所有方面上都优于高斯混合方法。

两者的对比如图:

噪声发生了什么?

为什么在有了 20 世纪的量子概率理论后还要拘泥于 18 世纪的贝叶斯理论呢?

本文提及的研究论文证明了:在深度学习架构中使用复数确实会带来「实实在在」的优势。研究表明:使用复数能够带来更鲁棒的层间梯度信息传播、更高的记忆容量、更准确的遗忘行为、大幅降低的网络规模,以及训练 GAN 时更好的稳定性。这些优点可不能被简单地忽略。如果我们接受了目前深度学习的主流观点--任何一层的微分都是公平的,那么或许我们应该使用存储多种变体的复分析。

或许复数没有被经常使用的原因是研究者对它不够熟悉。在优化研究社区中,数学传统并没有涉及到复数。然而物理学家却一直在使用复数。那些虚部在量子力学中始终是存在的。这并不奇怪,这就是现实。我们仍然不太理解为何这些深度学习系统会如此有用。所以探索其他的表示可能会带来出乎意料的突破。

在不久的将来,这个局面可能会变化。最先进的结构可能会普遍使用复数,那时候不使用复数反倒变得奇怪了。

文章来源:机器之心

文章编辑:秦革

本文分享自微信公众号 - 灯塔大数据(DTbigdata)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-10-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 集约操盘提升智慧家庭终端销售

    【摘要】随着中国电信智慧家庭业务的全面铺开,智家业务已成为门店销售的又一重心。在经过长期跟踪研究以及对部分智慧营业厅、社区门店的调研访谈的基础上,本文总结了当前...

    灯塔大数据
  • 塔荐 | 麦肯锡报告:到2030年,自动化和人工智能的发展将对就业产生怎样的影响?

    前言 人工智能和自动化的动力推动着历史的车轮滚滚向前,未来充满期待!但技术的变革对社会特别是就业方面将会带来剧烈的冲击。未来的就业市场将会如何?职业的更替和新生...

    灯塔大数据
  • 当HR遇上大数据,我们看看腾讯是如何做的?

    ? 搜索一下“HR+大数据”,可以轻松得到几百万条记录,可见大数据在HR领域并不是一个陌生的话题,遗憾的是,热度有余而深度不足。北大光华的穆胜博士在其写的《大...

    灯塔大数据
  • 深度 | 深度学习应该使用复数吗?

    选自Medium 机器之心编译 参与:Nurhachu Nul、路雪 深度学习只能使用实数吗?本文简要介绍了近期一些将复数应用于深度学习的若干研究,并指出使用复...

    机器之心
  • K8S 生态周报| Docker 19.03.3 DNS 不再区分大小写

    在本周 Docker 发布了 19.03.3 版本,这个版本的变更内容 很重要,我会将主要内容都列出来。(上周周报介绍了 19.03.3-rc1 的一些情况)

    Jintao Zhang
  • 数学--数论-- HDU -- 2854 Central Meridian Number (暴力打表)

    A Central Meridian (ACM) Number N is a positive integer satisfies that given two...

    风骨散人Chiam
  • 市场嗅觉是可以培养的技能吗?

    用户1682855
  • 5.Mybatis中万能的Map

    当我们需要关联查询的时候我们可以用Map作为返回结果。如果不用的话也可以使用resultMap的方式。

    DencyCheng
  • 客官,来嘛,谷歌小菜请你尝尝!

    作者:柳行刚 编辑:王抒伟 谷歌面试题 等你来挑战 详情往下看 各位,看招 1 题目描述: 一个大小为n的数组,里面的数都属于范围[0, n-1],有不确定的重...

    机器学习算法工程师
  • Apache Thrift环境配置

    当我看到windows安装需要Cygwin或MinGW时,我就直接放弃在windows中配置的想法了,直接打开虚拟机用CentOS进行安装,使用一堆命令安装毕竟...

    砸漏

扫码关注云+社区

领取腾讯云代金券