基于术语字典1的领域本体自动构建_自然语言处理论文

基于专业术语词典的自动领域本体构造①,本文主要内容关键词为:本体论文,词典论文,专业术语论文,领域论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。

1 前言

术语是专业领域中概念的语言指称[1]。术语是定义明确的专业名词,是领域专家用来刻画、描写领域知识的基本信息承载单元,是信息检索和信息提取的重要单元,是知识库中的核心成员。术语的产生和流通情况反映了相关领域的信息的基本发展面貌。术语学的产生、发展以及标准化进程,与人类对知识、信息共享的越来越强烈的需求密不可分,同时,术语学也为人类知识、信息共享提供了良好的理论基础和实践经验。从古希腊开始,科学家们即为各种物质命名,如植物学上为各种植物命名。第二次世界大战以后,在工业标准化的需求下,ISO(国际标准化组织)成立,其中第37技术委员会(TC37)名为“术语:原则与协调”,专门负责国际上的术语标准化问题,主要规范的对象为工业产品的名称等[2]。20世纪以来,随着计算机的应用和普及以及网络的兴起,信息科学与技术领域的专家们发现术语学中所建立的概念体系,由明晰的知识单元组成,具有良好的结构,不仅对于人之间的交流有益,对于人、机器、软件系统之间的交流也大有裨益,可在人工智能、数据库建设、网络信息共享和交流机制等方面发挥重要作用。本体(Ontology),被定义为术语概念共享模型。Gruber[3]:“本体是概念体系的规范”;Borst[4]:“本体是共享的概念模型的形式化的规范说明”;Swartout[5]:“本体是一个为描述某个领域而按继承关系组织起来作为一个知识库的骨架的一系列术语”;William和Austin[6]:“本体是用于描述或表达某一领域知识的一组概念或术语,可用以组织知识库高层次的知识抽象,也可用来描述特定领域的知识。”……20世纪90年代以来,随着语义网(Semantic Web)的提出,本体被看作是知识组织的最新的最有前途的方式。

本体建设是一项工程性的任务。目前见于文献的本体构造方法有多种,例如,IDEF法(Integrated computer aided manufacturing DEFinition method)[7]、企业建模法(Enterprise Modelling Methodology)[8]、骨架法(Skeletal Methodology)[9],METHONTOLOGY法[10],循环获取法(Cyclic Acquisition Process)[11] 等。

鉴于目前本体的构造和改进主要依靠手工录入和标引,虽然也有一些辅助的编辑工具,如Ontolingua、WebOnto、Protégé、KAON等,但大部分工作还需要手工进行,使得本体建设和改进成了一件需要耗费巨大的人力资源、时间和费用的事情。许多专家寄望于计算语言学/自然语言理解的相关技术,从词典、百科全书、文本等自动生成本体、自动进化更新等技术已成为本体研究的焦点之一。词典、百科全书等被称为知识密集型文本(Knowledge-rich Document),其中包含有丰富的建立知识本体的原材料。本文尝试由《计算机科学技术百科全书》的术语分类目录构造计算机科学技术领域的本体,并利用自然语言处理(NLP)技术从术语概念的解释文本中抽取本体实例,对计算机科学技术领域本体进行自动扩充。

2 定义

专业术语词典是用于某特定的学科领域的词典,它收录该学科领域的术语条目,给出明确的定义,并利用简明易懂的语言以及必要的图表、公式等进行注释。

Guarino[12] 按照本体的独立程度将本体分为:①顶层本体(Top-level Ontology),研究通用的概念及其关系。②领域本体(Domain Ontology),研究特定领域相关的术语及其关系,如企业本体。③任务本体(Task Ontology),研究通用的任务和推理活动,如诊断过程等。④应用本体(Application Ontology),研究特定应用的本体。Uschold[13] 根据本体的主要内容,将本体分为:①领域本体(Domain Ontology)/世界知识本体(Real World Knowledge),前者提供某领域特定的概念和概念之间的关系等,如企业本体、地理本体、医学本体等,后者提供通用的常识知识的本体。②问题求解本体(Problem Solving Model)/知识表示语言本体(Representation Ontology),前者研究可共享的问题求解方法,包括与任务相关的体系结构、推理方法等,后者研究语言知识的本体。Gomez Perez和Benjamins[14] 将本体分为:知识表示本体(Knowledge Representation Ontology),常识本体(General/Common Ontology),顶层本体(Top-level Ontology),元本体/通用本体/核心本体(Meta-Ontology/Generic Ontology/Core Ontology),领域本体(Domain Ontology),语言本体(Linguistic Ontology),任务本体(Task Ontology)。由此可见,领域本体是某一学科的知识概念体系,它针对特定的学科,描述能够覆盖该学科的知识点的概念、概念间的关系、概念的属性及其约束等。

3 领域本体模型的构造

