Transformer MLP架构有几分胜算?

2021-08-02 09:50:24

来源:雷锋网

前段时间,一场关于MLP与Transformer的较量在学术圈闹得沸沸扬扬。起因是,谷歌在《MLP-Mixer: An all-MLP Architecture for Vision》论文中提出,无需卷积模块和注意力机制,纯MLP架构也可以达到与Transformer与CNN相媲美的图像分类性能。此文一出学术界一片哗然,MLP is all you Need的时代要来了?Transformer在2017年谷歌发表的《Attention is All You Need》论文中首次被提出,基于自注意力机制,近几年已经横跨NLP和CV领域,不断刷新各项任务的SOTA,而MLP是NLP领域最早且结构最简单的神经网络。为了处理更复杂的任务,神经网络的主流架构经历了MLP-CNN、RNN-Transformer的演变过程。此事在社交平台引起了专家、网友的广泛讨论,有人认为,MLP-Mxier只是偷换概念,与Trasformer没有本质区别;有人认为,工业界的研究顶多算是Technical Report,不足以支撑学术结论;还有人认为,Transformer不是万能的,确实应该在架构设计方面挖掘一些新思路。一波未平一波又起,时隔几天之后,清华大学、牛津大学、Facebook AI,还有Google又相继发表了多篇论文,试图证明Tranformer在多项任务中并不是必要条件。一时间,关于Trasformer和模型架构的讨论再次被推向高潮,大家的观点不一,质疑声不断。我们应该如何看待这一系列研究成果?MLP、CNN、Transformer等主流架构谁强谁弱?各自有哪些特点?当前AI学术研究面临什么现状?下一阶段将如何发展?针对这些问题,AI科技评论联系了来自业界和学术界的7位专家、学者以及资深从业者进行了深入交流,试图找出一些答案。他们分别是:马毅:加州大学伯克利分校计算机系教授何晓冬:京东副总裁,京东AI研究院常务副院长林宙辰:北京大学智能科学系教授朱军:清华大学计算机科学系长聘教授尤洋:新加坡国立大学NUS计算机系青年教授吴琦:阿德莱德大学高级讲师,ARC DECRA Fellow苏剑林:90后机器学习从业者,「科学空间」博客知名博主,曾获得第四届“泰迪杯”全国大学生数据挖掘竞赛特等奖和企业冠名奖。

1

MLP比肩Transformer,归纳偏置多余了?

多层感知机MLP(Multilayer Perceptron),也叫前馈神经网络(feedforward neuarl network)是最早发明的人工神经网络之一,其结构设计简单,仅由输入层、隐藏层(中间层)和输出层组成。

