创头条App
扫码下载APP
扫码下载APP

您是个人用户,您可以认领企业号

    免密码登录
  • 图形验证码
  • 获取验证码
  • 立即登录
第三方账号登录
·
·

Hello,新朋友

在发表评论的时候你至少需要一个响亮的昵称

GO
资讯 > 融资并购 > 泰岳论道丨首席说:NLP场景应用中的本体论
分享到

泰岳论道丨首席说:NLP场景应用中的本体论

时间:03-19 12:52 转载来源:神州泰岳

本体论是什么

本体论(Ontology)是一个哲学概念,是研究存在本质的哲学理论。近几十年里,这个词被应用到计算机界,并在人工智能、计算机语言以及数据库理论中起到越来越重要的作用。

计算机科学领域中,本体(Ontology)是共享概念模型明确的形式化规范说明。

01

本体定义的四层含义

概念模型(Conceptualization)

明确(Explicit)

形式化(Formal)

共享(Share)

概念模型:通过抽象出客观世界中一些现象的相关概念而得到的模型,其表示的含义独立于具体的环境状态。

明确:所使用的概念及使用这些概念的约束都有明确定义。

形式化:本体是计算机可读的,即计算机可处理。

共享:共同认可的知识,反映相关领域中公认的概念集,它所针对的是团体而非个体。

本体的目标是捕获相关领域的知识,提供对该领域知识的共同理解,确定该领域内共同认可的词汇,从不同层次的形式化模式上给出这些词汇(术语)之间相互关系的明确定义。

本体的一个典型应用是万维网联盟W3C推动的语义网(Semantic Web)。语义网是由互联网的发明人蒂姆·伯纳斯-李(Tim Berners-Lee)提出的,希望构建一个通用本体,提供一种计算机能够理解的、结构化的语义描述机制,及一系列推理规则以实现自动化推理。 语义网将不仅仅为人类更能为计算机带来语义内容,使计算机能够“理解”Web内容,进而实现信息处理的自动化。

对于语义网而言,本体是一个形式化定义语词关系的规范化文件。最典型的本体具有一个分类体系和一系列的推理原则。其中,分类体系定义对象的类别和类目之间的关系。实体之间的类/子类关系对于Web应用具有重要的价值。在本体中,还可以为某个类添加属性来定义更多的类目关系。这些类目关系提供了的推理的基础。借助本体中的推理规则,语义网应用系统可以提供更强的推理能力。

例如可以在一个地理本体中加入这样一条规则:

“如果一个城市代码与一个省代码相关,并且一个地址利用了城市代码,那么这个地址与就与相应的省代码相关”。

通过这一规则,程序可以推理出中国科学院文献情报中心,在中关村,应当在北京市。

在具体的应用领域,本体也有较多应用,如下面是几个有代表性的领域本体。

Cyc:是一部关于论域之形式化表达的基础本体。

疾病本体(Disease Ontology):旨在促进各种疾病及相关健康状况向特定医学代码的映射的本体。

都柏林核心:是一部关于文档和出版方面的简单本体。

NLP场景应用为什么需要本体论

本体,作为一种概念模型,可以作为NLP场景化应用的知识表示框架,在特定场景下,把与场景相关的领域知识、NLP任务、语言资源等内容进行形式化规范描述,以实现面向任务的概念模型,使得NLP场景应用实现最大化的共享。本体论可以在以下几个方面,支持NLP场景应用的设计和开发。

1、支持场景应用需求和目标的明确界定

NLP需求,可以说无处不在,只要有文本的地方,就有NLP的用武之地。但是我们常常又无法用一句话来概括NLP的需求。这些需求,都必须结合场景才能明确。

例如同样的语料在不同场景中需求不同:

场景:微博客服

需求:投诉分类

输出要求:客服人员关心的投诉类

输出示例:“信用卡->额度->临时提额”

场景:营销

需求:潜客信息

输出要求:业务、产品相关的潜客信息

输出示例:“出国金融”

