APP下载

基于领域本体的油气勘探开发知识获取模式及实现

2016-10-13王晓丽邓达康孟祥龙唐先明郭攀红林畅松

东北石油大学学报 2016年4期
关键词:分词词典命名

王晓丽, 邓达康, 孟祥龙, 唐先明, 郭攀红, 林畅松

( 1. 中国石油化工股份有限公司 石油勘探开发研究院,北京 100083; 2. 中国地质大学(北京) 能源学院,北京 100083; 3. 中国地质大学(北京) 海洋学院,北京 100083 )



基于领域本体的油气勘探开发知识获取模式及实现

王晓丽1,2, 邓达康1, 孟祥龙1, 唐先明1, 郭攀红1, 林畅松3

( 1. 中国石油化工股份有限公司 石油勘探开发研究院,北京100083;2. 中国地质大学(北京) 能源学院,北京100083;3. 中国地质大学(北京) 海洋学院,北京100083 )

油气勘探开发行业的信息数据资源涉及多学科、多地域,结构复杂,类型多样。提出一种基于领域本体的油气勘探开发知识获取模式,提取知识源的领域命名实体,将海量知识与已知的领域本体关联起来,实现快速知识获取;通过改进Trie索引树词典构造方法、创建节点失败指针优化正向最大匹配分词方法,快速匹配并提取已登录领域命名实体;采用领域命名实体规则特征和聚类统计分析方法,识别未登录领域命名实体(包括疑似命名实体和新增命名实体)。该模式能够提高油气勘探开发领域知识源的命名实体提取效率和准确率,有效解决油气勘探开发行业获取知识的难题。

勘探开发; 领域本体; 领域命名实体; 知识获取

0 引言

油气勘探开发企业零散分布的海量成果文档类、数据类等信息数据资源,涉及地质、地理、分析化验等学科领域,结构复杂,类型多样,缺乏统一组织和管理,油气勘探人员难以根据特定需求准确、高效地获取成果文档、图片和数据等知识。因此,从油气勘探开发信息数据资源中快速获取知识,并组织到知识库成为油气勘探知识管理亟需解决的问题。

知识获取是知识管理的基础和核心技术,也是制约知识管理的瓶颈[1]。本体理论在知识获取中受到广泛重视,本体的三层结构架构(即顶层本体、领域本体、应用本体)对各行业的知识获取组织具有指导作用[2]。应用本体理论实现对多种形态知识的有效组织逐渐成为人们研究热点,在航空[3]、医药[4]和数学[5]等领域取得成果。考虑油气勘探开发领域知识源现状,以及领域本体与知识源紧密关联的特点[6],本体理论适用于指导油气勘探开发领域的知识组织。

应用本体理论获取组织知识的最重要环节是对知识进行分词处理,将隐含于知识文本的领域本体提取出来。自动分词技术是文本处理、知识管理等领域的重要信息处理技术,分词结果的质量及效率决定本体提取的准确度和速度[7]。油气勘探开发领域分词存在歧义、未定义词识别等问题,歧义问题如油气勘探开发常用的“地球化学分析”手段,可以切分为“地球化学/分析”和“地球/化学分析”形式,前者是油气勘探开发领域知识文本的正确分词切分方式;未定义词识别问题如构造单元命名、井名等。领域本体库不可能囊括全部本体实例,并且在油气勘探开发过程中还不断产生新的本体,如新增的勘探区块、新打的钻井,需要识别并提取在领域本体库中不存在的未定义命名实体。常用的分词方法包括基于词典的字符串匹配分词方法[8]、基于统计的分词方法[9]等,前者简单易实现,切分速度快,应用效果很大程度上依赖于词典的完备程度和查询结构;后者常用于局部文本的歧义消除、词性标注等方面,不适用于全文本分词处理。

基于油气勘探开发领域知识文本量巨大、已构建较完备的领域词典的情况,笔者改进词典结构,并优化正向匹配分词算法,实现大量词典中已登录领域命名实体的提取,并提出领域命名实体的规则特征;采用基于聚类统计的方法,识别词典中未登录领域命名实体。

