隐性 | 用户单位 | 成都飞机公司 |
机型 | 枭龙 | |
显性 | 发生日期 | 2014-06-16 |
记录人 | 王明 | |
职务 | 飞行员 | |
故障现象 | 起飞后起落架未能收起, 着陆后起落架收放正常 | |
故障影响 | 飞行任务终止,安全着陆 | |
故障件 | 前轮载C通道导线 | |
故障模式 | 磨损 |
表选项
其中显性知识是基于故障案例知识本体和JAPE抽取规则,利用GATE框架进行命名实体的识别得到,而隐性信息需要通过已经构建的知识模型(假设其包括飞行员隶属的飞行大队,该大队装备了同一个机型)进行推理获取.2 飞机故障案例信息抽取功能设计图 1为本文针对飞机故障领域设计的信息抽取功能框架.
图 1 故障案例信息抽取功能框架Fig. 1 Framework of fault case information extraction function |
图选项 |
信息抽取功能分为4个大模块,分别是故障案例本体建模、中文分词、语义标注与信息抽取以及知识扩展.具体方法如下:1)利用GATE中的本体构建工具构建飞机故障案例领域本体,利用Jena进行本体解析,将本体中的概念、实例以及属性添加到用户自定义词典中.2)将用户自定义词典导入NLPIR(Natural Language Processing and Information Retrieval)对故障案例信息文档进行中文分词与新词识别,为了使分词文件能更好地被GATE识别,还需要将分词文件转化为UTF-8的编码格式.3)将分词文件导入GATE的语料库中,实现基于本体和词表的标注.通过JAPE(Java Annotation Patterns Engine)语言和Jena推理机编写针对故障案例文档的抽取规则,抽取故障案例信息.4)利用NLPIR识别新词和JAPE抽取规则识别新知识,自动扩充本体实例,使本体不断丰富.通过命名实体与JAPE规则中定制的语句模式进行匹配,挖掘可扩展的规则模式,生成新的规则文件.3 信息抽取功能实现3.1 飞机故障案例本体建模飞机故障案例知识具有复杂的层次化结构和丰富的逻辑关系,本体作为领域术语及其关系的明确的形式化表达,能够规范地描述领域概念、概念间关系、概念的属性以及约束等,可有效消除概念理解的歧义,成为产品领域知识建模的重要技术方法[12].本文将本体模型定义为由概念C、概念层次集H、概念属性集A、逻辑关系R以及实例集I组成的五元组.其中核心概念C包括飞机产品、故障模式、故障发生时机、故障处理、故障原因以及用户单位等.故障案例知识核心本体概念本身具有很强的层次结构关系,例如飞机产品按照结构层次级别可以分为系统、子系统、部件以及机件,不同的机型可能具有不同的飞机结构.本文按照概念的层级关系建立概念层次集H.每个概念都有自己的属性集A,A又分为数据属性Ad和对象属性Ao,所有的概念都定义了数据属性集,包括“唯一标示符”、“名称”和“描述”.飞机是故障作用的对象,其对象属性包括“功能”、“故障模式”、“机型”.故障模式的对象属性包括“故障影响”、“发生时机”以及“处理方式”.故障处理按维修类别不同,细分为修理类、更换类、隔离类等,它的对象属性包括“故障模式”以及“处理效果”.故障原因包括使用操作、制造、环境、装配、设计等,其对象属性为“故障模式”以及“故障影响”.用户单位的对象属性有“子单位”、“拥有机型”、“拥有部门”等.故障案例知识本体模型还需要通过概念间的逻辑关系R和实例I来不断细化和丰富.本文定义的逻辑关系包括组成关系、继承关系以及对象属性关系.根据上述定义将故障案例知识进行相关性扩展,形成网状的知识结构体系.每个概念都有多个实例,实例继承其所属概念的所有属性,例如磨损是故障模式的一个实例,它拥有故障模式概念的所有属性,各实例之间存在交叉概念和关联关系.本文通过本体模型完整地表达了飞机故障案例知识.由于篇幅所限,只给出了与表 1例子相关的故障案例本体模型,如图 2所示,点划线的上部表示本体的概念,下部表示概念下的实例,它们之间的关系用连接线表示.
图 2 部分本体概念与实例关系Fig. 2 Relationship between partial ontology concept and instance |
图选项 |
3.2 中文分词分词是对文本进行语义处理的基础,由于中文词汇缺乏自然分隔符[13](如英文词汇由空格分隔),因此,本文采用了基于词典的分词技术,通过将文本与词典中的词条进行匹配来切分单词,因此词典里必须包含相关的领域词汇才能保证分词的正确性和完整性.本文利用Jena对故障案例知识本体进行解析,将本体中包含的概念、属性、实例等专业术语添加到用户自定义词典中.然后通过JNI(Java Native Interface)接口调用NLPIR分词功能,导入用户自定义词典对故障案例文档进行中文分词.在分词的过程中,本文提供了针对领域词汇的新词识别功能,如果发现某个词组出现的频度较高,且在用户词典中没有相匹配的词条,则系统会将该词组作为候选的故障领域词汇识别出来,作为用户词典的扩展来源.3.3 语义标注与信息抽取信息抽取的前提是让计算机掌握信息文本的语义信息,本文利用GATE框架将本体知识与分词文件关联,对分词文件进行语义标注.语义标注与信息抽取的步骤包括:添加本体标注集、构建语义词表文件、建立JAPE规则以及Jena本体解析.3.3.1 添加本体标注集标注集是对词汇的语义描述的集合,包括特征与特征值.本文通过本体标注集为分词文件的词汇赋予本体语义信息.每一个标注都对应于本体中的概念、属性或实例,如果是实例或概念,则在其特征集中添加“type=instance/class,instance/class=XX”,是属性则另外标注其所属概念或实例.3.3.2 构建语义词表文件故障案例文档经常会出现表示日期(如“年”“月”“日”等)或表示判断(如“不能”“超过”等)的词汇,这一类词不属于故障案例领域的专有词汇,在本体中没有定义其语义信息,但是这些词却对语义理解与信息抽取起到关键作用,因此,需要建立语义词表文件[9],为这些词汇添加语义.将这些词汇分类整理到各个词表文件中,再用一个.def索引来访问词表,每一个词表可以有一个majortype属性和一个minortype属性来给这些词汇赋予属性.例如,类别为月份的词表,可以定义其majortype为date,minortype为month.语义标注后,与词表匹配的文本都具有这两个属性.3.3.3 建立JAPE抽取规则语义标注后分词文件中的单个词汇都具有了语义,本文通过编写JAPE抽取规则,定义了由这些词汇构成的一些常用的句子模式,以便计算机能识别出与固定模型相匹配的结构化信息.JAPE规则提供的是基于正则表达式的有限状态转换机制.它是一个模式/行为类型的规则集合,其中LHS是标注模式的匹配识别规则,由正则表达式书写,RHS则是行为规则,可由Java书写,当LHS匹配成功后则按RHS的规则执行.本文的JAPE规则包括信息抽取规则、新实例识别规则、本体库扩展规则以及规则扩展规则.在编写LHS匹配识别规则之前需要总结故障案例文档对案例信息的描述方式.故障案例描述语句经常会使用一些固定的模式,本文在阅读大量故障案例文档后,总结出几种常见的句子表达模式,并根据这些模式建立JAPE抽取规则.例如,描述飞机结构或产品的功能词语的前面出现具有否定意义的词,则可以认为该产品的功能失效,即通常所说的故障现象.对于上述例子中的“起飞后起落架未能收起”,在本体中已经定义“起落架”是飞机的一个系统,“收起”是起落架的一个功能,“未能”是一个否定词,则可以认为该句子表示起落架的收起功能失效,即故障现象.下面的规则是对故障现象描述的抽取规则:
Rule:FaultPhenomenon
((({Lookup.topClass==“发生时机”})?(({Appear})?({Token.string!=“,”})[0,3])({Lookup.topClass==“飞机结构”}|{Lookup.topClass==“航空件”})?(({Judge}{Lookup.topClass==“功能”})|({Lookup.topClass==“功能”}{Judge})|({Lookup.topClass==“描述参数”}{Judge})|({Lookup.topClass==“描述参数”}{Judge}
({Value})[0,3])))|(({Lookup.topClass==“航空件”}|{Lookup.topClass==“飞机结构”}|{Lookup.topClass==“发生时机”})({Token})*{Lookup.topClass==“警示语”})
):faultPhenomenon
-->
:faultPhenomenon.FaultPhenomenon={majorType=“故障现象描述”}运行上述规则后,则可将故障现象抽取出来.例如上述维修日志文本中的“起落架未能收起”.3.3.4 抽取隐性信息利用GATE抽取出来的信息只能是文本中出现的显性信息,但是文本中通常还隐藏着一些无法通过分析文档直接得到的信息,本文将这类信息成为隐性信息,例如引言例子中的“机型”和“用户单位信息”.本文利用Jena自定义抽取规则[14, 15, 16].例如:
Rule1:(?x subclassOf ?y),(?y canUsePlane ?z)→(?x canUsePlane ?z)
Rule2:(?x subclassOf ?y),(?y workAtCompany ?m)→(?x workAtCompany ?m)Rule1表示如果人员x是飞行员一大队y的一个子类,y可使用机型为z的飞机,则x可以使用机型为z的飞机.以表 1的故障案例为例,通过这条规则可以推理得出:飞行员王明只可使用机型为枭龙,因此该故障机型为枭龙.同样可以通过Rule2知道用户单位为成都飞机公司.至此,应用本文的方法实现了表 1中显性和隐性信息抽取.3.4 知识扩展信息抽取效果的好坏取决于知识模型的完善程度.而知识模型需要不断地完善和扩展,本文将知识的扩展分为本体实例扩展和抽取规则扩展.3.4.1 本体实例扩展在语义标注过程中,可能会出现一些本体中没有的领域词汇,这些词汇通常可以作为本体库扩展的来源.本文首先利用NLPIR的新词发现功能以及故障信息的一般描述规律,编写JAPE规则,辅助知识管理员发现新知识,然后经过专家验证的新知识填充到本体中,使本体不断地完善.新知识的来源一般有3种:①通过新词识别功能识别出来的新词;②句子的固定模式匹配;③领域词汇的规律表达.其中,通过中文分词所识别的新词存放在一个列表中,知识管理员通过查看该新词列表判断新词是否可以扩充到本体中.而后面两种类型的新知识需要通过JAPE规则来识别,识别规则如表 2所示.通过JAPE识别出来的新知识可直接作为本体的新实例,填充流程如图 3所示.表 2 新知识识别JAPE规则 Table 2 JAPE rule of new knowledge recognition
说明 | 句子的固定模式匹配 | 领域词汇的规律表达 |
JAPE 匹配 规则 | ({Token}+):newIns | {Token.category==NNP} |
({Appea}) | {Token.category==CD} | |
({Lookup.class== “故障模式”}) | {Token.string==“机”} | |
规则 说明 | 当某一词汇后面紧跟着“出现”一类的词和所属概念为“故障模式”的词汇时,该词汇可能为“飞机结构”或“航空件”下的一个新实例 | 某些航空件的名称是有特定规律的,例如“TKR123机”由“英文字符”+“数字”+“机”,对于这类词汇也有可能是新实例 |
表选项
图 3 本体实例扩展流程Fig. 3 Ontology instance extension process |
图选项 |
3.4.2 规则扩充系统建立之初,所构建的规则数量是有限的,需要在应用过程中不断扩充规则,本文提供了基于本体概念和JAPE的规则扩充机制.如果信息抽取时系统通过规则匹配发现了新的本体概念表达模式,则判断系统中是否已经存在相应的规则,不存在则提醒用户可根据该模式建立新的规则.在构建抽取规则的时候首先为属于规则中的概念的实例添加特征relationTo,特征名为本体概念特征集中的relationType,两个概念已经存在关系,则特征值为1,否则值为0.当发现两个概念下的实例出现在同一句子的时候,首先查看这两个概念是否已经存在关系,如果不存在则可视为发现新的规则模式.
Rule:findNewRule
(({Lookup}+):class1{Token}*({Lookup}+):class2
):newRule-->
newRule{if(class1Ann.getFeatures().get((“relationTo”+class2Ann.getFeatures().get(“relationType”))==1){System.out.println(stringFor(doc,class2Annots)+“和”+stringFor(doc,class2Annots)+“可能存在新规则”);}
}4 验证与应用基于本文提出的本体建模和信息抽取方法,应用Dorado平台和GATE框架开发出基于本体的故障案例信息抽取系统,该系统主要由文件上传与格式转换、分词和信息抽取等模块组成.该系统在某航空企业的维修保障过程中进行了初步应用,验证了上述方法的有效性,通过上传维修日志、周报等不同类型的故障案例文档,进行格式转换、分词以及基于JAPE抽取规则的信息抽取,最终得到结构化的故障案例信息,其结果(如图 4所示)可作为后续的故障诊断及维修的参考案例,同时,在信息抽取的过程中不断发现新知识,通过人机交互实现了新知识的扩充,使知识库不断完善.
图 4 系统验证Fig. 4 System verification |
图选项 |
5 结 论1)建立了故障案例知识本体模型,规范地描述了飞机故障案例知识的层次结构和逻辑关系.2)基于飞机故障案例本体模型,给出了一种针对军工企业航空装备故障案例的新鲜抽取方法,并开发出故障案例信息抽取系统,实现了从维修日志、周报等不同类型文档中抽取出结构化故障案例,并存储到数据库的自动化和半自动化处理过程.
参考文献
[1] | 陈劲.面向中文网页的信息抽取关键技术研究与实现[D].杭州:浙江大学, 2013. Chen J.Research and implementation on Chinese web pages-oriented information extraction technologies[D].Hangzhou:Zhejiang University, 2013(in Chinese). |
Cited By in Cnki(0) | |
[2] | Shahzadi I, Ahmad Q, Fatima K, et al.UMagic!THE UML modeler for text documents[C]//Proceeding of 2011 3rd IEEE International Conference on Information Management and Engineering.Piscataway, NJ:IEEE Press, 2011, 5:253-256. |
[3] | 李飒.基于GATE的中文信息抽取系统的开发与实现[D].北京:中国科学院, 2006. Li S.The implementation of the Chinese information extraction system based on GATE[D].Beijing:Chinese Academy of Science, 2006(in Chinese). |
Cited By in Cnki (25) | |
[4] | 徐东兴.基于GATE框架的信息抽取系统的研究与实现[D].上海:华东师范大学, 2007. Xu D X.A GATE-based information extraction system:Research and implementation[D].Shanghai:East China Normal University, 2007(in Chinese). |
Cited By in Cnki (7) | |
[5] | 原欢.基于GATE的货物动态邮件信息抽取方法与应用研究[D].南京:南京航空航天大学, 2013. Yuan H.GATE based cargo dynamic E-mail information extraction algorithm and implementation[D].Nanjing:Nanjing University of Aeronautics and Astronautics, 2013(in Chinese). |
Cited By in Cnki (0) | |
[6] | 陈静.基于本体的信息抽取研究[D].苏州:苏州大学, 2007. Chen J.Research of ontology-based information extraction[D].Suzhou:Soochow University, 2007(in Chinese). |
Cited By in Cnki (14) | |
[7] | Seneviratne M D S.Use of agent technology in relation extraction for ontology construction[C]//Proceedings of 2011 4th IEEE International Conference on Computer Science and Information Technology.Piscataway, NJ:IEEE Press, 2011, 6:70-76. |
Click to display the text | |
[8] | 张志雄, 吴振新, 刘建华, 等.当前知识抽取的主要技术方法解析[J].现代图书情报技术, 2008(8):1-11. Zhang Z X, Wu Z X, Liu J H, et al.Analysis of state-of-the-art knowledge extraction technologies[J].New Technology of Library and Information Service, 2008(8):1-11(in Chinese). |
Cited By in Cnki (13) | |
[9] | 杨威.基于正则表达式的Web信息抽取系统的研究与实现[D].西安:西安电子科技大学, 2011. Yang W.The research and implementation of Web information extraction system based on the regular expression[D].Xi'an:Xidian University, 2011(in Chinese). |
Cited By in Cnki (1) | |
[10] | Cunningham H, Maynard D, Bontcheva K, et al.Developing language processing components with GATE version[EB/OL].2014-05-20[2014-06-10].http://gate.ac.uk/sale/tao/split.html. |
Click to display the text | |
[11] | 谭月辉, 肖冰, 陈建泗, 等.Jena推理机制及应用研究[J].河北省科技院学报, 2009, 26(4):14-17. Tan Y H, Xiao B, Chen J S, et al.The suvery of Jena's reasoning and applying[J].Journal of the Hebei Academy of Sciences, 2009, 26(4):14-17(in Chinese). |
Cited By in Cnki (39) | |
[12] | 杨柳.模糊本体建模方法及语义信息处理策略研究[D].长沙:中南大学, 2011. Yang L.Fuzzy ontology modeling methods and semantic information processing strategies[D].Changsha:Central South University, 2011(in Chinese). |
Cited By in Cnki (2) | |
[13] | 穆一夫.基于认知的非结构化信息抽取关键技术与算法研究[D].北京:中国矿业大学, 2013. Mu Y F.Research on key technology and algorithms in unstructured information extraction based on cognition[D].Beijing:China University of Mining and Technology, 2013(in Chinese). |
Cited By in Cnki (1) | |
[14] | 黄风华, 晏路明.基于Jena的台风灾害领域本体模型推理[J].计算机应用, 2013, 33(3):771-775. Huang F H, Yan L M.Reasoning of ontology model for typhoon disaster domain based on Jena[J].Journal of Computer Applications, 2013, 33(3):771-775(in Chinese). |
Cited By in Cnki (4) | |
[15] | Yang S, Wang X P, Wu G.Analysis of semantic query performance for Jena-based storage model[C]//Proceeding 2010 IEEE International Conference on Software Engineer and Service Sciences.Piscataway, NJ:IEEE Press, 2010:553-556. |
Click to display the text | |
[16] | 张奇.信息抽取中实体关系识别研究[D].合肥:中国科学技术大学, 2010. Zhang Q.Research on entity relation recognition in information extraction[D].Hefei:University of Science and Technology of China, 2010(in Chinese). |
Cited By in Cnki (18) |