即使同样的客服投诉分类场景,不同银行分类体系也不同:如:“信用卡->额度->临时提额”,或是“信用卡->额度不够”。

这对NLP来说,显然也是不同的需求。

本体论可以为场景应用提供需求表示框架。对于上述提及的投诉分类需求,可在本体论思想指导下,通过构建投诉分类树来明确界定分类的数量、层级、每个类的定义、类与类之间的区别等。对于客服场景和营销场景需求的不同,可通过分别构建客服场景分类树和营销场景分类树来实现。对于各个银行不同的客服体系,可通过分别构建各银行的投诉分类树来实现。本体论可以把复杂多样的场景需求,转化为NLP开发人员熟悉的形式化表示(如分类树),实现需求和目标的明确界定。

2、支持场景相关的领域知识的明确表示

NLP应用需要领域知识或常识知识。

如“股市翻红”这一简单描述,到底是利好,还是利空?这就涉及到股市的常识,如果应用场景是中国股市,那么“红色”是上涨,“翻红”是利好;如果应用场景是美国股市,那么“红色”是下跌,“翻红”就是利空。

领域知识通常也是特定场景下的专门知识,也叫业务知识,如银行客服的投诉分类体系,每个类别都包含哪些内容等,这些是具体场景下的专业人员所拥有的专业知识,必须来源于场景。

领域知识的不同,是NLP应用共享、复用的最大障碍。

本体论可以为每个场景的领域知识表示提供形式化框架。领域知识一般有如下两种来源。

01

业务知识

业务人员的业务知识,,或者以文本形式存在的业务文档,需要为业务人员提供手段,来形式化的知识。

02

业务数据

如客服数据的分类数据,需要利用机器学习、深度学习算法,从数据中自动学习出领域知识。

本体论可为两类知识提供统一的分类组织,这也是本体论最擅长的。同时,对于第一种,本体论可以提供类似形式化规则的表示形式,帮助业务人员表示领域知识;对于第二种,本体论可以提供机器学习算法的组合框架,帮助算法人员从数据中学习领域知识。

3、支持NLP任务选择、流程组装的明确表示

NLP技术的专业性很强,底层基础技术有自动分词、词性标注、实体识别,乃至当前流行的深度学习预训练模型等,应用技术有分类、匹配、关联、抽取等。每一种技术或算法,往往都只擅长某类特定的任务。NLP技术是零散的,要处理一段文本,需要把各种NLP技术拼凑起来,中间涉及很多个步骤,如自动分词、词性标注、句法分析、篇章分析等;也涉及很多个算法,如深度学习的CNN、LSTM、BERT等,每个算法都有其自身的约束条件,在条件满足的前提下,才能得到较好的效果;需要有大量的标注语料,让机器自动训练;需要进行参数优化,而调参的过程,像个黑盒子,需要技术人员反复尝试。NLP技术开发的过程,从外人看起来,更像是艺术创造。

NLP任务的确定,算法与模型的选择,都受应用场景的支配。如果我们把NLP技术也看做一个独立的知识体系,本体论可以为NLP知识体系提供形式化表示框架。

01

独立的算法组件信息

一个个独立的NLP算法组件的信息,算法的优劣性,算法的前置条件,算法适用的场景,在不同场景下的应用效果等。

02

知识、数据资源

算法所需要的知识或数据资源,是否需要形式化规则,是否需要训练语料,算法的参数设置等。

03

NLP任务信息

NLP任务信息,包括场景的任务类型,以及每个任务下,可以选择的算法等。

本体论可以把看似神秘的NLP技术规范化,使得NLP算法的流程组装、复用成为可能。

4、支持NLP相关语言资源的明确表示

NLP相关的资源很多,简单的如分词词表、词性标注集、同义词表等词表资源,复杂的如宾州树库这样的标注资源,也有针对不同应用单独建设的资源,如情绪词典等。每个资源都只针对NLP处理的一个环节,每个资源都有自己的组织方式和建设思路。资源之间经常无法统一,比如汉语的词性标注集,就有语委、北大、微软、清华等多个版本,每个版本都有自己特殊的定义。资源的不统一,造成了NLP开发中低层次重复的浪费,也使得资源很难复用。