1 领域本体知识获取模式

本体在知识管理的研究和应用中日益成为热点[10]。顶层本体是独立于特定领域的高层本体,描述最普通的概念及其关系,可扩展衍生出领域本体[11];领域本体是特定领域的专门本体,描述特定领域的概念及其之间的关系,通过定义类、实例、属性、关系和公理等元素刻画某领域中类、实例及其之间的层次关系[5];应用本体描述依赖于特定领域和任务的概念及其之间的关系。命名实体统一表述对象类型及实例,命名实体可以分为领域命名实体和常规命名实体[12],前者是指特定领域中的命名实体;后者是指地名、人名和机构名等以名称为标识的常规实体,以及更广义的实体[8]。

具体到油气勘探开发领域,领域本体是一套多层级的对象类体系、实例、类与实例的属性描述及关联关系[13],如工区、油气田和井位等是油气勘探领域具有特定含义的本体;一整套概念清晰而规范的油气勘探概念类、属性、实例、类与实例及实例之间的关系,构成油气勘探领域本体库[14]。油气勘探开发领域本体的部分概念类及其关系、实例见图1,其中实例和实例之间的关系继承对应的概念类。文中领域命名实体特指油气勘探开发领域本体的实例,其关系继承已构建好的本体概念类关系。油气勘探开发领域命名实体最重要的一类是地质对象,如盆地、构造单元和井等。

图1 油气勘探开发领域本体的部分概念类及其关系、实例Fig.1 Diagram of the oil and gas exploration & production domain ontology

图2 基于领域本体的油气勘探开发知识获取模式Fig.2 Chart of the oil and gas exploration & production knowledge acquisition mode based on domain ontology

基于领域本体的油气勘探开发知识获取模式见图2。假设基于顶层本体的概念、公理等,已衍生并构建一套完整的油气勘探开发领域本体,领域本体层为已知,应用本体是指油气勘探开发知识获取模式的领域本体,应用本体层为未知。在实施知识获取时,一方面将已知的领域本体与知识条目的领域命名实体进行匹配,另一方面不断地从知识条目中挖取新的领域概念类和命名实体,填充到应用本体层;之后将应用本体层挖取的内容补充到领域本体层。该模式通过识别、匹配知识的领域命名实体,将海量油气勘探开发知识纳入到领域本体体系:领域本体的明确性将知识匹配到确定的领域命名实体,大幅减少获取知识的重复性;领域本体的多层级性使与之匹配的知识之间建立相互关系,可以将知识以对象可视化方式呈现给用户。

该模式的关键技术包括知识关联的已登录领域命名实体的提取技术、未登录领域命名实体的识别技术等。通过改进Trie索引树词典结构和优化正向最大匹配算法,可以直接将领域本体库中已登录领域命名实体从知识条目中匹配识别出来;领域本体库缺失旧的实例和未来的新实例,经过分词处理后,根据领域命名实体规则特征,进行未登录领域命名实体识别,通过聚类统计分析,经过人工确定完善到领域本体库。

2 已登录领域命名实体提取

领域命名本体识别提取的基础是将知识条目进行正确合理的分词处理,领域命名实体包含在分词处理结果中。

示例塔北隆起是塔里木盆地的一级构造单元,以塔深1井为例,该区寒武纪主要为碳酸盐岩局限台地相沉积。

第一句话的文本处理结果:“塔北隆起/是/塔里木盆地/的/一级/构造单元”,下划线标注的是命名实体识别结果,因此分词结果的正确性在很大程度上决定命名实体识别结果的准确度。基于词典范围尽可能大而全、保证分词准确度的原则,分词过程充分考虑油气勘探开发领域的专业性,构建尽可能完备、全面的领域本体词库、领域专业词库和通用词库,使计算机尽可能接近领域理解,进而保证分词结果满足油气勘探开发研究的需求,因此快速查找词典词条成为分词效率的关键[16]。

