李維娜
(中國軟件評測中心網(wǎng)絡(luò)空間安全測評工程技術(shù)中心, 北京 100048)
知識圖譜[1]又稱為科學知識圖譜,是知識的可視化形式。它是利用信息處理、數(shù)據(jù)挖掘等手段提煉事物內(nèi)部的實體結(jié)構(gòu)關(guān)系,并用圖譜的形式展現(xiàn)出來。Google 搜索引擎自2012 年為搜索添加了智能化元素。智能化搜索應(yīng)該是可以識別用戶的搜索意圖,達到精準搜索,并返回用戶搜索相關(guān)的信息實體及信息實體與其他實體間交叉關(guān)系,也即是信息知識圖譜,這樣用戶就可以執(zhí)行一次搜索完成對一個事物的全方位了解??梢娭R圖譜在智能搜索領(lǐng)域具有重要意義[2]。學術(shù)搜索[3]是用戶檢索科技論文及作者等一系列的信息,同樣知識圖譜在學術(shù)搜索領(lǐng)域也可以提高檢索效率,達到較好的用戶體驗。然而目前的學術(shù)檢索還是通過普通人工整理來明確數(shù)據(jù)本身的關(guān)聯(lián)關(guān)系,利用知識圖譜技術(shù)提高建立關(guān)聯(lián)關(guān)系的智能化程度是一個有意義的研究方向。
知識圖譜起源于語義網(wǎng)絡(luò)。1968 年,J.R.Quillian 提出了語義網(wǎng)絡(luò)的定義,是一種用圖來表示知識的結(jié)構(gòu)形式。知識圖譜由Google 公司于2012 年正式提出,而后逐步應(yīng)用于搜索引擎、智能問答、產(chǎn)品銷售、醫(yī)療等。Ashwini Jaya Kumar 等人[4]提出了一個基于知識圖譜的問答系統(tǒng)接口,解決自動化語音識別和語言處理問題。Haklae Kim為了解決消費者在購物時往往對商品缺少充分信息的問題,提出構(gòu)建一種商品的知識圖譜來解決這個問題,給出了表達產(chǎn)品特征的功能和新方法。Tong Yu 闡述了一種中藥領(lǐng)域的知識采集、分析、管理、構(gòu)建與應(yīng)用,做到了知識的可視化、知識推薦、共享與利用。
搜索引擎是網(wǎng)頁個數(shù)及信息量爆炸式增長的產(chǎn)物。與搜索相關(guān)的產(chǎn)品在1990 年后相繼出現(xiàn)。蒙特利爾McGill的大學生AlanEmtage、PeterDeutsch、BillWheelan 研發(fā)的Archie 打開了搜索引擎思路的大門,雖然這個工具的目的為了快速查找FTP 文件。1993 年又產(chǎn)生了可以搜索網(wǎng)頁和文件的工具,這個來源于美國內(nèi)達華System Computing Service 大學。而后出現(xiàn)了Yahoo 讓搜索引擎的便利深入人心。1998 年出現(xiàn)的Google 搜索、2000 年出現(xiàn)的百度公司、2002 年出現(xiàn)的中國搜索都成為目前搜索引擎領(lǐng)域的巨頭。知識圖譜的出現(xiàn)為發(fā)展智能搜索引擎帶來了美好的前景,同時知識圖譜在搜索引擎方面得到了很好的應(yīng)用,知識圖譜在信息檢索等發(fā)揮著越來越重要的作用。
學術(shù)搜索是專門為學術(shù)工作者提供科技論文、學者、期刊、學術(shù)機構(gòu)檢索的搜索引擎,是提高科技工作者工作效率的重要途徑?,F(xiàn)有的學術(shù)搜索機構(gòu)目前還停留在數(shù)據(jù)庫檢索及關(guān)鍵詞匹配的初級搜索階段,智能化學術(shù)搜索有待發(fā)展。
知識圖譜作為智能搜索的重要技術(shù)組成部分,目前,在學術(shù)領(lǐng)域的應(yīng)用主要有兩種方式。一種基于內(nèi)容的,也就是繪制學術(shù)內(nèi)容本身的知識圖譜,如研究近10 年有關(guān)機器學習方面的知識圖譜,陳瑜林[5]等人在2012 年就研究了學術(shù)群體的可視化知識圖譜構(gòu)建,分析了學者與學者之間的關(guān)聯(lián)關(guān)系。薛芳[6]等人利用7093 篇文獻,研究了國內(nèi)環(huán)境監(jiān)測領(lǐng)域的學者、研究機構(gòu)等。劉陽[7]等人通過共詞分析、聚類分析及多維尺度分析研究了2000 年到2009 年間的搜索引擎學術(shù)知識圖譜;一種是基于內(nèi)容搜索的,也就是通過關(guān)鍵詞檢索獲取復(fù)雜的學術(shù)信息實體及實體關(guān)系,這方面的文獻及研究還十分薄弱。如何把現(xiàn)有的各學科內(nèi)學術(shù)文獻研究的知識圖譜進行整合,提供搜索是十分有必要加以研究的內(nèi)容。
本文從基于知識圖譜的學術(shù)搜索引擎的數(shù)據(jù)采集、分析、構(gòu)建的角度進行了研究,給出了整體的框架及一種學術(shù)信息知識圖譜構(gòu)建算法。
實體是知識圖譜中最基本的組成元素。知識圖譜是一種用圖表達的實體及實體關(guān)系結(jié)構(gòu)的知識庫,可以用三元組表示為KG={E,R,S}[8]。其中E={e1,e2,….,e|E|}表示知識庫中實體的集合,|E|表示為實體的總數(shù)。R={r1,r2,….,r|R|}表示知識庫中實體之間關(guān)系的集合,|R|表示為實體關(guān)系的總數(shù)。S ?E×R×E 表示知識庫中實體與實體之間的關(guān)系。
定義1:學術(shù)信息一般包含學術(shù)機構(gòu)、論文、學者、期刊等,符號表示為AI={D,A,E,J,…,R},是一個多種實體及實體關(guān)系的集合。
其中D 代表學術(shù)機構(gòu)及機構(gòu)之間關(guān)系,D={d,Rd},其中d={d1,d2,….,dn},n ∈Z+,Rd={dm×du|dm∈d,du∈d,m ≠u};
A 代表論文及論文之間關(guān)系,A={a,Ra},其中a={a1,a2,….an},n ∈Z+,Ra={am×au|am∈a,au∈d,m ≠u};
E 代表學者及學者關(guān)系,E={e,Re},其中e={e1,e2,…,en},n ∈Z+,Re={em×eu|em∈e,eu∈e, m ≠u};
J 代表期刊及期刊之間關(guān)系,J={j,Rj},其中j={j1,j2,…,jn},n ∈Z+,Rj={jm×ju|jm∈j,ju∈j,m ≠u};
R 代表機構(gòu)、論文、學者、期刊之間的關(guān)聯(lián)關(guān)系的集合,R={r1,r2,…,rn},n ∈Z+,r1={dx×ay×ez×jo|dx∈d,ay∈a,ez∈e,jo∈j;x,y,z,o ∈Z+}。
定義2:學術(shù)信息知識圖譜是用圖的形式表示學術(shù)信息的一種形式。符號表示為KGAI={EAI,RAI,SAI},其中EAI表示知識庫中實體的集合。RAI表示知識庫中實體之間關(guān)系的集合。SAI?EAI×RAI×EAI表示知識庫中實體與實體之間的關(guān)系。
檢索學術(shù)資料是學者做學術(shù)的必備步驟,優(yōu)化學術(shù)信息檢索結(jié)構(gòu)是加速科技進步的有效手段。普通的1.0 時代的學術(shù)信息檢索是一種基于關(guān)鍵詞搜索并返回與關(guān)鍵詞相關(guān)的學術(shù)信息有序列表。
定義3:學術(shù)信息知識圖譜檢索是一種基于用戶在搜索引擎中輸入關(guān)鍵詞進行搜索并返回與關(guān)鍵詞精確匹配的學術(shù)信息及知識圖譜的檢索方式。
要組成一個完整的學術(shù)信息檢索系統(tǒng),必須包括學術(shù)信息數(shù)據(jù)的采集、學術(shù)實體的抽取、學術(shù)信息知識圖譜構(gòu)建、知識圖譜存儲、知識圖譜索引、學術(shù)信息檢索等模塊。
對學術(shù)數(shù)據(jù)的采集可以有多種途徑:學術(shù)機構(gòu)提交給論文收錄機構(gòu)的數(shù)據(jù);通用搜索引擎中的數(shù)據(jù);學術(shù)搜索引擎中的數(shù)據(jù)等。論文收錄機構(gòu)的數(shù)據(jù)是比較規(guī)范的結(jié)構(gòu)化數(shù)據(jù),同時信息比較完整,通用搜索引擎中的數(shù)據(jù)是非結(jié)構(gòu)化的包含冗余信息的數(shù)據(jù),同時信息不完整,學術(shù)搜索引擎中的數(shù)據(jù)一般是可以獲取到結(jié)構(gòu)化的數(shù)據(jù),但信息不能保證完整性。
多種數(shù)據(jù)源經(jīng)過整合后、數(shù)據(jù)預(yù)處理后,要經(jīng)過信息抽取等完成多數(shù)據(jù)源的信息實體抽取。而后進行知識圖譜構(gòu)建形成知識庫。再經(jīng)過索引模塊的搭建把知識庫變成索引庫,為用戶的學術(shù)信息檢索提供快速的響應(yīng)。
學術(shù)信息是研究機構(gòu)、學者、期刊、論文等信息的集合。目前,論文收錄機構(gòu)數(shù)據(jù)庫中一般有完整的研究機構(gòu)、論文、期刊及作者信息,是構(gòu)建知識圖譜的重要數(shù)據(jù)源。同時通用搜索引擎和學術(shù)搜索引擎也是數(shù)據(jù)的重要來源。數(shù)據(jù)采集后實體關(guān)系抽取、知識融合是構(gòu)建知識圖譜完成學術(shù)信息檢索的核心步驟。
規(guī)范的論文收錄機構(gòu)數(shù)據(jù)庫包含完整的研究機構(gòu)信息、學者信息、期刊信息、論文信息以及各種關(guān)系表,如學者論文關(guān)系表記錄了哪位學者發(fā)表了哪篇論文。首先可以根據(jù)各個表獲取實體。實體關(guān)系可以根據(jù)關(guān)系表獲取。
學術(shù)搜索引擎是用戶輸入并提交關(guān)鍵詞并把學術(shù)信息返回給用戶的一臺機器,如百度學術(shù)搜索(http://xueshu.baidu.com),輸入關(guān)鍵詞“模式識別”后返回給用戶的是一個與關(guān)鍵詞相關(guān)網(wǎng)頁信息。
從不同數(shù)據(jù)源獲得的學術(shù)信息實體關(guān)系可以起到相互補充的作用,同時也存在不同數(shù)據(jù)源雖然結(jié)構(gòu)不同,但都表示同一個知識,要多個數(shù)據(jù)源的知識就牽涉到知識融合。如關(guān)系型數(shù)據(jù)庫里面的數(shù)據(jù)是二維表格,而學術(shù)搜索引擎中我們得到的就是規(guī)范的html 文本。
為了從不同數(shù)據(jù)源中抽取實體關(guān)系構(gòu)建知識圖譜,本文采用了知識圖譜常用的存儲方式:三元組(E,R,E)形式,也就是實體-關(guān)系-實體的形式,這種方式的底層儲存可以有多種形式:可以采用一般的關(guān)系數(shù)據(jù)庫,也可以采用RDF 存儲、圖數(shù)據(jù)庫等。整理多個數(shù)據(jù)源的實體及關(guān)系后存儲到一定形式的數(shù)據(jù)庫中,就完成了知識圖譜的底層構(gòu)建。
ElasticSearch 是一個基于Lucene 的搜索服務(wù)器,是一種分布式的實時、穩(wěn)定、方便的開源搜索引擎,同時提供多種開發(fā)語言的API。同時很多機構(gòu)和個人編寫了很多開源的數(shù)據(jù)同步插件,可以很容易地把關(guān)系型及非關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)進行索引,同時提供檢索服務(wù)。學術(shù)信息搜索的檢索模塊,知識庫的索引都可以用ElasticSearch 很容易地實現(xiàn)。
實驗在Windows 10 下進行,數(shù)據(jù)采集于某出版行業(yè)數(shù)據(jù)庫及百度學術(shù)搜索引擎,獲取某出版網(wǎng)站輸入關(guān)鍵詞“數(shù)據(jù)挖掘”按照主題搜索獲取大約82680 條數(shù)據(jù),然后選中前500 條通過導出參考文獻獲取第一批實驗數(shù)據(jù),標注為DB_1。通過網(wǎng)絡(luò)爬蟲技術(shù)在百度學術(shù)搜索中輸入關(guān)鍵詞“數(shù)據(jù)挖掘”,獲取返回數(shù)據(jù)的前500 條作為第二批實驗數(shù)據(jù),標注為DB_2。對兩批實驗數(shù)據(jù)完成實體關(guān)系抽取、知識融合、知識庫構(gòu)建。同時用MySQL 數(shù)據(jù)庫進行三元組信息的存儲,用ElasticSearch 進行知識圖譜的索引及檢索。
5.2.1 實驗平臺的搭建
實驗環(huán)境在Windows 10 上安裝與部署,并建立數(shù)據(jù)庫knowledgegraph,表knowgraph 作為實體關(guān)系的知識圖譜存儲。
5.2.2 實體關(guān)系抽取過程
第一批實驗數(shù)據(jù)很規(guī)范地顯示作者、期刊、論文等信息,采用文本讀取分割摘取的方式解析出作者、期刊、論文等學術(shù)信息實體,同時實體關(guān)系寫入知識圖譜庫。
第二批實驗數(shù)據(jù)采用jsoup(Java 版的html 解析庫,https://jsoup.org/),對爬取的網(wǎng)頁信息通過html 屬性result sc_default_result xpath-log 進行解析拆分得出學術(shù)信息實體關(guān)系,寫入知識圖譜庫,同時注意庫中已經(jīng)有的實體關(guān)系不再重復(fù)寫入。最終得出實體關(guān)系情況,然后通過JSON 數(shù)據(jù)解析,再把數(shù)據(jù)轉(zhuǎn)換成graphviz-2.38 可以識別圖數(shù)據(jù)格式。最后通過Graphviz 繪制圖形結(jié)構(gòu)。
為了促進學術(shù)信息的智能化搜索,本文運用到了學術(shù)信息知識圖譜的方法。首先綜述了知識圖譜及其目前的應(yīng)用領(lǐng)域,其次設(shè)計了科技論文檢索系統(tǒng)基于作者和論文的知識圖譜構(gòu)建模型。詳細設(shè)計學術(shù)信息實體關(guān)系抽取、知識融合等知識圖譜構(gòu)建的關(guān)鍵方法,最后實驗利用某出版行業(yè)現(xiàn)有的數(shù)據(jù)和百度學術(shù)搜索的數(shù)據(jù)實驗了數(shù)據(jù)采集,實體關(guān)系抽取,知識融合、學術(shù)信息檢索、知識圖譜自動繪制等構(gòu)建了基于知識圖譜的學術(shù)信息檢索系統(tǒng)。