董洋溢 李偉華 陳世亮
1(西北工業(yè)大學(xué)計算機(jī)學(xué)院 陜西 西安 710072)2(西北工業(yè)大學(xué)明德學(xué)院 陜西 西安 710124)
?
中文領(lǐng)域知識半自動化OWL本體構(gòu)建方法研究
董洋溢1李偉華1陳世亮2
1(西北工業(yè)大學(xué)計算機(jī)學(xué)院陜西 西安 710072)2(西北工業(yè)大學(xué)明德學(xué)院陜西 西安 710124)
摘要傳統(tǒng)中文領(lǐng)域本體構(gòu)建多采用手工構(gòu)建的方法,這種方法費時費力且重用率不高。針對這種情況,提出一種把中文領(lǐng)域知識文檔半自動化地轉(zhuǎn)化為OWL(Web Ontology Language)本體的方法。該方法以武器裝備領(lǐng)域為例,先使用分詞工具ICTCLAS5.0對中文文檔進(jìn)行分詞等預(yù)處理,然后使用TF-IDF算法、基于模板匹配算法挖掘領(lǐng)域核心概念、聚類概念等級關(guān)系,再使用Jena將聚類后的三元組文檔形式化為OWL本體,最后使用 Protégé工具對OWL本體進(jìn)行可視化管理。實驗結(jié)果表明,該方法可以有效地節(jié)省中文本體構(gòu)建的時間和人力成本,為全面解決中文領(lǐng)域本體的自動化構(gòu)建提供了一個新的思路和嘗試。
關(guān)鍵詞OWL本體本體構(gòu)建JenaProtégé
0引言
本體用于形式化地保存某一領(lǐng)域的知識,創(chuàng)建本體的過程可以被視為將人類所掌握的知識轉(zhuǎn)換為一種計算機(jī)可獲取的形式的過程。顯然,有不少可能的知識源需要被形式化。知識源可能存放在領(lǐng)域?qū)<业拇竽X中、互聯(lián)網(wǎng)中、數(shù)據(jù)庫中或者書本及文檔中[1]。本文主要討論如何將非結(jié)構(gòu)化的中文文檔中的領(lǐng)域知識轉(zhuǎn)化為計算機(jī)所能處理的本體。國內(nèi)外主要的本體構(gòu)建方法有TOVE法、骨架法、IDEF5法、METHONTOLOGY法、SENSUS法、KACTUS工程法、七步法等綜合性方法[2]。文獻(xiàn)[3-5]分別對這些方法進(jìn)行了比較研究。通過這些分析比較,可以看出[6]:1) 目前還沒有一套完善的工程方法,很大程度上依賴于具體的項目;2) 本體的構(gòu)建應(yīng)以具體的項目領(lǐng)域和任務(wù)作為起點,以便于進(jìn)行本體功能的描述和知識的獲取;3) 沒有專門針對中文文檔知識的本體構(gòu)建的成熟方法,可參考現(xiàn)有軟件開發(fā)標(biāo)準(zhǔn),結(jié)合項目和實際任務(wù)的需求,探索和完善構(gòu)建本體的標(biāo)準(zhǔn)方法論;4) 大部分構(gòu)建過程都需要人工構(gòu)建,自動化程度不高,效率低下。
OWL[7]是W3C目前推薦的本體表示語言,被設(shè)計用于供計算機(jī)進(jìn)行信息處理,采用XML語言編寫。考慮到中文語義的復(fù)雜性,研究中文領(lǐng)域知識的半自動本體構(gòu)建方法是一個可行且很有意義的研究方向。為了便于研究和說明,本文以武器裝備(如武警)領(lǐng)域為例,提出一種將中文領(lǐng)域文檔半自動地轉(zhuǎn)化為OWL本體的方法。
1武器裝備領(lǐng)域中文本體半自動構(gòu)建流程設(shè)計
參照Uschold的“骨架法”[8],武器裝備領(lǐng)域中文本體半自動構(gòu)建方法可以分為五個步驟。即確定研究領(lǐng)域、中文知識文檔預(yù)處理、挖掘核心概念、概念間關(guān)系抽取及聚類以及OWL本體結(jié)構(gòu)化。如圖1所示。