2.1改进Trie索引树词典

2.1.1词典结构

典型的词典查询方法包括整词二分法、Trie索引树法和逐字二分法等[8],其中Trie索引树法查找效率较高。Trie索引树是采用多重链表形式的键树,其典型应用模式是利用节点结构建立词典树结构,将相同前缀的词合并在同一个节点下,直到出现差异;然后从差异节点中分出子节点[17]。采用该方法建立油气勘探开发领域本体库词典Trie索引树(见图3),其首字数量较多,每个首字节点包含很多子节点,子节点深度较深,深度在4~5个字符的占到30%以上,深度在2~3个字符的占到50%以上;其他传统领域的深度在2个字符以内的占到95%以上,因此需要改进基于油气勘探开发领域本体特征的Trie索引树法。

图3 油气勘探开发领域本体库词典Trie索引树

改进的词典由首字哈希表、次字(关键字)哈希表和Trie树节点构成。次字节点和Trie树节点包括继续、中间、结束三种状态,分别用1,2,0表示,中间和结束状态的节点可能是词条尾字,区别在于中间状态的词条节点还有子节点,可以构成更长的词条。油气勘探开发领域改进Trie索引树的逻辑结构见图4。

2.1.2词典构造算法

步骤1:读取词条首字,将它作为子树的头节点插入首字哈希表;如果表中已存在该字符,则转入步骤2。

步骤2:读取次字字符,将它作为子树的关键节点插入次字哈希表,状态设置为继续;如果表中已存在该字符,则转入步骤3。

步骤3:读取下一个字符,在子树中插入子节点,状态设置为继续,如果父节点状态为结束,则修改状态为中间;如果子树中已存在该字符,则转入步骤4。

图4 油气勘探开发领域改进Trie索引树的逻辑结构Fig.4 Logical structure diagram of improved trie of the oil and gas exploration & production domain ontology

步骤4:重复步骤3,将字符顺序插入子树,直至最后一个字符。

步骤5:如果最后一个节点是新插入的节点,则状态设置为结束。

步骤6:重复步骤1-5。

2.2基于词典的正向匹配分词算法

正向最大匹配分词方法的主要思想:假设分词词典词条的最大长度为m,取待匹配文本当前字符串中的前m个字符与词典词条进行匹配,如果匹配成功,则切分出这个词;如果不成功,则去掉待匹配字符串的最后一个字并重新与词典匹配,直到待分词字符串不能切分为止[18]。在知识条目进行正向匹配分词时,文中方法不需要预知词条的最大长度,以当前字符作为首字,查找改进Trie索引树词典,以当前字符为首字的词条组成自动机,根据剩余字符的状态进行转移查询匹配。当某一字符匹配失败时,失败指针[19]自动机跳转到具有最长公共前缀的字符而继续进行匹配,直到字符状态为终结或者无法转移时切分该词;继续匹配,直到文本结束。

正向最大匹配分词算法流程:

步骤1,从知识片段T中读取字符Cn,在首字哈希表中查找Cn,形成头节点N1;如果表中没有Cn,则转入步骤10。

步骤2,从T中读取Cn+1,在头节点对应的次字哈希表中查找Cn+1,形成关键节点N2,如果表中没有Cn+1,则转入步骤10。

步骤3,从T中读取下一个字符Cm,形成节点Nm,读取其父节点中子节点个数i,沿子树顺序查找子节点N[m,j],设置初始值j=1。

步骤4,如果N[m,j]=Cm,则转入步骤6;如果当N[m,j]!=Cm时,则沿失败指针回溯到父节点,继续查找与父节点对应的子节点N[m,j++],转入步骤5。

步骤5,当j

步骤6,读取Nm字符状态,如果字符为继续或中间状态,则转入步骤7;如果为结束状态,则转入步骤8。

步骤7,重复步骤3-6。

步骤8,提取词条,转入步骤1。

步骤9,如果前一节点状态为中间,则转入步骤8;否则,转入步骤10。

