多模態 DNN 模型在藥物相互作用預測任務中的應用
一、背景介紹
首先和大家分享下藥物發現的相關背景。
1、背景介紹
藥物發現領域近幾年非常火熱,特別是借助 AI 來輔助藥廠的藥物發現工作,包括藥物研發。藥物研發過程的周期非常長,通常某類臨床疾病的首創藥的研發過程需要消耗幾十億的經費以及十多年的時間。主要分為以下幾個階段:
(1)研究疾病靶點,疾病核心蛋白的確認。
(2)在臨床試驗前驗證藥物的有效性:包括藥物毒性、有效性、服用方式等方面的研究。
(3)臨床試驗。
(4)FDA 審批認證。
所以傳統藥物研發流程周期非常長。此外,從初識的 10000 多種藥物,到 5 種藥物進入臨床試驗階段,最后到只用 1 種藥物批準上市。在這個背景下,如何輔助藥廠更快的從候選藥物中篩選出有效藥物,且能在臨床測試階段更快的預研藥物可能帶來的影響、作用、有效性等成為了比較熱門的研究領域,其中 AI 特別是深度神經網絡技術能大大加速藥物研發流程。
今天分享的內容不涉及藥物篩選,主要集中在候選藥物的副作用和療效,主要研究目的是降低藥物毒性,提高藥物有效性。
如上圖所示,DDI(Drug-Drug Interaction)是指藥物與藥物間的相互作用。將研究藥物與已有藥物進行交叉分析,發現研究藥物的副作用,如對身體的影響等,通過試驗提前進行發現歸類。簡單舉例,“是藥三分毒”,藥物的毒性主要體現在哪里?很多情況下是因為藥物與其他藥物聯用產生的,兩種或多種藥物間產生了化學作用。右下角圖中展示了 3 種藥物,其中伊曲康唑(Itraconazole)是治療腫瘤相關藥物,如果將它和阿貝西利(abemaciclib)混合服用將會引起很嚴重的副作用,如肝衰竭,肝腎功能不全的患者使用這兩種藥物將會引起嚴重后果。如果將阿貝西利和達拉非尼(Dabrafenib)混用,將會導致血清濃度下降從而引發其他疾病。故在研發新藥的過程中需要進行大量的試驗,但不可能用真人進行試驗,只能用小白鼠或其他動物進行試驗。
今天分享的內容即是,通過多模態神經網絡基于已有的(包括正在研發和已知的)藥物成分、過敏情況等,對藥物 DDI 進行提前預測。
2、問題提出
如上圖所示,可以將藥物相互作用歸納為 DDI 矩陣,矩陣中描述了藥物相互作用的結果,如藥物 d1(阿貝西利)和 d2(達拉非尼)會導致 y1(血清濃度下降)。本研究中納入了 37264 條 DDI 數據,其中涉及了 572 種藥物(d)及 65 種反應結果(y,如血清濃度下降等)。并基于此數據構建了藥物知識圖譜(DKG,Drug Knowledge Graph):其中節點是藥物,邊是藥物間的關系。DKG 三元組是 {D:藥物, R:藥物間關系, T:尾實體}。
除了以上數據,多模態模型還融合了藥物的異構特征(HF,Heterogeneous Features):{Target:作用靶點,substructure:組成成分/化學結構, enzyme:酶},每個特征的維度不同,如靶點信息是一種蛋白。最后將 DDI 矩陣,DKG 和 HF 融合在同一個概率分布上進行建模。
二、MDNN 模型介紹
接下來將介紹異構多模態 MDNN 模型的框架。
1、MDNN 整體框架
本模型簡稱 MDNN,基礎數據主要分為 DDI 矩陣和異構數據兩個部分,模型框架主要由以下三個部分組成:
(1)基于 DKG 部分:主要是通過構建藥物知識圖譜來表達藥物本身的成分(有效成分、毒性成分)、藥物間關系等的信息。
(2)基于 HF 部分:通過整合靶點、酶、分子結構等異構特征數據來描述藥物自身的基礎特征信息。
(3)多模態融合神經網絡:將 DKG 和 HF 兩部分特征數據進行有效融合,對融合數據進行統一建模。
2、DKG 模塊構建
下面將介紹基于 DKG 的構建過程。
上圖展示了藥物知識圖譜的主要內容,左圖是 DDI 矩陣,矩陣中包含了接近 600 種藥物,這些藥物的成分和作用信息都存儲在數據庫(DrugBank,即“藥物銀行”)中。右圖舉例展示了“藥物銀行”中的藥物信息,如酶、載體、靶點等異構基礎特征,其中有 4 種特征是比較重要的,以藥物 DB05812 為例,除靶點(target)、酶(enzyme)、分子結構以外,還有載體(carrier)和轉運體(transporter),但這兩種數據相對比較稀疏,沒有其他特征那么多的維度,在目前數據集上的區分度不大,故暫時未采用這兩種數據。主要使用數據為靶點、酶、分子結構。
如上圖所示,知識圖譜主要由節點和邊組成,其中節點為藥物和成分,邊為關系。示例中三元組展示的關系為毒性成分關系,即節點藥物 “DB05812” 與節點成分 “P02768” 間存在毒性成分關系。基于“藥物銀行”中獲取的藥物成分關系三元組構成了 DKG 知識圖譜,其中包含 572 種藥物,三元組的邊(關系)稱為語義關系(semantic relation),共有 157 種關系類型,成分尾實體節點有 1043 種。每次 DKG 可根據任務需求從“藥物銀行”中抽取相應的信息進行構建,故 DKG 相當于是“藥物銀行”知識圖譜中的子圖。
基于 DKG,總結了兩種信息,上圖展示了語義關系信息模型的構建。基于毒性成分,首先計算上一層藥物(d)和關系(r)的內積,通過當前層權重(W1)進行求和得到 π 函數,即藥物的邊和節點信息通過 π 函數求和到一起,再將 π 函數和上一層成分(t)進行加權求和得到 e,即獲得了邊的信息。
類似的,上圖展示了圖的拓撲結構信息模型的構建。藥物除了毒性成分外,還可能包含其他多種成分關系,可以將同一藥物的多種關系(邊,即 e)及其對應的權重 W2 連接起來,最終得到每個藥物對應的 E。通過上述方式將 DKG 邊和拓撲結構信息進行了有效的融合表示。
3、HF 模塊構建
如下圖,除上述提到的邊信息和 DDI 信息外,藥物還存在著非常豐富的多模態信息:同一種藥物可以對多個靶點起作用;各種藥物也有各自不同的分子結構,代表了其對應的分子特性;藥物在不同酶的作用下會和不同的靶點結合。將這三種信息進行向量化表示,然后通過簡單的 Jaccard 相似度來度量藥物間的相似度,得到對應的相似度矩陣。
最后融合三種相似度矩陣得到每種藥物對應的 E',即獲得了藥物基于異構特征的信息。本特征向量的維度也不大,包括了 1162 種靶點,583 種結構和 202 種酶的信息。
4、多模型融合層
如上圖所示,最終通過融合層對每個藥物的 DKG 結果 E 和 HF 結果 E' 進行拼接融合得到:
再通過 softmax 函數得到輸出層:
整個模型框架如上圖,框架結構并不復雜,但對藥物信息進行了相對有效的結合。
三、MDNN 模型效果
接下來和大家分享一下模型效果。
上圖展示了與當前應用較為普遍的算法的對比結果,MDNN 算法在 Acc、AUC、F1、AUPR、Precision、Recall 等評價指標上均取得了 State of the Art 的結果。(以上算法沒有納入 GNN 算法。)
上圖展示了 MDNN 融合 DKG、HK 和不融合的效果間差異。很容易看出,融合后的結果比單獨使用某一種方法的效果要更好。
關于多模態調參,即參數敏感度的分析如上圖,分別展示了神經網絡層數 l,節點數 Ns等參數變化時,各個評價指標對應的波動情況。
此外還進行了多任務分析,任務 A 預測模型通過訓練集構建,來預測訓練集藥物和測試集藥物間的 DDI;任務 B 的預測模型也通過訓練集構建,但預測測試集藥物間的 DDI。即將訓練集和測試集藥物嚴格分開的的話,模型預測效果有顯著下降。
在藥物研發領域還存在許多亟待解決的問題:如何有效的發現/篩選藥物,而不是局限于研究 DDI。
四、總結
最后總結一下本次分享的內容,MDNN 算法本身不算復雜,最重要的工作是利用了多模態數據和結構信息:
(1)基于藥物效果構建了藥物知識圖譜,基于藥物本身特性(靶點、分子結構、酶)構建了多模態數據特征,最終融合這兩部分特征構建了 MDNN 模型。
(2)對 DDI 的預測問題進行了改進;
(3)與已有方法對比,MDNN 在數據集上的效果最好。
但在實際應用上,MDNN 模型還存在很多需要進一步優化和改進的地方,如更好的方法論或更好的數據。
五、問答環節
Q1:“藥物銀行”數據集是公開數據集嗎?
A1:本研究知識圖譜數據集是公開的,原始數據集“藥物銀行”也是公開數據集。但根據每個研究領域的藥物的不同,所構建的知識圖譜數據集也會有差異,沒有一個統一通用的知識圖譜。
Q2:所分享的研究方法如知識圖譜、多模態融合等,在制藥領域以外還有什么應用?如蛋白質、免疫等?
A2:除生物制藥外,在電商領域的應用非常多。如 User-Item 類的數據集,User 有很多多模態信息,如職業、年齡、購物標簽等,Item 商品也有很多信息,它們間的關系也有非常多,如購物、評價、收藏夾、點擊等行為。領域數據如果符合異構形態,都可以嘗試使用這些方法進行分析,難點在于構建特定領域的知識圖譜。