雒偉群 黨紅恩 劉煒 高屹
(西藏民族大學信息工程學院,陜西 咸陽 712082)
西藏自治區(qū)非遺資源豐富,是中華民族優(yōu)秀傳統(tǒng)文化寶庫的重要組成部分。截止2020年,西藏自治區(qū)級非物質文化遺產項目中的藏戲、格薩爾、藏醫(yī)藥浴法等入選世界非遺名錄,96 項入選國家級項目名錄。利用先進的大數據、知識圖譜等信息技術對西藏非遺進行保護,可以傳承和發(fā)揚藏民族先輩文明。
隨著移動設備的廣泛使用,人們的社交行為、購物習慣、所處位置等數據都能得到有效地存儲,并且存儲已開始以PB(1PB=1024TB)為單位,我們已經進入大數據時代[1-3]。大數據環(huán)境下數據信息龐雜巨量,但也面臨知識嚴重缺失問題。傳統(tǒng)知識搜索引擎按網頁文檔進行超鏈接,但這些超鏈接都是獨立的,沒有相互依賴關系,搜索失敗時不能推薦相關內容[4]。知識搜索引擎通過整合多源信息,產生知識信息,有效實現了知識利用和共享。
谷歌的知識圖譜[5]與百度的知心等為通用知識圖譜,在地理信息和企業(yè)等領域已經構建了領域知識圖譜。知識圖譜的構建方式有人工構建、機器自動構建等多種方式,人工構建方式準確度高,但費時費力;機器自動構建速度快,但準確度不高。所以構建領域知識圖譜時,最好采用半自動化方式,即采用人工+機器自動化方式,在準確度和效率兩方面取得平衡。
知識圖譜的構建主要工作包括本體知識表示、語義標注、實體識別和關系抽取等環(huán)節(jié)。本體形式化定義了領域中的概念和關系,其定義必須得到大家一致認可。領域本體知識表示應該在領域專家指導下進行[6],人工構建本體質量比較高。自動構建本體速度快,從數據資源中自動獲得本體知識,但獲得的本體并不良好[7]。在大多數領域,自動構建與用戶指導是一個切實可行的方法。語義標注就是對原始數據標記語義信息,可以通過人工方式對標注文檔標記語義信息;半自動標注需要標注人員在客戶端軟件中完成手工指定網頁,再選擇合適的本體概念,最后生成可存儲的標注結果;自動標注通過軟件自動產生語義信息,雖改善了標注速度,但降低了標注質量。實體識別在文本中識別實體,關系抽取在文本中抽取出實體之間的關系,建立實體聯系。
大數據處理、知識搜索與信息可視化等新技術在電子商務、社交平臺等領域的應用成果突出,但這些IT 新技術在西藏非遺領域的研究應用卻極少,這是因為西藏非遺文化體系龐雜、文化資源海量等因素造成的。所以利用大數據處理技術整理西藏非遺文化體系,構建本體模型,建立知識圖譜,將為促進西藏非遺數字化保護的發(fā)展具有一定的實際意義。
自頂向下與自底向上是建立知識圖譜最常用的兩種方法[8]。自頂向下方法借助于行業(yè)領域數據和百科類網站知識建立知識圖譜中的本體知識,然后在知識庫中存儲這些本體知識與模式信息;自底向上方法從最低實體層中歸納組織實體,然后人工審核整理出的新模式,最后存儲到知識庫中。本研究構建知識圖譜時采用自頂向下方法構建本體庫。
用于構建西藏非遺知識圖譜的本體庫數據源主要分為三類:一是百科類網站的開放鏈接數據集;二是CNKI等文獻類網站;三是民族非物質遺產網站、非物質遺產大辭典、從事藏區(qū)非遺的科研機構或者政府部門渠道。使用Python 編寫爬蟲代碼進行資源采集,資源采集列表為國家級非物質文化遺產名錄(第一、二、三、四批)和西藏自治區(qū)級、地市級、縣級非遺目錄(第一、二、三、四、五批)中的非遺項目,合計2590 項,其中包含96 個國家非遺項目、460 個自治區(qū)非遺項目、480 個地市級代表性項目、1554 個縣級代表性項目。表1是我們整理的西藏傳統(tǒng)技藝知識圖譜語料來源部門項目。

表1 西藏傳統(tǒng)技藝知識圖譜語料來源部分項目