它最大的特点是信息只进行单向传输,没有循环或回路,即从输入层开始前向移动,经过隐藏层,再到输出层。如果信息从输出层反馈到输入层,则被称为循环神经网络(recurrent neural network,RNN)。随着图像复杂程度和数据集类别数目的增涨,MLP越来越难以高效地提取特征。为了避免特征提取的参数过于冗余,卷积/Attention等高效操作相继被提出。1998年,图灵奖得主Yann LeCun在手写数字识别任务中提出首个卷积神经网络LeNet,基本确定了CNN的整体结构——由卷积层、池化层、全连接层组成;Transformer架构最早采用Attention机制,并在机器翻译任务中达到SOTA。后来随着BERT的问世,Transformer开始席卷整个NLP领域,甚至跨界到CV领域。然而,谷歌最近推出的MLP-Mixer模型表明,在不使用卷积和自注意力的情况下,仅基于多层感知机,也能在图像分类任务中达到了与Transformer和CNN相当的性能。难道inductive bias反而成了束缚?清华大学教授朱军告诉AI科技评论,相比于有inductive bias的架构,全连接架构的学习效率很低,这一点在机器学习实验中早已被证实。效率低,意味着需要更多的训练数据,才能使性能达到一定的阶段。从工程角度来讲,很多应用场景无法提供足够的数据支撑,这时要解决问题还需要引入假设来提高有限数据的利用效率。所以说,全连接架构或者MLP-Mixer应用场景有限,而且还可能存在可解释性差和鲁棒性差的问题。尤洋也表示,MLP-Mixer接近Transformers性能的前提条件是数据量要足够大。谷歌提供的数据显示,MLP-Mixer的性能随着数据量的增加而增长。在超大数据集JFT-300M上,它在更小的计算量上取得了接近ViT的精度。数据量和算力在一定程度上限制了MLP-Mixer的应用范围。JFT-300M等大数据集的训练是大部分高校或中等规模的公司无法轻易完成的。但MLP-Mixer的计算模式和方法很简单。只要有足够多的机器,大多数研究人员应该容易复现和使用。同时他也表示,目前人们在超大数据集上对inductive bias的模型探索还很有限,谷歌也只是展示了基于几个特定人造数据集的实验结果,inductive bias在其中发挥的价值还有待观察。关于MLP-Mixer,目前学术界普遍认为,它与Transformer架构并没有本质的区别。MLP-Mixer模型的核心思路是把图片分成很多的patch,每个patch就相当于Transformers的一个token,然后用MLP结合矩阵转置去处理数据。它的每层都包含token-mixing MLP block 和channel-mixing MLP block两个部分。前者是把不同的channel当成不同的计算单元,后者是把不同的token当成不同的计算单元。马毅教授认为,从理论角度看,MLP与Transformer、卷积在数学概念上几乎完全等价,二者架构类似,只是在优化和实现细节上有差而已。何晓冬也表达了相似的看法。同时他表示,MLP-Mixer的出现也让我们不得不思考,在算力主导AI的当下,哪些模型的训练方法和架构设计才真正有助于性能提升?此外,尤洋表示,逐个patch的MLP类似于一个具有16x16 kernels和16x16 stride的卷积层,换言之,MLP-Mixer本身并不是纯粹的MLP,它同样具有归纳偏置。此前,Yann LeCun也发文批评过这一点。“如果真的是标准MLP,应该将输入展平为一个一维向量,然后再接变换矩阵。”苏剑林认为,MLP-Mxier,其实就是Synthesizer的Random模式并去掉了softmax激活。Synthesizer是去年5月Google在《Synthesizer: Rethinking Self-Attention in Transformer Models》论文中提出的模型。他认为,二者最大的区别仅在于MLP-Mxier做CV任务,而Synthesizer是做NLP任务的。“在Random模式下,‘token-mixing MLP’相当于可训练的Attention矩阵,只是名字不同而已,将Attention换成MLP的改进,速度虽然有所提升,但理论复杂度不变,MLP-Mxier仍没有本质上的进步。”事实上,将Transformer直接减少一两层同样可以达到提速的效果,而没必要换成MLP。另外,Transformer自适应生成的Attention具有更好的适应能力,而MLP-Mxier将Attention矩阵参数化的做法,使其在“预训练+微调”方面的性能有所下降。相比于Transformer和CNN,尤洋认为,MLP-Mixer的概念更简单,或许可以在降低工程团队实现复杂度,以及降低神经网络搜索开销方面发挥更多价值。

2

7篇论文重拳出击,Transformer扛不住了?

谷歌之后,多家科研机构相继发表7篇相关论文,试图从多个维度打击Transformer。

《Beyond Self-attention: External Attention using Two Linear Layers for Visual Tasks》- 清华大学

《RepMLP: Re-parameterizing Convolutions into Fully-connected Layers for Image Recognition》清华大学软件学院

《Do You Even Need Attention? A Stack of Feed-Forward Layers Does Surprisingly Well on ImageNet》- 牛津大学

《ResMLP: Feedforward networks for image classification with data-efficient training》- Facebook AI

《Are Pre-trained Convolutions Better than Pre-trained Transformers?》- Google Research

《FNet: Mixing Tokens with Fourier Transforms》- Google Research

《Pay Attention to MLPs》- Google Research