3.1 本文采用的专业术语词典

我们选择计算机科学技术领域作为研究对象。《计算机科学技术百科全书》是由国内众多著名的计算机专家、院士编纂的一本具有权威性的工具书,被选定作为我们可以利用的专业术语词典。《计算机科学技术百科全书》根据计算机学科的内在联系、相关程度与性质特点,划分为“计算机科学理论”、“计算机组织与体系结构”、“计算机软件”、“计算机硬件”、“计算机应用技术”和“人工智能”六大分支,按4级框架,共设置1293个条目,计200多万字[15]。

本文的第一步工作是将《计算机科学技术百科全书》的术语分类目录的文本信息转为关系数据库存储,分“计算机科学理论”、“计算机组织与体系结构”、“计算机软件”、“计算机硬件”、“计算机应用技术”和“人工智能”六大类,每类又包括4级框架,共5层。编码方式与北京大学计算语言学研究所中文概念词典(CCD)相同,每层采用4位编码。下面介绍我们所构造的计算机科学技术领域本体模型。

3.2 计算机科学技术领域本体模型

3.2.1 概念集

计算机科学技术领域本体中的核心概念集包括《计算机科学技术百科全书》分类目录中的1293条术语概念。《计算机科学技术百科全书》是全面、系统、科学地介绍计算机科学技术知识的专业性百科全书,其分类目录中包含的1293条术语是全书各条释义的题目,作为计算机科学技术领域的最基本的概念,这些术语条题及其分类、上下位关系构成了计算机科学技术完整的知识主题系统。因此,我们确定分类目录中的术语条目构成计算机科学技术领域的核心概念集。

3.2.2 概念的属性和概念间的关系

《计算机科学技术百科全书》分类目录原有的层次关系,是基于计算机科学技术领域本身的逻辑结构,按学科分支的框架层次编排,体现了计算机科学技术所涵盖知识的内在联系、相关程度和性质特点。其根节点下,分为“计算机科学理论”、“计算机组织与体系结构”、“计算机软件”、“计算机硬件”、“计算机应用技术”和“人工智能”6个并列的大类,每个类下又有若干小类,形成多层的树状结构。

另外,由于术语之间具有内在的关联性,我们还可以通过在本体上添加属性和关系,把整个分类目录系联成一个面向特定应用的网状结构。本体是一个不断进化的过程,在初步的本体构造完成之后,我们将在今后根据应用方向不断地调整定义本体上的关系和属性。

3.2.3 本体上的函数集和公理集

目前,本体上的推理主要基于包含关系(Subsumption),即IS-A关系。在资源描述框架(RDF)中定义为subclassof、subpropertyof两种关系。这是任何本体基础的两种关系,即一个类是另一个类的子类,或者一种属性是另一种属性的子属性。本文所涉及的本体目前基于《计算机科学技术百科全书》原有的分类和层次体系,不定义新的函数集。

公理是对概念和概念关系等事实的认定。本文所用到的公理包括:

(1)A是B的上位类,或B是A的下位类。

(2)A是B的实例。

4 本体实例扩充技术

实例是本体中的最小对象,是类中的个体。在领域本体建模时,一般不会考虑实例,但是任何本体概念都必须跟实际应用中所使用的实例相结合才有意义。本体实例的自动扩充技术对于保证本体的应用性来说,是非常必要的。本文尝试利用自然语言处理技术从《计算机科学技术百科全书》术语条目的解释文本中自动抽取本体实例,扩充到已建本体中。

据我们的观察,术语条目本身大都兼有类和实例的二元性特征。例如,“视觉计算理论”在本体中处于叶节点,它是“人工智能/模式识别/计算机视觉”下的一个实例,但它也完全有可能通过添加子实例,而自己成为一个类。本体理论中将实例作为最小单元,但客观上说,一个术语的身份是类还是实例,往往取决于本体的规模,大多数实例都可以再细划分并通过添加子实例而使自己成为一个类。李景[16]:“在花卉学中,定义‘牡丹’是‘花卉’的一个实例,而牡丹本身也具有很多实例,譬如‘紫斑牡丹、黄牡丹、矮牡丹、狭叶牡丹、卵叶牡丹……’,甚至还可以为‘紫斑牡丹’再添加实例,如‘太白紫斑牡丹、河南紫斑牡丹、甘肃紫斑牡丹……’作为领域本体的开发者,希望根据需要使一个类或者实例具有二元性(既又是类又是实例)……”。根据术语兼有类和实例的这种特性,我们尝试从《计算机科学技术百科全书》的主题条目所包含的解释文本中,抽取相关术语作为其实例。按照较为普遍的观点,我们定义实例和它的类之间的关系为IS-A或者IS-PART-OF两种。

以下是本文所使用的本体实例自动提取技术。

4.1 自动分词

