Transformer XL 和 XLNet 是最近自然语言处理(NLP)领域里最热的话题之一,而它们都是 CMU 博士生 戴自航、杨植麟等人的工作。今年 6 月,CMU 与谷歌大脑提出的 XLNet 在 20 个任务上超过 BERT,并在 18 个任务上取得当前最佳效果的表现。

  作为这些研究的核心作者,来自卡耐基梅隆大学(CMU)的杨植麟刚刚进行完博士论文的毕业答辩。在进入 CMU 之前,杨植麟本科毕业于清华大学计算机科学与技术系,满分通过了所有程序设计课程,还曾创立摇滚乐队 Splay,担任鼓手和创作者之一。

  杨植麟师从苹果 AI 负责人 Ruslan Salakhutdinov,并曾经效力于谷歌大脑研究院和 Facebook 人工智能研究院,与多位图灵奖得主合作发表论文。他博士四年期间的研究曾在 30 多个数据集上取得历史最好结果 (state-of-the-art),包括自然语言推理、问答、文本分类、半监督学习、文档排序等,产生了较广泛的影响力。

  近日,机器之心与杨植麟进行了对话,内容有关Transfomer XL、XLNet的产生过程和技术思考,以及他共同创办的科技公司 Recurrent AI。

  鲜为人知的是,XLNet 的提出竟然是源于一次拒稿。「我们当时把 Transformer XL 的论文提交到了 ICLR 2019 大会,论文却被拒了,」杨植麟表示。「其实模型的效果非常好——在所有主流语言预训练模型的数据集上都是 state of the art,而且提升非常大。但当时被拒的理由其中很重要的一点是:论文评审觉得,做语言模型没有意义。」

  随着 Transformer-XL 越来越受到关注,由它衍生的 XLNet 效果惊人,这让我们重新思考对语言模型研究的「意义」到底如何评价。

  最强语言模型是如何诞生的

  语言模型研究的重新思考

  「审稿人认为 Transformer-XL 提升了语言建模的效果,但是没有证明在任何应用上有提升——当时自航和我处于一个比较矛盾的时刻」,杨植麟介绍到,「一方面语言建模是一个古老的问题,有大量的研究和进展;另一方面除了做无条件文本生成之外没有太多直接的应用。原本预训练是一个很好的应用场景,但是因为标准语言模型没办法对双向上下文进行建模,人们转而集中于自编码思想的研究。」

  换句话说,Transformer-XL 的审稿意见引出了这样的矛盾:一个大家做了很长时间的问题,其价值突然遭到质疑。

  杨植麟表示,XLNet 的初衷是复兴语言建模,证明更好的语言模型能在下游任务上带来更好的效果。「我们希望能提出一个框架,连接语言建模方法和预训练方法,这样语言建模方法的提升就可以通过预训练直接提升下游任务。」

  「研究中很有意思的一点是要根据不完整的信息选择研究方向,而选择的结果往往难以预测。Hinton 等人对深度学习的坚持就是一个成功的例子,因为在那之前很少人相信深度学习会有效果。」

  「具体到 XLNet,我们就是在不完整信息的情况下,判断语言建模是一个正确的方向。这样判断的原因有两个,一是如果衡量序列中被建模的依赖关系的数量,基于自回归思想的语言建模目标函数可以达到上界,因为不依赖于任何独立假设;二是语言建模任务的提升意味着模型的提升,所以很有可能在预训练上表现更好。最后 XLNet 的结果证明我们的判断是对的。」

  这就是 XLNet 提出背后的心路历程。

  算力和算法的关系

  不过事情也有另一面:对于研究人员来说,训练 XLNet 时耗费多少算力从来不成问题。杨植麟表示,因为与谷歌合作,其实在研究过程中他们是感知不到算力问题的。「我们没有使用谷歌云,而是使用了谷歌内部的计算集群,」杨植麟介绍道。「在这里,没有人会关心算力的价格,基本可以忽略不计。其实像 XLNet 这种量级的工作,在谷歌内部还挺多的,还有很多项目用到的算力比 XLNet 大。」

  花费数万美元成本训练最强大模型是近年来 NLP 领域里经常发生的事情。杨植麟认为,依靠算力解决问题是当前研究 AI 的王道:让计算机去做它的强项——计算;如果算力解决不了的问题,再用算法去做。

  「我读过人工智能先驱 Richard Sutton 几个月前的文章《苦涩的教训》,它的大意是说:你如果纵观 70 年的 AI 发展历程,就会发现以算力为杠杆的通用方法是最有效的,」杨植麟说道。「从深蓝、AlphaGo 到 NLP 最近的进展都遵循了这个思路。所以我们要做的事情就是:一方面把算力推到极致,另一方面发明和提升通用算法,解决更难的问题。XLNet 可以理解成这两方面的一个结合。」

  「把算力推到极致的好处是知晓当前算法的边界,避免在算力可以解决的问题上做一些不必要的算法创新,让大家关注最重要的研究问题。但同时大算力带来的弊端是提升了研究门槛,比如一般的学校和实验室可能没有资源做预训练。这个问题我觉得短时间内要通过不同的分工来解决,资源多的研究者利用资源做大算力研究,资源少的研究者做基于小算力的研究。」  郑州不孕不育医院:http://jbk.39.net/yiyuanzaixian/zztjyy/郑州不孕不育医院×××:http://jbk.39.net/yiyuanzaixian/zztjyy/郑州不孕不育医院排行:http://jbk.39.net/yiyuanzaixian/zztjyy/

  此外,最近 Facebook 提出来的RoBERTa也体现了这一点,杨植麟说:「现在预训练的提升主要来自两个方面,一个是算法和模型,一个是训练细节、数据和算力。RoBERTa表明了第二个方面的重要性,而 XLNet 一方面证明了在训练细节、数据和算力都差不多的情况下算法可以提升效果,一方面探索了增加训练数据的重要性。这两个方向是互补的,而且未来的发展还会持续在两个方向上提升。」

  「很多历史上优秀的工作比如 GAN 和 Transformer 都不需要特别大的算力;刘寒骁等人的可导网络结构搜索影响力很大,但就只用了三四个 GPU;我们的 Transformer-XL 最开始也是用一两个 GPU 就在中等数据集上验证了效果会比 RNN 好接近十个点。」