姜 芳,燕明亮,霍江濤,李子時
(中國人民解放軍63891部隊,洛陽 471003)
在情報學的概念中,情報是可傳遞的知識,它既具有傳遞性,又具有效用性,還具有一定的知識性。正是由于這些情報的特性,使得不同來源的情報之間存在著某種聯系[1]。通過分析大量情報的相關性,挖掘出情報中蘊含的知識及其之間內在聯系,從而獲取豐富的潛在事實,并對某一知識過往的演化歷程和未來的發展趨勢進行推理,是現階段情報分析的一項主要任務[2]。因此,探索挖掘和分析情報的方法,是現代情報研究的一個重要方向。然而,隨著信息技術和互聯網技術的高速發展,無處不在的信息終端每時每刻都在產生海量信息,不同信息之間的關聯也日益復雜多樣,各類信息呈爆炸式增長趨勢。特別是在電子信息裝備情報領域,互聯網的發展使得情報知識的傳遞更加迅速和廣泛,導致情報數據的增長是指數級的,情報研究的對象從單純的紙質情報發展為數字化、電子化的情報,數據形式也呈現出多樣化的特點。如何在海量的、異構的情報數據中進行分析研究,如何應對電子信息裝備領域的專業性要求,這都給情報分析人員帶來了極大的困難和挑戰。當務之急需采用新的技術手段來挖掘、整合和分析海量的異構數據,對不同來源的知識進行融合,為情報分析人員提供輔助手段,提升情報共享服務能力和情報產品的質效。
將知識圖譜引入電子信息裝備情報領域,是解決上述問題的一個思路。知識圖譜通過自然語言處理、語義網絡等底層技術的支持,能夠從大量文本中自動抽取信息來構建結構化的知識,實現大規模、自動化的知識獲取[3]。建立電子信息裝備情報知識圖譜,統一描述各類電子信息裝備實體數據,規范其組織關系,一是可以在語義上實現多源異構數據的融合;二是能夠以圖的形式將具有復雜關系的電子信息裝備情報知識表示出來,輔助情報分析人員從大量數據及其相互關系中快速獲取其關注的知識;三是可整合內、外部情報產品以及結構化情報數據等,深層次挖掘電子信息裝備情報在語義層次的相關知識和內在關聯,進而厘清電子信息裝備之間潛在的相互關聯關系,為情報分析人員挖掘潛在的情報知識提供更為直接的支撐服務。
本文介紹了知識圖譜技術以及基本的構建方法,并結合電子信息裝備情報領域的特點,進一步提出電子信息裝備情報領域知識圖譜的構建框架和構建方法,可為其他情報領域知識圖譜研究人員提供借鑒與參考。
知識圖譜的概念率先由谷歌公司提出,它可以用圖式模型來描述知識和建模世界萬物之間的關聯關系[4]。主要包括節點和邊,節點通常是實體或抽象的概念,邊通常是實體的屬性或實體與實體之間的關系,用節點和邊的形式來表示知識及其內在關系[5-6]。自谷歌提出知識圖譜以來,其他搜索引擎公司也陸續宣布了其“知識圖譜”產品,主要是為了提高自身搜索引擎返回結果的準確率和召回率。目前,知識圖譜所涉及的底層技術已經較為成熟,全世界范圍內已完成了多個大規模知識圖譜的構建,如DBpedia、YAGO、Freebase、NELL、BabelNet等[7]。
從面對的受眾和知識來源來看,知識圖譜一般可劃分為領域知識圖譜和通用知識圖譜。領域知識圖譜主要針對特定領域,具有很強的針對性,如電子商務、醫療健康、金融證券、基因工程等。通用知識圖譜描述的是一般、通用的知識,并不針對特定領域,更多的是應用于智能搜索等領域,例如雅虎、百度、谷歌搜索引擎目前使用的知識圖譜。兩者的側重點也不同,領域知識圖譜更加側重于知識的深度,它需要依靠大量準確豐富的、知識結構復雜、知識質量高的領域內數據來構建,并且還需要通過人工對圖譜進行校正來提高領域知識圖譜的準確性和專業性;通用知識圖譜側重于知識的廣度,對準確度不做強制關注,主要是因為受限于概念范圍的影響,實體、實體屬性、實體間的關系很難通過其它手段進行規范,因而無法確保準確度[8]。
知識圖譜的構建涉及多項關鍵技術,對數據源的完整性和準確性要求較高,是一個系統而復雜的過程。知識圖譜的構建方法大致可以分為兩大類:自上而下方式和自下而上方式[9]。
自上而下方式主要是從百科類數據源中獲得本體、本體之間的上下層級關系和有關規則,形成清晰的架構層級,然后通過實體學習,將實體納入本體的架構中,形成知識圖譜。這種構建方法因為數據源具有較好的層次結構和較高的數據準確率,因此能夠構建出質量較好的知識圖譜。
與自上而下方式相反,自下而上的構建方式是先抽取底層實體,然后對實體進行歸類總結形成概念,最后自下而上逐步對概念進行抽象,從而形成本體的結構層次。這種方式對數據類型不做要求,即可以是互聯網上的非結構化網頁數據,也可以是非結構化的文本數據,如word、txt 等。以自下而上方式構建的知識圖譜在準確率上不如以自上而下方式構建的知識圖譜,主要是因為自下而上的方式所涉及的信息抽取、命名實體識別等技術,相對依賴于NLP 技術的發展程度。此外,由于在知識圖譜的構建過程中,可能會有多個數據來源,從這些數據源中抽取的信息可能存在冗余信息、錯誤信息、甚至相悖的信息,這些異常信息都會導致知識圖譜的準確度下降,因此如果要提高由自下而上方式形成的知識圖譜的準確度還需要知識融合技術的發展。
在實際的構建過程中,為了提高知識圖譜的準確度,一般采用兩種方式相結合的方法來進行構建[10]。
構建電子信息裝備情報知識圖譜,是通過數據獲取、自然語言處理、語義分析等方法來挖掘處理涉及電子信息裝備的情報數據,并采用圖結構來表示電子信息裝備實體、實體屬性以及實體之間的關系,形成可以不斷更新的電子信息裝備情報知識圖譜。
由于電子信息裝備專業性較強,對準確性和層次關系要求較高,因此,電子信息裝備情報知識圖譜作為一種領域知識圖譜,需要有嚴格的本體層結構以及相關度高且準確的電子信息裝備情報領域數據。因此,本文采用自上而下和自下而上的組合方式,對電子信息裝備情報的知識圖譜進行構建,其構建過程如圖1所示。