本体论可以为语言资源的组织提供形式化的表示,比如大家熟悉的WordNet,就是一个词语的本体,可以把每个词语的同义词、上下位等进行明确的表示。利用本体的表示框架,可以把各个版本的语言资源有效融合,形成统一表示,以方便使用。针对情绪识别这样的需求,也可以在基础资源基础上单独构建一个子本体,来对情绪相关的资源进行表示,如有的情绪资源包含了140多种情绪,每种情绪都可以配置汉语、英语等多语种的词汇。

泰岳语义工厂的本体论

泰岳语义工厂,是一个场景化的自然语言处理平台,也是一个以本体论为主线的自然语言处理平台。为了与通用的本体区分方便,泰岳语义工厂中的本体,简称为场景本体

一个场景本体,是面向场景的形式化模型,服务于一类特定场景的需求,其包括三部分内容:本体模型、要素模型、概念模型。

1、本体模型(简称为O)

本体模型,其目标是将场景中的领域知识进行形式化描述,并将这些领域知识与NLP任务关联起来,以将NLP技术有机地组织到一起,对领域知识进行处理。

本体模型形式上是由一个本体树和领域模型构成的。本体树是类目体系的形式化描述,领域模型是推理规则、预训练模型等的形式化描述。

一个本体树,由一个或多个本体节点构成,不同本体节点之间可以有关系来表示。本体树的每个节点,是该场景涉及的对象的类别,也可以是类别之间的关系。典型的本体树是一个分类体系,每个类别构成一个本体节点,本体树之间的层级关系,体现了类别之间的包含关系,这样的本体树可以用于分类任务的输出。本体树也可以用于信息抽取中的字段定义,用于知识图谱中的关系定义等,这些都是具体场景下,对NLP任务的输出或目标的表示。本体树也可以用于NLP任务的输入数据的表示,如数据的分类,按来源、时间、初始类别等,也可以是标注数据的标签体系等。

本体树的根节点,有多个属性,来描述本体树整体的信息,包括的属性有:

01

基本描述

对本体树的说明信息,如用途、用户等基本信息。

02

领域

本体树对应的领域,可以是宽泛的领域,如社会新闻,可以是相对细化的领域,如银行客服。

03

任务类型

是分类、聚类、信息抽取、关系抽取、框架填充、相似性计算等NLP任务。一个本体树可以有一个或多个任务类型。任务类型可以将本体树与NLP任务关联起来。

04

服务地址

本体树对应的NLP服务URL地址。可以用开发工具,为每个本体树开发一个或多个服务,实现本体树对应的数据加工。

05

领域模型

本体树对应的领域模型,一个本体树,可以对应一个或多个领域模型。

本体树的每个本体节点,是一个抽象的对象,可以有一个或多个属性,来对节点进行具体刻画。本体节点的属性可以有:

 

01

节点类型

是分类节点、抽取节点、关系节点,或者是属性节点,是父节点的一个属性。节点类型可以继承父节点。节点类型也可以是另外一个本体树,实现跨树引用。

02

基本描述

对本体节点的说明信息,如节点对应的语料示例等。

一个领域模型,是本体树对应的推理规则的形式化描述,一般是场景相关的业务知识。领域模型支持两种类型,一种是概念模型,另一种是机器学习预训练模型。

概念模型,支持用形式化规则,如产生式规则,直接对领域规则进行描述。概念模型中的规则,也称为概念表达式,由一个或多个要素和概念,通过算子组合而成的表达式。其中的要素是指要素模型中的一个个元素(一般加前缀“e_”表示),其中的概念是指概念模型中的一个个元素(一般加前缀“c_”表示),其中的算子是指简单如逻辑组合运算,逻辑与“+”、逻辑或“|”、逻辑非“-”、括号优先级“()”等,复杂的算子如谓词逻辑运算,如Predicate()表示一个谓语。如:下面这个概念表达式是咨询银行出国金融产品业务价值的,可以用于发现潜客。

