NLP自选系列:语义三巨人

弘·扬 | 首席科学家李维科普:语义三巨人

坚持语义和知识为基础的语言处理路线,是一条繁难艰辛的道路。语义是个大泥坑,能够驾驭它的人均非等闲人物。在计算语义界,有三位长期坚持超领域语义的顶天立地的大学者(如果要算第四位,也许应该包括英国的人工智能大师Wilks教授,他早年做过基于语义模板的纯语义机器翻译实验。再往前追溯,人工智能领域早期也有不少先驱者,不过都是在极为狭窄的领域尝试一些玩具知识系统)。这三位学者前辈是,坚持常识推理的 cyc 的 Lenat 教授,格语法(Case Grammar)和框网(FrameNet)的开创者 Fillmore 教授和《知网(HowNet)》的发明人中国机器翻译前辈董振东教授。他们对自己思想和信念的坚持、执着、反潮流和勇于实践,令人景仰。

这些智者的成果都有某种超时代的特征,其意义需要时间去消化或重新认识。可以预见,将来某个时候,当机器翻译和自然语言理解的应用项目穷尽了浅层可用的低枝果实之后,知识系统将会被进一步发掘、利用和欣赏。但目前多数项目还没有到山穷水尽的时候,急功近利是绝大多数项目和产品的固有特征,而且多数主事者也往往缺乏远见。绝大多数语言处理业者遇到语义和知识都是绕着走。

Dr. Douglas Lenat  三位语义巨人中探索知识最深入和纯粹的是 Lenat 教授,他带领团队手工开发的 cyc 知识系统,试图从常识的形式化入手,利用常识推理帮助解决语言理解等人工智能核心问题。可惜这套庞大的系统太过复杂和逻辑,在实际应用上有点像大炮打蚊子,使不上劲。

Charles J.Fillmore  Fillmore 教授是享誉世界的语义学家,他的格语法理论影响了一代自然语言学者,包括中国和日本自然语言处理领域的领军人物董振东教授和长尾真教授。

董振东教授  中国机器翻译和中文信息处理前辈、知网发明人。曾任中科院计算机语言信息中心语言知识研究室主任。

在很长一段时期,董振东教授是中国NLP、MT与世界的接口。知网(HowNet)是董老师的丰碑,它像一所常识百科,深藏着人类认知形式化的金子。

事实上,董教授语义思想的核心概念“逻辑语义”就来源于 Fillmore 的深层格 (Deep Case)。然而,Fillmore 本人的语义发展与董教授的创新发展走上了语义颗粒度不同的两条道路,前者的成果为 FrameNet,后者的结晶是《知网(HowNet)》。

可以从构建NLP应用系统的角度来看 FrameNet 和 HowNet 的不同语义层次,即,从分析器(parser)和应用(applications,包括机器翻译,信息抽取等)的分工合作的关系来看。

我个人觉得,FrameNet 过细(成千上万的 Frames 组成一个 hierarchy,即便只取上层的常用的 Frames, 也有几百个),不仅很难达到,而且实用上没有太多的好处。FrameNet 的提出,是格语法框架的自然延伸、扩展和细化,语义理论上有其位置和意义。但是在实用上,FrameNet 的地位很尴尬,他既不像句法层的主谓宾结构( SVO argument structure) 那样简洁和好把握,也不可能达到语用层的信息抽取模板(IE Template)那样可以直接支持应用(因为信息抽取是依赖领域的,而 FrameNet 原则上是不依赖领域的,或者最多是在语言学与领域之间起某种中介桥梁的作用)。

这样一来,从实用角度,与其分析到 FrameNet (这个太繁难了) 再行信息抽取,不如直接从 argument structure 进行(这个靠谱多了,very tractable),虽然理论上前者的抽取应该更加简单直接一些,但是由于 FrameNet 分析工作难度太大,终归得不偿失。换句话说,FrameNet 从使用角度看,语义做得过了(over-done),用起来不方便,没有多少实际利益。退一步回到句法为基础的 argument structure 如何呢?

Argument structure 立足于句法结构,主要论元最多不超过三个(up to 3 arguments):逻辑主语,逻辑宾语,逻辑补语,加上谓词 governor,构成一个四元组,非常简洁,与各语言的词典句型信息 subcat 相呼应,易于掌握和实现。再加上10来个带有逻辑语义分类的状语(时间、地点、条件、让步、结果等)和定语(颜色,材料,来源等)。这样的中间表达作为语言分析(parsing)的目标,作为应用的基础,已经可以应对绝大多数应用场合。Argument structure 中的逻辑宾语和逻辑主语有其独特的概括能力,对于利用句法关系的语义限制排歧多义词和做知识挖掘具有特别的价值。

HowNet 不满足于此,它的体系是对句法为主的 argument structure 进一步细化,譬如逻辑宾语细化到 “patient”、“content”、“target”、“PatientProduct”、“ContentProduct”和“possession” 等子类角色。最终达到具有90多个逻辑语义角色的相对纯粹的语义表达。HowNet 就是这样一个概念知识体系,逻辑语义是连接这些概念的主要工具。

从主谓宾定状补这样简练的句法关系,深入到逻辑语义的角色,再进一步把逻辑语义细化,常常的表现就是信息表达的浓缩和冗余。HowNet 这样精细的逻辑语义,不仅反映了一个依存概念到主导概念的逻辑结构关系,而且反映了主导概念的子类信息(hence 冗余了)。

例如,对于宾语的细化  “patient”、“content”、“target”、“PatientProduct”、“ContentProduct”,“possession” 等,显然是蕴涵了主导概念(谓词)的子类信息,而这些子类信息本来是已经附着在谓词上的。譬如作为 possession 的宾语,其谓词只能是 have、possess、own 这个小子类。信息表达的冗余意味着即便没有深入到细化的逻辑语义,系统并没有本质上的损伤,因为如果需要的话,细化信息依然可以通过句法关系节点的限制条件即时得到查询。

对于逻辑主语逻辑宾语等进一步细化的必要和利弊,我个人觉得是可以讨论的。首先是任何细化都是有开发和处理的代价的。更重要的是,其必要性究竟如何?从追求纯粹语义和逻辑、追求纯净的独立于具体自然语言的元语言表达的角度,我们总可以找到证据,证明细化是必要的。但是在应用现场,我们也可能发现,对于绝大多数应用,细化并无必要。

 

NLP自选系列2020专栏连载

【语义计算:李白对话录系列】

《朝华午拾》总目录

发布者

立委

立委博士,问问副总裁,聚焦大模型及其应用。Netbase前首席科学家10年,期间指挥研发了18种语言的理解和应用系统,鲁棒、线速,scale up to 社会媒体大数据,语义落地到舆情挖掘产品,成为美国NLP工业落地的领跑者。Cymfony前研发副总八年,曾荣获第一届问答系统第一名(TREC-8 QA Track),并赢得17个小企业创新研究的信息抽取项目(PI for 17 SBIRs)。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据