MLP篇其中,第一篇论文提出的External Attention表明,只用两个级联的线性层和归一化层就可以取代“Self-attention”。苏剑林认为:从实验描述来看,External Attention有很多说法禁不住推敲:(1)两个线性层其实是Attention的变式;(2)没有与LinFormer进行比较,以证明其实现了线性的复杂度。(3)独立编码的External Attention在NLP任务中不work,却在CV中work。牛津大学提出用Feed forward取代ViT模型中的注意力层,同样可以在ImageNet上达到接近ViT的top-1准确率——基于ViT / DeiT的模型,可达到74.9%的top-1精度,而ViT和DeiT分别为77.9%和79.9%。关于这项研究,不少学者认为它是MLP-Mixer架构的简易版。由于这篇论文全文只有4页(正文2.5页),不少学者猜测,可能作者原本也想在这个方向深挖一下,但没想被Googel抢先了一步。受 ViT 的启发,Facebook AI提出了结构更简单、更稳定的ResMLP架构——它不采用任何形式的注意力机制,仅仅包含线性层与 GELU 非线性激活函数。苏剑林认为,虽然ResMLP在ImageNet上达到了不错的准确率,但它与MLP-Mixer和Stack of FFN没有本质的区别,尤其是Stack of FFN。如果忽略细微的细节差异,甚至可以认为它们三个是同一个模型。谷歌则接连发表了三篇相关论文,对 ViT 模型中自注意力层的必要性提出了质疑,而学者们普遍认为,FNet模型在某种意义上同样是MLP-Mixer的一个特例;gMLP也属于常规的结构炼丹工作,只要算力足够都可以实现,二者都没有足够的创新性或者为模型发展带来任何新的启示。不过,其发表的《Are Pre-trained Convolutions Better than Pre-trained Transformers?》论文,则为学术圈普遍存在的“Transformer能否取代CNN”的讨论扩展了新思路。目前,这篇论文已被ACL2021接收。CNN篇近几年,Transformer从Vision Transformer到层出不穷的变种,不断地刷新着各项任务榜单,大有取代CNN之势。而谷歌在这篇论文验证了“CNN+预训练”的有效性。论文中表明,不管是直接用下游数据监督训练,还是先预训练然后微调,基于膨胀卷积或动态卷积的CNN模型都略优于Transformer模型,并且在速度上CNN模型还更加快。苏剑林认为,这篇工作带给我们的启发是:预训练改进与模型改进不应该混为一谈,预训练技术本身往往能给各种模型都带来提升,不应该一提到预训练就想到Transformer,也不应该只把预训练跟Transformer结合。那么,我们该如何看待Transformer与CNN模型?研究者有必要转向CNN吗?苏剑林表示,我们不能否定CNN的价值,但如果当前已经比较专注Transformer了,就没必要分出太多精力去转向CNN了。对此,他提供了三点看法:1、理论上来说,CNN无法捕捉足够远的长程依赖,这是根本缺陷,虽然通过膨胀卷积等方式,可以快速增大CNN的感受野,但也只是比较大,不是Transformer理论上的一步到位;2、如果单纯看提高效率角度,Transformer本身也有很多优化空间,如果只是为了执行效率而转向CNN,那这个理由似乎不那么有说服力;3、Transformer的O(n^2)的复杂度本身也带来更多的折腾空间(比如像UniLM),可以玩出更多的花样(比如像K-BERT)。

3

反映了哪些研究问题?

综上所述,MLP-Mixer主要依靠大数据来维持其性能,其在结构设计上没有带来理论上的创新,甚至会牺牲模型可解释性和鲁棒性。这种简单粗暴的研究模式,是否存在灌水的嫌疑?全连接架构为什么被重新提起,它适合哪些研究领域和应用场景?