自动分词技术是一种被广泛应用的、将现代汉语字序列文本自动分解为词序列文本的技术。本文采用了北京大学计算语言学研究所研制的自动分词和词性标注软件包,同时,在词表的前部加入计算机科学技术领域术语表。北京大学计算语言学研究所在与中国标准研究院的合作项目“信息科学技术领域术语辅助提取及术语库建设”中,搜集整理了不同来源的信息科学领域术语条目数十万条,并研制了术语自动提取软件。这是本文的工作得以进行的基础。

4.2 术语自动识别

术语区别于其他词语的重要特征在于其领域特异性。Ahmad等[17],Bowker[18],Chung,T.M[19] 都用到基于语料库比较的方法进行术语识别。我们采用了与之类似的方法,利用一个从平衡语料库中生成的5万词的词表和上述分词后的解释文本生成的词表进行比较,将平衡语料库的词表中所没有、但是出现在术语解释文本中的高频词抽取出来。这种基于语料库比较的方法主要用于抽取一些没有出现在已有术语表中的单词术语。为了提高识别的正确率,我们预先用人工对平衡语料库中生成的词表进行了整理。

将利用语料库比较方法抽取出来的术语与自动分词中利用已有术语表已经标注为术语的词语求并集,便得到候选术语实例集合。

4.3 合法术语实例抽取

我们依据两个统计量,从上述术语候选集中确定合法的术语实例。

其一是编辑距离。冯志伟[20] 提出了“术语形成的经济律”。2003年北京大学计算语言学研究所在“信息科学技术领域术语辅助提取及术语库建设”项目中的研究亦表明[21]:在以3万条术语为样本的统计中,单词术语只占26%,而多词术语占74%,即大部分计算机领域的术语为短语型术语,由多个词汇构成。大量的多词术语由少量的单词术语复合而成,这就使得大量的相关术语具有结构成分上的重叠性。计算机领域中,作为本体类名的术语和作为该类实例的术语在字面上往往具有一定的相关性,例如,“半导体存储器”和它的实例“半导体读写存储器、半导体只读存储器、砷化镓存储器……”。

编辑距离计算常用于生物学上DNA序列的比对和信息处理中字符串的比较等,它是一种对两个序列的相似度的定性描述。最简单的编辑距离即Hamming距离,等于对应位置字符不同的个数。例如:

X=A A B

Y=B A A

Edit Distance(X,Y)=2

这是对长度相等的两个序列而言。比对的两条序列可能具有不同的长度,对应位置上的字符有可能并非真正的比对对象,所以一般采用动态规划的方法,将编辑距离定义为两个字符串之间互相转换所需的最小数目的编辑操作,包括字符的插入、删除与替换,以及相邻字符的调换等。

我们将术语条目看作字序列,两个不同的术语条目之间的相似度的比较,就是两个术语字序列之间的比较。例如,“半导体读写存储器”与“半导体存储器”形成的比对如下:

X=半导体——存储器

Y=半导体读写存储器

Edit Distance(X,Y)=2

在计算中,设定编辑距离的阈值为:

F=max(zcount[,term1],zcount[,term2]-2)