圖1 電子信息裝備領域知識圖譜構建流程
首先通過本體學習對數據詞典、敘詞表、邏輯規則等數據進行處理來構建電子信息裝備情報知識圖譜的本體模型;然后針對構建好的本體模型,通過知識抽取技術對電子信息裝備情報數據進行實體、關系和屬性的抽取;再經過知識融合對抽取的實體、屬性和關系進行進一步的處理;最終完成電子信息裝備情報知識圖譜的自動構建和知識存儲[11]。
數據采集是電子信息裝備情報知識圖譜數據來源最主要的手段,主要是對異構、分散的各種情報與數據資源進行采集和存儲。數據來源包括互聯網開源信息、內外部情報產品以及各類情報數據庫;格式主要包括結構化、半結構化以及非結構化等三類數據。其中,互聯網開源信息主要采用網絡爬蟲進行采集,本文主要采用基于DOM 的網頁文本抽取技術;數據庫主要將數據通過ETL 抽取轉換到目標數據庫的方式進行信息采集,本文選擇kettle 作為數據遷移的引擎;而對于內外部情報產品,主要采用基于FTP 服務器進行采集,并且將文本文件的內容抽取轉換到指定的字段上。
數據采集后,需要對各類數據進行預處理,用來進行數據的融合以及電子信息裝備情報知識圖譜的構建。預處理主要包括信息的清洗、信息的轉換、信息要素的標引等方面的內容。其中,信息的清洗主要是檢測并處理原始數據中的不完整數據、重復數據、錯誤數據等“臟數據”,保證數據的質量;信息轉換是通過數據轉換函數將清洗后的數據轉化為具有統一格式的數據,主要在數據的語義表達、數據類型、數據長度、數據精度等方面進行統一的數據轉換;信息要素標注主要是對數據產生的時間、標題、修改的時間、來源、所屬分類、可信程度、作者、屬性信息等內容進行標注和明確。數據采集架構如圖2所示。

