「深度学习的波浪在计算语言学的海岸线上往复经年,而今已如海啸一般向所有的自然语言处理(NLP)会议发起冲击」。两年前,在北京,Christopher Manning 如是展开了 ACL 2015 的结语。
事实上,自然语言处理领域就像一个处于环太平洋地震带上的岛国,地震与海啸来了又去,岛上的常住民已经习以为常。Manning 就是自然语言领域里的这样一位「常住民」。1993 年,《计算机语言学》杂志发行了一本特刊,专门讨论如何应用势头强劲的「经验式方法」(empirical methods)。当时,取得了三个(!)学士学位(数学、计算机和语言学)的 Manning 正在斯坦福攻读语言学博士学位。1999 年,《计算机语言学》杂志里,至少一半的工作采用了经验式的方法。这时候,Manning 带着他油墨未干的、重达 1.66 千克教科书《统计自然语言处理基础》,作为斯坦福自然语言处理组(Stanford NLP Group)的创始成员回到了母校。这一待就是 18 年。18 年后的今天,当年的方法又被深度学习「拍死在沙滩上」成了前浪,但在学者之中,Chris Manning 与他的研究热度丝毫不减。从树形 RNN 到基于神经网络的依存句法分析,Manning 毫无疑问是一位深度学习在 NLP 领域的开拓者。
然而,这位著作等身的学者对待深度学习的态度十分矛盾。一方面他对「神经网络的统治地位」毫不讳言:「2017 年 NLP 领域的共识是,无论研究什么问题,丢个双向 LSTM 模型一定能搞定它,不行再加个注意力模块。」而另一方面,作为一位对语言的结构性深信不疑的研究者,他时常为简单粗暴的神经网络所取得的「令人惊讶的效果」感到「感伤」:「人类能够理解彼此,不是因为我们会对听到的词做局部加权平均。然而在很多自然语言处理任务上,我们无法做出比使用加权平均效果更好的模型,这让我非常担心。」
图:Manning 一份演讲 PPT 里的哭脸
欣慰也好,担心也罢,深度学习已经不可避免地卷起惊涛,拍上堤岸,波及的范围不止于学界,也到了业界,甚至公众范围中。在刚刚过去的七月里,Facebook 由于多轮对话引擎效果欠佳而选择关停,却让英国镜报和福布斯这样的老牌媒体翻出了压箱底的黑客帝国剧照,祭出了《FB 人工智能发明自己语言引发工程师恐慌,紧急拔电源》这样的标题,很是喧腾了一阵。
图:引发恐慌的两个小结巴
在嘈嘈切切的背景里,自然语言之岛上的「原住民」们过着怎样的生活?八月,Manning 时隔两年再次来到北京,机器之心带着三个问题,与他谈了谈他的欣慰与担心,他受到的影响与影响到的人,以及他的语言梦想与当下的选择。
第一问:深度学习的流行有没有改变自然语言处理的初衷?
一直以来,人们对「自然语言」寄予厚望,将其与「图像」和「语音」并提,视作深度学习有望颠覆的第三个领域。然而自然语言与另外二者存在着显著的不同:
图像和语音领域都存在一个公认的主要任务:我们可以「解决」物体识别问题,可以「降低」词错误率,领域里的目标明确清晰。而自然语言的问题从一开始就超越了感知层面进入了理解层面。即使是最「客观」的机器翻译,也不存在一个唯一的、百分之百正确的答案。
此外,由于语言的复杂性,语言学家花了大量的精力把语言这个大问题拆解成若干诸如词性标注、句法依存分析这样的子任务(component task),以便计算机理解。但是这些建立在大量规则和假设之上的子任务或许会帮助机器理解人类语言,却不见得是人类大脑使用语言的方法。因此,如果神经网络是一个模拟大脑的结构,那么为了让它发挥出更大的作用,是不是应该重新定义需要解决的问题?
Manning 认为,总的来说研究者还是把深度学习视为工具在解决原来问题,毕竟深度学习的好用性就体现在,它几乎能无差别提高所有自然语言任务的效果。而任务层面的思路转变主要存在于两方面:一是自然语言生成课题有了热度。在过去至少十年的时间里,研究者对语言生成都没有什么兴趣,因为太难了。而神经网络提供了一个做特定场景下自然语言生成的机会。二是确实存在研究兴趣从子任务到端到端整体任务的迁移,如今热门的机器翻译、阅读理解,都是典型的端到端任务。
而在任务的定义上,深度学习圈当下最大的疑惑是,分布式表示里,语素表示(component representation)究竟有没有作用,有多大作用。过去,自然语言学者在开始一项任务时会默认,学习词性和句子语法结构是通向自然语言理解的必经之路。然而现在的端到端任务上,最好的深度学习模型几乎都没有利用任何语素知识。
学者们一直在就「使用语素表示是否必要」展开辩论。乐观主义者选择相信深度学习的学习机制可以学到所有。只要提供更多文本,它就可以默默学会学习分布式表达、句法,然后完成端到端任务。另一群人,包括 Manning 自己,认为把额外信息提供给深度学习模型是有用的,问题只是怎么做能达到最好的效果:是进行多任务学习,让模型同时尝试完成不同的子任务,从而引导它学习结构更好的、对语法更敏感的表达;还是仍然做一个流水线模型(pipeline model),像传统的系统一样,先学会句子结构,再接上后续的深度学习模型。「我确信会有把子任务结果合理融合进深度学习模型的机会。」Manning 这样总结道。
第二问:联结主义(connectionism)是否有可能与符号主义(symbolism)携手并行?
「有!」他的回答毫不犹豫。
符号主义者认为人脑的认知过程和计算机的符号计算过程类似。信息就像存储在计算机里的一串串的字符,而认知就像按照程序的指令依序生成字符串。然而联结主义者认为,信息是以非符号化的形式存在在神经网络的神经元间权重里的。认知是一个动态的分层的过程,每个神经元的激活与否取决于神经元间的权重和与其相连的神经元的活动情况。
当然,这两派看似水火不容的观点,也并非全无交点。Manning 就提到了一位试图调和两种范式的「实现型」联结主义者: Paul Smolensky。Smolensky 是一位有物理背景的机器学习研究者,由于对语言学过于感兴趣,最终成为了一名认知科学家。他觉得,人类大脑的「硬件」构造可能和现行的神经网络不太一样。它像神经网络一样,存在众多分布式的、具有连续值的表示。但是很多高级的认知过程是在符号层面完成的。这个符号体系可能稍显凌乱,比如随着时间推移,一个词的意思乃至词性都可能发生很大变化,但是大脑的语言、视觉以及其他很多工作(比如数学推理),可以说基本上是符号层面的。比如,人的眼睛接受到一个连续的画面,但是出现在大脑里的却是小孩、椅子、桌子这样的符号。所以 Smolensky 认为,你在你的大脑里编码了大量符号化的表达,然后,如同逻辑表达式的生成过程,你可以在脑海里把符号表示结合在一起组成更大的表示,然后在这个层面完成计算。「我觉得这个大方向是对的」,Manning 说。
那么,联结主义和贝叶斯学派呢?
Manning 思索了一下,列举了两种可能的结合方式。一种是用分布式的表示代替先验和证据,得到向量,计算似然率,然后在此之上完成类似贝叶斯网络中的符号计算。但是,「坦白讲,我总觉得这不太靠谱。」另一种则更多借鉴了贝叶斯网络或者说贝叶斯统计的概念(你的心里首先有一个先验分布,然后会根据所见的证据更新你的认知),把神经网络的结构看做一种先验。例如,打算采用卷积神经网络解决特定问题时,卷积结构就是要学习的模型的先验。
此外,还有学者认为,人类的大脑可能具有贝叶斯风格的结构,但是这种模型放在机器上会变得非常昂贵而低效。考虑到神经网络的效用,你可以把它看做一个可以近似贝叶斯网络,可以用来快速地做推断。Manning 对这种观点的评价是,「我不知道这是不是一种正确的思考人类大脑结构的方式,但是它确实是一个能够很好结合二者优点的思路。」
第三问:语言是不是序列的?序列模型是不是描述语言的最好方式?
Ted Chiang 在他荣获 2000 年星云奖的短篇小说《你一生的故事》里,描述了一类被我们命名为「七肢桶」的外星人和他们的语言。他们的书面语言是一个完全独立于口语存在的体系,不受「序列」这个条件的束缚,充分地利用了二维的空间。一个字就是一个小墨团,一段话就是一个大墨团,「顺序」这个概念被抛弃了,从任意地方读起都不会影响你的理解。语言的表象之下,是七肢桶不同于人类的思维方式。
人类的语言又真的是序列的吗?后一个词真的是由前几个词确定的吗?如果说,虽然我们的表达是时序的,但思维是全局的,那么序列模型真的是理解语言最好的模型吗?
Manning 给出的答案是:语言不是序列的,但序列模型可能是当下综合各种因素之后,最好的语言描述方式。
语言不是序列的。语言有一些序列的场景,人们在和彼此沟通的时候传达的信息是序列的,声音是序列的,把字和词组成句子的过程是序列的。但是,解读序列的方法不一定是序列的。词组成短语,短语又组成子句,语素间隐藏的联系引出了代名词,有了指代关系。一个句子宛如一棵树,茂密的枝干代表着繁多的结构,想要获得最好的模型,就要捕捉这些结构。
事实上,Manning 早期的深度学习工作一直致力于构建树形模型,因为在他看来,树形模型是捕捉语言不同于线性的视觉或者信号处理的结构特点的最简途径。然而近两三年间,我们不难发现,他重点关注的的工作都基于序列模型。「听起来很奇怪,因为好像在走回头路。从某种意义上来讲,也确实是在走回头路。」他坦诚地承认了这一点。
走回头路的原因则有很多。首先,纯粹的序列模型对大数据而言非常有吸引力。想象一下:一个一条路走到底的、无需引入其他任何结构就能学习千万级别的文本数据。二是它非常适合当下的硬件技术,树形模型里,任何「组成短语 A 还是短语 B」的选择与尝试都会损失 GPU 的高效性。反之,如果同时对大量数据进行同种运算,GPU 会非常快。因此,给定现有的硬件条件和数据情况,有非常多理由支持研究者选择使用序列模型。
还有一些技术原因有待解决,比如,如果引入了句子结构就必然要做硬决策,硬决策没法很好结合目前的学习算法(例如反向传播)。结合不了就只能用强化学习这样的技巧,虽然近年研究强化学习的热情很高,但是获得一个好用的强化学习模型可比反向传播模型难多了。
此外,关于是否要在深度学习模型中明确地将语言结构表达出来这一点,最近也有不少发现。尽管在序列模型里,随着时间步长的推移你得到的只是一个又一个大型的向量,但是深度学习模型非常高效的一点就在于,它给了研究者很大的灵活性去利用这些向量。在模型内部,它可以习得如何表达并利用特定的语言结构。
「因此,我认为序列模型很有效,但同时我不觉得它会是最终的自然语言解决方案。无论如何,最终我们会回到非序列模型,表达很多比序列更有趣的结构。」Manning 说。
结构,结构…… 如果让一个足够智能的关键词提取模型分析我们的对话,「结构」这个词无疑会排名关键词第一。就连 Manning 自己最近的研究课题,关系抽取,也正瞄准了「从文本中到结构化信息」这一主题。
「我们试图从文本中建立知识库。从科学期刊到娱乐杂志,把那些用来给『人』提供信息的文章变成机器可用的结构化的知识库形态。现在知识库的构建还是一个纯手工过程,还没有技术能让计算机『读懂』文章然后自己建立知识库。这和机器阅读理解或者自动问答不同,不是一个『文本到文本』的过程。在知识库的构建过程里,信息的汇总是无法通过浏览纯文本完成的,我们总要把人类语言变成结构化知识。」
而以结构为线索,我们也终于理解了 Manning 看似矛盾实则非常统一而坚定的态度:他肯定神经网络和序列模型的现在,因为它们在捕捉结构方面相比于其他模型确实有可取之处;他否定神经网络和序列模型的未来,因为天然的局限性决定了它们就是无法捕捉到那些必不可少的结构;他在还没有可行方法出现前相信联结主义和符号主义的结合,因为大脑的结构、人类思维的结构就是这样做结合的…… 我们也谈到了中文在自然语言处理中的特殊性,「同样做句子成分分析或者翻译,中文就是比其他语言困难。因为它更模糊,没有明确的时态变位、没有语法性别,而且是少有的、可以自由地省略任何句子成分的语言。」正是这些变化无常的结构,让再昂贵的语言模型也变得不完美,却同时带给人类无与伦比的美。
「我们的面前还有太多需要完成的工作」,谈及模型与语言本身的差距,他严肃到近乎焦虑。「现在我们仅仅能够用自然语言理解模型做一些非常非常简单的小事。它们可能很好用,例如谷歌的自动回复,七分之一想要简短回复对方的人会选择用它来生成回答了。但是更为复杂的尝试大多数都不成功。我们的技术还远远不够好,大部分对话机器人仍然在使用非常简单的机器学习文本分类器来确定对话的主题,然后用非常简单的手写规则完成一些填空工作给出一个回答,这个系统一点也不复杂,因此也做不了什么非常有用的事情。虽然领域里热情很高,但我觉得在未来几年里,会有大部分努力宣告失败吧。」
「我们的面前还有太多需要完成的工作」,他重复了一遍,停顿了一下,或许脑海里逐一浮现了他树状的模型,图状的文本信息,所有已完成的未完成的精妙结构…… 然后,他又变成了那个亲和到近乎老顽童的 Chris Manning:「看样子,短时间内我不会失业了。」
References:
[1] Chiang T. Story of your life. Arrival[M]. New York: Vintage Books, 2016:91-145.
[2] Domingos P. Master Algorithm[M]. Penguin Books, 2016.
[3] Garson J. Connectionism. California: Edward N. Z (ed.), 2016. [2017-08-25]. https://plato.stanford.edu/entries/connectionism/#ShaConBetConCla.
[4] Manning C D. Computational linguistics and deep learning[J]. Computational Linguistics, 2016.
[5] Manning C D, Schütze H. Foundations of statistical natural language processing[M]. Cambridge: MIT press, 1999.
[6] Pennington J, Socher R, Manning C. Glove: Global vectors for word representation[C]//Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP). 2014: 1532-1543.
And multiple keynotes of Christopher Manning: Tsinghua 2017, CIPS Summer School 2017, Simons Institute 2017, SIGIR 2016, ACL Tutorial 2016, Workshop on Vector Space Modeling for NLP 2015.
机器之心邀请您参加 2017 中国互联网安全大会。更多详情,点击「阅读原文」进入活动官网。