表1(續(xù))
結構化數據主要包括非遺項目名稱、項目介紹的部分字段等,具有一定的專業(yè)性,在知識圖譜構建時可以直接使用;半結構化數據主要包括文化遺產外在形式統(tǒng)計信息、文化遺產物理信息統(tǒng)計數據、介紹網頁中爬取到的社評信息等。具有一定的結構但不同的項目或不同的類目間結構不完全一致,有待進一步抽取后使用。非結構化數據主要包括用戶描述、分析進展,通過外部調研得到的隱含特征行為等。缺乏明確的表達方式和具體結構,需要人工參與補充及完善知識。
本體是對領域中的概念、實例和關系等進行形式化的、明確且詳細的一種說明,本體知識表示就是要發(fā)現概念實體及概念實體間關系,概念實體就是領域中的概念或實例,所以構建(概念實體,關系,概念實體)三元組成為本體知識表示的關鍵。我們用概念描述本體的實體類別,比如:傳統(tǒng)技藝名稱“藏族金屬鍛造技藝”是概念;具體的實例描述概念實例,比如:藏族金屬鍛造技藝中的“藏刀鍛制技藝”;概念或實例之間的關系通過屬性揭示,比如“藏族金屬鍛造技藝”有一種“藏刀鍛制技藝”類別,也就是說“藏族金屬鍛造技藝”概念的屬性為“類別”,該屬性取值概念實例“藏刀鍛制技藝”,也就是三元組(藏族金屬鍛造技藝,類別,藏刀鍛制技藝)。領域知識表示就是要構建領域本體,挖掘數據集中所有概念及概念關系,并表示成三元組形式。
一般使用數據驅動方法建立領域本體,由于領域特性使得數據資料獲取非常有限,建立的領域語料庫規(guī)模普遍偏小,造成本體構建效果不佳。為解決這個問題,我們引入bootstrapping 方法。該方法目的是從搜索引擎中盡可能多地獲取領域數據資料。比如:我們在搜索引擎中搜索詞匯“藏刀”,返回結果有300條,搜索結果中的領域數據太少了,如何才能搜索出更多的語料數據?使用查詢擴展方法。常規(guī)查詢擴展為了提高準確率,在搜索引擎中獲得了更多與查詢相關的文檔。我們使用查詢擴展為了提高召回率,在搜索引擎獲取更多的文檔。
我們的方案是:在構建領域語料庫時,在搜索引擎中引入bootstrapping 方法,將初始主題作為種子,生成查詢query,在搜索引擎中獲得搜索出的文檔集合,然后通過查詢擴展和迭代過程不斷地進行搜索,獲得的擴展查詢詞相關于原主題,最終獲得的領域語料庫規(guī)模將達到本項目研究需要,如圖1所示。
擴展查詢不斷迭代,與初始主題相關的領域語料庫規(guī)模不斷擴大,通過3次迭代擴展,獲得了15738 條數據,對于構建本體來說,數據量已經能夠滿足基本需求。
本體定義完成后,我們就可以在領域數據集上進行標注概念實例了,另外利用屬性可以標注實例關系,對可能的三元組添加提示信息。標注一般采用人工方法,對領域數據文本進行分詞,對每個單詞標注,進而標注概念實例和實例關系。
領域數據集處理的一項重要工作是領域分詞,一般借助于分詞工具+領域詞表可以取得很好的分詞效果。常用的分詞工具有ansj、hanlp 和jieba 等,這些工具都能提供多種分詞方式,但ansj 自定義領域詞典后,領域詞匯分詞效果還是不理想;hanlp 可個性化分詞,但在加載自定義詞典時用時較長;jieba 也可進行個性化分詞,并且可以較快地加載自定義詞典。因此,構建領域詞表是領域分詞重要一環(huán)。
我們使用分詞器jiaba 工具對領域數據集中的每個句子進行分詞,西藏非遺領域的特有詞匯,一般也會出現在期刊論文文獻的關鍵詞部分,比如藏刀、鍛銅技藝、金屬鍛造等領域詞匯,我們搜索學術期刊論文電子資源庫,搜索出的論文中的關鍵詞添加到領域詞表中。
本體文本標注時,我們要定義好概念和關系的模板,然后采用基于種子的模板輔助人工標注方法。例如:文本中有一個句子“藏族金屬鍛造技藝分為藏族鍛銅技藝和藏刀鍛制技藝”等,該句中說明了藏族金屬鍛造技藝的一種上下位關系,它的模板可定義為:<C >分為<C1>和<C2>等。其中,概念C 是父類,C1 和C2 是其子類,即C1 和C2 的上位關系是C,C的下位關系是C1 和C2。模板識別方法簡單易實現,準確率高,但是模板事先需要先定義好,非常耗時耗力,導致不能大規(guī)模展開。
基于種子的模板輔助人工標注方法,屬于無監(jiān)督方法,首先給定關系和兩個種子實體對,然后從領域語料庫中抽出句子集合。從這些句子中進一步得到給定關系的描述模式,再通過投票機制挑選給定關系的最佳模板。應用這些合適模板,在預料庫中進行迭代,可匹配出更多句子,抽取出新的實例對,發(fā)現新的模式。持續(xù)迭代下去,最終實現給定關系全部實例對的抽取。在算法的輔助下,我們文本的實例標注就會省時省力,便于開展大規(guī)模語料庫的概念提取和關系識別。
實體識別,通過命名實體名稱在文本中識別出領域實體。基于規(guī)則和詞表的實體識別在半結構化數據中具有天然的優(yōu)勢。對于非結構化數據一般采用規(guī)則+統(tǒng)計學習的方式進行抽取,經典模型如HMM、CRF,以及預訓練模型BERT等。
在實體抽取方面,我們還研究了基于深度學習的實體識別,我們采用詞典+規(guī)則+BIGRU_CRF 方案,該方案出于對性能和效果的綜合考慮,識別準確率達到90%以上。如圖2 所示,該模型使用了BIGRU 與CRF相結合進行命名實體識別,該模型自底向上分別是Embedding 層、雙向GRU 層和CRF 層。首先使用詞向量表示每一個句子,并作為雙向GRU 的輸入,正向GRU 與反向GRU 分別計算每個詞左側和右側詞對應的向量,輸出的詞向量是兩個向量的連接;最后將雙向GRU 輸出的向量輸入給CRF 層,經過CRF 算法處理后就會標注出句子中的實體序列。
實體消岐方面,我們采用規(guī)則+BERT+實體嵌入方案,這一方案對于短文本實體消岐具有較好的適應性。
術語抽取是指從語料中發(fā)現多個單詞組成的相關術語,這類屬于通常具有高度的專業(yè)性,識別效果與領域高度相關,通常需要大量的專業(yè)標記語料才能達到較好的效果,技術手段與實體識別類似。
實體識別及術語抽取之后,我們就可以進行關系抽取,將文本中的知識關系也就是實體間的關聯關系抽取出來。主要包括基于弱監(jiān)督的實體關系抽取、基于自舉式學習的實體關系抽取和基于規(guī)則的實體關系抽取。對語料進行關系標注,并結合關系特征選擇得到關系特征向量,經過相應的機器學習模型訓練后可得到關系分類器,能夠從領域語料中抽取出更多的關系實例,采用基于關系詞字典構建與關系規(guī)則自動學習的實體關系抽取方法,將這兩種研究思路進行整合,利用機器學習的方法實現關系詞字典的自動構建,基于模式匹配的關系規(guī)則自動學習,可以自動高效地抽取出關系實例。
知識圖譜就是三元組形式的實體關系對,通過上面環(huán)節(jié)我們構建了西藏非遺知識圖譜。知識圖譜可視化可以借助與Neo4j 圖數據庫自動產生,也可以使用pyechart通過編程實現。我們的做法是先將西藏非遺知識圖譜存儲在Excel 表中,再利用ECharts 可視化技術進行知識圖譜展示。ECharts 是一種可視化插件,底層通過Canvas 類庫中的ZRender 圖表庫可以提供個性化的數據可視化展示。圖3是我們生成的一張西藏非遺知識圖譜截圖。
從圖3我們看到西藏傳統(tǒng)技藝知識圖譜中有關藏族金屬鍛造技藝方面的概念,揭示了藏族金屬鍛造技藝中各個概念節(jié)點的關系。藏族金屬鍛造技藝活動中所涉及到相關聯的一些實體和屬性有藏族鍛鐵技藝、藏刀鍛制技藝、波密易貢藏刀鍛制技藝、林芝市波密縣易貢鄉(xiāng)等。
西藏非遺體系完整,包含數據量較大,通過網絡爬蟲技術可以自動產生大數據的語料庫,從語料庫文本中進行實體識別和關系抽取,就會構建三元組形式的西藏非遺知識圖譜。通過知識圖譜可視化,可以直觀看到實體和實體之間的潛在知識關系。現階段領域知識圖譜的構建在知識抽取算法方面還有待改善和發(fā)展。