圖2 數據采集架構
領域本體能夠對特定領域內的實體概念及其相互關系、領域活動及其所具有的規律和特性進行形式化的描述。構建電子信息裝備情報領域本體能夠定義實體的范圍、屬性、相互層次關系、約束關系、關聯關系等,明確本體的概念、屬性、關系和規則,形成知識的結構層次,避免在構建知識圖譜時出現較多的錯誤。在初期的本體建模中采取人工建模的形式完成對電子信息裝備情報領域本體概念與屬性的刻畫與定義。
知識本體的構建流程主要包含三個階段:
(1)實體關系相似度計算;
(2)實體上下位關系抽取;
(3)本體的生成。
比如,在知識圖譜構建之前得到的三個與電子信息裝備相關的“宙斯盾系統”“計算機”“SPY-1 雷達”實體,構建模型并不知道它們之間的具體差異,但當計算完三個實體之間的相似度之后,會發現“宙斯盾系統”和“SPY-1雷達”之間可能更相似,和“計算機”之間的差別可能更大一些。這就是第一步的作用是在構建知識圖譜之前獲得實體之間的相似度。這個階段的知識圖譜沒有一個上、下層的概念,通過進行第二步實體上下位關系抽取,可以讓知識圖譜具有上、下層的關系。當結束了前兩步以后,這個知識圖譜知識節點之間的關系可能就會更加清晰,從而生成本體。比如“宙斯盾系統”和“SPY-1 雷達”,其實都是電子信息裝備情報領域實體下的細分實體,并且“SPY-1雷達”是“宙斯盾系統”的一部分。知識本體建立示例如圖3所示。

圖3 知識本體建立示例
此外,在手動構建最初的本體時,本文還構建了電子信息裝備領域敘詞表,通過敘詞表的相互層次關系,可以提高電子信息裝備情報領域本體庫的準確率。
信息抽取的目的是產生知識圖譜所需要的數據,主要包括命名實體識別、實體的屬性抽取、實體間的關系抽取等三個方面。
命名實體識別主要是用來識別文本中事物的名稱,如裝備名稱、國家名稱、機構名稱、武器平臺等。本文采用的實體識別模型是LSTM-RNN 模型,傳統的循環神經網絡(RNN)模型可以學習歷史的信息,但在進行長序列學習時會出現梯度消失或者爆炸的現象,無法解決長時間跨度的非線性關系[12-13]。長短時記憶網絡(LSTM)是一種時間遞歸的神經網絡,適用于解決延遲時間較長的事件問題,并能解決使用RNN 時出現的梯度消失和梯度爆炸問題[14-15]。本文將RNN 和LSTM 相結合,充分利用二者優點,使模型效果得到進一步加強,在進行術語抽取的時候對當前歷史信息和長距離信息都可以進行學習,使抽取效果更好[16-17]。本文的實體識別架構如圖4 所示,分為特征抽取、實體抽取、實體過濾。

圖4 實體識別架構
屬性抽取主要是將實體的屬性名、屬性值從文本數據中抽取出來,形成一個能夠描述實體屬性信息的三元組(實體、屬性名和屬性值)。例如,句子“標準3導彈彈體長度是6.55 m”中表述的關系可以表示為(標準3 導彈,彈長,6.55 m)。本文屬性抽取架構如圖5 所示,主要分為特征抽取、候選實體對抽取、三元組抽取和三元組過濾。

圖5 屬性抽取架構
關系抽取主要是將實體間的語義關系從文本數據中抽取出來,形成一個能夠描述實體關系的三元組(實體a、關系和實體b)。例如,句子“EA-18G 服役于美國海軍”中表述的關系可以表示為(EA-18G,服役于,美國海軍)。為了提高關系抽取的效果,本文采用帶注意力機制的雙向長短時記憶網絡(Bi-LSTM)模型[18]。LSTM/RNN 模型使用傳統的編碼器-解碼器結構時有一個問題:在將輸入信息編碼成向量時,無論輸入長短,其編碼的向量長度都是一個固定值,這使得模型在學習長輸入序列時效果很差[19-20]。而注意力機制利用模型輸出時會選擇性地專注考慮輸入中最相關信息的原理,使關系抽取更加準確[21]。
關系抽取系統基于流水線架構,主要分為特征抽取、候選實體對抽取、三元組抽取和三元組過濾等模塊。關系抽取系統架構如圖6所示。

