代婷婷 ,周 樂,余秦勇,黃細鳳,謝 軍,宋明慧,劉 嶠*
(1.電子科技大學信息與軟件工程學院,成都 610054;2.提升政府治理能力大數據應用技術國家工程實驗室(中電科大數據研究院有限公司),貴陽 550022;3.中電科大數據研究院有限公司,貴陽 550022;4.中國電子科技集團公司第十研究所,成都 610036;5.中國電子科技集團公司第五十四研究所,石家莊 050000)
本體的概念源于哲學領域,最初的含義是形而上學的同義詞,表示客觀世界中“存在”的本質。20 世紀90 年代,Neches 等[1]、Gruber[2]和Studer 等[3]將本體的概念引入人工智能領域,用于規范知識的表達,以促進知識融合與共享。本體在許多人工智能系統中扮演著關鍵角色,它不僅有利于實現領域概念或術語的統一認識與解釋,還作為機器理解語義信息的一種重要手段,在實現機器理解和認知推理過程中扮演著不可或缺的角色。此外,本體作為一種如何實現領域知識共同理解的解決方案,在實際應用中還具有規范化管理數據、更好地服務于上層應用的作用,被廣泛應用于信息檢索、人工智能、知識管理等領域。
由于知識表達是機器可讀的第一步,不同領域的學者先后提出了多種本體構建方法,但由于人類對知識本體的認知存在文化、學科、地域等差異,迄今為止仍沒有形成普適的標準化本體構建方法。從廣義上講,構建知識本體的任務可以被視為是知識工程領域的一種軟件開發行為,因此研究者們通常參考定義了軟件開發生命周期的IEEE 1074-1995標準來評估已有知識本體構建方法的成熟度[4]。其中,METHONTOLOGY 方法[5]和七步法[6]是兩種相對比較成熟的方法[7]。此外,后續的本體構建方法大多以這兩種為基礎,這在一定程度上證實了方法的適用性。
然而,在為某省政務大數據分析領域構建政務領域本體和開發基于政務知識庫的優化程序分析軟件過程中,本文發現這兩種方法也有明顯的局限性。七步法不是完整的生命周期,METHONTOLOGY 雖然給出全生命周期的本體開發方法,但和七步法一樣,缺少建立工程環境的方法指導和對開發前、后期的細節規定,如操作、支持、維護等。更重要的是,這兩種方法未考慮到如何對本體質量進行評估和響應,而本體評估環節是決定本體能否滿足特定領域業務需求的關鍵因素之一,這種能力缺失會限制本體開發中的版本迭代演進過程。
為解決上述問題,本文借鑒軟件開發的經典V-模型[8],同時參考本體測試領域的相關研究[9-11],即依據領域專家制定需求和本體工程師細化概念制定測試用例文檔、本體測試人員利用SPARQL 查詢語言進行所建本體的可滿足性測試[10]而非本體公理可滿足性測試[11],提出了一種以需求-評估-進化為核心的領域本體構建新方法,稱為基于需求評估響應的循環迭代本體構建方法(Cyclic Iterative Ontology Construction method based on demand assessment and response,CIOC)。其中,“基于需求評估響應”的含義為強調采用本體測試方式來評估所建本體對本體應用需求的可滿足性,“循環迭代構建”的含義是借鑒V-模型軟件開發生命周期思想,在本體開發過程中,在每個關鍵時間節點對需求的可滿足性進行檢查和修正。與通常以知識表征的豐富性和完整性作為本體評估依據的相關工作相比,重視本體對需求的可滿足性是CIOC的主要特征和創新點。
綜上,本文主要貢獻如下:1)針對現有本體構建方案忽視本體構建過程中的質量評估和迭代演進問題,提出一種以需求或任務為驅動的循環迭代本體構建新方法,其特點是:首先在需求分析的同時設計本體測試文檔;其次在核心架構細化、知識架構細化階段對測試文檔進行更新與完善;最后,把測試文檔作為評估標準,分別從核心架構設計、架構知識細化進行可滿足性檢查,并對不滿足情況進行本體的局部迭代與更新。此外,可滿足性環節中還包含對需求變化的判斷,以決定是否進行本體的全局性更新。2)以政務本體構建為案例,通過構建一套以政務事項辦理過程為核心的政務領域本體來驗證CIOC 的實用性。該本體不僅為表達政務事項辦理相關知識提供了知識表征框架,還為已成功應用于某省政務大數據的知識計算提供了流程梳理、流程優化功能新思路,一定程度上說明了CIOC的合理性與有效性。
本體構建的過程是把存儲于人腦中的關于理解事物的框架轉化為從數據源中重構領域知識認知的逆向過程[12],其中本體構建方法是構建者在構建過程(或逆向過程)中需遵守的標準和規范。通過對比分析,本文對現有本體構建方法分為三類:第一類為20 世紀90 年代發展起來的經典本體構建方法;第二類是顯式地利用軟件開發模型思想對經典本體構建方法的改進方法;第三類是近期文獻中強調本體與需求測試間重要性的構建方法。由此可看出,本體構建方法的實用性是當前本體工程領域的一種發展趨勢。
經典本體構建方法包括METHONTOLOGY[5]、七步法[6]等。七步法通過確定知識本體的專業領域和范疇、考察復用現有知識本體可能性、列出領域重要術語、定義類及其層次體系、定義類屬性、定義屬性分面、創建實例等步驟完成本體構建,雖然該方法對構建過程具有較為清晰的思路,但缺少對本體的評估,難以判斷本體是否滿足需求。METHONTOLOGY法將構建過程劃分為三個階段:第一個為管理階段,包含任務進展、所需資源以及如何保證質量等事項;第二個為開發階段,包含規范說明、概念化、形式化、執行和維護;第三個為維護階段,包含知識獲取、系統集成、評價、文檔說明、配置管理。以上兩種方法,雖與IEEE 1074-1995標準相比較為成熟,但缺乏本體評估結果的反饋使其難達到符合實際的目的。
第二類方法主要包括Ontology Methodology[13]、SCIM(Software Centric Innovative Methodology,SCIM)[14]等。Rani等[13]以METHONTOLOGY 方法為基礎,利用傳統瀑布模型和統一過程開發思想,對獲取領域詞匯、枚舉概念與屬性、概念分類、整合概念間的層級分類、描述概念屬性及關系、添加復雜限制和規則等進行迭代更新以完成本體構建。該方法雖然獲取了更豐富的知識體系,但忽略了本體評估與需求間的相互關聯,即缺乏對迭代更新的需求引導。John 等[14]提出一種基于軟件工程過程模型的混合本體開發方法SCIM,從需求分析、領域分析、概念設計、形式化表達、本體評估角度進行本體的迭代更新。
第三類方法是強調滿足實際需求的本體構建方法,如SAMOD (Simplified Agile Methodology for Ontology Development)[15]等。Blomqvist 等[9]針對本體構建方法沒有關注對支持某些應用或任務的可滿足性問題,首次提出了基于測試用例的本體需求驗證(或本體測試)方法。Peroni[15]受Blomqvist等工作啟發,參考軟件工程中敏捷方法、測試驅動方法,提出一種SAMOD 的本體構建方法,并從開發步驟中定義出本體需求的測試用例來驗證本體合理性,但未對測試部分進行詳細說明。Fernández-Izquierdo[10]是對Blomqvist、Peroni等工作的擴展與豐富,即通過領域專家制定需求、本體工程師細化概念的方式制定測試用例、本體測試人員執行測試用例,提出一套詳細的基于SPARQL 查詢的本體測試框架以滿足實際功能的應用需求。此外,Keet 等[11]還提出從本體的公理可滿足性角度來評估本體是否滿足實際需求。
為明確各類方法在本體評估和響應上的差異性,本文從是否復用已有本體、是否存在評估環節、是否存在本體進化環節以及本體構建形式角度進行分析對比,具體信息如表1 所示。從表中可知,首先,部分本體構建方法大多未考慮本體復用環節,忽略了不同本體概念的共享與重用。其次,大多方法都認可本體評估和本體評估響應對所建本體的重要性。具體地,受本體構建流程為線性形式的影響,經典方法雖然存在評估環節但未對本體評估結果進行響應(即本體迭代更新);Ontology Methodology、SCIM、SAMOD 本體構建方法是利用如敏捷開發、增量開發等軟件開發模型對經典本體構建方法的改進,均可實現本體進化或本體版本演替的功能,且均屬于線性和循環相結合的構建形式。此外,在本體評估環節中,大多學者從結構(邏輯正確性)、功能(知識覆蓋面)、可用性(復用本體概念)三種特性出發進行本體質量評定[10]。但基于功能特性的本體評估方法側重于表達領域知識豐富性,難以滿足實際需求的評估檢驗,為解決該問題,本文借鑒V-模型開發思想和本體測試框架進行改進。
V-模型是對軟件開發過程模型中瀑布模型的一種改進,與瀑布模型相比,V-模型強調基于測試結果(或測試驅動)響應和滿足應用需求的重要性。其主要特點是能應對需求的變化、以及在需求分析階段制定出測試要求并將其應用于產品測試的不同階段以進行需求的可滿足性檢查,同時對不滿足需求情況能夠從全局(需求出發)或局部(需求分析到測試間)進行迭代更新。V-模型的軟件開發思想對指導本體構建是有一定幫助的,具體原因如下:首先,V-模型最大目標是滿足應用需求,這一點與基于需求驅動的本體構建不謀而合;其次,V-模型強調在需求分析時定義測試文檔,這與知識工程學者利用本體測試框架進行本體評估的方式一致;最后,本體構建是螺旋式的上升并非一蹴而就,本體構建需求通常是不明確且一般會發生變化的,這與V-模型的全局和局部更新關聯緊密。
因此,本文借鑒V-模型開發思想,綜合本體測試框架,構建出基于需求評估響應的循環迭代本體構建方法。該方法明確定義了本體構建過程中的需求分析、核心架構設計、架構知識細化、編碼、評估及其更新五部分內容,強調了需求評估響應對所建本體滿足需求的重要性,同時實現了不同維度上的本體評估和演進,如圖1所示。各部分描述如下。
該階段參與者包含領域知識專家、本體工程師、測試人員、需求方四種角色的人員,目標是分析出較為符合要求的本體構建需求,并制定出基于應用需求的本體評估標準或本體測試設計文檔,即單一知識和核心場景知識的可滿足性表達文檔。其中單一知識指該領域的某個詞語;場景知識指該領域在特定時間空間下的關于人、事、物間相互關聯的知識。具體地,本體構建需求一般是基于專家經驗,和通過提出并回答問題的方式對目標和測試要求進行明確,如面向哪個領域建立本體?建立本體的目的是為了實現什么應用?該應用目標用戶有哪些?應用場景必須涉及哪些實例數據?領域核心術語有哪些等問題。此外,受領域知識邊界的模糊性和領域間知識交叉性的影響,參與人員還需明確知識領域范圍。
該階段參與者為本體工程師和測試人員。首先,預先定義好本體編輯工具和表示語言;其次,根據需求分析中的本體目標與范圍確定可參考的數據源,定義該研究領域的核心要素與關聯關系知識,并從核心架構設計層面形成單一知識、場景知識的資源描述框架(Resource Description Framework,RDF)三元組數據并填寫到核心架構本體測試文檔中。
該階段參與者為本體工程師和測試人員。本體工程師主要是基于核心架構設計內容,通過枚舉可參考數據源中的概念及其屬性以實現知識的細化工作,依據專家知識整合概念分類與屬性、創建實例以建立非形式化的領域知識體系。同時,從知識細化角度形成與單一知識和場景知識相關的RDF三元組,寫入架構知識體系細化的本體測試文檔中。
該階段參與者為本體工程師,任務是利用本體描述語言和本體開發編輯工具,完成非形式化到形式化知識架構的轉變,初步完成本體的構建。
該階段參與者為本體工程師和測試人員,內容為本體一致性檢驗以及需求的可滿足性測試。本體工程師首先使用推理機(如Jena 等)進行本體一致性檢驗,如若存在邏輯錯誤情況則根據錯誤結果在編碼環節中進行修改,直至滿足一致性要求為止。測試人員基于核心架構本體測試文檔、架構知識體系細化本體測試文檔,使用SPARQL 查詢語言對知識可滿足性的表達進行驗證,若存在查詢結果不存在的情況則對本體設計部分進行迭代更新,直至滿足評估要求。此外,評估環節還對需求是否變化進行評估以決定是否實施全局的本體迭代工作。
綜上所述,本文所提的基于需求評估響應的循環迭代本體構建方法具有如下兩個特點:首先,該方法以需求-評估-更新而非以概念層次結構為主線組織領域知識,適用于指導以需求為導向的領域本體構建;其次,線性與循環相結合的本體構建形式貫穿于本體構建整個生命周期,實現了基于評估結果響應的目的。
為驗證CICO方法的實用性和有效性,本文以政務流程優化為應用領域進行分析。由于政務知識涉及領域較多,政務領域本體的構建宜先采用以滿足需求(即政務流程優化)為核心,然后再逐步推廣到相關領域的方式進行構建。以下是運用CICO方法進行政務本體構建的各部分說明。
由于政務人員對政務知識的認識存在局限性,如不同人員對同一知識的理解存在偏差,導致政務知識的互通與利用存在困難,降低了服務質量和效率。因此,構建政務領域本體的目標是為不同政務部門信息體系提供一種政務信息資源統一理解的知識表示框架,并為如政務流程優化等應用實現提供一定支撐。考慮到政務領域信息豐富,如涵蓋組織、法律等多種交叉性領域知識,為方便研究本文以某省政務事項辦理為主要內容進行本體構建說明。
首先,選定可支持中文的概念、屬性、實例編輯和一致性校驗功能的本體編輯工具protege 和表達能力較強的OWL(Web Ontology Language,OWL)作為領域知識的形式化表達語言。
其次,為提高政務領域本體構建效率和所建本體的擴展性,復用WordNet 本體中的同反義詞概念(https://wordnet.princeton.edu/)、Schema(https://schema.org/docs/full.html)和DBpedia(https://wiki.dbpedia.org/)本體中的網頁常用概念等與政務領域相關概念。同時,為貼合實際的政務事項辦理過程,本文以某省政府服務網為重要參考對象,如事項基本信息表、事項辦理流程等,并以《政府數據分級指南》《政務主題詞表》《中華人民法律法規全書》等作為輔助文獻資料進行補充。
最后,明確辦理對象申請事項、受理對象辦理事項場景。即辦理對象在某時間、某行政點上申請事項,并由政府組織下的受理對象處理處于不同環節下的事項。其中,事項狀態需受理對象依據相關法律文件進行判斷,如同意申請并頒發相關事項材料。基于以上描述,提取出事項、組織、材料、環節、對象、地點、時間7個核心概念,以及申請、辦理、產生、屬于等關聯關系。其中核心概念含義如表2 所示,政務領域核心架構如圖2所示。

表2 政務本體的核心概念釋義Tab.2 Explanation of core concepts of government affair ontology
首先,本體工程師基于核心架構設計中的參考數據源,人工地枚舉出與政務相關概念、概念屬性及實例。
其次,基于枚舉結果和核心架構整合形成概念層次結構,部分概念結構如圖2 所示。其中,事項按照事項內容所屬領域劃分為財稅金融類事項、交通運輸類事項等共20 個事項子概念,材料根據功能的不同分為法律文件和事項材料,對象按照事項辦理主客體可分為辦理對象以及受理對象等。
為完成領域知識表達還需描述概念關聯關系和概念基本特征,也就是定義概念的對象屬性和數據屬性。對象屬性是指將概念間的關聯關系,包括層次關系和二元關系,其中層次關系是一種以樹狀結構描述的父與子概念間的關聯關系,如圖2 中材料與法律文件、事項與財稅金融事項間的關系等;二元關系是反映不同層次概念間的關系,如圖2 所示的如對象與事項間的受理或申請關系。數據屬性表示某概念的基本信息,如事項包括事項編碼、事項類型等數據屬性。

圖2 政務領域概念關系(部分)Fig.2 Concept relations of government affair domain(part)
基于核心架構設計步驟中選定的本體描述語言與本體開發軟件,利用概念、屬性、實例編輯接口對架構知識體系細化中獲得的半形式化的領域知識體系進行數據導入,以完成政務領域知識體系的形式化表達。
根據CICO流程,從結構和需求可滿足性表達角度出發驗證所建政務本體的合理性與有效性。在政務本體的結構特性驗證上,利用protege軟件自帶的HermiT推理機進行本體邏輯一致性的檢驗,同時對不滿足一致性檢驗的情況,本體工程師根據推理結果對本體的邏輯錯誤表達進行修訂。
在需求可滿足性表達上,從是否能夠支持核心架構本體測試文檔、知識架構細化的本體測試文檔兩方面表達進行本體查詢驗證。核心架構本體測試階段是重點查詢或判斷核心架構本體測試文檔中的事項、辦理對象、受理對象、事項環節、材料等概念及其具備的數據屬性、對象屬性是否已預定義于當前本體中,如若不存在則返回核心架構設計步驟進行添加與完善。知識體系細化測試階段是從實例化或支持存儲的角度來判斷所定義的知識體系能否表達知識架構細化的本體測試文檔中的事項辦理知識,如若存在不能表達的情況則需返回架構體系細化步驟實現本體的局部更新與完善。以某省“職業病診斷醫師資格許可”事項案例為例進行簡要說明,該事項案例的部分知識關聯圖如圖3 所示。根據事項辦理流程,申請人辦理“職業病診斷醫師資格許可”事項,首先需在周一至周五時間段中提交多種材料到衛生計生委窗口以進入事項申請環節,其中材料包含如衛生計生行政部門提供的《醫師執業證書》等、申請單位提供的《專業技術職務聘任書》等、申請人半身照片等;隨后,趙成松等根據《職業病診斷與鑒定管理辦理》材料和法律標準對受理、審查、決定、制證與發證環節做出相關決定,如出具受理通知書、職業病診斷資格證等。該案例從實例角度證實了所建政務本體能夠涵蓋政務事項辦理的相關知識。此外,本體工程師和測試人員還需衡量本體構建需求是否發生變化,如若改變則需返回需求分析對本體進行全局性的迭代更新,直至滿足實際需求為止。

圖3 部分“職業病診斷醫師資格許可”事項知識片段Fig.3 Part of the knowledge fragment diagram of the item of Occupational Diagnostic Physician Qualification License
受政務數據體量大、事項關聯關系錯綜復雜等因素影響,政務事項辦理存在著群眾和企業辦事“一直在路上”的社會現象,嚴重制約政府各部門的辦事效率,相關部門迫切需要利用自動化手段進行處理以達到簡化政務、提高辦事效率的目的。為此,本文從某省政務大數據分析領域中的流程優化出發,用于說明基于CICO方法構建的政務本體對知識管理、以及優化應用的可滿足性和有效性。
在知識管理上,本文利用政務本體中定義的相關概念與屬性知識制定了一個可自定義、可編輯的可視化事項辦理流程梳理工具。與其他省份的人工繪制流程圖相比,本文所提的梳理工具靈活度高,可減少辦公人員的事項發布時間成本,縮短事項辦理流程發布時間以方便辦理群眾的快速知曉。另一方面,為新的政務知識入庫或者已有政務知識的更新提供了一套標準化的接口,這在一定程度上有助于數據規范化管理、以更好地服務于流程優化應用。
在政務本體支撐流程優化應用上,從某省政務官網中獲取相關事項辦理數據,如部門、事項、材料、辦理對象等,依據政務本體庫定義的概念與屬性,形成事項-需要-材料、事項-依賴-事項等知識,為政務知識庫構建提供了數據支撐。此外,針對群眾和企業辦事“一直在路上”的社會現象,本文對政務流程采用關鍵路徑分析、材料共享的手段實現事項辦理優化功能,這在一定程度上說明了該本體構建方法可有效支撐相應需求的完成。具體功能描述如下:
在對政務知識庫抽取出的事項-材料關聯子圖分析時發現事項辦理所需的材料中存在隱含前置事項的情況,這造成了事項辦理時間過長的問題,如圖4 上部分所示的省發改委中鐵礦、有色礦山開發項目核準的案例事項辦理。其中,該事項辦理涉及多個前置事項辦理的材料結果,如省級城鄉規劃部門出具的選址意見書、建設項目用地預審事項出具的用地預審意見等。為解決隱含前置事項影響辦事效率的問題,把關聯子圖轉換為以事項為節點、獲取事項材料所需時間為邊的事項辦理關鍵路徑圖,利用關鍵路徑算法計算出辦理該事項串的最佳順序和最短辦理時長,同時建議事項節點1、2、3、4進行聯辦,如圖4下部分所示。該解決方案不僅可幫助用戶和管理者了解辦理事項的最長時間和關鍵事件,還提供了事項聯辦優化建議。其中優化建議的實施可使該事項的跑腿次數減少了兩次,進而可緩解群眾和企業辦事“一直在路上”的社會現狀。

圖4 鐵礦、有色礦山開發項目核準事項材料關聯子圖及其關鍵路徑Fig.4 Correlative sub-map and key paths of approval item materials of iron ore and nonferrous mine development projects
此外,在事項-需要-材料關聯子圖中發現在事項辦理過程中存在高頻材料重復提交與審核、事項辦理需求量大影響效率的問題。本文以有限責任公司設立登記事項為例進行說明,該事項辦理需10 份材料,且在某省年度辦理量為630 件、處于高頻事項辦理的第4 名。為此,通過設計材料共享功能,在公司設立登記事項辦理上共享(或者無需重復提交)選址意見書、用地預審意見、承諾書三個材料文件,使得政府年度審核材料次數減少1 887次,提高了政府辦事效率。
綜上所述,依據CICO方法構建出的政務本體能在政務知識管理、政務流程優化應用上具有一定的實用性,進一步驗證了所提的本體構建方法CICO的有效性。
本文所提出的基于需求評估響應的循環迭代本體構建方法是一種面向通用領域的本體構建方法。通過借鑒V-模型開發思想、突出強調本體評估對滿足實際需求重要性的方式,建立了以需求-評估-更新為本體構建的基本循環架構,實現了貫穿于本體構建的全生命周期的評估響應,以達到對已有本體進行局部或全局迭代更新的目的。同時,為驗證所提方法的實用性與有效性,以某省政務知識為研究對象,分別從基于CICO 方法的政務本體構建、基于CICO 方法構建的政務本體對知識管理以及流程優化應用進行了簡要說明。未來工作將從三個方面展開:首先,繼續細化并完善本體評估方法并致力于實現從人為評判到智能技術量化的轉變,減少構建者主觀因素的干擾,以建立更符合領域所需的本體架構;其次,將通過引用規則的方式加強對領域知識的表達;最后,將探索自動化抽取技術,實現概念、屬性等知識的抽取,達到解放人力勞動并提升本體構建效率的目的。