









摘要:當前多數在線醫療咨詢系統存在智能問診系統精準度不足的問題,難以有效識別用戶訴求并提供針對性服務。為此,該研究聚焦醫療健康領域,開發了基于知識圖譜的智能醫療問診系統。該系統通過構建專業醫療知識圖譜作為核心知識庫,運用自然語言處理技術對用戶查詢進行語義解析和意圖識別,結合圖譜關系網絡實現精準信息檢索,最終通過交互界面實時呈現結構化應答。測試表明,該系統在語義理解準確率、響應時效性和知識覆蓋度等關鍵指標上取得良好效果,能有效滿足公眾獲取專業醫療信息的需求。
關鍵詞:知識圖譜;自然語言處理;智能問診;醫療健康;信息檢索
中圖分類號:TP18" " " 文獻標識碼:A
文章編號:1009-3044(2025)16-0039-03
開放科學(資源服務) 標識碼(OSID) :
0 引言
隨著互聯網成為公眾獲取醫療健康信息的核心渠道,傳統在線問診系統基于關鍵詞匹配的局限性日益顯著。這類系統經常返回海量冗余信息,導致用戶須耗時篩選無關內容,例如搜索“頭疼”,可能返回大量無關藥品廣告,難以滿足精準獲取醫療知識的需求[1]。研究表明,僅38%的用戶能在首次搜索中獲取有效信息,凸顯智能化升級的緊迫性。在此背景下,知識圖譜技術憑借結構化知識表示和語義推理能力,成為醫療智能化的關鍵技術路徑[2]。當前研究已形成多維度突破:UMLS通過整合127個醫學術語系統,構建了全球最大的醫學語義網絡[3];陳名團隊基于10年生物醫藥文獻構建的知識圖譜,實現了研究熱點的動態可視化追蹤[4];田玲提出的知識超圖架構,則通過三維關系建模突破了傳統圖譜的二元限制,相較于傳統的基于二元關系的知識圖譜推理模型,在疾病并發癥推理中準確率有了明顯提升[5]。此外,基于深度學習的實體識別和圖神經網絡驅動的語義檢索技術[6-8],為系統實現奠定了技術基礎。
本研究基于現有的技術研究進展,構建了覆蓋疾病、癥狀、藥品等核心概念的醫療知識圖譜,并開發了智能問診系統。系統通過Neo4j圖數據庫存儲實體節點與關系邊,支持各項復雜查詢。將用戶鍵入的問題或關鍵詞進行系列處理,最大限度理解用戶的真實意圖,并充分運用圖譜中已存儲的相關醫療知識,向用戶反饋相應結果。
1 系統架構設計
智能問診系統采用模塊化設計,劃分為數據處理、問句處理、前端交互三大模塊。如圖1所示。數據處理模塊作為系統基礎,通過數據清洗、實體識別、關系抽取等技術對原始醫療數據進行處理,實現知識的存儲。問診處理模塊解析用戶的輸入,生成相應的Cypher語句以執行知識檢索。前端交互模塊為用戶提供可視化界面,包括查詢輸入框和結果展示區,實現人機交互功能。三個模塊協同工作,共同完成從數據采集、知識處理到結果展示的完整流程。
2 醫療知識圖譜構建
2.1 構建流程
部署完Neo4j數據庫的環境后,對CCKS測評數據集及網絡采集的醫療數據進行預處理,包括文本分詞、數據脫敏等操作。隨后,系統從預處理后的語料中提取各類醫療實體,并充分挖掘實體之間的關聯關系。最終,通過批量導入的方式將結構化醫療知識存儲至Neo4j數據庫,并實現可視化展示,從而完成醫療知識圖譜的構建。知識圖譜完整構建流程如圖2所示。
醫療知識在Neo4j數據庫中以三元組結構lt;實體—關系—實體gt;進行存儲,其中實體映射為數據庫中的節點,實體間的關聯則通過節點間的連線表示。醫療知識元素與Neo4j數據庫結構的對應關系詳見表1。
按照表中Neo4j元素與醫療知識相對應的規則,將每條醫療知識按表示為節點和邊的方式進行存儲。
在知識圖譜構建過程中,醫療知識經三元組轉化后需導入Neo4j數據庫進行存儲。針對不同數據規模,可采用差異化的導入策略:對于小規模數據,通常使用Cypher語言通過可視化界面手動創建節點和關系,該方法適用于實體數量有限、結構簡單的場景;面對大規模數據處理時,則主要采用兩種高效方式,其一是利用“Neo4j-import”工具進行批量導入,具有高效、低耗的特點,但缺乏數據追加能力;其二是將數據預處理為JSON格式后,通過“LOAD JSON”指令實現批量加載,支持大規模數據的快速導入。醫療數據規模龐大、關系復雜,且為滿足后續數據動態維護的需求,系統最終選擇JSON格式的批量導入方案。
2.2 存儲過程
基于上述醫療知識元素與Neo4j數據庫結構的對應關系,醫療知識的存儲過程可分為兩個核心環節:首先創建醫療實體節點,隨后在相關節點間建立關系邊,從而實現醫療知識的網絡化存儲。
2.2.1 創建醫療實體節點
以“診療科室”醫療實體為例,運行節點創建語句后建立的部分實體節點如圖3所示。
2.2.2 創建關系實體邊
在知識圖譜中,相關醫療實體通過關系邊實現關聯。以“苯中毒”這一疾病實體為例,它與藥物實體“大月晶丸”建立“recommend_drug”類型的關系邊,表示推薦用藥;與癥狀實體“抽搐”建立“has_symptom”類型的關系邊,表征疾病癥狀;同時與檢查實體“血常規”建立“need_check”類型的關系邊,反映所需檢查項目。這四類醫療實體及其關聯關系如圖4所示,共同構成了完整的知識網絡。
2.3 醫療知識圖譜可視化
當醫療數據存儲流程結束后,在Neo4j的可視化界面可以查看創建的醫療知識圖譜,圖5為本文構建的醫療知識圖譜部分展示。
如圖5所示,所構建的醫療知識圖譜呈現出高度密集的關聯網絡。圖譜采用多色節點區分各類醫療實體,實體間的關聯通過帶箭頭的實線連接,方向從起始實體指向目標實體。對于具有多重關聯的實體節點,系統會生成多條關系邊并標注相應關系類型。基于該知識圖譜,可利用Cypher查詢語言進行醫療信息的檢索與動態維護,實現醫療數據的網絡化可視化展示,為智能問診系統的開發提供了可靠的數據支撐。
3 系統實現
3.1 系統開發環境
本研究采用Flask框架作為智能問診系統的開發基礎。系統前端基于Vue框架構建,采用HTML和CSS實現界面設計與布局。后端開發主要運用Python編程語言,通過py2neo庫實現與Neo4j圖數據庫的交互,從而有效訪問和操作醫療知識圖譜數據。系統開發環境的具體配置參數詳見表2所示。
3.2 系統功能測試
將系統后端與前端界面相連,在Google瀏覽器中輸入相應的IP地址與端口號,輸入賬號和密碼即可進入智能問診系統主頁,如圖6所示。主頁為用戶提供文本或關鍵字輸入框,點擊“提交”鍵后,系統會自動對輸入的內容進行處理并傳輸到后端進行知識檢索。
為驗證系統的功能完整性,本研究設計了測試用例進行功能驗證。以“百日咳的臨床表現及檢查方法”查詢為例,用戶在主界面輸入問題并點擊提交后,系統界面將智能分屏顯示:左下方區域呈現問題解析及詳細解答,右下方則可視化展示相關醫療知識節點圖譜,具體效果如圖7所示。該測試方案有效驗證了系統的知識檢索、語義理解和可視化展示等核心功能的可用性。
系統具備智能查詢記憶功能,可自動存儲用戶的搜索記錄。當用戶輸入特定關鍵詞時,系統會在下拉菜單中顯示包含該關鍵詞的歷史查詢記錄。以“肺氣腫”為例,用戶在輸入該關鍵詞時,界面會自動彈出近期相關的查詢記錄,如圖8所示。這一設計旨在為用戶提供便捷的查詢體驗,減少重復輸入的操作。若推薦的歷史記錄未能滿足需求,用戶仍可自由輸入新的查詢內容進行搜索。
在系統運行過程中,若用戶查詢的知識點超出醫療知識圖譜的覆蓋范圍,系統將啟動智能提示機制。不同于傳統錯誤頁面的跳轉方式,系統會通過友好的交互界面向用戶反饋查詢結果。例如,當用戶輸入“如何設計一份高質量的調查問卷”這類非醫療領域問題時,系統界面會顯示“當前問題不在知識庫范圍內,建議您嘗試其他醫療相關問題”的提示信息,同時右側的知識圖譜展示區也會出現“敬請期待”的圖標。這種設計既避免了用戶對系統功能的誤解,又提升了人機交互的友好度。測試結果如圖9所示。
三個功能測試用例對應于正常搜索、系統緩存信息以及錯誤搜索三個類別,結果顯示系統均能正常運行,達到預期效果。這說明系統基本能滿足用戶對醫療健康知識檢索的需求。
4 結束語
本研究采用Neo4j圖數據庫作為醫療知識圖譜的存儲平臺,通過將結構化醫療數據轉化為三元組形式進行存儲,實現了知識圖譜的構建。基于這一知識庫,設計開發了一套智能問診系統,該系統采用模塊化設計,具備良好的可擴展性。研究詳細闡述了系統的整體架構及各功能模塊的實現原理,并通過可視化界面展示了系統運行效果。為驗證系統性能,研究設計了多維度測試方案,實驗結果表明該系統基本能夠準確理解并回答用戶提出的醫療健康咨詢,各項功能指標均符合設計要求,具有一定的實用性。
本研究尚存在不足,后續將從拓展圖譜覆蓋的語料范圍、優化模型以便更加精準處理用戶的復雜問題、豐富優化系統的功能等方面深入研究。
參考文獻:
[1] 唐華,胡為,劉偉,等.基于知識圖譜的中醫醫案智能問診系統設計與實現[J].現代計算機,2023,29(19):98-101.
[2] 張卓群.基于知識圖譜的醫療問診關鍵技術研究[D].杭州:杭州電子科技大學,2024.
[3] MAO Y Q,FUNG K W.Use of word and graph embedding to measure semantic relatedness between Unified Medical Language System concepts[J].Journal of the American Medical Informatics Association,2020,27(10):1533-1541.
[4] 陳名,邵蓉.生物類似物研究領域的知識圖譜分析及其對我國政策啟示[J].中國科技論壇,2014(11):144-148.
[5] 田玲,張謹川,張晉豪,等.知識圖譜綜述:表示、構建、推理與知識超圖理論[J].計算機應用,2021,41(8):2161-2186.
[6] 趙繼貴,錢育蓉,王魁,等.中文命名實體識別研究綜述[J].計算機工程與應用,2024,60(1):15-27.
[7] 張云秋,殷策.基于大模型的中文電子病歷實體自動識別研究[J/OL].數據分析與知識發現,2024:1-18.[2024-10-20].http://kns.cnki.net/kcms/detail/10.1478.g2.20241118.1735.004.html.
[8] 李夢翔,尤麗玨.基于深度主動學習的中文電子病歷命名實體識別[J].微型電腦應用,2022,38(6):132-134.
【通聯編輯:謝媛媛】