步骤10,将索引回溯到n+1,转入步骤1。

如示例中知识片段分词匹配到“塔里木盆地”时,当前字符为“塔”,在首字哈希表中查找到“塔”,自动机在“塔”的子节点哈希表中查到“里”,状态为继续;在“塔里”的子树节点中按顺序查找到“木”,状态为继续;当前字符为“盆”,在“塔里木”的子节点按顺序查找,首先查找到“河”,无法匹配,失败指针自动跳转到“河”的父节点“木”,继续按顺序查找“塔里木”的子节点,查找到“盆”,状态为继续;最后查找到结束状态的“地”(见图3)。

改进Trie索引树词典结构清晰,能够有效解决词典不断实时更新的问题。该词典结构首字和次字支持哈希查找,剩余字符沿Trie索引树链表查找,可以节省存贮空间和提高效率;同时在Trie索引树节点添加失败指针时,可以减少正向最大匹配分词算法中较长词条重复匹配次数。经过语料库测试,该算法的分词和命名实体识别提取效果良好,不仅提高分词效率,而且分词准确率达到0.985,召回率达到0.963。

3 未登录领域命名实体识别

油气勘探开发领域本体数量多,并且随着油气勘探开发的深入,不断产生新的本体实例,大量领域命名实体未录入领域本体库,需要从知识中挖取新的领域命名实体,以完善领域本体和获取知识。

3.1领域命名实体规则特征

油气勘探开发领域本体的命名具有一定规律性[8],将其规则特征总结为“A和B”的构成模式,其中A为修饰语,通常是具有地域语义的名词及组合或简称,有时包含数词、动词等非名词性修饰词;B表示本体类的词,是本体命名的中心语,如“塔里木盆地”,其中“塔里木”为地域名词,“盆地”为中心语,是地质对象本体的概念类之一。分析油气勘探领域本体的命名特征,将“A和B”模式细化为具体类型领域本体的命名规则,假设“井”类本体的命名特征一般为“汉字1、汉字2、数字、‘井’”的形式,当分词结果中出现单字“井”,且紧邻其前的为数字,如果数字前为1~2个单字词,则将词识别为疑似新本体;假设“塔深1井”开始在领域本体库中不存在,如示例中第二句话分词结果为“以/塔/深/1/井/为/代表”,“井”字前面连续出现3个单字词和1个数字,根据领域本体的命名规则,提取“塔深1井”为疑似井类实例。

3.2聚类统计

类似的疑似命名实体在知识获取过程中可能多次出现,对它进行聚类统计,分析疑似命名实体在多条知识中被重复佐证的次数及其对应的语句佐证环境示例,借鉴条件随机场方法(Condition Random Field,CRF)[20]选择疑似新增命名实体,相较于K-Means聚类、等频率和信息增益等离散化方法有更好的效果。

该方法主要利用本体的特征进行判定:本体的字符长度、本体的词性结构、本体的左信息熵和右信息熵、本体的全文词频、重要性指标IDF和IFA,以及互信息等,其中本体的左、右信息熵是衡量语料库中作为词语左、右侧邻近词语的固定程度,词语之间的组合出现得越固定,其熵值越大:

(1)

(2)

式中:LE为左信息熵;RE为右信息熵;w为本体;A、B分别为本体左右的词的集合;C(a,w)为本体w与集合元素a同时出现的次数。

(3)

式中:D为文档总数;|Dw|为包含本体w的文档数量。

(4)

式中:M为互信息;p(w)为本体w出现的概率。

利用CRF方法预测已分词词语边界是否为新词边界的问题,判断疑似本体是否包含在已有本体集合内;然后将疑似新增命名实体、新增知识点对应的佐证示例汇集,并通过可视化方法展现给专家,最终确认或否决新增命名实体。

4 结论

(1)提出基于领域本体的油气勘探开发知识获取模式。该模式通过提取知识的领域命名实体,将知识与已知的领域本体进行关联,以领域本体为基础快速获取知识,其关键在于快速提取已登录领域命名实体和有效识别未登录领域命名实体。