“(e_移民|e_出国旅行|e_外汇出境|e_出国金融)+(e_手续费|e_收益率|e_风险|e_回报率|e_投资周期)+(c_咨询|c_核实)”

概念模型中,可以对本体树中的每个本体节点,都配置相应的概念表达式,来对这个节点的识别规则进行描述。每个本体节点可以配置多个概念表达式。

概念模型的优点是简单直观,业务人员经过简单的培训即可操作。其缺点是规则的泛化能力不够,而且规则难免以偏概全,无法覆盖所有业务现象。概念模型适合于业务规则明确、简单的领域,NLP技术自动识别和执行这些形式化规则,从而输出符合业务人员预期的结果。

机器学习预训练模型,支持用机器学习算法,对指定语料进行预训练,而得到领域模型。预训练模型一般针对的是整个本体树,而不对某个特定的本体节点。预训练模型支持的训练算法,包括传统的统计学习,如SVM、Bayes等,也支持深度学习算法,如CNN、RNN,LSTM,以及最新的BERT模型等。机器学习模型一般需要标注大量的数据,尽可能地将业务知识体现在标注数据中。这种方式的优点是自动化程度高,学习的泛化能力强。其缺点是对标注数据的要求很高,标注数据量、标注语料平衡性等都需要达到算法要求,才能得到理想的效果,而这一点在绝大多数应用场景下都很难做到。

2、要素模型(简称为E)

要素模型,是对领域相关的实体的概念的形式化描述。形式上,要素模型也是以树状形式表示。根据要素的上下位关系,区分树的层次,要素树的下级节点是上级节点的下位概念。要素树的层级可以根据需要设置,原则上层级不限。本质上,要素树的每个节点都是要素的一级分类。

要素模型的每个节点,是一个要素,每个要素有一个要素名,可根据需要进行命名。要素名尽量使用字母、数字组合,要素名中不允许使用标点符号。每个要素都可以有一个或多个要素值,是这个要素对应的语言表达,也即识别规则。要素值支持3种类型:

01

文本型

以词汇、短语等形式组成的文本串,直接给出要素对应的文本内容。

02

模式型

以正则规则形式表示的文本串,给出要素的识别规则。可以是一段文本,或者多个词汇的组合,支持距离、位置等词汇的简单运算。

03

预定义型

直接利用NLP算法,如命名实体识别算法给出的机构名,可以包括所有公司名称、学习名称等识别结果。预定义型要素值,会直接调用相应的算法。

要素模型中已定义的要素,一般使用“e_要素名”的方式来使用。可以在其他要素的要素值中引用,也可以在本体模型中的概念模型中引用。引用一个要素相当于调用NLP算法,判断输入文本中是否包含要素值对应的文本串。

要素模型的一个优点是,同一要素名下支持多语种的要素值并存。这样可以同时构建多语种的要素模型,以满足多语种场景的需求。

3、概念模型(简称为C)

概念模型,是对领域无关的语言概念的形式化描述。反映它所描述对象的本质属性的抽象表达。概念是意义的载体,一个单一的概念可以用任何数目的语言来表达。常用的概念,可以是简单概念,对应一个词汇,如“杯子”,也可以是复杂概念,对应一段话,如“等了两天了还没送到”(“不及时”概念),甚至可以是一段话。下面是一些概念例子:

语言学概念,如“否定”、“疑问”

时间概念,如“今天”“2016年”

地点概念,如“北京”“当地”

动作等描述性概念,如 “未完成”、“质疑”

形式上,概念模型也是以树状形式表示。根据概念的上下位关系,区分树的层次。本质上,概念树的每个节点都是概念的一级分类。

概念模型的每个节点,是一个概念,每个概念有一个概念名,可根据需要进行命名。每个概念都可以有一个或多个概念值,是这个概念对应的语言表达,也即识别规则。概念值也支持3种类型,即文本型、模式型和预定义型。这些定义同要素模型。