圖1 武器裝備領(lǐng)域本體構(gòu)建流程
1.1確定研究領(lǐng)域
在信息化戰(zhàn)爭的背景下,武器裝備領(lǐng)域的信息化已成為一個研究的熱點。考慮到武器裝備領(lǐng)域的相關(guān)詞匯量相對集中,概念層次分類清晰,有利于研究和分析。本實驗選取了武器裝備領(lǐng)域來建立本體,以期為今后的武器裝備信息化提供一定的借鑒。
1.2中文知識文檔預(yù)處理
大量的領(lǐng)域知識永久化地保存在各種中文文檔中,中文文檔語料屬于非結(jié)構(gòu)化知識結(jié)構(gòu),在計算機(jī)進(jìn)行處理前要先進(jìn)行預(yù)處理。對中文知識文檔的預(yù)處理包括分詞、詞性標(biāo)注及去掉干擾項等工作。
1.3挖掘核心概念
使用預(yù)處理過的中文語料來半自動地構(gòu)建領(lǐng)域本體,最為關(guān)鍵的一步就是要確定該領(lǐng)域的核心概念。可以根據(jù)詞頻或特定參數(shù)設(shè)計特定的算法來最終確定核心概念,在自動化初步建模后再由領(lǐng)域?qū)<疫M(jìn)行完善和修正。
1.4概念間關(guān)系抽取及聚類
武器裝備領(lǐng)域中概念之間的關(guān)系很復(fù)雜,包括等級關(guān)系(上下位關(guān)系)、等價關(guān)系、傳遞關(guān)系及不相交關(guān)系等。為了便于研究,這里主要討論等級關(guān)系的抽取及聚類。
1.5OWL本體結(jié)構(gòu)化
在武器裝備領(lǐng)域概念及概念之間的關(guān)系確定后,就需要把這些概念及關(guān)系結(jié)構(gòu)化為OWL本體。OWL本體結(jié)構(gòu)化可以采用Jena推理機(jī)進(jìn)行自動構(gòu)建[9],領(lǐng)域?qū)<易詈罂梢允褂肞rotégé工具進(jìn)行編輯和查看構(gòu)建好的OWL本體,進(jìn)行手工完善和修正,從而完成本體的半自動化構(gòu)建。OWL本體方便計算機(jī)進(jìn)行管理,也為知識的邏輯推理和形式化奠定的基礎(chǔ)。
2武器裝備領(lǐng)域中文本體半自動構(gòu)建的實現(xiàn)
武器裝備領(lǐng)域中文本體半自動構(gòu)建的實現(xiàn)過程主要包括中文知識文檔預(yù)處理、挖掘核心概念、概念間關(guān)系的抽取和聚類及OWL本體結(jié)構(gòu)化。如圖2所示。

圖2 武器裝備領(lǐng)域本體半自動構(gòu)建的實現(xiàn)
2.1中文知識文檔預(yù)處理
中文知識文檔預(yù)處理主要包括對原始語料的分詞、詞性標(biāo)注及去干擾處理。中文原始語料的分詞及詞性標(biāo)注采用中科院計算所分詞工具ICTCLAS5.0,該工具的分詞準(zhǔn)確率一般可達(dá)90%以上,在分詞的同時標(biāo)注出詞性。對于特定的領(lǐng)域詞匯,也可以加入自定義的用戶詞典,以確保專有詞匯的準(zhǔn)確切分。
例如,圖3所示的中文領(lǐng)域文檔[10]。

圖3 中文領(lǐng)域文檔
經(jīng)過ICTCLAS5.0工具進(jìn)行分詞及詞性標(biāo)注后的結(jié)果如圖4所示。

圖4 經(jīng)過標(biāo)注后的結(jié)果
將一些領(lǐng)域?qū)S迷~匯(比如:殲7、殲8、殲8-2、殲9、殲10、殲11、蘇30)加入用戶詞典后,分詞結(jié)果如圖5所示。

