唐 雯, 高峻逸, 馬辛宇,3, 張超賀, 馬連韜,3, 王亞沙,4△
(1. 北京大學第三醫(yī)院腎內(nèi)科, 北京 100191; 2. 北京大學高可信軟件技術教育部重點實驗室, 北京 100871; 3. 北京大學信息科學技術學院, 北京 100871; 4. 北京大學軟件工程國家工程研究中心, 北京 100871)
腹膜透析是終末期腎病的重要替代治療手段,作為居家治療的替代治療方式,具有較好的成本效益比,在國內(nèi)外得到了廣泛應用[1]。但進行腹膜透析治療的終末期腎病患者病情復雜,常合并多種合并癥和并發(fā)癥,需要專業(yè)醫(yī)護人員長期持續(xù)的照顧。在治療和管理腹膜透析患者的過程中,需要根據(jù)患者隨訪過程中的各種變化因素,全面合理地進行病情評估,并據(jù)此給予具有針對性的個體化治療方案。
隨著醫(yī)療信息化程度的不斷深入,各個醫(yī)院已經(jīng)積累了與患者健康相關的大量數(shù)據(jù)。基于這些數(shù)據(jù)進行分析和挖掘,建立患者預后預測模型成為近年來醫(yī)學與信息學交叉研究的熱點方向[2]。目前對于腹膜透析患者的預后預測研究多為基于基線數(shù)據(jù)的統(tǒng)計學回歸分析模型,該模型由于難以描述患者隊列數(shù)據(jù)中的徑向關系,且難以捕捉數(shù)據(jù)之間復雜的非線性關系,而使其性能受限。
近年來,數(shù)據(jù)挖掘與機器學習技術蓬勃發(fā)展,特別是深度學習模型因其在計算機視覺、語音識別、自然語言處理、人機博弈等領域取得的顯著應用效果而獲得了廣泛關注[3]。一些學者嘗試將深度學習應用于醫(yī)療數(shù)據(jù)分析中,并在疾病自動診斷[4-5]、相似病人檢索、醫(yī)學影像數(shù)據(jù)分析[6]等方面獲得了長足的進展。循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)及其變體門控循環(huán)單元(gated recurrent unit,GRU)作為典型的深度學習模型,可以靈活地處理變長時序數(shù)據(jù),挖掘數(shù)據(jù)中深層的非線性關系,抽取數(shù)據(jù)中隱藏的模式,很適合腹膜透析患者的隊列數(shù)據(jù)分析場景,較之回歸分析模型可能會產(chǎn)生更加優(yōu)越的預后預測性能。目前,尚未見基于循環(huán)神經(jīng)網(wǎng)絡的腹膜透析臨床預后預測研究,因此,本研究基于北京大學第三醫(yī)院腹膜透析門診的常規(guī)診療數(shù)據(jù),構建死亡風險預測模型,并與傳統(tǒng)邏輯回歸(Logistic regression,LR)模型進行性能比較,初步探討人工智能預后模型的相關發(fā)現(xiàn)。
本研究納入2006年1月至2018年1月在北京大學第三醫(yī)院腎內(nèi)科腹膜透析門診長期隨訪的腹膜透析患者共計1 118人(數(shù)據(jù)處理篩選后656人),所有患者隨訪截止至2018年10月31日。所有研究資料來自北京大學第三醫(yī)院腹膜透析門診的常規(guī)診療數(shù)據(jù),數(shù)據(jù)包括患者在開始透析時的基線數(shù)據(jù)、隨訪數(shù)據(jù)和預后數(shù)據(jù)。
基線數(shù)據(jù)包括患者的人口學資料、腎臟病原發(fā)病、在透析開始時的合并癥狀況(糖尿病、心力衰竭、肺部感染、冠心病、心肌梗死、腦出血、腦梗塞、截肢病史等),以及透析開始時的血壓、化驗檢查(血肌酐、血尿素、血紅蛋白、血白蛋白、血鈣、血磷、甲狀旁腺激素等)信息。
隨訪數(shù)據(jù)包括在治療過程中患者隨訪檢查的化驗數(shù)據(jù)(血常規(guī)、腎功能、血白蛋白、電解質(zhì)、血鈣、血磷、血甲狀旁腺激素、血糖、肝功能、血尿酸)、體重、血壓等指標,以及患者在隨訪過程中所出現(xiàn)的各種急、慢性合并癥。
預后數(shù)據(jù)指患者在隨訪結(jié)束時的狀態(tài)及時間,包括死亡及死亡原因(排除非正常死亡,即經(jīng)濟原因放棄治療或自殺患者)、轉(zhuǎn)血液透析及其原因、腎移植、存活、轉(zhuǎn)其他腹膜透析中心或失訪。
按照醫(yī)學指標(下稱特征)所衡量的患者的不同身體情況,對所有用于本次研究的數(shù)據(jù)特征進行分類,詳情如表1所示。
表1 腹膜透析相關醫(yī)療特征Table 1 Clinical features of peritoneal dialysis
WBC, white blood cell; Hb, hemoglobin; ALB, albumin; Cr, creatinine; K, blood potassium; Na, blood sodium; Cl, blood chlorine; CO2CP, carbon-dioxide combining power; Glu, blood glucose; hs-CRP, high-sensitivity C-reactive protein; Ca, blood calcium; P, blood phosphorus; iPTH, intact parathyroid hormone.
本研究的結(jié)局變量為腹膜透析患者在數(shù)據(jù)記錄時刻的死亡風險狀態(tài)(riskt),模型的預測結(jié)果為患者在相應時刻的死亡風險(概率)。利用在第1.1小節(jié)中提到的患者所有歷次的數(shù)據(jù)記錄對死亡風險進行預測。具體而言,將歷次隨訪數(shù)據(jù)合并為數(shù)條時間記錄序列(record1,record2,…,recordt),而預后數(shù)據(jù)主要用于提供患者的身體狀況信息,用于計算結(jié)局變量。
對預后信息的處理如圖1,對觀察窗口內(nèi)死亡患者,取死亡時間之前一年內(nèi)時間段就診為高死亡風險狀態(tài),記結(jié)局變量riskt=1;兩年之前為低死亡風險狀態(tài),記結(jié)局變量riskt=0;中間為死亡風險不確定狀態(tài),記結(jié)局變量riskt=uncertain。對觀察窗口內(nèi)存活患者,將觀察窗口截止處一年內(nèi)設為不確定狀態(tài),一年以前記錄全部設為低風險狀態(tài)。
綜上,本研究綜合考慮了base,record1,record2, …,recordt的信息并對riskt給出了一個概率性的預測。
本研究排除了在某項特征或指標下沒有數(shù)據(jù)記錄的所有患者,且只選取出現(xiàn)于至少60%患者中的特征納入預測模型。對記錄中的缺失值,用該特征缺失時間點之前最近的數(shù)據(jù)進行補全。
圖1 健康風險狀態(tài)標簽的定義Figure 1 Definition of health risk labels
其中,函數(shù)σ為激活函數(shù)。已知當前時間戳下的真實死亡風險為riskt,則定義交叉熵損失函數(shù)為:
圖2 循環(huán)神經(jīng)網(wǎng)絡模型Figure 2 Recurrent neural network
1.4.2門控循環(huán)單元 門控循環(huán)單元(gated recurrent unit,GRU)是RNN的一種變體[8],其大體時序信息傳播結(jié)構與RNN模型相似(圖3)。σ和tanh分別為神經(jīng)網(wǎng)絡中sigmoid和tanh非線性激活函數(shù),符號“×”和“+”指代矩陣的元素積和矩陣加法。GRU模型和RNN模型的區(qū)別在于其每個時間節(jié)點t下的處理更為復雜,對上一時間戳的狀態(tài)ht-1,GRU會選擇性地通過“更新門”和“重置門”機制對其保留和遺忘,即分別對應圖中的zt和rt。而在醫(yī)療時序數(shù)據(jù)分析預測中,數(shù)據(jù)的長時間依賴對當前時間預測很重要,而傳統(tǒng)RNN在處理時序數(shù)據(jù)時,無法很好地抽取長時間間距之間信息的相關信息,GRU的“更新門”和“重置門”機制很好地解決了這一問題。具體而言,GRU對于每一個時間戳下的輸入向量recordt,結(jié)合節(jié)點狀態(tài)向量ht-1,計算更新門與重置門,更新門的值越大則模型將會利用更多新時刻的信息,重置門的值越大則保留更多歷史信息:
圖3 基于時序數(shù)據(jù)進行分類的門控循環(huán)單元Figure 3 Gated recurrent unit, which is used to perform classification based on time series data
模型中的sigmoid函數(shù)即體現(xiàn)了最終輸出概率與輸入之間的非線性關系。同樣采用交叉熵損失函數(shù)來衡量損失,并采用隨機梯度下降的方式最小化損失,從而計算得到模型所需的最優(yōu)參數(shù)W和b。值得一提的是,LR模型無法考慮時間這一因素帶來的影響,而是單純從每個數(shù)據(jù)本身挖掘其背后的特征和意義。因為LR模型無法處理時間序列,本研究將患者就診記錄序列中的每次就診數(shù)據(jù)獨立地輸入LR模型中,每次就診記錄中包含的數(shù)據(jù)類型與RNN和GRU模型相同。某種程度上講,前文提及的RNN和GRU模型納入的信息相較于LR而言是更全面的。
本研究采用十折交叉驗證的方式對模型的超參數(shù)進行調(diào)整,并使用獨立驗證集進行性能測試。其中,測試集在全部患者集合中隨機選取50位。在訓練集中利用GRU建立預測模型,在測試集中主要采用了受試者工作特征(receiver operation characteristic,ROC)曲線下面積(area under the ROC curve,AUROC)、召回率(recall)、F1分數(shù)(F1-score)三個指標來衡量模型對患者死亡風險的預測情況。其中,召回率在統(tǒng)計學上指所有預測為正樣本中預測正確的比率,F(xiàn)1分數(shù)則指預測精確率和召回率的調(diào)和平均值。通過對比這三個指標,可以很容易地對不同模型的預測能力進行評估。
經(jīng)過數(shù)據(jù)清洗、補全等預處理,本研究使用的數(shù)據(jù)集共有656例患者,包括死亡患者261例,所有患者共計13 091條記錄?;颊咂骄挲g(58.55±15.81)歲,平均每位患者擁有(19.95±13.53)條記錄,女性患者占比49%?;颊叩母黜椈炛笜说慕y(tǒng)計見表2,合并癥記錄統(tǒng)計見表3,患者基本信息統(tǒng)計見表4及圖4。
表2 數(shù)據(jù)集中腹膜透析相關醫(yī)療特征統(tǒng)計Table 2 Statistics of peritoneal dialysis clinical features in the dataset
Std, standard devation. Other abbreviations as in Table 1.
對GRU、RNN和LR模型的性能進行十折交叉驗證、調(diào)整超參數(shù),并在測試集測試,結(jié)果見表5,各模型的ROC曲線見圖5??梢钥闯鯮NN模型和GRU模型在AUROC、召回率、F1分數(shù)三項指標上都明顯優(yōu)于傳統(tǒng)的LR模型。雖然LR模型已經(jīng)達到了一定的預測水平,但其未考慮生存時間變量因素,很難隨著患者的不同隨訪時間變化,做出更加準確的預測。RNN和GRU模型與LR模型相比,不僅能夠處理當前狀態(tài)數(shù)據(jù),還能夠處理時序數(shù)據(jù),通過納入患者之前的狀態(tài)來對當前狀態(tài)進行預測,所以其結(jié)果優(yōu)于LR模型。但RNN模型在處理時序數(shù)據(jù)時,無法很好地抽取長距離信息依賴,GRU的“更新門”和“重置門”機制很好地解決了這一問題,同時從結(jié)果中也可以看出GRU模型的性能有了進一步的提升,說明GRU模型可以更深刻地理解當前數(shù)據(jù)背后的臨床意義,并且能更好地擬合數(shù)據(jù)。
表3 數(shù)據(jù)集中腹膜透析相關合并癥統(tǒng)計Table 3 Statistics of peritoneal dialysis complications in the dataset
表4 數(shù)據(jù)集基本統(tǒng)計特征Table 4 Statistics information of patients
Std, standard deviation.
圖4 數(shù)據(jù)集中年齡與就診頻次的分布Figure 4 Data distribution of age and visiting frequency in the dataset
表5 測試集各預測模型性能的平均值Table 5 Average performance of each prediction model in testset
LR, logistic regression; RNN, recurrent neural network; GRU, gated recurrent unit; AUROC, area under the receiver operation charac-teristic curve.
為了確定模型對于不同死亡原因的預測表現(xiàn),本研究計算了測試集上不同死亡原因的平均召回率。此外,還分析了預測窗口設置為3個月時模型的性能(圖6)。相比于RNN和LR模型,GRU模型具有更好的預測效果,所以下文的結(jié)果和討論均使用GRU模型。
本研究發(fā)現(xiàn),與傳統(tǒng)的LR模型相比,RNN及其變體GRU模型都具有更優(yōu)的擬合和預測效果,展現(xiàn)了循環(huán)神經(jīng)網(wǎng)絡模型在臨床預測模型中的潛在應用價值,在此基礎上的數(shù)據(jù)挖掘可能為臨床提供更為有意義的發(fā)現(xiàn)。
此外,根據(jù)圖6中模型的表現(xiàn),我們發(fā)現(xiàn)幾種死亡原因(如感染、胃腸道出血、營養(yǎng)不良和癌癥等)具有相當高的召回率,提示模型對于這幾種原因?qū)е碌乃劳龅念A測效果較好,但同時,一些死亡原因(如心血管疾病、腦血管疾病)的召回率相對較低,提示模型對急性發(fā)病的心腦血管疾病預測效果不佳,進一步提示需要在模型中納入更多可能的危險因素,或在臨床上需要進一步尋找可能的預測因子來提高模型的預測效果。
AUROC, area under the receiver operation characteristic curve.圖5 預測模型的ROC曲線Figure 5 ROC of prediction models
PDAP, peritoneal dialysis associated peritonitis; PVD, peripheral vascular disease; GI, gastrointestinal.圖6 不同預測窗口下對不同死因的召回率Figure 6 Recall of different death reasons at different prediction windows
需要注意的是,心腦血管疾病雖然具有相對較低的召回率,但隨著預測窗口從一年減少到3個月,腦血管疾病的召回率增加,心血管疾病召回率增加不明顯,表明對于患有腦血管疾病的患者,如果醫(yī)生可以更加密切隨訪患者,則可以使用現(xiàn)有類型的臨床數(shù)據(jù)進行預警。而對于患有心血管疾病的患者,當前的臨床信息不足以更準確地對死亡做出預警,因此,臨床上對于心血管疾病的預測,可能需要進行更詳細的測試(如心電圖、心肌酶、冠狀動脈CT血管造影、超聲心動圖等心臟檢查),進一步探索納入這些心臟測試后的模型預測效果。
本研究也存在不足之處,比如數(shù)據(jù)缺失率較高[2],對風險預測有明顯的負面影響。RNN模型中的機制旨在分析患者健康狀況的變化特征,因此對缺失率較高的數(shù)據(jù)補全策略引起的異常變化非常敏感。在未來的工作中,將不同來源的數(shù)據(jù)更合理地結(jié)合或進行遷移學習和數(shù)據(jù)補全可能會解決這一問題。
綜上所述,相比于傳統(tǒng)醫(yī)學研究所使用的LR模型,RNN模型,尤其RNN的變體GRU模型的性能更優(yōu),更適合預測終末期腎病腹膜透析患者的死亡風險。使用基于循環(huán)神經(jīng)網(wǎng)絡模型的死亡風險預測系統(tǒng)來輔助醫(yī)生進行臨床決策和干預,可能有助于臨床醫(yī)生更好地隨訪和檢測患者,提高醫(yī)療質(zhì)量。