概念模型中已定义的概念,一般使用“c_概念名”的方式来使用。可以在其他概念的概念值中引用,也可以在本体模型中的概念模型中引用。引用一个概念相当于调用NLP算法,判断输入文本中是否包含概念值对应的文本串。

概念模型可以理解为传统意义上的语言资源的形式化管理。如同义词资源,本质上是对一个概念,采用同义的不同词汇来描述的。概念模型也可以是某一类语言资源的形式化管理,如情绪相关的概念,可以形成一个子概念模型。

 

本体模型(O)、要素模型(E)、概念模型(C),共同构成了一个三位一体的场景本体,为了简单起见,我们把这样的场景本体,也称为“OEC模型”。OEC模型,是以本体论为指导,对场景应用中,NLP语义分析的业务目标(需求)进行形式化描述,并对场景相关的领域模型、要素模型、概念模型进行形式化描述,提高场景知识的共享、复用能力。

与场景本体配合的,是NLP任务本体,其包括:

01

一个组件化的NLP算法组件库

提供在词语、句子、篇章、海量文本多层次的NLP分析算法组件,以及深度优化的深度学习技术和模型,如中文词向量ChineseWordVec、基于词的BERT模型等。组件库将NLP算法的训练、调参的过程都封装起来,用户使用组件时,只要选择正确的组件,而无需搞懂组件内每个算法的参数,也无需对参数进行反复试错,以寻找最佳配置。泰岳语义工厂中的NLP算法组件库,已有200个NLP组件,涵盖NLP基础、深度学习、分类聚类、信息抽取、情感计算、自动写作、对话机器人、效果评估等。

02

NLP任务流程图

针对一个应用场景的实现,可以通过图形化拖拽的方式,来定制流程,把多个NLP组件调用起来,实现对指定数据的加工。流程图中,其组件元素不仅包括算法组件库中的算法,而且OEC模型中场景本体也可以作为元素被拖拽使用。

场景本体对场景相关的领域知识进行形式化表示,任务本体对NLP任务和流程进行形式化表示,二者有机结合,为场景应用提供开发、复用的有效手段。

本体论的价值

本体论为场景应用提供了一个规范的、明确的表示框架,与面向对象的程序开发类比,本体论使得NLP应用的开发,从面向过程的开发,转变为面向场景的开发,围绕场景来组织NLP相关的需求、知识、算法、数据等内容。

本体论中对算法、知识的形式化表示,可以最大化地实现场景应用开发过程的规范化;同时,所有与场景相关的知识、算法、数据都打包在本体中,如果需要在同类场景中做迁移,只需要迁移整个本体,而无需再次东拼西凑,重新开发一遍,最大化的提高了场景应用的复用性。

这里给大家介绍了本体论的概念和泰岳语义工厂中的本体论,下节将给大家介绍泰岳语义工厂在本体论指导下的、面向场景应用开发的工具,帮助大家更好地理解和开发NLP场景应用。

作者:晋耀红博士,神州泰岳首席科学家,人工智能研究院院长,北京师范大学教授,博士生导师。

声明:本文由神州泰岳企业号发布,依据企业号用户协议,该企业号为文章的真实性和准确性负责。创头条作为品牌传播平台,只为传播效果负责,在文章不存在违反法律规定的情况下,不继续承担甄别文章内容和观点的义务。

评论

未登录的游客
游客

神州泰岳
神州泰岳
关注企业号
0
分享次数
0

神州泰岳是一家运维管理、移动互联网平台支撑、互联网应用服务商。泰岳梧桐资本是神州泰岳发起的基金化运作的投资基金。

TA的其他文章

    为您推荐
  • 推荐
  • 人物
  • 专题
  • 干货
  • 地方
  • 行业
+加载更多资讯

阅读下一篇

三七互娱盘中快速上涨

三七互娱盘中快速上涨

返回创头条首页

©2015 创头条版权所有ICP许可证书京ICP备15013664号RSS