词性标记(POS Tagging)、句法树分析(Dependency Parsing, Discourse Parsing)、语义角色标注(Semantic Role Labeling)都是自然语言处理(NLP)中的经典任务,些任务有些已经几乎可以说是成熟的技术了,比如词性标记,而有些依然是非常困难的任务,比如Discourse Parsing。 这些任务都有一个共同的特点,那就是他们的这些需要预测的目标其实都是由语言学家们定义出来的。 每次阅读到这些任务的论文的时候,我脑海中一直有着这样一种疑问: 为了让机器理解自然语言,我们真的需要这些信息吗?
我的怀疑来源于两方面的思考
-
文法信息是语言本身的一部分. 在几万前,人类的始祖发明使用语言的时候,他们是没有这些所谓的句法、文法、词性标记这些概念的,但是这并不妨碍他们发展出语言。 当然,这个论断未必是对的。 在和同组的同事讨论的时候,也有人指出,语言中的这些规则可能是有当时的一些掌权者规定出来的,未必一定就是自然演化的结果。 我不否认这样的可能性,但我还是倾向于语言是自然演化的结果。 语言是自然演化的结果,这又说明了什么呢? 这说明,这些文法、句法的规则本质上是不存在的,它们只是对自然现象(语言)的一种非常粗糙抽象总结(文法规则)。 或者,另外一种说法就是这些所谓的文法信息本身就是语言本身的一部分. 那么,我们真的有必要单独把这部分信息抽离出来吗?
-
人类不需要文法一样能学习掌握语言. 一个小孩在成长过程中是从大人的言行中学习获得语言能力的。 想象一下,在古代遍地都是文盲的时候,大部分农民都是不识字的,他们不懂得文法、不懂得句法,却依然能够使用自然语言和他人进行交流。 这说明,这些句法、文法信息是包含在语言中的,人类不需要特意地去学习这些规则,一样能学会使用自然语言。 这再次印证了,人类学习语言是不需要这些信息的。
现在,我们的任务是希望机器能获得同样的能力。 正常的想法是,让机器在最大程度上模拟人类的学习过程,跳过这些条条框框的规则,直接从语言本身理解语义。 然而,这对机器来说,实在太困难了。 我认为主要的原因还是因为目前的机器学习模型还不够强大,无法从语言本身中学习得到这些规则。 因此,我们需要人为的总结出这些规律,然后灌输给机器,让机器能够更加容易地学习。 但是,这只是一种折中方案,是一种不得已的妥协。 我相信,未来一旦出现了更加的强大的学习模型,这些所谓的文法规则其实是不需要的。
总结来说,从短期发展来说,这些文法、句法信息是有助于机器理解语义的;但是从长期来看,尤其是当具有更强学习能力的模型、具有更强计算能力的机器被开发出来之后,这些辅助的信息未必就是必须的了。
更新日志
- 2018年8月25日写作并发表