林 瑜,吳靜依,藺 軻,胡永華,孔桂蘭1,△
(1.北京大學健康醫療大數據國家研究院,北京 100191;2.北京大學公共衛生學院流行病與衛生統計系,北京 100191;3.北京大學信息技術高等研究院,杭州 311215;4.北京大學醫學信息學中心,北京 100191)
重癥監護病房(intensive care unit,ICU)的住院費用是國家醫療衛生預算中最高昂的花費之一,美國的一項研究顯示,ICU中的住院花費占據了總體住院費用的13.4%[1]。住院期間,患者再入ICU的比例為4%~10%[2-3],無計劃的反復進入ICU的患者往往意味著更高的死亡風險、更長的住院時間和更高昂的花費。再入ICU的患者中,接近40%的患者由于原發基礎疾病沒有妥善解決導致病情反復而多次進入ICU[4-5]。因此,了解重癥患者再入ICU的影響因素,建立重癥患者再入ICU的風險預測模型可以了解患者是否有再入ICU的可能性,避免患者過早離開ICU而導致病情反復。
目前已建立的再入ICU預測模型大多基于Logistic回歸[6]或使用ICU病情嚴重度評分[7],預測性能有限。隨著機器學習和人工智能技術的發展,在臨床研究中使用更全面的方法建立預測模型,與ICU病情嚴重度評分相比可以得到更好的預測效果。Fialho等[8]使用模糊模型預測患者是否再入ICU,得到受試者工作特征曲線下面積(area under the receiver operating characteristic curve,AUROC)為 0.720,高于ICU常用的急性生理和慢性健康評分(acute physiology and chronic health evaluation,APACHE)的預測效果。Desautels等[9]基于英國Addenbrooke醫院的ICU患者數據,使用基于自適應提升算法(adaptive boosting,AdaBoost)的遷移學習預測患者再入ICU風險,模型的AUROC為0.710,高于病情嚴重度評分,即轉運的穩定與負擔指數評分(stability and workload index for transfer score,SWIFT)。以往文獻中預測重癥患者再入ICU模型的區分度較為一般,性能有待提高。
臨床風險預測模型的建立往往基于結構化數據,集成學習是對結構化數據擬合效果最好的算法之一,隨機森林、AdaBoost和梯度提升決策樹(gra-dient boosting decision tree,GBDT)被廣泛運用在Kaggle等數據科學競賽中[10],其中,GBDT具有參數設置簡單、針對數據異常值性能亦較為穩健的特性,在臨床建模中表現較為突出[11],相對于其他機器學習方法,如神經網絡、支持向量機、集成學習算法等,在結構化數據上表現較好,而且可以給出特征的重要性排序,計算花費也低于神經網絡和支持向量機。本研究基于隨機森林、AdaBoost、GBDT三種集成學習算法,建立重癥患者再入ICU的風險預測模型,并將集成學習模型的預測效果與Logistic回歸模型進行對比。
數據來源于美國重癥醫學數據庫(medical information mart for intensive care,MIMIC)-Ⅲ[12],該數據庫包含了2001—2012年Beth Israel Deaconess醫療中心ICU患者的個人數據和臨床數據,數據中變量豐富,包含人口學特征、生命體征、實驗室檢查、手術情況、影像學檢查和死亡情況等。
將住院期間進入ICU治療的患者分成單次進入和重復進入兩組,患者排除標準包括:(1)死亡患者,(2)新生兒ICU患者,(3)入住ICU時長小于24 h的患者,(4)年齡小于18或大于90歲的患者。
一次住院中患者有可能多次再入ICU,只選擇第一次的再入ICU記錄,確保每次住院只有一條記錄納入數據集。本研究篩選出的再入ICU記錄為2 053條,未發生再入ICU的記錄為33 656條。盡可能納入較多的預測變量以獲得更好的預測效果,所選擇的進行預測建模的變量在原始數據集中的缺失率不高于20%。此外,對于單個患者缺失變量較多的情況,排除變量缺失率在30%以上的患者,最終用于建模的再入ICU記錄為1 983條,未發生再入ICU的記錄為32 179條。選擇患者出ICU前最后24 h的記錄作為模型的預測變量賦值。
1.2.1個體特征 包括年齡、性別、ICU入住時長、住院類型。
1.2.2生命體征 包括呼吸、心率、收縮壓、舒張壓、平均動脈壓、血氧飽和度、體溫、血糖。
1.2.3實驗室檢查 包括陰離子間隙、碳酸氫鹽、肌酐、氯離子、血紅蛋白、血細胞比容、血小板、鉀離子、鈉離子、血尿素氮、白細胞。
1.2.4格拉斯哥昏迷評分(Glasgow coma scale,GCS) 包括GCS總評分、GCS運動、GCS語言、GCS睜眼。
1.2.5合并癥 包括Elixhauser合并癥評分[13]中的所有合并癥:心力衰竭、心律失常、瓣膜疾病、肺循環疾病、周圍血管病、高血壓、癱瘓、其他神經疾病、慢性肺病、沒有合并癥的糖尿病、有合并癥的糖尿病、甲狀腺功能減低、腎衰竭、肝病、潰瘍、艾滋病、淋巴瘤、轉移癌、未轉移腫瘤、類風濕性關節炎、凝血病、肥胖、體質量下降、電解質紊亂、失血性貧血、缺鐵性貧血、酒精濫用、藥物濫用、精神病、抑郁。所有的合并癥均通過MIMIC-Ⅲ數據庫中的國際疾病分類(international classification of diseases,ICD)-9診斷編碼來提取。
1.2.6其他指標 包括尿量、是否有氣管插管等。
本研究納入的變量同時重疊了APACHE評分[7]和SWIFT評分[14]中大部分指標,因患者的生命體征在24 h內經多次測量,為反映患者生命體征在24 h內的變化情況,生命體征的最大值、最小值也作為預測模型的輸入變量入選,本研究總計納入67個變量。
MIMIC-Ⅲ作為真實世界的數據庫,同樣存在數據缺失情況,有相關研究比較了均值填補法和線性插值法處理缺失值的效果,發現線性插值法對數據缺失值的擬合效果更好[15],因此,本研究也根據線性插值法填補缺失值。在ICU住院患者中,發生再入ICU的只占總數據的5.7%,發生再入ICU和未發生再入ICU的數據比例極為不平衡。在未發生再入ICU的樣本占絕大多數的情況下,分類器將所有樣本預測為多數類樣本,也可以得到很高的準確率,但這樣的預測就失去了意義。大多數標準的機器學習算法是針對平衡數據設計的算法,過度不平衡的數據會嚴重影響算法的預測能力。目前解決數據不平衡的方法主要有采樣、數據合成和加權等方法,本文采用兩種采樣方法處理不平衡數據,即隨機下采樣和NearMiss方法[16]。隨機采樣是在多數類樣本中隨機選擇一部分樣本,使多數類和少數類樣本數量平衡。NearMiss方法主要是基于K近鄰(K-nearest neighbor)的思想來達到下采樣的目的。NearMiss是尋找每個多數類樣本最近的3個少數類樣本,計算其平均距離,選擇平均距離最小的多數類樣本組成新的樣本子集。本研究將原始數據集分成80%的訓練集和20%的測試集,用于評估經過隨機下采樣方法和NearMiss方法處理后的數據對模型性能的影響。使用預處理后的數據訓練預測模型,根據模型在測試集上的準確率來評估不平衡數據處理方法的優劣。從隨機下采樣和NearMiss方法的準確率可以看出,NearMiss方法可以較大程度地提升分類器的性能(表1)。因此,本研究使用NearMiss方法來處理不平衡數據,再進行建模預測。

