沈希宇,蔡肖紅,曹 慧
山東中醫(yī)藥大學 智能與信息工程學院,濟南 250355
個性化推薦系統(tǒng)能夠通過對大量的數據進行匯總分析,找尋用戶特征,建立匹配機制,為用戶推薦其可能感興趣的信息。隨著信息社會的建設逐步完善,推薦系統(tǒng)已經根植于社會的各行各業(yè),其中適配于醫(yī)療健康領域的推薦系統(tǒng)正在蓬勃發(fā)展。如推薦用藥、輔助診斷、精準醫(yī)療、預測藥物相互作用等[1],傳統(tǒng)的推薦算法可以分為基于內容的推薦算法、基于協同過濾的推薦算法和混合的推薦算法[2],但數據稀疏性和冷啟動問題一直是傳統(tǒng)推薦算法性能的桎梏。以協同過濾算法為例,所謂數據稀疏性是指在數據總量中有效數據所占比例極小,導致構建的用戶(user)-物品(item)矩陣變得稀疏,在進行相關計算時,對結果的準確性將產生極大的負面影響。針對此類問題常用的解決方案為:一是通過引入上下文聯系,聯合評論信息等多方位的關聯數據,間接降低矩陣的稀疏程度,從而提高推薦準確度。二是通過對數據進行聚類分析,將數據聚成高相似度的幾類,降低數據的維度,進而提升推薦效果。三是通過結合深度學習挖掘數據的隱含特征,從而解決數據稀疏性問題。目前學術界廣泛運用的是結合深度學習的推薦算法,雖然深度學習算法可以有效解決數據稀疏性的問題,但對于冷啟動問題仍然缺乏有效的應對手段。而且深度學習算法通過卷積計算挖掘數據隱含特征,對于問題本身缺乏有效的可解釋性。醫(yī)療知識圖譜作為數據關聯度高且可解釋性良好的技術手段與推薦系統(tǒng)有著很高的契合度,可以有效解決目前推薦系統(tǒng)所面臨的困難。
本文在將近年來推薦系統(tǒng)的相關研究進行整理歸納的基礎上,對基于知識圖譜的推薦系統(tǒng)進行深入的研究,主要對結合醫(yī)療實踐的研究成果進行梳理分析,最后對具可行性的未來研究方向進行了展望。
知識圖譜是通過符號形式構建圖模型用來描述物理世界中概念以及其相互關系的技術方法,是人工智能領域的下游技術,本質上是異構圖。知識圖譜的概念由谷歌于2012年提出,其前身是語義網,經過長時間的發(fā)展形成了結構化的語義知識庫,基本組成單位是節(jié)點和邊。節(jié)點可以是實體,邊可以是實體的屬性關系,通常的表現形式沿用了語義網絡中“頭實體-關系-尾實體”三元組的經典設定,實體以邊為橋梁相互聯結,構成的結構知識呈現網狀,因此也被稱為異構信息網絡,如圖1所示。
圖1 知識圖譜示例Fig.1 Example of knowledge graphs
按照知識涵蓋范圍可以將知識圖譜劃分為通用知識圖譜和領域知識圖譜。通用知識圖譜旨在納入更多實體類型,內容多而雜,且準確性不足,很難將其實體和關系標準化;領域知識圖譜則是依托于專業(yè)性領域的特定知識構建而成,構建三元組的實體和關系時需要統(tǒng)籌兼顧領域內獨特的知識體系,醫(yī)療知識圖譜從屬于領域知識圖譜。
醫(yī)療知識圖譜目前主要的構建模式有兩種,即自頂向下與自底向上的構建模式。自頂向下的構建模式首先構建頂部本體層,然后將關系和概念梳理細化,再將抽取到的實體填充到所構建的頂層本體中;自底向上的構建模式則是先從數據源中提取實體、屬性、類別和關系,直接合并到知識圖譜的數據層,最后形成頂部模式層?,F階段大部分知識圖譜的構建都采用了自底向上的方法。
構建醫(yī)療知識圖譜有利于整合現有知識,將存在于各處的醫(yī)療學知識轉變成計算機可讀的程序語言。當今正處醫(yī)療數據飛速積累的時代,醫(yī)療知識不僅存儲于病例文本、住院表格等非結構化文本中,還在期刊文獻、互聯網資源等結構化數據中大量存在。醫(yī)療知識圖譜構建的關鍵技術流程如圖2所示。
圖2 醫(yī)療知識圖譜架構流程圖Fig.2 Flow chart of medical knowledge graph architecture
醫(yī)療知識圖譜的構建流程由醫(yī)療知識抽取、醫(yī)療知識融合和醫(yī)療知識加工三個主要模塊組成。醫(yī)療知識抽取包含實體抽取、關系抽取和屬性抽取,通過從海量的結構化、半結構化和無結構化的醫(yī)療數據源中提煉出實體、關系和屬性等要素存儲在醫(yī)療知識圖譜中。醫(yī)療知識融合可消除實體、關系、屬性等概念項與事實對象之間的歧義,使不同來源的知識能夠得到規(guī)范化整合、消歧和加工,并可以保證醫(yī)療知識圖譜能夠循環(huán)更新和補足缺失的知識。醫(yī)療知識加工包括本體構建、知識推理和質量評估。本體構建是對已構建好的數據層進行概念抽象,即構建知識圖譜的頂層關系本體;知識推理是推斷出尚未明確的實體關系,自動完成疾病診斷與治療;質量評估是通過對已有知識的可信度進行量化評估,篩選出置信度高的知識,保持知識圖譜的精準性。
自互聯網興起以來,網絡上積累的數據信息極速增長。冗余的數據中蘊含著寶貴的價值,但卻很難被開發(fā)出來其應有的價值。推薦系統(tǒng)作為幫助人們利用冗余數據,開發(fā)數據價值的有效手段,是推動整個互聯網發(fā)展的核心動力。對于用戶來說推薦系統(tǒng)所面臨的問題可以簡化為如何針對特定場景下的用戶在眾多候選可能中為其預測并推薦可能感興趣的事物,在需要應用到推薦的場景中多數用戶都存在需求不明確的情況。與傳統(tǒng)的搜索引擎不同,推薦系統(tǒng)通常會結合用戶歷史信息和標簽預測用戶的需求,當用戶歷史信息缺失時則需要利用其他相似用戶的信息來交替比較。
作為介紹推薦系統(tǒng)的前提,如下概念在推薦系統(tǒng)中起著基石作用:用戶信息是與用戶相關的各種信息,例如歷史瀏覽行為、用戶關系網絡等;物品信息是各個推薦場景中所涉及到的不同推薦客體,例如醫(yī)藥、疾病、新聞、電影等;場景信息是在具體的推薦場景中,對用戶決定起到輔助作用的信息,例如時間、地點、用戶所處狀態(tài)等。推薦系統(tǒng)的主體是由用戶信息、物品信息、場景信息共同構建的預測函數模型。
推薦系統(tǒng)的邏輯架構可以簡單地理解為在用戶和龐雜的選擇之間樹立起的過濾網,如圖3所示。
圖3 推薦系統(tǒng)邏輯架構流程圖Fig.3 Flow chart of Recommended system logic architecture
在實際的推薦系統(tǒng)中,數據處理和構建算法模型尤為重要。數據處理需要對冗余的數據進行過濾,包括數據的收集、存儲、加工、分類、歸并、計算、排序、轉換、檢索和傳播,以此獲取推薦系統(tǒng)所需要的用戶、物品、場景信息。
獲得的信息送往預測模型之前還需要對信息進行特征工程的處理,提取出可以表達問題本質的特征,有助于提高模型的精準度;構建預測模型的過程一般包括召回層,排序層和補充排序層。召回層的作用是利用高效的召回算法模型快速對海量候選物品進行初篩,過濾掉無用的候選物品,召回用戶可能感興趣的物品;排序層作為推薦算法的主體是最為重要的部分,推薦結果的精確性主要由排序算法對初篩的候選物品進行精確排序來體現;補充排序層是對用戶返回推薦結果之前的查漏補缺,結合環(huán)境信息對用戶的推薦結果進行的微調,為用戶呈現最終的推薦結果。
自推薦系統(tǒng)應用于商業(yè)以來,推薦系統(tǒng)出現了井噴式的發(fā)展,從開始的協同過濾模型(collaborative filtering,CF)[3]、邏輯回歸模型(logistics regression,LR)[4],逐步進化完善到了因子分解機模型(factorization machine,FM)[5]、梯度提升決策樹的組合模型(gradient boosting decision tree,GBDT)[6-7]。直到2012年AlexNet[8]的提出,深度學習憑借其強大的表達能力和靈活性的浪潮席卷學術界,基于深度學習的模型架構百家爭鳴,推薦模型步入了組合模型的階段,基本拋棄了單一模型的框架。
雖然基于深度學習的模型對冷啟動和數據稀疏性問題做出了很大改善,但是其對特征處理的弱解釋性仍是推薦系統(tǒng)的短板之一。
在推薦系統(tǒng)的早期發(fā)展階段,研究者專注于僅憑借用戶歷史交互信息向目標用戶推薦相似的用戶或物品,例如協同過濾、邏輯回歸模型、因式分解機、矩陣分解技術等。該類方法的關鍵問題在于如何提取用戶和物品的特征來計算它們的相似性。
隨著神經網絡模型的出現,許多方法將基于相似性的方法擴展到神經網絡,為自動提取用戶和推薦物品的潛在特征提供了一種更有效的機制。然而,該類方法仍然受到數據稀疏問題和冷啟動問題的困擾。傳統(tǒng)推薦模型的優(yōu)勢及局限性總結見表1[3-10]。基于內容的方法通過引入各種輔助信息來處理問題,例如上下文評論、場景信息和知識圖譜。引入輔助信息的優(yōu)點是提高了推薦結果的可解釋性。在輔助信息中,知識圖譜由于其良好定義的結構和充足的資源,在推薦方面顯示出巨大的潛力。
表1 傳統(tǒng)推薦模型的主要優(yōu)勢及局限性Table 1 Main advantages and limitations of traditional recommendation models
知識圖譜作為數據關聯度高且可解釋性良好的技術方法與推薦系統(tǒng)有著很高的契合度,可以有效解決目前推薦系統(tǒng)在醫(yī)療領域所面臨的困難。醫(yī)療知識圖譜為item(疾病、藥品等)引入了更多的語義特征,可以更深層次的挖掘患者需求。隨著輔助信息的加入,數據稀疏和冷啟動的問題可以得到有效的緩解,進而提高模型效能。而且融合醫(yī)療知識圖譜的推薦系統(tǒng)可解釋性強,連接患者的病歷記錄和推薦結果,從而提高患者對推薦結果的滿意度和接受度,能按照符合人類認知的推薦路徑進行精準推送,增強患者對推薦系統(tǒng)的信任。此外,還可以將患者信息和外部信息集成到醫(yī)療知識圖譜中,更為精準地捕捉患者和疾病之間的關系以及患者的偏好。
目前大多數基于知識圖譜的推薦模型都基于三種模式:依次學習、聯合學習和交替學習,如圖4所示。
圖4 知識圖譜應用于推薦系統(tǒng)的三種模式Fig.4 Three modes of knowledge graph application in recommendation system
依次學習是指先使用知識圖譜進行特征學習,從而得到實體和關系的低維向量,然后將這些低維向量引入推薦系統(tǒng)再做后面的處理。也就是只把知識圖譜作為一個特征的處理方式,兩個模塊依次進行學習。聯合學習是指知識圖譜特征學習模塊和推薦算法模塊的目標函數,然后再使用端到端的方法進行聯合學習。將因為進行知識圖譜嵌入而降維的損失也納入到最后的損失函數中進行聯合訓練。交替學習是將知識圖譜特征學習模塊和推薦算法模塊視為兩個分離但關聯的模塊,使用多任務學習的框架進行交替學習。這樣的做法兼顧了兩者的優(yōu)點,使得知識圖譜和推薦系統(tǒng)兩個模塊可以更深入地進行結合。
現階段基于醫(yī)療知識圖譜的推薦模型大多都是以傳統(tǒng)推薦模型為根基,將醫(yī)療知識圖譜中關于患者和疾病等實體的結構化知識引入到推薦模型中充當輔助信息,用來改善傳統(tǒng)推薦模型中數據稀疏和冷啟動的問題,除此之外也存在利用醫(yī)療知識圖譜本身結構特點來優(yōu)化結果的推薦模型。根據算法實現原理以及利用醫(yī)療知識圖譜信息結構的不同,可以將現有基于醫(yī)療知識圖譜的推薦模型分為三種:基于嵌入的方法Emb(embedding-based)、基于路徑的方法Path(path-based)和融合的方法Uni(unified-based)。
融合知識圖譜的推薦系統(tǒng)是一個研究較為成熟、快速發(fā)展的領域,擁有廣泛的應用前景,不僅限于醫(yī)療領域,在影視、書籍、音樂、電子商務等領域也大放光彩。通過整理經典綜述文獻和代表性的工作,將基于知識圖譜的多領域經典推薦模型匯總見表2[11-36]。
表2 基于知識圖譜的多領域經典推薦模型匯總Table 2 Summary of multi-domain classic recommendation models based on knowledge graph
基于路徑的方法通過構建用戶和物品的異構信息網絡,計算實體連接路徑之間的連通性和相似性,從而實現不同語義角度的推薦。該方法充分且直觀地利用了知識圖譜的網絡結構,引入了基于元路徑相似性的概念,不僅使用戶和物品間的多元關系被高效利用,而且還增強了推薦算法的可解釋性。基于路徑的方法最早被稱為異構信息網絡(hetegeneous information network,HⅠN)中的推薦方法。異構信息網絡由于包含多類實體和連接關系,在復雜多元異構的數據環(huán)境下的建模能力出眾,因此被廣泛應用于推薦系統(tǒng)中。
基于路徑的方法早期通過與傳統(tǒng)的推薦算法相結合顯著提高了推薦效果的準確性。Yu等人[11]在2013年提出的Hete-MF模型采用基于矩陣分解的推薦框架,使用異構信息網絡將用戶評級與實體相似性矩陣結合起來,通過提取不同的元路徑并計算每個路徑中的物品相似度進行推薦。由于該模型缺乏對用戶的動機、興趣等外部信息的利用,存在推薦不精準的明顯弊端,該團隊于2013 年提出的Hete-Rec 模型[37]利用元路徑的相似性完善用戶-物品交互矩陣,從而可以提取用戶和物品更為全面的特征信息。該團隊在后續(xù)推出的HeteRec-p模型[12]中進一步考慮了不同元路徑對于不同用戶的重要性,該模型通過基于元路徑的遍歷方法進行特征提取,充分利用了用戶與物品以及物品與物品之間的關系,首先根據用戶過去的行為將用戶分組,并利用聚類信息生成個性化推薦,然后根據用戶的不同提供基于用戶-物品隱式交互的高質量推薦。但其對于隱式反饋沒有細致的區(qū)分,只是籠統(tǒng)地劃分為正反饋和負反饋,這將會導致模型的性能下降。在經典的協同過濾算法基礎上,Luo等人[38]提出的Hete-CF模型通過將用戶-用戶、物品-物品和用戶-物品的相似度作為正則化項,查找用戶對未分級物品的相似度,對于解決異構社交網絡上的推薦問題起到了良好的效果。
3.1.1 結合醫(yī)療實踐的基于路徑的方法
在與醫(yī)療實踐結合后,推薦系統(tǒng)不僅包含簡單的用戶-物品的關系問題,還需要遵循生物學合理假設的研究方向。傳統(tǒng)用藥推薦是由醫(yī)生根據豐富的經驗配合臨床指南定義的基于規(guī)則模板匹配的推薦,對于特定診斷的非特異化醫(yī)學推薦可能是有效的,但是對于復雜患者的私人訂制推薦作用有限。Wang等人[39]提出的SⅠET(star interactive enhanced-based transformer)模型利用基于元路徑的方法從基于電子病歷和醫(yī)學知識圖的大型異構網絡中構造出疾病同質圖,藥物同質圖和副作用同質圖,然后將疾病、藥物、副作用三個實體序列向量投射到低維稠密向量空間中,最后通過計算疾病表征和藥物表征向量之間的余弦相似度得到推薦藥物列表。其優(yōu)點是利用了注意力機制增強了嵌入向量的表示,提高了推薦的精準性,缺點則是增加的參數需要更多的計算資源,推薦效率有所下降。
藥物重定位是一種將現有藥物用于治療新的適應癥的藥物發(fā)現方式。相較于傳統(tǒng)的新藥開發(fā),可以有效縮短藥物研發(fā)周期,降低成本,規(guī)避風險。Nam 等人[40]針對藥物重定位問題提出KGE-CLASH模型,引入額外的知識充當輔助信息,改善數據稀疏性問題,同時利用調和函數進行標簽傳播,所得藥物評分用來推薦。該模型的不足之處是需要專業(yè)人員結合領域知識來定義元路徑的類型和數量。Zhao 等人[41]提出的通用臨床決策支持方法使用醫(yī)學知識網絡(EMR-based medical knowledge network,EMKN)將問題描述為一個馬爾可夫決策過程(Markov random field,MRF),可以來推理癥狀-疾病之間的合理路徑,通過為實體關系匹配相應的能量函數,一定程度上解決了先前方法需要手動定義元路徑的問題。
與推薦系統(tǒng)中的數據稀疏性類似,醫(yī)學異構圖遵循長尾分布,長尾實體只和某些實體交互,因此推薦系統(tǒng)無法統(tǒng)籌全局信息。Lan等人[42]針對醫(yī)學知識圖譜實體和路徑的稀疏性問題,通過BERT(bidirectional encoder representation from transformers)的預訓練模型對實體和路徑文本語句進行編碼,以增強實體和路徑的嵌入,同時加入了注意機制用于組合多條路徑的語義特征,在解決了數據稀疏性問題的同時,大量的BERT參數會減慢模型訓練和收斂的速度,導致模型需要更多的時間成本。
3.1.2 小結
基于路徑的方法通常將協同過濾、矩陣分解等傳統(tǒng)推薦算法與異構信息網絡中提取的元路徑相結合。該類方法利用路徑連通性規(guī)范和豐富用戶-物品表示,缺點是通常需要領域知識來定義元路徑的類型和數量,導致信息浪費和增加非必要的計算開銷。隨著深度學習技術與醫(yī)療實踐的深入結合,該類方法將路徑嵌入進行顯式編碼,可以通過連接癥狀-藥物的最顯著路徑生成推薦結果。基于路徑的方法自然地將可解釋性引入到推薦過程中,推薦結果可以從預定義的元路徑中找到參考。實現元路徑選擇的自動化是未來的發(fā)展方向,例如利用深度學習模型自動挖掘疾病-藥物的顯著路徑,從而在圖中反映推薦過程?;诼窂降耐扑]算法特點及其局限性總結見表3。
表3 基于路徑的推薦算法特點及其局限性Table 3 Characteristics and limitations of path-based recommendation algorithm
與基于路徑的方法不同,基于嵌入的方法用知識圖譜作為輔助信息,豐富item或user的表示。為了充分利用知識圖譜的信息,該類方法需要采用知識圖譜嵌入(knowledge graph embedding,KGE)算法將知識圖譜中包括實體和關系的三元組映射到低維連續(xù)的向量空間,保留知識圖譜結構的同時,使其蘊含更多的潛在語義信息,更容易被計算機理解和操作。知識圖譜嵌入的方法主要可以分為轉移距離模型(translational distance)方法和語義匹配模型(semantic matching)方法兩種,前者是利用基于距離的評分函數,學習從頭實體到尾實體的空間關系變換(TransE[43]、TransR[44]等系列模型),后者則是通過基于相似性的評分函數,直接運用神經網絡對語義相似度進行計算(RESCAL[45]、DistMult[46]等模型)。
基于嵌入的方法早期通過利用KGE算法處理過的原始嵌入向量進行推薦。Zhang等人[20]提出CKE(collaborative knowledge base embedding)模型,針對之前方法只利用知識圖譜的單一結構信息而忽略了其他重要信息的缺陷,整合了包括外部知識圖譜、文本、圖像等外部信息,完善了實體的結構化信息向量,形成了物品的潛在向量表示。該模型的不足之處在于忽略了知識圖譜內的實體之間的關系信息;用戶嵌入向量無法得到及時更新;增加的輔助信息涵蓋多個方面,但卻缺少權重的劃分,這將會對實際推薦結果產生不利影響。
Wang 等人[21]提出的DKN(deep knowledge-aware network)模型針對上述方法的不足之處,使用結合了知識圖譜的卷積網絡KCNN(knowledge-aware convolutional neural network)[47]將新聞的語義信息與知識圖譜融合起來形成全新的嵌入向量。為了捕捉用戶對新聞的動態(tài)興趣,該模型通過加入注意力機制,對候選推薦的權重進行了分配。雖然DKN模型在用戶歷史交互的信息基礎上,將知識圖譜作為衡量用戶偏好的尺度,但卻只選取了相鄰用戶的聯系作為上下文信息,完全沒有利用到知識圖譜內的關系信息。在此基礎上該團隊提出了MKR(multi-task feature learning approach for knowledge graph enhanced recommendation)模型[23]將推薦問題精確地建模為多任務學習(multi-task learning)。該模型由推薦模塊和KGE 模塊組成,通過前者學習獲得用戶和物品的潛在表示,而后者利用語義匹配的KGE模型學習獲得物品關聯實體的向量表示,如圖5 所示。這兩個部分通過一個交叉壓縮單元連接起來相互傳遞知識,共享推薦模塊中物品和知識圖譜中實體的規(guī)則化,進一步避免了出現擬合噪聲和提高了模型泛化能力。
圖5 MKR模型結構示意圖Fig.5 Schematic diagram of MKR model structure
3.2.1 結合醫(yī)療實踐的基于嵌入的方法
藥物-靶標相互作用(drug-target interaction,DTⅠ)在藥物開發(fā)中起著至關重要的作用,例如藥物重定位和預測藥物副作用。除此之外,當針對復雜疾病識別出新的蛋白質靶標時,也需要進行DTⅠ預測,同時需要闡明具有已知治療效果的藥物分子機制。這個問題類似于推薦系統(tǒng)的冷啟動問題,是DTⅠ預測在實際應用中的嚴重限制因素。Ye 等人[48]提出的KGE-NFM(knowledge graph embedding-neural factorization machine)模型在DTⅠ領域通過語義匹配KGE進行實體和關系嵌入,將所得的低維向量作為輔助信息結合神經因子分解機NFM(neural factorization machines)得到最終的推薦結果,雖然該方法緩解了DTⅠ中的冷啟動問題,但其框架結構相對簡單,且對參數的調整很敏感,因此不便于部署在實際應用中。而Shang 等人[49]提出的GAMENet(graph augmented memory network)模型則將藥物建模為實體節(jié)點,將藥物相互作用建模為關系鏈接,通過結合外部記憶組件,不僅提高了推薦的精準度還便于部署,增強了其在臨床實踐中的實用性。
自新冠病毒肺炎疫情發(fā)生以來,由于傳統(tǒng)藥物研發(fā)周期長,藥物重定位成為新冠肺炎藥物研發(fā)的主要策略。藥物重定位具有高效、低成本的特點,尤其是在突發(fā)性疾病和罕見病方面優(yōu)勢更加突出。Zeng 等人[50]提出的CoV-KGE(coronavirus-knowledge graph embedding)模型通過利用亞馬遜開源知識圖譜進行KGE從而獲得低維向量表示。CoV-KGE根據候選藥物的推薦預測得分進行藥物重定位,快速識別可重新用于新冠肺炎潛在治療的藥物。然而該模型因為存在數據噪聲較大以及忽略權重分配等問題,所以模型的性能欠佳,推薦準確率較低。Jin 等人[51]提出的KG-ASMGNN(KGenhanced attentive multi graph neural network)模型針對之前方法的不足,將草藥推薦問題類比推理為一個多標簽分類任務,除了利用中醫(yī)藥知識圖譜進行KGE 嵌入生成癥狀和草藥的向量表示,還加入了基于注意力的多層感知機(multilayer perceptron,MLP)對癥狀-草藥的映射進行了細顆粒度的劃分,確定了不同癥狀的權重,提高了推薦系統(tǒng)的可靠性。但由于中醫(yī)實體之間有著復雜相關性,推薦效率仍有待提高。
耐藥性是一種復雜的生物學現象,阻礙了癌癥治療的可持續(xù)發(fā)展。尋找耐藥性關鍵基因的常見策略是全基因組篩選。Gogleva等人[52]提出的Skywalk-R模型,將全基因組篩選問題適配為推薦領域的多目標優(yōu)化問題用于尋找耐藥性的關鍵基因,其中KGE 學習獲得的向量作為圖形衍生特征被納入推薦系統(tǒng),提高了推薦結果的準確性。但與傳統(tǒng)的推薦系統(tǒng)不同,Skywalk-R 無法依靠用戶反饋來逐步評估和改進預測,因此驗證實驗成本高且耗時長。
基于電子病歷(electronic medical record system,EMRs)的藥物推薦系統(tǒng)在很大程度上可以幫助醫(yī)生做出更好的臨床決策,但是由于電子病歷中缺乏醫(yī)學專家的知識,推薦系統(tǒng)很難將準確的醫(yī)療事實與合適的處方相關聯,降低了最終的推薦結果對于病情復雜的患者可信度。在基于電子病歷的藥物推薦系統(tǒng)中使用醫(yī)學知識圖譜,可使推薦系統(tǒng)能夠為特殊患者提供適當的處方。Gong 等人[53]提出的SMR(safe medicine recommendation)模型把推薦用藥問題轉換為預測患者與藥物之間連接的問題,通過從電子病歷和醫(yī)學知識圖中構建大型異構圖,利用TransR方法構建特定關系矩陣,橋接的不同向量空間中的實體和關系對患者進行建模,并最小化潛在的藥物不良反應做出安全用藥的建議。但由于模型結構過于復雜,很難在臨床實踐中部署。
現有的方法多數都是假設知識圖譜是完整的,因為不完整的訓練數據集會對推薦系統(tǒng)的性能產生不利影響。Cao 等人[24]提出的K-TUP(knowledge-enhanced translation-based user preference)模型針對知識圖譜不完整的問題,通過利用轉移距離模型TransH[44]將知識圖譜補全任務和推薦任務聯合部署在同一模型中,實現了兩任務的相互增強。在此基礎上Sousa等人[54]通過把知識圖譜作為BiOnt模型[55]的外部實體信息進行生物醫(yī)學關系提取,再結合K-TUP[24]補全了生物醫(yī)學實體之間的關系,提高了推薦的準確度。
3.2.2 小結
基于嵌入的方法不僅將知識圖譜中的實體和關系映射到低維向量,還保留了原有的結構或語義信息,對解決基于路徑的方法中依賴元路徑設計、忽視語義關系的問題起到了重要的作用。但是該類方法對于知識圖譜中的多跳關系缺乏合理的運用,致使部分推薦結果的可解釋性降低。在與醫(yī)療實踐結合后,基于嵌入的方法構建醫(yī)療知識圖譜時常使用多種類型的邊信息豐富醫(yī)療實體的表示,并且采用邊信息可以更精確地對患者的表示進行建模。另外,采用多任務學習策略將推薦模塊與醫(yī)療異構圖相關任務進行聯合訓練,也可以進一步提高推薦的質量?;谇度氲耐扑]算法的優(yōu)勢及局限性總結見表4。
表4 基于嵌入的推薦算法特點及其局限性Table4 Characteristics and limitations of recommendation algorithm based on embedding
基于路徑的方法使用預定義的元路徑作為連通性信息進行推薦,基于嵌入的方法利用知識圖譜中用戶-物品的嵌入向量表示進行推薦,這兩種方法只利用了知識圖譜的部分信息。為了充分挖掘知識圖譜中蘊含的信息,基于融合的方法被提出。該方法采用嵌入傳播的思想,將實體和關系的嵌入向量表示和連通性信息結合起來,以知識圖譜中的連接結構為指導,能夠學習獲得到更為全面的信息表示。
Wang等人[29]提出的RippleNet模型首次將基于嵌入和基于路徑的方法結合起來,通過引入偏好傳播思想克服了現有推薦方法的局限性。RippleNet借鑒水波紋的傳播原理,以用戶感興趣的物品為原點,在知識圖譜上逐層向外擴散,實現消息的傳遞。雖然RippleNet 開創(chuàng)性地提出了基于融合的方法,通過偏好傳播方法自然地將KGE 方法融入到推薦系統(tǒng)中,并且不需要人工設計元路徑,但仍存在著計算量冗余,忽視關系側重點等缺點。該團隊后續(xù)提出的KGCN(knowledge graph convolutional network)模型[33]和KGCN-LS(KGCN-label smoothness)模型[56]改善了這些問題。KGCN 通過將候選項的鄰居項到其本身的路徑嵌入到知識圖譜中,利用鄰居向量來擴充當前實體的向量表示,更好地捕捉局部鄰域信息和考慮鄰居節(jié)點權重實現推薦結果的優(yōu)化。KGCN-LS則是在KGCN模型上進一步增加了標簽平滑機制(label smoothness,LS)。LS 通過提取用戶交互信息,在知識圖譜上傳播用戶交互標簽,從而指導學習過程,可以獲得候選項的綜合表示。除此之外,Wang 等人[57]在RippleNet 模型的基礎上進行改進,提出了Ripp-MKR模型,結合了RippleNet[29]的偏好傳播思想和MKR模型[23]的交叉訓練思想,解決了之前方法因更關注用戶-物品交互矩陣而忽略了知識圖譜中關鍵結構信息的問題。
3.3.1 結合醫(yī)療實踐的基于融合的方法
圖卷積網絡(graph convolutional network,GCN)不僅可以在圖中歸納節(jié)點和邊的信息表示,還能夠高效處理不同實體之間具有豐富關系信息的任務,因此受到學術界廣泛的關注。然而將原始GCN擴展到醫(yī)學知識圖譜的過程中存在著如下問題:(1)最初的GCN是為同構圖設計的,在同構圖中,所有節(jié)點都是相同的類型,并且具有相同的功能名稱,而醫(yī)學知識圖譜多為異構圖且具有多種類型的節(jié)點,無法直接適配GNN。(2)在醫(yī)療場景中的特征矩陣中通常有許多缺失值,而原始GCN無法處理節(jié)點特征中存在缺失值的情況。
在與醫(yī)療實踐結合后,為了解決上述問題Mao 等人[58]提出的MedGCN(Medicine GCN)模型,創(chuàng)新性地將多個醫(yī)療實體之間復雜的關聯融入到異構醫(yī)療圖中,通過引入交叉正則化策略,加強了多任務之間的交互,減少了多任務訓練的過擬合。因為該模型更加側重于普適性的應用場景,因此針對特定的推薦場合性能較為普通。Yang 等人[59]提出的KDHR(knowledge-driven herb recommendation)模型將中醫(yī)藥知識圖譜作為附加的輔助信息,通過GCN 對癥狀和草藥之間的潛在關系進行建模,并使用多層感知器(MLP)集成從GCN 的每一層獲得的不同層次的信息,以此獲得信息豐富且噪聲較小的節(jié)點特征表示。但因為中醫(yī)藥知識圖譜中的草藥類別不平衡導致模型性能無法達到最優(yōu)。
3.3.2 小結
基于融合的方法利用嵌入傳播的思想改進知識圖譜中具有多跳鄰居的實體表示,嵌入傳播是在知識圖譜中發(fā)現用戶偏好的方法,類似于在基于路徑的方法中發(fā)現元路徑的模式,繼承了基于路徑方法的可解釋性。該類方法一般采用融合GNN 的架構,可以自然地將KEG方法融入到推薦系統(tǒng)中。針對原始GCN適配到醫(yī)學知識圖譜領域中存在著的問題,將異構圖分解為多個二部圖或同構圖是較為可行的方法。基于融合的推薦算法的優(yōu)勢及局限性總結見表5。
表5 基于融合的推薦算法特點及其局限性Table 5 Features and limitations of fusion-based recommendation algorithm
推薦系統(tǒng)的發(fā)展已經有三十多年歷史,但是基于知識圖譜的推薦系統(tǒng)才發(fā)展起步十年左右。隨著深度學習、強化學習等技術的快速涌現,融合醫(yī)療知識圖譜的推薦系統(tǒng)得到了推動發(fā)展的動力,且有著廣闊的研究空間。本文提出的未來展望方向如下:
多任務學習:知識圖譜的質量決定推薦系統(tǒng)的性能,因此對于融合醫(yī)療知識圖譜的推薦系統(tǒng)來說醫(yī)療知識圖譜的鏈路預測問題是不可忽視的。例如,醫(yī)療知識圖譜中的實體關系若是存在缺失則會導致患者的偏好可能會被忽略,并且因為缺少事實關系,推薦的質量可能會下降。因此將知識圖譜推理和推薦任務聯合部署在同一個模型中是獲得增強推薦質量的有效途徑。另外,多任務醫(yī)療推薦系統(tǒng)也是智能的、有發(fā)展前景的,可以釋放和減輕醫(yī)療資源緊缺的壓力,使醫(yī)療推薦任務更加方便和效率。例如,Liu 等人[60]提出的多任務健康管理推薦系統(tǒng),不僅通過利用Word2Vec+TransD獲得文本特征向量,同時還用ResNet(deep residual network)[61]提取醫(yī)學圖像的特征向量,通過稠密層將提取的特征向量發(fā)生非線性變化得到特征之間的相關性,然后映射到輸出空間得到稠密向量,提高了推薦系統(tǒng)的穩(wěn)定性。
知識圖譜嵌入方法(KGE):根據評分函數的不同,KGE分為翻譯距離模型和語義匹配模型。這兩種類型的KGE 方法被廣泛用于基于知識圖譜的推薦系統(tǒng)中。然而,在數據源、推薦場景和模型架構不同的情況下,并沒有研究者系統(tǒng)地梳理應該采用哪種特定的KGE 方法。因此,該研究方向需要比較不同KGE 方法在不同條件下的優(yōu)劣勢。
跨領域推薦:近年來關于跨領域推薦的研究成果層出不窮。例如,通過遷移學習技術,可以將共享資源中相對豐富的交互數據應用在目標領域中,能夠獲得更優(yōu)質的推薦結果。Zeng 等人[50]先通過利用亞馬遜開源知識圖譜進行KGE 學習,然后將獲得低維向量用于藥物重定位中,根據候選藥物的推薦預測得分快速識別可重新用于新冠肺炎潛在治療的藥物。另外,通過在疾病-藥品交互矩陣中加入不同類型的邊信息,可以獲得更好的跨域推薦性能。
醫(yī)療知識圖譜本質上是一種多源異構信息網絡,作為輔助信息豐富推薦系統(tǒng)的表示,有效解決了傳統(tǒng)推薦系統(tǒng)的數據稀疏、可解釋性低和冷啟動等問題。本文系統(tǒng)地梳理了國內外現有融合醫(yī)療知識圖譜的推薦系統(tǒng)的相關文獻,回顧整理了知識圖譜構建和傳統(tǒng)推薦系統(tǒng)的基礎知識,總結了基于知識圖譜的推薦系統(tǒng)的三種方法,重點對結合醫(yī)療實踐的研究成果及其優(yōu)缺點進行歸納總結,最后對具可行性的未來研究方向進行了展望。