值得一提的是,传统 AI 也倚重手工编制的规则系统,但是它与语言学家的计算文法有一个根本的区别:AI 规则系统远远不如计算文法现实可行。AI 的规则系统不仅包括比较容易把握(tractable)和形式化(formalized)的语言(学)规则,它们还试图涵盖包罗万象的常识(至少是其中的核心部分)以及其他知识,并通过精巧设计的逻辑推理系统把这些知识整合起来。可以说,AI 旨在从本质上模拟人的智能过程,因雄心太大而受挫,以致多年来进展甚微。过去的辉煌也只表现在极端狭窄的领域的玩具系统(后来也发展了一支比较实用的专家系统),当时统计模型还是没有睡醒的雄狮。以 ML 为核心以大数据(Big data)为支撑的统计方法的兴起,让 AI 相形见绌。有意思的是,虽然人工智能(台湾同胞称人工智慧)听上去很响亮,可以唤起普罗大众心中的某种科学幻想奇迹(因此常常为电子产品的包装推销商所青睐),在科学共同体中却相当落寞:有不少统计学家甚至把 AI 看成一个过气的笑话。虽然这里难免有王婆卖瓜的偏见,但 传统 AI 的方法论及其好高骛远不现实也是一个因素。也许在未来会有 AI 的复兴,但是在可预见的将来,把人类智能当作联接输入输出的黑匣子的机器学习方法,显然已经占了上风。
由此看来,ML 与 AI 的关系,颇似 NLP 与 CL 的关系,外延几乎重合,ML 重在 AI 的应用(包括 NLP),而 AI 理应为 ML 的理论指导。可是,由于方法学上的南辕北辙,以知识表达(Knowledge representation)和逻辑推理(Logical reasoning)为基础的传统 AI越来越难担当实用智能系统(Intelligent systems)的理论指导,智能系统的地盘逐渐为以统计学和信息论为基础的机器学习所占领。国宝熊猫般珍稀的坚持传统AI的逻辑学家(如 cyc 发明人 Douglas Lenat 老先生)与擅长 ML 的统计学家(多如恐龙)虽然问题领域几乎完全重合,解决方案却形如陌路,渐行渐远。
还有一个几乎与自然语言处理等价的术语,叫自然语言理解(Natural Language Understanding, or NLU)。从字面上,这个义为“机器理解语言”的术语 NLU 带有浓厚的人工智能的烂漫主义意味,不象“机器处理语言”那样直白而现实主义,但实际上,使用 NLP 还是 NLU, 正如使用 NLP 还是 CL 一样, 往往是不同圈子人的不同习惯,所指基本相同。说基本相同,是因为 NLP 也可以专指浅层的语言处理(譬如后文会提到的浅层分析 Shallow parsing),而深度分析(Deep parsing)却是 NLU 的题中应有之义,浅尝辄止的不能登 NLU/AI 的大雅之堂。不妨这样看,带上AI的眼镜看,此物为NLU;而以 ML 而观之,则此物只能是 NLP。
此外,自然语言技术或语言技术(Natural language technology)也是 NLP 的通俗化表达。
最底层最核心的是 deep parsing,就是对自然语言的自底而上层层推进的自动分析器,这个工作最繁难,但是它是绝大多数NLP系统的我称之为带有核武器性质的基础技术,因为自然语言作为非结构数据因此而被结构化了。面对千变万化的语言表达,只有结构化了,patterns 才容易抓住,信息才好抽取,语义才好求解。这个道理早在乔姆斯基1957年语言学革命后提出表层结构到深层结构转换的时候,就开始成为(计算)语言学的共识了。结构树不仅是表达句法关系的枝干(arcs),还包括负载了各种信息的单词或短语的叶子(nodes)。结构树虽然重要,但一般不能直接支持产品,它只是系统的内部表达,作为语言分析理解的载体和语义落地为应用的核心支持。
有两大类抽取,一类是传统的信息抽取(IE),抽取的是事实或客观情报:实体、实体之间的关系、涉及不同实体的事件等,可以回答 who did what when and where (谁在何时何地做了什么)之类的问题。这个客观情报的抽取就是如今火得不能再火的知识图谱(knowledge graph)的核心技术和基础,IE 完了以后再加上下一层挖掘里面的整合(IF:information fusion),就可以构建知识图谱。另一类抽取是关于主观情报,舆情挖掘就是基于这一种抽取。我过去五年着重做的也是这块,细线条的舆情抽取(不仅仅是褒贬分类,还要挖掘舆情背后的理由来为决策提供依据)。这是 NLP 中最难的任务之一,比客观情报的 IE 要难得多。抽取出来的信息通常是存到某种数据库去。这就为下面的挖掘层提供了碎片情报。