表1 隨機下采樣和NearMiss方法處理不平衡數據的性能Table 1 Performance comparison between random under-sampling and NearMiss methods
在建模之前,本研究進行了特征選擇,使用基于Logistic回歸的遞歸特征消除法尋找最佳的預測變量的組合。遞歸特征消除結果顯示,在特征不斷增加的同時,模型的預測性能也在不斷上升(圖1)。因此,基于Logistic回歸的遞歸特征消除法提示本研究納入的所有特征均對模型的預測效果有貢獻,如果只選取部分特征,可能導致模型預測性能的下降,故本研究納入所有特征,不對特征進行選擇,以確保最佳的預測性能。

RFE,recursive feature elimination;LR,Logistic regression.圖1 基于Logistic回歸的遞歸特征消除法Figure 1 Recursive feature elimination based on Logistic regression
Logistic回歸中因變量是二分類變量,無需事先假設數據分布,將樣本落入某一類的后驗概率建模為Logit函數(圖2)。使用Logit函數可以將自變量的線性組合轉化為0~1之間的預測值,得到發生某一類別事件的概率,并根據概率大小來判定結局的類別,因可解釋性強而使用廣泛。

圖2 Logit函數示意圖Figure 2 Logit function

AdaBoost[18]是集成學習提升法(boosting)的代表算法,使用基礎分類器單層決策樹進行串行訓練而獲得更強的分類器。每一輪訓練,根據當前基礎分類器的誤差率em(m為迭代次數,m=1,2,…,M)來確定本輪基礎分類器權重am,同時更新樣本權重,并根據新的樣本權重訓練下一個基礎分類器Gm+1(x),最終AdaBoost的輸出是所有基礎分類器的加權組合。
首先計算基礎分類器在訓練集上的分類誤差率:

(1)
其中,N為樣本總數,wmi是第m輪迭代中第i個樣本的權重,I代表結果為0或1的指示函數,在訓練第一個基礎分類器G1時,為N個訓練樣本分配相等的權重。分類器的誤差率越大,其在最終模型中所占的比重就越小,根據分類器的誤差率確定每個分類器的權重am:
(2)
同時,更新訓練樣本的權重,為分類錯誤的樣本分配更高的權重:

(3)
其中,Zm為規范化因子,計算公式為:
(4)
接下來進行下一個基礎分類器Gm+1(x)(m+1≤M)的訓練,每次迭代中生成新的基礎分類器可以最佳地擬合當前加權樣本。AdaBoost的輸出是各基礎分類器結果的加權組合,公式為:
(5)
對f(x)輸出的概率進行判別,得到最終的分類結果。

L(y,F(x))=ln(1+exp(-2yF(x))),y∈{-1,1},
(6)
其中,F(x)為:
(7)
GBDT模型的最終目標是找到使損失函數(7)最小的F(x),進而計算樣本的預測概率,得到樣本分類的結果。建立二分類的GBDT模型,首先根據公式(8)初始化GBDT模型:
(8)


(9)

(10)
獲得新的基礎分類器的輸出后,將CART的輸出結果與上一輪模型Fm-1(x)串聯后就可以得到GBDT的當前模型Fm(x):
(11)
最終模型預測概率值為:
(12)
使用PostgreSQL在MIMIC-Ⅲ數據庫中進行數據篩選,描述研究人群的基本特征,根據數據分布選擇卡方檢驗或秩和檢驗比較組間差異。基于Logistic回歸、隨機森林、AdaBoost和GBDT四種方法預測建模,使用五折交叉驗證來訓練和驗證模型的判別能力。基于靈敏度、陽性預測值、陰性預測值、假陽性率、假陰性率、AUROC、Brier評分來評價模型的預測能力,其中,前5項是臨床建模較為常用的指標,Brier評分衡量了模型總體概率預測的準確性,AUROC衡量了模型總體判別患者是否再入ICU的區分度。在建立預測模型的同時,利用預測效果最好的模型給出重要性排序前10位的預測變量,變量的全局重要性通過五折交叉驗證的重要性均值得到。使用R 3.5.1和Python 3.6軟件進行分析。
本研究納入ICU住院記錄34 162條,其中發生再入ICU的住院記錄1 983條,患者在住院期間再入ICU率為5.7%,僅使用無缺失值的數據進行描述性統計分析。與未發生再入ICU的患者相比,發生再入ICU的患者平均年齡更大,ICU住院時間更長,GCS的總分和各項GCS評分更低,因非擇期手術而入院的患者比例更高(表2)。

表2 有無再入ICU的重癥患者基本情況比較Table 2 The characteristics of critically ill patients with and without ICU readmission
基于Logistic回歸、隨機森林、AdaBoost和GBDT算法建立預測模型,4個模型的五折交叉驗證后的結果見表3,其中,GBDT的區分度最好,平均AUROC達到0.858,AdaBoost (AUROC=0.851)的區分度略差于GBDT,隨機森林(AUROC=0.827)的預測效果第三,Logistic回歸(AUROC=0.810)的預測效果最差。

表3 Logistic回歸、隨機森林、AdaBoost和GBDT模型預測再入ICU的性能Table 3 The prediction performance of Logistic regression,random forest,AdaBoost,and GBDT