圖6 關系抽取架構
在信息抽取完成后,會出現不同數據來源關于同一實體的描述信息不完整或有歧義等問題,因此需要借助知識融合來完善實體的描述信息或者消除描述信息的歧義,對不同數據來源的異構數據能夠按照一定的規則進行整合。文本在構建電子信息裝備情報知識圖譜時進行知識融合需要解決的問題主要有以下兩種:
(1)實體的歧義和共指問題。在進行實體的鏈接時,會出現某個實體有多個指代對象的問題,也會出現同一實體對象有多個指稱項與之相對應的問題[22]。例如,“F-22”“猛禽”“F-22戰斗機”三個指稱項都指向了美國空軍“F-22”戰斗機這個同一實體對象,這是共指問題;而“猛禽”除了可以指代“F-22”戰斗機實體外,還能指代某一種鳥類,這就是歧義問題。實體的歧義和共指問題會影響知識圖譜構建的準確性,因此在構建圖譜時要盡可能地解決此類問題,學術界將解決實體的歧義問題稱為實體消歧,將解決實體的共指問題稱為共指消解[17]。本文主要采用了基于本文相似度模型的聚類法來進行實體消歧和共指消解。
(2)實體屬性值沖突問題。在進行知識融合時有時會遇到屬性矛盾的情況,例如在進行屬性抽取可能會遇到(F-22,乘客與載人數,2 人)和(F-22,乘客與載人數,1 人)兩組屬性相悖的三元組。本文采用了對不同數據源賦予不同的信源可信度[0,1],并結合投票機制的方式來選取較為準確的屬性值。若屬性值來自于更高的信源信息則以該信源信息為準,若最高信源的信息不止一篇,則進行投票機制,選擇出現次數最多的屬性值。例如,在本例中假設(F-22,乘客與載人數,2人)的來源有(鳳凰軍事,可信度,0.8)、(新浪微博,可信度,0.7),(F-22,乘客與載人數,1 人)來源有(維基百科,可信度,0.8)、(百度百科,可信度,0.8),按照本文的屬性矛盾處理方案可以推斷出應該被采納的屬性三元組為(F-22,乘客與載人數,1人)。
知識圖譜存儲主要對電子信息裝備實體以及實體關系進行規范化的存儲,用于為后續的電子信息裝備情報分析、檢索和服務等應用提供數據。由于知識圖譜的特性及其知識推理等應用需求,傳統的關系型數據庫無法適用于知識圖譜的全部應用場景,因此知識圖譜的數據庫一般選擇圖數據庫。現階段比較常見的圖數據庫主要有Neo4j、GraphDB、MangoDB等。
本文根據后續的實際應用,選擇Neo4j作為其知識存儲的數據庫。Neo4j 是一種以Java 語言為基礎開發的非關系型圖形數據庫,能夠將結構化數據存儲在圖上而非表中。本文將電子信息裝備情報知識圖譜中的概念、實體的基本信息、屬性和實體間的關系存儲在Neo4j 數據庫中。
電子信息裝備情報知識圖譜是一種領域知識圖譜,將知識圖譜引用到傳統的情報分析工作中,能輔助情報人員對大量情報信息進行快速的分析了解,有效地提高情報分析人員的工作效率,保證了情報產品的時效性,并且由于其知識特性及關聯性,能夠從中分析挖掘出更深層次的隱含知識,增加情報研究內容的深度,提升情報產品的質量。本文以實際應用需求為出發點,設計了電子信息裝備情報知識圖譜的基本框架,分析總結了電子信息裝備情報知識圖譜構建中所需的一些關鍵技術,以期能夠為其他領域知識圖譜的構建和應用提供參考和借鑒。