圖5 加入專用詞匯后的分詞結(jié)果
去干擾處理主要包括去掉語氣詞、介詞、量詞、形容詞及連詞等。這些詞對提取本體需要的核心概念沒有多大幫助,反而會產(chǎn)生干擾。
2.2核心概念挖掘
在對武器裝備領(lǐng)域原始中文文檔語料進(jìn)行預(yù)處理后,得到了許多與該領(lǐng)域相關(guān)的概念(詞匯或詞條)。接下來就要從這些概念中提取和挖掘出該領(lǐng)域的核心概念。
核心概念的挖掘算法采用統(tǒng)計學(xué)習(xí)中比較成熟的TF-IDF算法[11]。特征項頻率TF(Term Frequency),是指特征項(概念)在文檔中出現(xiàn)的次數(shù)。反文檔頻率IDF(Inverse Document Frequency),是指特征項在文檔集分布情況的量化。TF-IDF的主要思想是:如果某個詞或短語,在一個文檔中出現(xiàn)的頻率TF高,并且在其他文檔中很少出現(xiàn),則認(rèn)為此詞或者短語具有很好的類別區(qū)分能力,適合用來進(jìn)行分類。
TF-IDF計算公式如下[12]:
TFIDFi,j=TFi,j×IDFi
(1)

使用TF-IDF提取領(lǐng)域核心概念的流程如下:
S1:輸入預(yù)處理過的中文領(lǐng)域文檔集D={di,i=1,2,…,N}。
S2:按照式(1)計算出每個概念的領(lǐng)域權(quán)重,即TF-IDF值。
S3:遍歷每個概念的TF-IDF值,若其TF-IDF值>設(shè)定閾值,則提取出該概念。
為了便于研究和分析,本次實驗選取了100篇武器裝備領(lǐng)域相關(guān)的中文文檔進(jìn)行實驗[13]。在分詞及去干擾后對概念的TF-IDF權(quán)值進(jìn)行了計算,表1給出了其中部分概念的TF-IDF值。

表1 部分領(lǐng)域概念的TFIDF值
比如:若閾值設(shè)為0.008的話,則表1中的概念都可以被提取出來。
2.3概念層次聚類
抽取領(lǐng)域核心概念后,為了便于研究,接下來就要確定這些概念之間最重要的關(guān)系,即等級關(guān)系。確定等級關(guān)系也就是對這些概念進(jìn)行層次聚類。概念的層次聚原理如圖6所示。

圖6 概念層次聚類示例
基于改進(jìn)的模板匹配層次聚類算法如下:
輸入:若干個概念
輸出:包含等級關(guān)系的樹形的概念圖
S1:逐個掃描待處理的概念,查詢是否存在于敘詞表或航空名詞大典航空中,若存在,則把概念標(biāo)記為1,轉(zhuǎn)向S2;若不存在,則標(biāo)記為0,轉(zhuǎn)向S3;
S2:查看概念在敘詞表或航空名詞大典航空中的層次關(guān)系概念,再查看這些層次關(guān)系概念是否存在于待處理的概念中,若存在則構(gòu)建等級關(guān)系概念樹。轉(zhuǎn)向S4;
S3:逐個掃描標(biāo)記為0的待處理概念,根據(jù)自定義的模板匹配等級關(guān)系,構(gòu)建等級關(guān)系概念樹;
S4:遍歷概念標(biāo)記為1的概念樹,根據(jù)自定義模板匹配判定是否有和標(biāo)記為0的概念樹中的概念存在等級關(guān)系的概念,若存在,則將兩棵概念樹合并;
S5:輸出一棵完整的概念樹。
以三元組的形式保存概念樹,比如:“殲7殲擊機(jī)”,“isSubOf”,殲擊機(jī),將這些三元組寫入到一個txt文件中。
2.4形式化為OWL本體
讀取保存等級關(guān)系概念樹的txt文件,通過Jena提供的Java API將txt文件轉(zhuǎn)化為OWL本體文件。Jena是HP公司開發(fā)的開源工具[14],可由http://jena.apache.org/上直接下載,本文使用的是Jena2.12.0。
下面給出了Jena形式化OWL本體的算法示例。
輸入:保存概念及其等級關(guān)系的三元組形式的txt文件
輸出:OWL格式的本體文件
File toONTO(File txtFile)
{
//調(diào)用Jena API,建立本體模型,該模型使用OWL語言
OntModel m = ModelFactory.createOntologyModel( );
String URI="http:// owl/KJOntologies#";
//本體命名空間URI
//按行讀出txt文件record
while ((record=readLine(txtFile ))!=EOF)
{//將三元組的三個詞條保存在fields數(shù)組中
String fields[]=record.split(“ ”);
OntClass C1 = m.createClass( URI + fields[0]);
//第一個詞條轉(zhuǎn)化為Class
OntClass C3= m.createClass( URI + fields[2]);
//第三個詞條轉(zhuǎn)化為Class
if(fields[1]是對象)
//第二個詞條轉(zhuǎn)化為ObjectProperty
{
//創(chuàng)建對象屬性
ObjectProperty op= m.createObjectProperty(URI+ fields[1] );
C1.addProperty(op,C3);
//添加對象屬性
}else
//第二個詞條轉(zhuǎn)化為DataProperty
{
DataProperty dp=m.createDataProperty(URI+ fields[1]);
C1.addProperty(op,C3);
//添加數(shù)據(jù)屬性
}
}
owlFile. write(m);
//將內(nèi)存本體寫入OWL文件中
return owlFile;
//返回OWL文件
}
若需要創(chuàng)建實例,Jena也提供了相應(yīng)的方法。比如:Individual inst = m.createIndividual(URI + “殲8”,殲擊機(jī) );//創(chuàng)建了“殲8”作為“殲擊機(jī)”類的實例。
2.5使用Protégé對OWL本體進(jìn)行可視化管理
得到OWL本體后,可以使用Protégé4.0工具打開OWL文件,對半自動化構(gòu)建的OWL本體進(jìn)行可視化管理,進(jìn)一步通過
領(lǐng)域?qū)<襾硗晟坪托拚淦餮b備領(lǐng)域本體,完成對半自動構(gòu)建本體微調(diào)和擴(kuò)展。部分界面如圖7所示。