另外,透过MLP、CNN、Trasformer等主流架构的发展历程,我们可以看到,模型跨界的已经逐渐成为科研领域的必然趋势,这背后除了谷歌等科技巨头的主导外,大数据、大算力的时代背景产生了哪些推动作用?而基于此,在限定领域研究特定算法的增量改进是否还有意义?从当前来看,哪些问题才应该成为学术研究的重点?围绕这些问题,林宙辰、朱军、吴琦、尤洋等人给出了如下解答:问题1:近年不断出现模型跨界现象,从Transformer进入CV,到MLP开始用于大规模图像识别,再到CNN用于NLP预训练。这是反映了算力提升、数据量增加的行业整体发展,还是一种科技巨头主导媒体传播带来的错觉?林宙辰:当前的MLP复兴只是为了理解注意力机制的作用,发现用MLP可以替代注意力机制。实际上用MLP的性能也只能接近,而不是超越用注意力机制时的性能,但它的计算成本要低很多,所以性价比很高,这在实际应用中还是有一定意义的。当然,MLP重新获得关注,跟谷歌的宣传关系是很大的。吴琦:媒体传播有一定的助推作用,但并不能说是错觉,这其实正是科研领域的一个必然趋势— 模型的统一性。我认为,所谓的模型跨界并没有什么惊奇的。无论CV还是NLP,本质都是机器学习。机器学习是对数据分布规律的分析,它不在乎数据本身是来源于图像还是语言。因此,二者本质上是相通的,只是不同应用的表现形式。当一个模型(比如Transformer)在某一个领域里被证明有效之后,必然会被迁移到另一个领域,而这个过程中,那些拥有大量计算资源,足够数据支撑,且工程能力过硬的科技巨头往往会占据先机。我不认为这类研究有什么问题,恰恰相反,它对整个community是有益的。从学术界角度来看,高校科研人员发paper会变得更难——难以超过产业界大模型的performance。但换一个角度,如何合理、高效的使用并解释预训练模型,也是学术界没有大GPU,大数据的研究者值得思考和探索的问题。朱军:媒体传播确实在“模型跨界”方面起到了一定的助推作用。过去一个机器学习模型需要三到五年,才逐渐被应用端使用,或者扩展到自然语言领域。现在大家获取信息的渠道更快更丰富,加上很多技术是开源的,这些都在一定程度上增加了模型跨界应用的可能。但这一过程中,大数据也起到了关键性作用。因为很多模型本身所用的数据来自不同的领域,自然语言里有,计算机视觉里也有,大家在范式上逐渐趋于同质化,这为加快模型迁移速度创造了条件。问题2:之后是否会有更多MLP、CNN跨界的新研究?MLP会像预训练Transformer和视觉 Transformer成为AI社区的主流吗?存在哪些应用局限?林宙辰:MLP应当只是昙花一现,它的性能并没有超越现有的最新方法,只是在“性价比”上超越了Transformer,而工业界并不在乎通过堆砌算力达到更高的性能。那些需要低计算复杂度的应用,如手机、边缘计算,它们对性价比更敏感,可能是MLP研究能获得较多应用的唯一场景。”朱军:MLP本身有一定的价值,大家肯定会沿着这条路不断深挖,类似工作还会有很多。但是不能期待MLP可以解决所有问题,它可能在benckmark数据集或者其他性能指标上有所提高,但同时损失东西也可能更严重,比如可解释性、鲁棒性。它的价值应该是分场景的,如果更关心可解释性,比如医疗诊断,那么它可能不适合。问题3:在跨界渐成趋势的背景下,研究人员在限定领域开展特定算法优化,模型改进的意义是什么?为什么要做跨界研究?吴琦:类似的跨界研究会越来越多,效果也不会差,但不能因此否定在限定领域中研究特定算法架构的意义,一方面,很多实际应用是集中于某一个特定领域的——实际应用更注重结果和效率,模型是否统一并不重要。另一方面是有效性,特定的算法架构也具有一定的可迁移性。尤洋:模型跨界在机器学习领域一直在发生,这是一个自发的过程。很多年前,人们就用LSTM在视觉数据集MNIST上取得不错的效果。我们设计任何一种方法,都是希望它具有通用性,而不是局限于NLP或者CV。虽然最开始有些研究是关于特定算法架构的增量、改进的,但是日后有可能在其它应用上也会产生好的效果。问题4:有人指出,MLP-Mixer、预训练CNN的出现,是因为没有意识到任务本身(图像分类)设置的局限性,才导致学术社区在狭窄的领域上做一些无意义的灌水,真正应该做的是不断去扩展对智能本身的理解,探索全新的任务。您怎么看?吴琦:我相信图像理解(分类,检测)的提高,对‘智能’的提高是很有作用的,因为‘智能’的输入是由‘感知’来获取的,而感知的一部分就是对视觉信息的理解,这个理解无论是向量化的,还是结构化的,对后续的‘认知’和‘推理’都至关重要。无论任务怎么‘新’,感知一定是一个非常重要前提条件。以VQA为例,当我们去使用ground-truth的图像信息(比如物体类别,属性,关系等)来作为后面回答问题推理模型的输入时,会发现结果很好。但是换成由模型识别出的图像信息之后,问答的准确率会大幅下降。所以某种意义上,‘视觉’能力是这个任务的瓶颈。而所谓‘智能’、‘推理’,在获取完美的视觉感知信息之后,就没有那么困难了。所以我认为,不管是MLP,CNN还是transformer,只要能够提高视觉感知的能力,就一定是在推进对‘智能’的理解。尤洋:我认为,每个成熟的研究人员都有自己的判断。对智能本身的理解非常重要,但并不能说其它研究工作是是“无意义的灌水”。一般重大科研成果的发布往往会超出所有人的预料,这意味着科研本身需要一定的自由度,所以我认为,学术社区只要能做到数据真实,有足够高的自由度就好。问题5:有人指出,借助于算力和数据的发展确实可以在一定程度上忽视算法的改进。但机器学习理论的研究也不能荒废。理论和实验是科学的两条腿,我们也需要不断从理论角度去探索能直接发挥作用的算法归纳偏置。在CNN和 Transformer的关系探讨中,有人指出,CNN偏重等变性,Transformer偏重关联性, 而一个好的架构应该两者兼顾。对于以上观点,您怎么看?尤洋:我认为,理论研究是非常重要的,如果我们希望能将AI用到一些未来的高危或重要的任务中,就需要坚实的理论依据。同时,我也认为,理论研究到一定程度是能指导我们获得更好的使用方法的。关于等变性和关联性的结合,这可能取决于具体的应用。如果未来能有模型能自动根据具体的应用去动态调整两者的比重,应该会很有意思。问题6:您认为目前AI社区应该更加关注哪些研究方向,不应该过多关注哪些研究方向?尤洋:我认为两个研究方向非常重要:(1) 自监督学习; (2) AI模型的能耗;过去10年,大规模数据集的创建和以GPU算力的大幅提升,使得监督学习 (supervised learning)方法在大规模应用中取得了非常好的效果。按照当前的技术趋势,未来人工智能技术的优化与应用需要更大的数据。然而,创建一个具有干净、准确标签的数据集非常昂贵和缓慢。与此同时,无标签数据正在以前所未有的速度生成,为了充分利用这些数据,设置一个合适的学习目标并从数据本身获得监督信息是一种潜在的有效解决方案。不同于依赖人工标注的方法,自监督学习 (self-supervised learning)通过探索数据点之间的关系而生成标签,使得研究人员能够无限地去探索数据中免费的标签信息。此外,由于标注人员的认知能力有限,人造标签可能会限制AI模型学习能力的上限。另外,由于能耗的原因,芯片产业在多年前已经从主频时代转向了多核时代。同样 ,AI模型训练的能耗可能会是未来人工智能发展的重要瓶颈。根据Emma Strubell等人 的研究,从纽约到旧金山每位旅客乘坐飞机产生二氧化碳排放量是1,984 lbs。然而,两年前训练一个Transformer模型却需要626,155 lbs (现在应该更高)。所以,要想让人工 智能未来广泛应用,研究人员应该尝试设计一些低能耗的方法。

关键词: MLP架构 胜算 Transformer 数据堆砌