zcount表示一条术语中所包含的字数。我们随机抽取了“终端”、“复杂指令集计算机”、“计算机流水线”下的术语候选实例为样本,使候选实例和上述术语的编辑距离阈值F∈[1,max(zcount[,term1],zcount[,term2]]。经过逐次的结果比较,确定编辑距离的阈值为所比对的两条术语中,较长一条术语所包含的字数减2,为最佳阈值。

如“半导体存储器”中包含6个字,“半导体读写存储器”包含8个字,max(6,8)=8,所以,这两条术语的编辑距离的阈值为8-2=6。“半导体读写存储器”和“半导体存储器”的编辑距离是2,小于阈值,因此,“半导体读写存储器”是“半导体存储器”的合法实例。

我们确定合法实例所依据的第二个统计量是该候选术语实例在解释文本中出现的频率。在解释文本中高频出现的术语与主题术语关系密切。我们定义频度筛选公式为:

F2×(average[,ins tan ces])

average[,ins tan ces]表示某条解释文本中所出现的所有候选术语实例的频度均值。根据观察,绝大部分候选实例的出现频度只在1~2次,与少数候选实例的高频形成鲜明对比。我们设定,如果一个候选术语实例的出现频度大于该均值的2倍,即被认为是合法实例。

例如,“中央处理器”的候选术语实例共有194条,累计频次为352,均值为1.81,高于均值两倍的候选实例有:

指令(26次)/地址(6次)/低位(7次)/高位(5次)/进位(12次)/最低位(4次)/寄存器(25次)/存储器(9次)/控制器(11次)/运算器(9次)/加法器(6次)/指令地址(5次)/操作数地址(4次)/操作控制部件(4次)/数据通路(5次)/指令寄存器(4次)/并行运算器(4次)/定点运算器(4次)/浮点运算器(4次)/内总线(7次)

以上术语被认为是“中央处理器”的合法实例。

4.4 实例抽取示例

以术语节点“电子计算机”为例,该术语条目下有解释文本:

“电子计算机(electronic computer)由电子器件和其他有关器件及设备组成的自动计算装置或自动解题装置。……”

首先,自动分词软件将上述解释文本切分为:

“由/p电子器件/ny和/p其他/r有关/vn器件/n及/c设备/n组成/v的/u自动/d计算/v装置/n或/c自动/d解题/v装置/n。/w……”

在分词文本中被标记“ny”、“nw”等标记的词即为术语,它们来源于不同的术语表。

接下来,通过语料库对比的方法,从解释文本中识别出单词术语,例如:

ENIAC/机电式/二进制数/并行性/晶体管/传感器……

由于实例一般为实体名词,带有某些词缀的术语,如“机电式”、“并行性”等不太可能成为本体实例,因此滤去。

求新识别出的单词术语与解释文本中被标记出来的计算机术语的并集,形成以下的候选实例集合:

电子器件 电子数字计算机 电子模拟计算机 数字计算机 模拟计算机 离散符号 通用电子数字计算机ENIAC集成电路 晶体管 巨型计算机 微型计算机 个人计算机 十进制数 二进制数 布尔代数 电子管 运算放大器 直流放大器 反相器 模拟加法器 模拟积分器……。

按照编辑距离计算,与“电子计算机”的编辑距离在指定阈值内的术语有:

电子器件(distance=3)\电子数字计算机(distance=2)\电子模拟计算机(distance=2)\数字计算机(distance=2)\模拟计算机(distance=2)\通用电子数字计算机(distance=4)\电子管(distance=3)\巨型计算机(distance=2)\微型计算机(distance=2)\个人计算机(distance=2)\混合计算机(distance=2)\超高速计算机(distance=3)\非传统计算机(distance=3)

按照频度筛选法,我们从“电子计算机”的解释文本中共抽取出95条术语,累计频次145次,均值为1.5次,阈值等于3,出现频度大于3的候选实例包括:

电子数字计算机(frequency=8)\数字计算机(frequency=13)\模拟计算机(frequency=6)\混合计算机(frequency=4)

编辑距离筛选法和频度筛选法的结果求并集,即是最终提取出的合法实例术语集合。

4.5 实例抽取结果分析

我们对《计算机科学技术百科全书》中的一个分支“计算机体系结构”分别进行了自动实例抽取和人工实例抽取,并进行了比较,结果如表1。

正确率 召回率

正确抽取的 自动抽取的 人工抽取的

实例个数实例总数实例总数

84.8% 53.8% 119214052213

从统计结果我们可以看出,本文提出的从术语词典的定义和解释文本中抽取实例的方法具有较高的正确率,较低的召回率。召回率低的原因主要在于:

(1)在从本体节点的解释文本中进行术语抽取时,虽然我们综合了将术语词表加入分词词表和语料库对比的方法,但仍有一些术语未能被抽取出来。

(2)利用编辑距离和频度特征最后确定合法术语实例时,有一些合法实例由于在编辑距离和频度特征上都没有达到阈值,所以未能被识别出来。

如果要改进术语识别的召回率,则需要采用互信息或最大熵模型等抽取术语词表中所没有的多词术语。据谌贻荣[22] 综合目前的各种技术进行中文术语识别的结果表明,就大多数计算机科学技术领域的样本而言,从自然语言文本中识别多词术语的准确率不足70%,因此,虽然这些方法对提高术语识别的召回率有帮助,可是,也存在着相当高的误抽取几率,会使一些非术语被当作术语,从而最终导致从本文抽取实例的正确率降低。同样,如果在进行编辑距离计算时,为了提高召回率,将字序列通过分词变成单词序列,并将单词抽象到语义类进行计算,那么分词和语义类的划分与描写又会带来新的问题,也容易降低识别的正确率。

在正确率和召回率之间,本文选择了前者,因为本文所采用的本体实例自动提取方法,目的在于进行实例扩充时,减少人力和时间的消耗,所以我们希望首先保证提取出来的实例是正确的。

5 今后的工作

下一步将进行的工作是从计算机领域的期刊论文中自动获取计算机领域本体的术语实例,并根据应用目标进一步定义计算机科学技术本体上的属性和关系,尝试根据《计算机科学技术百科全书》和语料库进行属性和关系的自动提取。

注释:

①本文研究得到国家973项目基金(2004CB318102)、国家自然科学基金(60503071)、北京市自然科学基金(4052091)的支持。

标签:;  ;  ;  ;  ;  

基于术语字典1的领域本体自动构建_自然语言处理论文
下载Doc文档

猜你喜欢