(2)采用改进Trie索引树词典结构,结合带有失败指针的优化正向最大匹配分词算法将已登录领域命名实体从知识条目中提取出来。基于较完善的油气勘探开发领域本体库、专业词库和通用词库,对油气勘探开发领域命名实体词条长度普遍较长的特点,通过首字哈希表、次字哈希表和Trie树节点结合,减少扫描匹配的重复次数,提高提取已登录领域命名实体的查找效率。

(3)采用领域本体规则特征和聚类统计分析结合的方法,有效识别未登录领域命名实体,提出油气勘探开发领域本体命名的“A和B”模式规则特征;根据本体的字符长度、左信息熵、右信息熵和互信息等特征,利用CRF方法预测已分词词语边界是否为疑似命名实体边界;最终人工确认或否决新增命名实体。在新增命名实体时,词典不需要重新调整结构,插入简单,可以解决油气勘探开发领域本体库需要不断更新实例的问题。

(4)该模式自动分词效率比传统的二分法、Trie索引树法提高50%以上,领域本体的识别提取结果准确率达到95%以上,能够满足知识获取效率和准确率的要求,大幅提高将零散知识通过领域本体有效关联并转化为有效知识的效率和质量,提高搜索匹配知识的效率,为组织知识地图、实现智能搜索和推送奠定基础。

[1]卢林兰,李明.利用ontology实现的多库知识获取方法[J].计算机工程与设计,2007,28(15):3731-3733.

Lu Linlan, Li Ming. Multi-database knowledge acquisition method realized by using ontology [J]. Computer Engineering and Design, 2007,28(15):3731-3733.

[2]李枫林,毛展展.应用本体构建方法研究及案例分析[J].图书馆学研究,2014(19):31-41.

Li Fenglin, Mao Zhanzhan. Research on application ontology construction method and case analysis [J]. Research on Library Science, 2014(19):31-41.

[3]贠周会,徐龙,宋利康,等.基于本体的航空产品钣金件工艺知识获取与表示研究[J].学术论文,2014(1/2):111-114.

Yun Zhouhui, Xu Long, Song Likang, et al. Knowledge acquisition and representation of aircraft sheet metal part based on ontology [J]. Aeronautical Manufacturing Gechnology, 2014(1/2):111-114.

[4]马斌,柴智.基于领域本体的方剂知识获取与研究[J].计算机技术与发展,2013,23(6):227-229.

Ma Bin, Chai Zhi. Chinese medicine prescription knowledge acquisition and research based on domain ontology [J]. Computer Technology and Development, 2013,23(6):227-229.

[5]钟秀琴,符红光,佘莉,等.基于本体的几何学知识获取及知识表示[J].计算机学报,2010,33(1):167-174.

Zhong Xiuqin, Fu Hongguang, She Li, et al. Geometry knowledge acquisition and representation on ontology [J]. Chinese Journal of Computers, 2010,33(1):167-174.

[6]李乃峰.基于石油领域本体的语义关联机制研究[D].大庆:东北石油大学,2014.

Li Naifeng. Research on mechanism of semantic association based on ontology of petroleum domain [D]. Daqing: Northeast Petroleum University, 2014.

[7]徐楠楠,王东风,韩璞.基于正向最大匹配算法的电力两票安全识别[J].计算机仿真,2014,31(1):145-148.

Xu Nannan, Wang Dongfeng, Han Pu. Recognition of two-ticket system in power station based on forward maximum matching algorithm [J]. Computer Simulation, 2014,31(1):145-148.

[8]赵琳瑛.基于隐马尔科夫模型的中文命名实体识别研究[D].西安:西安电子科技大学,2008:5-9.

Zhao Linying. Study on Chinese named entity recognition based on hidden Markov model [D]. Xi'an: Xidian University, 2008:5-9.

[9]刘杰.基于改进的隐马尔科夫模型的中文命名实体识别算法[J].太原师范学院学报:自然科学版,2009(3):80-83.

