張 倩,李國慶(中訊郵電咨詢設計院有限公司,北京 100048)
知識圖譜是谷歌公司在2012 年提出的概念[1],被認為是一種描述實體之間關(guān)系的語義網(wǎng)絡,可以對現(xiàn)實世界的事物及其相互關(guān)系進行描述。谷歌提出這個概念的主要目的是改善其搜索引擎的智能化水平,優(yōu)化搜索推薦效果,提升用戶的推薦體驗。廣義上來說,知識圖譜是用來描述現(xiàn)實世界中存在的各種物體以及物體之間的關(guān)系,這些種類繁多的物體以及物體之間的關(guān)系構(gòu)成了一個大型的網(wǎng)狀結(jié)構(gòu)。作為人工智能領(lǐng)域的重要研究方向之一,它和自然語言處理是相輔相成的。知識圖譜技術(shù)涉及到了自然語言處理中的各項技術(shù),同時,知識圖譜的研究也促進了自然語言處理技術(shù)的發(fā)展,尤其是基于知識圖譜的指代消解和依存句法關(guān)系分析等技術(shù)也得以長遠發(fā)展。
知識圖譜是大數(shù)據(jù)人工智能時代發(fā)展的必然趨勢,但是知識圖譜的發(fā)展不僅僅是依賴于計算機和人工智能領(lǐng)域的發(fā)展,同時在很大程度上又依賴于其他的研究領(lǐng)域,比如語言學、信息抽取、語義網(wǎng)和專家系統(tǒng)等,知識圖譜不是一門單一的學科,它是一門涵蓋范圍非常廣泛的跨領(lǐng)域交叉學科。
企業(yè)知識圖譜屬于知識圖譜的一種,不同于通用型或者領(lǐng)域型知識圖譜[2],它是以企業(yè)內(nèi)部的信息為構(gòu)建基礎。企業(yè)的知識和概念以節(jié)點的形式表示,并通過邊來表示它們之間的關(guān)系和連接。企業(yè)知識圖譜可以包含各種類型的知識,如實體、屬性、關(guān)系、概念、事件等,以及它們之間的復雜關(guān)聯(lián)。企業(yè)知識圖譜與行業(yè)知識具有緊密關(guān)聯(lián)性,企業(yè)知識圖譜的優(yōu)勢在于它能夠幫助企業(yè)更好地理解和利用其內(nèi)部的知識資產(chǎn),提高知識的可發(fā)現(xiàn)性、可重用性和可共享性。它可以支持知識的智能化檢索和推薦,加速問題解決和決策制定過程,并促進企業(yè)內(nèi)部的協(xié)作和創(chuàng)新。企業(yè)知識圖譜在各行各業(yè)都具有廣泛的應用潛力,包括通信、金融、醫(yī)療、制造等領(lǐng)域。
通信設計行業(yè)正處于數(shù)字化轉(zhuǎn)型階段,企業(yè)知識圖譜的出現(xiàn)能夠發(fā)揮有效的數(shù)字信息管理作用,很多企業(yè)擁有的龐大而分散的知識資產(chǎn),企業(yè)知識圖譜可以幫助企業(yè)管理和組織這些知識,使其可發(fā)現(xiàn)、可訪問和可共享,給員工提供有效的決策支撐。
知識圖譜是一種基于語義網(wǎng)絡的知識表示和管理技術(shù),它將實體、屬性和關(guān)系以圖形化的方式進行表示,形成了一個結(jié)構(gòu)化的知識庫,其應用范圍非常廣泛,包括搜索引擎、智能問答、推薦系統(tǒng)、智能客服等領(lǐng)域。知識圖譜的優(yōu)勢在于它能夠?qū)⒉煌瑏碓吹臄?shù)據(jù)進行整合,形成一個統(tǒng)一的知識庫,從而提高數(shù)據(jù)的利用效率和準確性。
構(gòu)建知識圖譜需要先確定本體,繼而構(gòu)建對應的實體和關(guān)系以及屬性。知識圖譜的基本組成單位是“實體-關(guān)系-實體”三元組,以及實體的相關(guān)屬性,實體間通過關(guān)系相互聯(lián)結(jié),構(gòu)成網(wǎng)狀。知識圖譜中的本體是指對實體、屬性和關(guān)系進行分類和定義的一種形式化描述方法,它可以幫助機器理解和處理知識。知識圖譜中的實體指具有獨立存在和特定屬性的事物,如人、地點、組織、事件等。關(guān)系就是指實體之間的聯(lián)系,如人與組織之間的工作關(guān)系、人與人之間的社交關(guān)系等。屬性指的是描述實體的特征或?qū)傩?,如人的姓名、年齡、性別等。三元組是指由實體、屬性和關(guān)系組成的基本單元,如圖1所示,天線、鐵塔、平臺都是構(gòu)建的本體,天線1、平臺1、鐵塔1 等為對應的實體。安裝、屬于、包含均為關(guān)系,GPS 天線1?屬于?中國聯(lián)通則可成為三元組,中國聯(lián)通的英文名屬于實體的相關(guān)屬性。
圖1 知識圖譜構(gòu)建簡圖
企業(yè)知識圖譜構(gòu)建的步驟如圖2 所示,分別是收集原始數(shù)據(jù)、構(gòu)建本體信息、利用數(shù)據(jù)進行信息抽取、完善知識表示,最終將知識進行融合與加工,存儲到相應的數(shù)據(jù)庫中。
圖2 企業(yè)知識圖譜構(gòu)建步驟圖
知識圖譜的構(gòu)建需要大量的數(shù)據(jù)支持,因此構(gòu)建的第1步是收集相關(guān)數(shù)據(jù)。數(shù)據(jù)來源可以包括結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)。結(jié)構(gòu)化數(shù)據(jù)是指具有固定格式和規(guī)則的數(shù)據(jù),如數(shù)據(jù)庫中的表格數(shù)據(jù);半結(jié)構(gòu)化數(shù)據(jù)是指具有一定結(jié)構(gòu)但不完全符合規(guī)則的數(shù)據(jù),如XML 文件或者有部分固定格式的文檔等;非結(jié)構(gòu)化數(shù)據(jù)是指沒有固定格式和規(guī)則的數(shù)據(jù),如文本、圖片和視頻等。數(shù)據(jù)可以通過可允許的爬蟲、API接口、數(shù)據(jù)交換等多種方式進行獲取。
本體是一種用于描述概念和實體之間關(guān)系的形式化語言,它可以幫助更好地理解和組織知識。在知識圖譜中,本體是一個重要的組成部分。在企業(yè)知識圖譜的實際場景中,建議從行業(yè)專家入手,人工構(gòu)建基礎本體,對所需要構(gòu)建的知識進行初步抽象,建立數(shù)據(jù)庫可用的特定結(jié)構(gòu)。如果行業(yè)內(nèi)容復雜繁多,也可先進行部分高頻預定義的信息抽取,輔助人工專家進行本體定義,作為本體候選集。
知識圖譜中的信息抽取是指從非結(jié)構(gòu)化或半結(jié)構(gòu)化的數(shù)據(jù)源(如文本、網(wǎng)頁、表格等)中抽取出實體、關(guān)系、屬性等結(jié)構(gòu)化信息,主要內(nèi)容包括實體抽取,屬性抽取與關(guān)系抽取等。
2.3.1 實體抽取
文獻[1]中提到實體抽取的方法包括基于規(guī)則、基于統(tǒng)計和基于深度學習的方法。其中,基于規(guī)則的方法是最早被使用的實體抽取方法,其基本思想是通過手工編寫規(guī)則來識別實體。這種方法的優(yōu)點是易于理解和調(diào)整,但缺點是需要大量的人工工作和專業(yè)知識,并且難以處理復雜的語言現(xiàn)象?;诮y(tǒng)計的方法則是通過學習大量的語料庫來自動學習實體的特征和上下文信息,從而實現(xiàn)實體抽取。這種方法的優(yōu)點是可以處理復雜的語言現(xiàn)象,但缺點是需要大量的訓練數(shù)據(jù)和特征工程?;谏疃葘W習的方法則是利用神經(jīng)網(wǎng)絡模型來自動學習實體的特征和上下文信息[3],從而實現(xiàn)實體抽取。這種方法的優(yōu)點是可以處理復雜的語言現(xiàn)象,且不需要手工設計特征,但缺點是需要大量的訓練數(shù)據(jù)和計算資源。目前,基于深度學習的方法在實體抽取中表現(xiàn)出色,已經(jīng)成為主流的實體抽取方法之一。實際工作中多種方法經(jīng)?;旌鲜褂脕頋M足實際的工作場景,可以利用規(guī)則技術(shù)實現(xiàn)高頻實體的優(yōu)先抽取以及實體種類預定義的工作。
2.3.2 屬性抽取
屬性抽取旨在識別實體的關(guān)鍵屬性,這些屬性可以描述實體的特征、性質(zhì)或其他相關(guān)信息。傳統(tǒng)的屬性抽取方法主要基于規(guī)則和模式匹配,但受限于規(guī)則的表達能力和模式的覆蓋范圍。隨著深度學習的發(fā)展,基于神經(jīng)網(wǎng)絡的方法在屬性抽取任務上取得了顯著的進展。典型的方法包括基于卷積神經(jīng)網(wǎng)絡(CNN)和循環(huán)神經(jīng)網(wǎng)絡(RNN)的序列標注模型,以及使用預訓練語言模型(如BERT)進行屬性抽取。這些方法能夠自動學習特征表示,并具備一定的上下文理解能力,提高了屬性抽取的準確性和泛化能力。
2.3.3 關(guān)系抽取
關(guān)系抽取旨在發(fā)現(xiàn)實體之間的關(guān)聯(lián)關(guān)系,例如“人物?配偶”“公司?創(chuàng)始人”等。近年來,基于深度學習的方法在關(guān)系抽取任務中取得了顯著的突破[4]。其中,卷積神經(jīng)網(wǎng)絡(CNN)、循環(huán)神經(jīng)網(wǎng)絡(RNN)和注意力機制等技術(shù)被廣泛應用于關(guān)系抽取。通過將實體對及其上下文信息作為輸入,這些方法能夠自動學習關(guān)系的表示,并捕捉實體之間的語義關(guān)聯(lián)。此外,預訓練的語言模型(如BERT、GPT 等)也被用于關(guān)系抽取任務,通過無監(jiān)督學習的方式提供了豐富的上下文表示,進一步提高了關(guān)系抽取的性能。
知識表示是指將實體、屬性和關(guān)系轉(zhuǎn)化為計算機可處理的形式,如三元組(實體1,關(guān)系,實體2)或圖形結(jié)構(gòu)。知識表示可以采用不同的表示方法,如RDF、OWL、JSON?LD 等。RDF 是一種基于三元組的表示方法,可以用于描述實體、屬性和關(guān)系之間的語義關(guān)系;OWL 是一種基于邏輯的表示方法,可以用于描述實體之間的復雜關(guān)系;JSON?LD 是一種基于JSON 格式的表示方法,可以用于描述實體、屬性和關(guān)系之間的語義關(guān)系。
由于獲取信息的方式與渠道的不同,獲取海量信息的同時也帶來了冗余與重復的內(nèi)容。對多源信息進行融合與加工成為了必要的手段。其中涉及到最主要的技術(shù)內(nèi)容主要有實體消歧?;谏舷挛牡膶嶓w消歧方法[14]是一種通過利用實體周圍的上下文信息來判斷實體的唯一身份的技術(shù)。它認為上下文提供的語境信息有助于確定特定實體在文本中的含義。其中,常見的方法包括使用語境窗口和機器學習方法。語境窗口方法選擇一定數(shù)量的詞語作為上下文,使用詞嵌入等技術(shù)計算詞語相似度來進行消歧。機器學習方法則使用訓練模型,通過上下文特征和實體標簽的組合來預測消歧結(jié)果。
企業(yè)知識圖譜的落地需求場景主要有4 個方面:內(nèi)部搜索、智能問答、個性化推薦與智能內(nèi)容分析。
a)內(nèi)部搜索:改善強依賴關(guān)鍵字搜索,提供更加智能和語義化的搜索服務,例如可以支持自然語言查詢、實體搜索、語義搜索等,避免內(nèi)部知識閑置,提高用戶體驗和滿意度。
b)智能問答:通過內(nèi)部知識圖譜提供基于知識的問答服務,可支持對話式問答、多輪問答等,優(yōu)化更新社區(qū)問答能力,促進知識的良性循環(huán)。
c)個性化推薦:利用知識圖譜提供更加個性化和多樣化的推薦服務,挖掘用戶點擊文檔背后的關(guān)聯(lián)性,支持圖譜融入用戶畫像、興趣分析等內(nèi)容,提高用戶的留存和轉(zhuǎn)化率。
d)智能內(nèi)容分析:建立知識圖譜的過程中,信息抽取可以有針對性挖掘不同類型的數(shù)據(jù),并且通過圖譜可視化清晰發(fā)現(xiàn)數(shù)據(jù)間的關(guān)聯(lián)與關(guān)系,提高數(shù)據(jù)的價值與利用率。
按照企業(yè)知識圖譜的構(gòu)建步驟,以某單位內(nèi)部收集的知識數(shù)據(jù)進行了通信行業(yè)的企業(yè)知識圖譜構(gòu)建。首先收集單位各部門各專業(yè)的若干形式的文本、圖標、圖片等各類數(shù)據(jù),并對其進行清理與轉(zhuǎn)化,獲取到可用的文本形式進行構(gòu)建。組織各專家人才進行初步本體的構(gòu)建定義,著手進行信息抽取。信息抽取部分是構(gòu)建圖譜最核心的內(nèi)容,本文會對這部分進行詳細描述。
由于專業(yè)信息復雜繁多,初期本體構(gòu)建完成后,很難推動數(shù)據(jù)標注工作,有監(jiān)督的模型方法意味著標注周期長,推動緩慢等問題,本文提出了一種針對企業(yè)內(nèi)部數(shù)據(jù)的無監(jiān)督信息抽取方法,通過該方法可在缺少標注能力的情況下快速啟動圖譜項目。
這種無監(jiān)督的信息抽取方法是通過擴充詞性正則表達式獲取包含更多可能性的復合短語關(guān)鍵詞,增加依存句法規(guī)則約束[5]進行候選詞篩選,同時通過使用垂直領(lǐng)域語料進行finetune,針對通信行業(yè)的數(shù)據(jù)情況,團隊針對SIFRank 算法進行了優(yōu)化,提出,DS?SIFRank[13]實體信息抽取算法。算法具體步驟如下。
a)分詞及詞性標注:采用現(xiàn)有的中文分詞庫,如thulac[6]、LTP4[7]對輸入文檔進行分詞及詞性標注,可在分詞過程中自定義用戶詞庫從而增強分詞效果。
b)獲取候選關(guān)鍵詞列表:利用正則表達式確定名詞短語(例如:形容詞+名詞),將名詞短語作為候選關(guān)鍵短語,可通過調(diào)整正則表達式來改變候選關(guān)鍵詞長度、詞性等性質(zhì)。
c)獲取候選關(guān)鍵詞的Embedding:利用預訓練的Embedding模型(ELMo[8]、BERT[9]等),獲取關(guān)鍵詞的詞向量。選用ELMO 模型的embedding 的主要原因是經(jīng)過大規(guī)模的預訓練,相較于TF?IDF、TextRank[10]等算法能夠獲取更多的語義信息。其次,ELMO 是動態(tài)的,可以改善一詞多義問題,通過Char?CNN 編碼,對生僻詞更加友好,不同層的Elmo 可以捕捉不同層次的信息,獲取的語義信息量更大。
d)獲取文檔的Embedding:通過對文檔中各個詞的詞向量進行加權(quán),獲得該文檔的向量,各個詞的權(quán)重由該詞在語料中出現(xiàn)的頻率決定,詞頻越高,該詞權(quán)重越低。文檔向量計算公式如下:
其中,Vs為文檔向量,Vw為詞向量,a為用于平滑的超參數(shù),通常取10?4~10?3,fw為該詞詞頻,通過加權(quán)獲得文檔向量。根據(jù)詞頻對詞向量進行平滑反頻率加權(quán),能夠更好地捕捉到句子/文檔的中心話題。在計算不同詞的權(quán)重時,采用預設的公開語料下的詞頻進行權(quán)重計算,同時也可以統(tǒng)計當前應用場景下的詞頻,用該場景下的詞頻進行權(quán)重計算從而實現(xiàn)fine?tune,從而提高關(guān)鍵詞抽取在特定應用場景下的準確度。
SIFRank 算法通過計算候選關(guān)鍵詞的詞向量同文檔向量的余弦值,從而獲得二者的相似度,提取相似度最高的top?N 作為關(guān)鍵詞。在SIFRank+算法中,為了提高關(guān)鍵詞提取在長文本中的效果,還引入了關(guān)鍵詞的位置因素,認為位置越靠前的關(guān)鍵詞重要程度越高,將候選關(guān)鍵詞向量同文檔向量的相似度和候選關(guān)鍵詞的位置參數(shù)相乘,獲得候選關(guān)鍵詞的重要程度,提取top?N作為關(guān)鍵詞。
為解決傳統(tǒng)SIFRank 算法在垂直領(lǐng)域關(guān)鍵詞提取任務中關(guān)鍵詞漏檢、候選關(guān)鍵詞質(zhì)量偏低等問題,在垂直領(lǐng)域應用背景下對SIFRank 算法進行改進,獲DS?SIFRank算法,具體改進內(nèi)容如下。
a)增加動名詞候選短語。在通信領(lǐng)域等垂直領(lǐng)域的中文技術(shù)文檔中,需要識別并提取的技術(shù)關(guān)鍵短語不僅限于單個關(guān)鍵詞,大部分都是復合詞語。復合關(guān)鍵詞往往含有動詞,如協(xié)同計算、頻率重耕、網(wǎng)絡共享等,不同于英文,中文的動詞并沒有相應的名詞形式,直接對其進行名詞短語的篩選會導致大量含動詞的關(guān)鍵短語提取失敗,故在原有的名詞短語正則規(guī)則基礎上,添加動詞短語的提取,減少對詞性的限制,實現(xiàn)動名詞候選關(guān)鍵詞的獲取。
b)基于依存句法分析的候選詞篩選。由于中文文本成分復雜,使用單一的詞性正則表達式提取動詞、名詞短語往往會提取到錯誤的短語,降低準確率。基于此情況,對候選關(guān)鍵詞進行依存句法分析,對含有主謂、動賓、介賓等關(guān)系的候選詞進行篩選,以刪除不合理的候選短語,提高候選關(guān)鍵詞質(zhì)量。依存句法示意如圖3所示。
c)使用垂直領(lǐng)域語料進行finetune。在公開語料的基礎上,加入垂直領(lǐng)域語料的詞頻統(tǒng)計,使用垂直領(lǐng)域下的詞頻對詞語的權(quán)重進行finetune,以提高算法在垂直領(lǐng)域下的性能。
d)利用BERT 算法獲取Embedding 并在垂直領(lǐng)域語料上進行finetune。
文章所使用的方法是基于BERT 算法在大規(guī)模中文語料上預訓練的模型,同時在垂直領(lǐng)域語料基礎上進行finetune,以提升文檔與候選詞的Embedding 效果,使其包含更有效的語義信息。
在1 800 個通信領(lǐng)域文檔的上對不同實體關(guān)鍵詞信息提取算法進行測試,最終效果與算法如表1所示。
表1 通信行業(yè)數(shù)據(jù)信息抽取算法對比
可以看出,DS?SIFRANK 算法在垂直領(lǐng)域下各項指標優(yōu)于現(xiàn)有的無監(jiān)督實體信息抽取算法。
獲取到實體信息后,組織人員根據(jù)數(shù)據(jù)與實體信息進行關(guān)系、屬性的標注,利用BERT 算法完成相關(guān)的信息抽取工作,并采用了上文中介紹的知識融合工作完成了實體消歧等內(nèi)容,最終構(gòu)建完成百萬節(jié)點的通信行業(yè)知識圖譜,并對高頻節(jié)點進行了可視化展示。
按照以上介紹的企業(yè)知識圖譜的構(gòu)建方法,構(gòu)造了擁有百萬節(jié)點的某單位的通信行業(yè)圖譜,并成功上線內(nèi)部的知識管理平臺,現(xiàn)介紹其上線后的圖譜新增功能。
a)智慧搜索功能。引入知識圖譜后,改善了過度依賴關(guān)鍵詞的搜索模式,提供了基于知識圖譜的語義搜索模式,例如搜索運營商,會提供“中國聯(lián)通”“中國移動”相關(guān)搜索內(nèi)容,提升了搜索的快捷與便宜性。
b)智慧問答推薦。利用知識圖譜的KG?embedding,計算每個問句的向量化表示,來計算相似語句,按照置信度進行排序,提供相似問答推薦。
c)個性化推薦。利用知識圖譜優(yōu)化計算每個用戶的點擊文檔的相關(guān)性文檔方式,不斷優(yōu)化用戶的興趣網(wǎng)絡。
d)知識圖譜可視化工具。如圖4 所示,提供三元組的可視化呈現(xiàn),幫助用戶更好地理解數(shù)據(jù)之間的關(guān)聯(lián)性。
圖4 知識圖譜可視化效果與功能
e)智能文檔標簽抽取。通過構(gòu)建知識圖譜的信息抽取模塊,對非結(jié)構(gòu)的文本數(shù)據(jù)進行實體抽取,并將抽取到的實體作為文本標簽用于展示和搜索,極大程度方便了用戶找尋內(nèi)部的行業(yè)知識。
f)文檔智能評分。通過文檔核心實體以及用戶評分等因素進行加權(quán)計算,新增文檔分數(shù)并優(yōu)化排序系統(tǒng)。
企業(yè)知識圖譜的構(gòu)建上線對公司內(nèi)部的知識文檔進行有效的數(shù)字化管理,對公司所處的通信行業(yè)數(shù)據(jù)提供了優(yōu)化后的數(shù)字沉淀,提升了內(nèi)部員工的知識搜索效率,對公司領(lǐng)導的項目決策提供了可視化的支撐。
當前的企業(yè)知識圖譜主要是基于公司內(nèi)部搜索平臺對行業(yè)數(shù)據(jù)的一次大規(guī)模的數(shù)字化管理,提供了初步的智能搜索與推薦等功能,隨著大模型產(chǎn)業(yè)的逐漸成熟,應考慮將大模型與知識圖譜進行融合。傳統(tǒng)的知識圖譜構(gòu)建方法通常依賴于人工標注和手工規(guī)則,但受限于規(guī)模和效率。而大模型通過學習大規(guī)模的文本數(shù)據(jù),能夠自動抽取實體、屬性和關(guān)系,并生成更準確和豐富的知識圖譜。這種融合將加速知識圖譜的構(gòu)建過程,并提高構(gòu)建的效率和質(zhì)量。其次,大模型為知識圖譜的補全和推理提供了強大的能力。知識圖譜通常是不完整的,存在著實體缺失、屬性不全等問題。大模型通過學習豐富的語言知識和語義關(guān)聯(lián),能夠根據(jù)已有的知識圖譜和上下文信息,進行補全和推理,填補知識圖譜的空缺,從而提供更全面、準確的知識表示和推理能力。這種融合將使得知識圖譜更具可用性和應用價值。
未來,可以預見大模型對知識圖譜應用的進一步發(fā)展。一方面,可以探索更加高效和精細的大模型方法,以應對知識圖譜規(guī)模的擴大和復雜性的增加。例如,結(jié)合遷移學習、多任務學習等技術(shù),將大模型的學習能力和泛化能力應用于不同領(lǐng)域和語境的知識圖譜構(gòu)建和應用中。另一方面,可以關(guān)注多模態(tài)和跨語言的大模型應用,不止于文本,將圖像、視頻、語音等多種數(shù)據(jù)源融入到知識圖譜的構(gòu)建和應用中,實現(xiàn)更全面、多樣化的多模態(tài)知識表示和推理,為知識圖譜落地垂直領(lǐng)域提供更加智能、更加方便的服務。