a,b,c,d,represent the threshold of feature value in node splitting.圖3 決策樹示意圖Figure 3 Decision tree
從預測模型的靈敏度、陽性預測值、陰性預測值、假陽性率、假陰性率和Brier評分的結果可以看出,GBDT的靈敏度略差于AdaBoost,陰性預測值與AdaBoost相當,陽性預測值、假陽性率、假陰性率和Brier評分的表現都是4個模型中最好的。在集成學習模型的總體預測效果中,GBDT的預測效果優于隨機森林,略好于AdaBoost。對比集成學習和Logistic回歸的預測效果,集成學習算法與Logistic回歸相比均有較大的提升,能夠提供更為精確的再入ICU風險預測。
再入ICU的預測模型中,預測性能最佳的GBDT算法給出的預測變量的重要性排序見表4,排序靠前的變量為血小板、血糖、尿量、血壓、心率和血肌酐等,以實驗室檢查和生命體征變量為主。由表4可見,心血管功能方面,發生再入ICU患者的平均動脈壓、收縮壓、舒張壓和心率比未發生再入ICU的患者更高;腎功能方面,再入ICU的患者尿量更少、血肌酐更高。總體來說,再入ICU的患者心血管功能和腎功能比未發生再入ICU的患者更差。

表4 基于GBDT模型重要性排序前10位的變量及分布Table 4 Top 10 variables identified by feature importance based on GBDT model and their distributions
本研究使用美國MIMIC-Ⅲ數據庫,基于集成學習算法建立重癥患者再入ICU的風險預測模型,其中,GBDT算法預測效果最好,平均AUROC達到0.858,高于隨機森林(AUROC=0.827)、AdaBoost (AUROC=0.851)和Logistic回歸(AUROC=0.810)。
集成學習算法是目前對結構化數據擬合效果最好的算法之一,本研究主要基于集成學習算法建立患者再入ICU的風險預測模型,對比了多種模型的預測效果,與生物醫學領域運用廣泛的Logistic回歸相比,集成學習模型具有更好的預測性能。與已報道的再入ICU風險預測模型相比,本研究中預測模型的區分度更高,能夠更好地預測患者再入ICU風險。早期識別高風險的患者,有助于臨床醫生進行更好的醫療決策。
本研究采用了兩種數據平衡算法進行數據預處理,與隨機下采樣相比,NearMiss方法較好地提升了模型的性能。隨機下采樣在處理樣本的過程中,丟失了大量多數類樣本的信息,存在樣本代表性不足的問題。NearMiss方法通過K近鄰算法,選擇了離少數類樣本距離最近的多數類樣本,較好地保留了原始樣本的決策邊界[20],因此比隨機下采樣的樣本代表性更好,對模型的提升更為顯著。
醫學領域預測患者再入ICU的研究中,一般采用ICU中常用的疾病嚴重程度評分(如APACHE評分和SWIFT評分)來評估患者再入ICU的風險[7,14]。APACHE的評分項目中包含了生命體征和實驗室檢查等生理指標,年齡、入院類型等個體特征,GCS評分,肝臟、心血管、肺部疾病等合并癥;SWIFT評分包括患者入院類型,ICU住院時長,還有部分生理指標(PaCO2和FiO2)。本研究納入的變量同時重疊了APACHE評分和SWIFT評分中的大部分指標,盡可能全面地反映患者疾病的嚴重程度。GBDT的再入ICU風險預測模型中,重要性排序靠前的變量包括了血小板、血糖、尿量、血壓、心率和血肌酐,實驗室檢查和生命體征的相關變量排序靠前。Fialho等[8]基于MIMIC-Ⅱ數據中的生理學指標預測患者再入ICU風險,選出了最具有預測作用的6個變量,分別為心率、體溫、血小板、血壓、氧分壓和乳酸。患者在ICU出院前24 h的血小板、血壓和心率在不同研究中都具有較強的預測作用,表明在臨床工作中可以對ICU患者的這些指標進行常規監測,及時發現并干預指標表現較差的患者。Fialho等[8]的預測模型包含的變量只有實驗室檢查和生命體征指標,本研究納入了更為豐富的預測變量,涵蓋了人口統計學指標、合并癥、GCS評分、實驗室檢查和生命體征等多個維度的信息,更能全面反映患者疾病的狀況,且MIMIC-Ⅲ數據庫記錄有橫跨10年的患者樣本,相對而言提升了本文模型的代表性。
本研究也存在一定的不足之處,集成學習模型雖然預測效果更好,但對變量特征的解釋性不強,Logistic回歸盡管有較好的可解釋性,然而模型性能表現不佳。未來研究應注重于開發預測能力高、可解釋性好的模型,在提供臨床決策支持方面更易于醫生理解和接受。
總體而言,基于集成學習算法的再入ICU風險預測模型能夠較好地輔助醫生識別再入ICU風險高的患者,對這部分患者采取干預措施,可以預防可能發生的再入ICU,提高ICU救治的醫療質量,改善患者的預后,同時也節省了大量的醫保費用。