張一翀 郝泳濤







摘要:中醫中藥蘊藏著中華民族的無限智慧,具有很高的價值,然而其有效整合面臨阻礙。引入現代技術,構建中醫中藥本體,將中醫中藥信息知識化重構,有助于中醫中藥領域的數據挖掘和知識發現。本研究探討了構建中醫中藥知識圖譜的方法和技術,通過關鍵詞提取+人工干預的方式提取實體及關系,在降低人工成本的前提下提高識別準確率,同時引入Neo4j圖數據庫,以構建全面可視化的中醫中藥知識圖譜。
關鍵詞: 知識圖譜;Neo4j;命名實體識別;知識抽取;中醫中藥;跨學科研究
中圖分類號:TP391? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2023)35-0030-03
開放科學(資源服務)標識碼(OSID)
0 引言
中醫藥(TCM) 代表了中華民族在健康、疾病管理和醫療治療領域所具有的獨特智慧[1]。中醫藥具有重要的學術和實際價值,擁有豐富的理論知識和臨床經驗。作為中國傳統醫學的重要組成部分,中醫藥已經積累了數千年的豐富經驗和知識體系。然而,缺乏將中醫藥整合到現代醫療體系中的策略,阻礙了其知識和信息的有效利用[2]。
鑒于計算機技術及其相關理論的進步,利用現代技術對中醫藥知識進行重構和利用得到了認可,并取得了實質性成果。將計算機領域的先進本體論理論和技術引入對中醫藥知識的組織研究,構建了中藥本體。這一舉措實現了中藥信息的知識化重構,從而有助于在中醫藥領域進行數據挖掘和知識發現[3]。
在大數據時代,知識圖譜(Knowledge Graph, KG) 成為知識管理和應用的重要資源,在語義檢索、知識推理、決策制定、問題解答、系統推薦等多個領域發揮關鍵作用,提高知識問答、決策支持、可視化分析等功能[4]。2012年,谷歌引入了KG的概念,并將其應用于搜索引擎,隨后KG被應用于多個領域。研究領域有很多通用知識圖譜、大型公共知識庫[5]。本文研究的中醫中藥知識圖譜屬于領域知識圖譜中的一類。中醫中藥知識圖譜是對中醫中藥領域的概念、實體和關系進行建模和表示的一種結構化的知識庫,它可以幫助醫生、研究人員和患者更好地理解并利用中醫中藥知識。
構建中醫中藥知識圖譜的主要目標是通過對中醫中藥相關的實體、關系和屬性進行結構化表示和鏈接,從而形成一個全面、準確的中醫中藥知識網絡。這種知識圖譜有助于醫生進行疾病的辨證施治、輔助臨床決策,并為中醫研究提供豐富的數據支持。此外,中醫中藥知識圖譜還可以促進中醫與現代醫學的融合,為跨學科醫學研究和應用開辟新的可能性。
盡管在構建中醫中藥知識圖譜方面已經有了一些研究工作,但仍然存在挑戰。首先,中醫中藥領域的知識具有復雜性、多樣性和模糊性,如何準確地表示和連接這些知識是一個關鍵問題。其次,中醫中藥的知識體系龐大且分散,如何有效地收集、整合和存儲中醫中藥知識是一項具有挑戰性的任務。此外,中醫中藥知識的更新和演進是一個持續的過程,如何保持中醫中藥知識圖譜的時效性和可更新性也是一個重要問題。
因此,本文旨在深入探討構建中醫中藥知識圖譜的方法和技術,以應對中醫中藥知識在表示、關聯和存儲等關鍵領域面臨的挑戰,基于圖數據庫構建全面可視化的中醫中藥知識圖譜,為中醫中藥領域的醫療實踐、研究和教育提供有力支持,促進中醫知識的傳承和創新。
1 算法實現
中醫中藥知識圖譜的構建過程如圖1所示,主要步驟為:知識采集、知識抽取、知識存儲。
1.1 數據收集及數據清洗
根據數據存儲的形式,數據源可分為3類:結構化數據、半結構化數據、非結構化數據。在中醫中藥知識圖譜的構建過程中,本文的數據來源主要為半結構化數據(如網頁中的表格、列表等)、非結構化數據(如網頁中的純文本數據等)。本文的半結構化數據主要來源為百度百科;非結構化數據主要來源于互聯網上中醫中藥相關網頁的數據,例如中醫中藥網。筆者以爬蟲的形式獲取需要的中醫中藥相關的文本數據,并將其保存為txt文本。
對于半結構化數據的提取過程如下:根據給定的初始頁面,利用類似廣度優先的方式爬取網頁中可點擊的頁面信息,并將獲取的頁面進行關鍵數據提取,提取頁面中InfoBox中的內容,將其中的basicInfo-item name和basicInfo-item value按照對應關系存放到Excel文件中。
對于非結構化的文本數據,筆者選擇結構性較強的數據,根據網頁格式編寫對應的抓取規則,收集需要的頁面信息,將其保存為txt文本,用于后續的知識抽取操作。
獲取的數據還需要進行數據清洗操作,本文根據一些篩選條件刪除數據中的異常值等,為后續的知識抽取操作做準備。
1.2 知識抽取
知識抽取是構建知識圖譜中比較重要的一步,從收集的數據中提取結構化的信息,如命名實體、實體屬性及實體關系。
1) 命名實體識別
命名實體識別是指從文本中識別命名實體,是信息抽取的基礎。命名實體識別的結果會直接影響實體關系抽取和屬性抽取的結果。
在命名實體識別的算法過程中,首先將獲取的數據進行分類,將其根據不同數據類別進行劃分。然后,針對每個類別,采用關鍵詞匹配算法進行初步實體提取。這一階段的關鍵是通過分割文本,判斷是否包含預定義的關鍵詞、短語或模式。這些關鍵詞可以是特定實體類型的名稱、屬性、上下文相關詞匯等。通過匹配和比較,算法能夠快速識別出可能的實體候選項。
隨后,在大致實體提取的基礎上,引入人工干預的二次判別。在這一步中,經過初步提取的實體被提交給人工操作者。人工操作者可以根據領域知識和語境,對提取出的實體進行再次驗證和篩選。通過這一環節的人工干預,能夠排除虛假識別、糾正誤判等問題,提高實體識別的精度和可信度。
這個算法的設計目標是在保證高效性和自動化的基礎上,結合關鍵詞匹配和人工判別的方法,實現對命名實體的準確識別。通過將計算機的快速識別能力與人工識別的高準確率結合起來,使算法能夠有效應對不同領域和復雜語境下的實體識別挑戰,從而為后續的信息提取和分析提供可靠的數據基礎。
2) 實體規范化
由于爬取的數據來自不同網站,使用同一實體可能會存在不同的術語。因此需要進行實體規范化將原始術語映射到標準術語,并通過繼承標準術語來進一步創建實體。
本文面向中醫中藥領域,通過查閱資料,制定了實體關系識別模型中的實體類型及標識,共有8種:疾病、癥狀、藥物、方藥、飲食、器官、治則治法、病因病機,如表1所示。
3) 實體關系抽取
實體關系抽取作為信息抽取的重要任務,是指在實體識別的基礎上,從非結構化文本中抽取出預先定義的實體關系。實體對的關系可被形式化描述為關系三元組[e1, r, e2],其中,e1和e2是實體,r屬于目標關系集R{r1 , r2 , r3 , ..., ri}。關系抽取的任務是從自然語言文本中抽取出關系三元組[e1, r, e2],從而提取文本信息[6]。在實體抽取部分,根據上一步命名實體識別中對數據的分類,初步判斷句子中所包含的實體間關系,然后再通過人工干預的方式,進一步確認不同實體間的關系。
本文涉及的各實體間的關系類型有8種:表現、類別、治療、服用、組成、食療、誘發、涉及,如表2所示。本文按照實體在文中的出現順序確定主客體,即先出現的為主體,后出現的為客體。
4) 屬性抽取
屬性抽取是指從文本中提取實體的相關屬性或特征的任務。本文的屬性提取主要是源于百度百科及中醫中藥網上的半結構化數據。如圖2所示,其中左邊是提取到的數據,右邊是處理后的結果。其中格式為:實體-屬性類型->屬性值
圖2(a)圖是提取InfoBox中的信息,主要包括信息框中“basicInfo-name”和“basicInfo-value”兩部分,中間用“:”分割。圖2(b)圖是將從InfoBox中提取出來的數據處理后的屬性三元組,形式為(實體1-關系->實體2) 。
1.3 數據存儲
本文對數據處理后得到的規范化結果以三元組的形式存儲,筆者選擇Neo4j圖數據庫來存儲數據。其中圖中的節點表示中醫中藥實體,關系三元組中的關系用圖中的邊來表示,通過從一個節點指向另一個節點之間的邊來表明兩個節點間存在某種關系,其中邊由主體指向客體;屬性三元組則會以<實體,屬性類別,屬性>的形式存儲到圖數據庫中。
2 實驗結果及分析
2.1 知識抽取
通過對收集的數據進行提取,本文共提到實體總數為:17 124個,關系總數為:22 138個,其中表3展示的是各類型實體數量,表4展示了各類型關系的數量。
2.2 數據可視化存儲
通過上述實驗,可以得到中醫中藥知識圖譜中包含的實體及各實體間的關系。本文將從數據中獲得的實體和關系存儲在Neo4j圖數據庫中。圖3是以“肝火犯肺型咳嗽”為例,展示了圖數據庫中的一小部分知識圖譜,不同顏色的圓圈代表的是不同實體,箭頭上的文字表示兩實體間的關系,箭頭由主體指向客體。
3 結論
本文展示了中醫中藥知識圖譜的構造過程。首先介紹了數據的獲取,然后給出了如何從獲取的數據中得到實體及實體間的關系,通過關鍵詞匹配算法+人工干預的方式,在降低人工工作量的前提下,提高了數據的準確性。最后,使用Neo4j圖數據庫存儲數據,對數據進行可視化展示。
在未來的工作中,筆者將不斷優化知識提取過程,提高數據提取的準確性,同時不斷更新數據庫,繼續完善數據庫,將數據庫的規模不斷擴大。
參考文獻:
[1] 孫曉生,邢巖.構建中國特色的健康管理體系:“治未病” 健康工程建設構想[J].廣州中醫藥大學學報,2010,27(5):517-519.
[2] 楊茗茜,袁東超,倪菲,等.《素問》脾藏象理論相關咳類疾病知識本體探究[J].中國中醫基礎醫學雜志,2021,27(2):199-202.
[3] 劉耀,段慧明,穗志方.非相關文獻知識發現的數據基礎研究:以中醫藥古文獻語言知識庫的構建為例[J].情報雜志,2006,25(9):104-107.
[4] 黃煜俊.基于深度學習的裁判文書知識圖譜構建研究[D].武漢:湖北工業大學,2020.
[5] CHENG B J,ZHANG J,LIU H,et al.Research on medical knowledge graph for stroke[J].Journal of Healthcare Engineering,2021,2021:5531327.
[6] 鄂海紅,張文靜,肖思琪,等.深度學習實體關系抽取研究綜述[J].軟件學報,2019,30(6): 1793?1818.
【通聯編輯:唐一東】