正在美国新奥尔良召开的 AAAI 2018 的经典论文奖颁给了《
Algorithm and Tool for Automated Ontology Merging and Alignment》。这篇论文发表在 2000 年的第 17 届 AAAI 大会上。这次颁奖是为了表彰这篇论文在本体匹配和集成研究方面的先驱性贡献,论文中分析了这个问题的具体情况,并提出了首个创新的解决方案。组委会认为这篇论文直到今天也有重要意义,它非常清晰地定义了本体合并问题,并创造了启发式的工具来应对这个问题。
在计算机科学与信息科学领域,理论上,本体是指一种「形式化的,对于共享概念体系的明确而又详细的说明」。本体提供的是一种共享词表,也就是特定领域之中那些存在着的对象类型或概念及其属性和相互关系;或者说,本体就是一种特殊类型的术语集,具有结构化的特点,且更加适合于在计算机系统之中使用;或者说,本体实际上就是对特定领域之中某套概念及其相互之间关系的形式化表达(formal representation)。本体是人们以自己兴趣领域的知识为素材,运用信息科学的本体论原理而编写出来的作品。本体一般可以用来针对该领域的属性进行推理,亦可用于定义该领域(也就是对该领域进行建模)。作为一种关于现实世界或其中某个组成部分的知识表达形式,本体论目前的应用领域包括:人工智能、语义网、软件工程、 生物医学信息学、图书馆学以及信息架构。
趁获奖机会,AAAI 组委会邀请了论文作者之一的 Natasha Noy 进行演讲。当年论文发表时 Natasha Noy 还在斯坦福大学攻读,如今她就职于谷歌研究院。
Natasha Noy:谢谢邀请我演讲,这是一次很有趣的机会。
当时研究这个问题的时候我还在斯坦福大学研究生物医学信息,当我们在研究神经细胞的时候遇到了这个问题。论文完成后投到 AAAI ,当告知被接收之时,我们也觉得很惊喜。在座的各位如果对自己的论文不是很有信心,其实也可以投投看,最坏还能怎么样呢。今天演讲主要包含以下四部分内容:
本体论的早期发展:需要合并,需要对齐
其实本体论的研究由来已久,它可以研究任何实物上的任何一个组成部分。它的定义可以看作是世界上任意两个事物之间的关系。到了上世纪 80-90 年代,人工智能的出现重新统一化了问题的形式。
这是当年的论文,也有那个时代定义的框架用来交换知识、正式地定义问题。如果让智能体能够对世界建立起正式的描述,而且理解这些描述,它们就有可能可以合作解决问题。
这种分享知识的想法在当时还很初级,现在已经迅速发展到了知识图谱;虽然听起来不太一样,但是其实和谷歌知识库是一回事。现在许多公司都有知识图谱,用它来描述关系和实体。
最初的本体论方法并不正式,现在已经发展得很正式。当时有两个问题在各种论坛上反复被讨论提及,一个是「本体论是什么?它需要变得有多正式?什么时候才能提取出确定性的内容?」在 AAAI 1999 的论坛上就讨论了这个问题。
另一个问题是「是否每个领域都需要一个独立的本体论,还是可以有一组共通的理论在所有领域内共享」,比如在金融、生物、医疗中的本体论是否相同。这个问题的两种观点当时都有很多人强烈支持,有一些针对单个领域的本体论提出后就得到了很多人支持,典型的例子比如基因领域,表达基因和生物函数的时候,不需要考虑别的麻烦的东西,直接使用基因的本体论就好了。
到了我们写论文的时候,我们关心的是创造出一个足够规律化的、足够哲理化的本体论理论作为知识分享的描述方法的全部内容,不仅很适合阅读,也会构建出我们自己的本体论,从而有更多的研究和项目可以建立在上面,我们自己也会有一些交互性的工具可以使用。
重新审视这篇 AAAI 2000 的论文
现在看这篇论文的话,这确实是一次有趣的实践,尝试为这个问题的研究做出贡献。而且反正当时也有很多人在做本体合并和对齐研究,不管我们到底有没有发表这篇论文,我们也就是刚好碰上了这个热门的研究课题。
不过有几件我们尝试做的事情到现在都还有意义,我们尝试给本体合并和对齐下定义。当时人们只能做到:这是一件事情,这是另一件事情,然后有一些公共知识的表征。
我们也设计并实现了一个算法 PROMPT,作为广泛使用的开发工具 Protege 的插件,有不少研究者用它来帮助解决他们的问题。
另一件我们做到了、但当时并不那么流行的事情,就是这个工具是交互式的,我们其实花了很多心血开发它。它的规模并不大,我们当时并没有很多资源,不过我们还是在考虑如何评估一个这样的交互式系统,要问哪些问题,我们如何评估它确实有所不同。
合并还是对齐,这是我们当时主要考虑的问题之一,这真的是两个不同的过程吗?我们必须有一个基于本体论的工具来处理它们。在研究了一些案例之后我们觉得,确实不能把合并和对齐两件事混为一谈,必须各自独立。我们就给它们做了不同的定义,虽然它们内部的机理很相似,但确实是两件不同的任务。
据此我们也就提出了我们的算法 PROMPT,它首先提出初步的建议,然后进入这个逐步选择、提议、验证的过程。
这是我们的软件界面,作为 Protege 的插件。
我们需要考虑如何评估它。首先我们考虑了把人做实体合并的表现和工具的表现做对比,一个人用 PROMPT,一个人不用,把做出的动作和工具建议的部分做对比,据此计算准确率和召回率。在 2000 的时候还很少有人考虑这些问题,这可能也是我们的论文显得突出的原因。
这一点在今天的意义就是,我们需要考虑我们的交互式系统实际上要做什么、我们要解决的问题到底是什么、是交互的部分更重要还是算法的部分更重要。
自 2000 年之后的本体匹配、合并、对齐的发展
论文本身就说这么多。当时就有很多不同的本体论理论在发展,到现在这个领域的研究内容非常的丰富,在谷歌上搜索都是上万个结果。几乎任何相关学术会议都有本体论对齐的会场或者论坛。
这么多年发展下来,本体论的方法方面也出现了很多有意思的点子,最初有词法相似性、结构相似性;也有了使用外部资源的方法;最新的还有机器学习的方法。
之所以这个领域有这么多的研究成果,我觉得本体对齐评估组织(OAEI)也功不可没。它从 2004 年开始运转,每年都会设计不同的任务对各种方法进行评估,基本上创建了许多对齐任务的黄金标准。这些任务里也是有的更正式一些,有的不正式一些,有基于不同语言的本体对齐对比,尤其也有我们当时研究的生物医学的。
参与 OAEI 评估的系统在前几年也不断增多。
当今的本体论系统发展
我近期看了 OAEI 上的最新结果,医学的这个是唯一一个大规模实验得到的结果,不过 2017 年的最佳表现的系统并没有比 2004 年的系统提高太多。
也有过新的互动式评估的匹配测试。
本体论的研究方面这些年来确实有各种各样的进步,提升了准确率和召回率、能解决更复杂的问题、有交互式评估的工具、学术会议也有本体论的会场等等。
不过工业界运用本体论的例子还非常少,工业级会议几乎不讨论本体对齐,他们确实有知识图谱,但用的方法不是本体对齐。
我自己也在思考为什么。我也尝试查资料了解实际应用的真实需求,想到了这些问题,但还没有确切的答案。再过 15 年,本体论有更好的发展的时候可能我们会有更好的答案。
不过挑战可能也并不在于找到更好的对齐算法,而是让让更多的实际应用能够使用算法。
谢谢大家!