Liu Jie. The arithmetic of Chinese named entity recognition based on the improved hidden Markov model [J]. Journal of Taiyuan Normal University: Natural Science Edition, 2009(3):80-83.

[10]Nntalya F N, Deborah L M. Ontology development101: A guide to creating your first ontology [D]. Stanford: Stanford University, 2000.

[11]宋文,张剑,邵燕.顶层本体研究[J].图书馆理论与实践,2006(1):43-45.

Song Wen, Zhang Jian, Shao Yan. Study on the top ontology [J]. Library Theory and Practice, 2006(1):43-45.

[12]李志国,钟将,冯永,等.基于知识本体的文本分类技术及其应用研究[J].计算机科学,2007,34(8):184-186.

Li Zhiguo, Zhong Jiang, Feng Yong, et al. Study on the text classification algorithm based on knowledge ontology [J]. Computer Science, 2007,34(8):184-186.

[13]文必龙,张莉.石油勘探开发领域本体的构建方法研究[J].计算机工程与应用,2009,45(34):1-4.

Wen Bilong, Zhang Li. Method of building petroleum exploration and production domain ontology [J]. Computer Engineering and Application, 2009,45(34):1-4.

[14]邓小亚.石油领域本体库的构建研究[J].电子设计工程,2011,20(19):1-4.

Deng Xiaoya. Research of ontology construction theory in oilfiled [J]. Electronic Design Engineering, 2011,

20(19):1-4.

[15]Peter M. Ontologies are us: A unified model of social networks and semantics [J]. Web Semantics: Science, Services and Agents on the World Wide Web, 2007,5(1):5-15.

[16]李江波,周强,陈祖舜.汉语词典的快速查询算法研究[J].中文信息学报,2006,20(5):31-39.

Li Jiangbo, Zhou Qiang, Chen Zushun. A study on fast algorithm for Chinese dictionary lookup [J]. Journal of Chinese Information Processing, 2006,20(5):31-39.

[17]熊志斌,朱剑锋.基于改进Trie树结构的正向最大匹配算法[J].计算机应用与软件,2014,31(5):276-278.

Xiong Zhibin, Zhu Jianfeng. Forward maximum matching algorithm based on improved Trie tree structure [J]. Computer Applications and Software, 2014,31(5):276-278.

[18]赵晓凡,胡顺义.基于正向最大匹配的汉语分词[J].安阳师范学院学报,2010(5):13-15.

Zhao Xiaofan, Hu Shunyi. The Chinese word segmentation based on forward maximum match method [J]. Journal of Anyang Normal University, 2010(5):13-15.

[19]吴建胜,战学刚,迟呈英.一种基于自动机的分词方法[J].计算机工程与应用,2005(8):81-82.

Wu Jiansheng, Zhan Xuegang, Chi Chengying. An automaton-based word segmentation method [J]. Computer Engineering and Applications, 2005(8):81-82.

[20]陈飞,刘奕群,魏超,等.基于条件随机场方法的开放领域新词发现[J].软件学报,2013,24(5):1051-1060.

Chen Fei, Liu Yiqun, Wei Chao, et al. Open domain new word detection using condition random field method [J]. Journal of Software, 2013,24(5):1051-1060.

2015-03-29;编辑:任志平

国家科技支撑计划项目(2012BAH34F04)

王晓丽(1982-),女,博士研究生,工程师,主要从事碳酸盐岩沉积学、油田知识管理方面的研究。

10.3969/j.issn.2095-4107.2016.04.009

TE19;TP311

A

2095-4107(2016)04-0074-06

猜你喜欢

分词词典命名
命名——助力有机化学的学习
分词在英语教学中的妙用
米兰·昆德拉的A-Z词典(节选)
米沃什词典
结巴分词在词云中的应用
结巴分词在词云中的应用
词典引发的政治辩论由来已久 精读
有一种男人以“暖”命名
为一条河命名——在白河源
漫画词典