圖7 使用Protégé4.0工具可視化管理本體
3實驗和推廣
3.1實驗
本次實驗選取了100篇武器裝備領(lǐng)域相關(guān)txt類型的中文文檔,經(jīng)過預(yù)處理及TF-IDF算法共挖掘出核心概念78個,概念間等級關(guān)系24個。在使用Jena工具自動化生成OWL本體后,采用Protégé可視化工具管理本體,此時加入領(lǐng)域?qū)<胰斯⑴c本體的完善和排錯,圖形化的界面便于人工進(jìn)行管理。在此實驗中,人工修正概念12個,關(guān)系6個,即概念的正確率約為85%,關(guān)系的正確率可達(dá)75%。
3.2推廣
中文武器裝備領(lǐng)域知識的半自動OWL本體構(gòu)建方法可以推廣到其他中文領(lǐng)域。該方法的基本步驟用在其他領(lǐng)域也是類似的,如圖2所示。不同的是,在文檔預(yù)處理階段,需要添加特定領(lǐng)域的用戶詞典。在挖掘特定領(lǐng)域概念時需要查看相關(guān)領(lǐng)域的敘詞表或領(lǐng)域?qū)S迷~匯表,這樣可以確保半自動化本體構(gòu)建的準(zhǔn)確性更高。
由于領(lǐng)域詞匯和知識的不斷更新,本體的構(gòu)建無論是人工進(jìn)行,還是采用自動化的方法,都應(yīng)該是一個反復(fù)迭代和完善的過程。在本體的初始版本建立后,還要反復(fù)地將其應(yīng)用到實際系統(tǒng)中或與領(lǐng)域?qū)<医涣鳎瑏碓u價和修正,直至滿意。這個反復(fù)迭代的過程將貫穿于本體的整個生命周期[15]。
4結(jié)語
傳統(tǒng)的中文領(lǐng)域本體構(gòu)建的方法多采用手工構(gòu)建,但會耗費大量時間及人力成本。國內(nèi)外針對中文文檔半自動化地構(gòu)建為OWL本體的方法尚無成熟的方法及應(yīng)用可供參考,需要在摸索中前進(jìn)。本文所提出的中文知識文檔半自動化地構(gòu)建為OWL本體的方法對解決這一問題提供了一個參考。可以把人類能直接理解的中文文檔語義半自動地轉(zhuǎn)換為計算機(jī)可以解釋的OWL本體,實現(xiàn)了從人類對中文文字、符號的理解到機(jī)器自動進(jìn)行處理的轉(zhuǎn)化。該方法在小規(guī)模的特定文檔實驗中可以獲得較為理想的結(jié)果,實驗結(jié)果表明,該方法可以有效地縮短本體構(gòu)建的時間,節(jié)省人力成本,為全面解決中文本體自動化構(gòu)建方法提供一個新的思路和嘗試。
參考文獻(xiàn)
[1] Pascal Hitzler,Markus Krotszsch,Sebastian Rudolph,等.語義Web技術(shù)基礎(chǔ)[M].俞勇,等譯.北京:清華大學(xué)出版,2012.
[2] 董慧,聶曼曼.中文本體的半自動構(gòu)建研究[J].情報雜志,2009,28(11):145-149.
[3] 劉萍,胡月紅.領(lǐng)域本體學(xué)習(xí)方法和技術(shù)研究綜述[J].現(xiàn)代圖書情報技術(shù),2012,125(1):17-22.
[4] 張佳.基于ontology的領(lǐng)域知識庫的構(gòu)建與集成實現(xiàn)[D].貴州:貴州大學(xué),2006.
[5] 何海蕓,袁春風(fēng).基于Ontology的領(lǐng)域知識構(gòu)建技術(shù)綜述[J].計算機(jī)應(yīng)用研究,2005(3):14-18.
[6] 王超,李書琴,肖紅.基于文獻(xiàn)的農(nóng)業(yè)領(lǐng)域本體自動構(gòu)建方法研究[J].計算機(jī)應(yīng)用與軟件,2014,31(8):71-74.
[7] OWL簡介[EB/OL].2014.http://www.w3school.com.cn/rdf/rdf_owl.asp.
[8] Uschold M,King M,Moralee S,et al.The Enterprise Ontology[J].The Knowledge Engineering Review,1998,13(1):31-89.
[9] 王雪.中文領(lǐng)域本體構(gòu)建方法研究[D].武漢:華中科技大學(xué),2011.
[10] 中國武器大全[EB/OL].2014-08-12.http://www.zgjunshi.com/Article/Class38/Class60/Index.html.
[11] 彭時名.中文文本分類中特征提取算法研究[D].重慶:重慶大學(xué),2006.
[12] TF-IDF[EB/OL].2014-07-18.http://baike.baidu.com/view/1228847. htm? fr=aladdin#2.
[13] 中國空軍實力[EB/OL].2014-08-11.http://www.leiting001.com/huati/zhonguokongjun/.
[14] 向陽,王敏.馬強(qiáng).基于Jena的本體構(gòu)建方法研究[J].計算機(jī)工程,2007,33(14):59-61.
[15] 熊大紅,方逵,戴小鵬,等.農(nóng)業(yè)本體構(gòu)建方法研究[J].農(nóng)機(jī)化研究,2012(11):48-55.
RESEARCH ON SEMI-AUTOMATIC CONSTRUCTION APPROACH FOR OWL ONTOLOGY OF CHINESE DOMAIN KNOWLEDGE
Dong Yangyi1Li Weihua1Chen Shiliang2
1(SchoolofComputerScience,NorthwesternPolytechnicalUniversity,Xi’an710072,Shaanxi,China)2(NorthwesternPolytechnicalUniversityMingDeCollege,Xi’an710124,Shaanxi,China)
AbstractTraditional Chinese domain ontology constructions are usually by manual, such method is time-consuming and lower in reuse rate. Aiming at the problem, we put forward a method that can semi-automatically convert Chinese domain knowledge documents into OWL ontology. Taking weapon equipment domain as an example, first the method used the word segmentation tool ICTCLAS5.0 to carry out pretreatment of segmentation on Chinese documents, then used TF-IDF algorithm and the template-based matching algorithm to mine the core concepts and clustering concept hierarchy relationship, and after that it formalised the clustered triple documents to OWL ontology using Jena, and finally conducted visualisation management on OWL ontology by Protégé tools. Experimental results showed that, this method could effectively save the time and manpower costs of Chinese ontology construction, and provided a new thought and attempt to fully solving the automatic construction of Chinese domain ontology.
KeywordsOWL ontologyOntology constructionJenaProtégé
收稿日期:2014-11-05。陜西省教育廳2014年科學(xué)研究專項項目(14JK2150)。董洋溢,講師,主研領(lǐng)域:本體技術(shù),智能信息處理。李偉華,教授。陳世亮,副教授。
中圖分類號TP311
文獻(xiàn)標(biāo)識碼A
DOI:10.3969/j.issn.1000-386x.2016.05.005