張 平,吳念悅,張浩天,李功利,劉加林,李 科*
(1. 電子科技大學(xué)生命科學(xué)與技術(shù)學(xué)院 成都 610054;2. 四川大學(xué)華西醫(yī)學(xué)院 成都 610041;3. 四川省屏山縣人民醫(yī)院 四川 宜賓 645353)
心臟外科手術(shù)因其手術(shù)器官特殊、手術(shù)環(huán)節(jié)復(fù)雜等,其圍術(shù)期的病死率較高[1-2],因此手術(shù)后重癥監(jiān)護室(intensive care unit, ICU)需要及時準(zhǔn)確地評估病情及住院時間。
臨床研究發(fā)現(xiàn),患者在ICU 的住院時間會從根本上影響患者的預(yù)后效果[3]。住院時間是一個復(fù)雜的衡量指標(biāo),受很多因素的影響,包括患者人口統(tǒng)計數(shù)據(jù)、治療復(fù)雜性、并發(fā)癥和出院計劃等,量化和優(yōu)化患者在ICU 中的治療時間對醫(yī)療成本的控制和臨床服務(wù)質(zhì)量的提高具有重要作用[4-5]。較長的ICU 治療時間意味著更多的重癥監(jiān)護資源和高昂的醫(yī)療費用[6],ICU 治療時間延長也可能影響ICU 護理質(zhì)量,增加醫(yī)療成本,且可能使病情惡化,并可能減少對最需要患者的照護[7]。
因此,合理預(yù)測心臟手術(shù)患者的治療時間,對ICU 患者手術(shù)治療效果的評估有重要意義。但在臨床操作時,手術(shù)患者住院時間的預(yù)測通常依賴醫(yī)護人員的經(jīng)驗,本文探索基于機器學(xué)習(xí)方法預(yù)測重癥患者心臟手術(shù)后ICU 的治療時間。
在ICU 患者臨床數(shù)據(jù)分析中,有研究使用機器學(xué)習(xí)預(yù)測患者的死亡率或疾病發(fā)生率,文獻[8]采用機器學(xué)習(xí)方法預(yù)測膿毒癥患者死亡率,其預(yù)測結(jié)果比簡化急性生理學(xué)評分等傳統(tǒng)評分量表更為準(zhǔn)確。文獻[9]以7 天為界,對外科重癥監(jiān)護室中的患者進行分類和預(yù)測,通過神經(jīng)網(wǎng)絡(luò)方法預(yù)測隨著時間的推移而降低的慢性變化。
在重癥感染患者ICU 治療時間的危險因素研究方面,文獻[10]分析影響重癥感染患者ICU 治療時間的危險因素,發(fā)現(xiàn)血清乳酸水平是重要的危險因素之一。文獻[11]采用統(tǒng)計方法對ICU 治療時間進行影響因素分析,發(fā)現(xiàn)慢性健康狀況系統(tǒng)Ⅱ評分、血乳酸濃度、平均動脈壓、血清鈉濃度是治療時間的影響因素。文獻[12]建立實時預(yù)測兒科重癥監(jiān)護室住院時間的模型,并將該模型集成到計算機決策支持系統(tǒng)中,以改善患者流程管理。該模型將預(yù)測的住院時間與實際住院時間進行實時比較,研究變量包括年齡、入院狀態(tài)、是否再次入院,時間變量包括目前住院時間、醫(yī)療狀況、通氣情況、實驗室指標(biāo)、飲食情況、活動情況和異物情況等。
本文針對臨床上及時分析重癥患者ICU 治療時間影響因素以及準(zhǔn)確預(yù)測其所需住院時間,研究基于最小絕對收縮選擇算子(least absolute shrinkage and selection operator, Lasso)的心臟手術(shù)患者重癥監(jiān)護室住院時間的重要預(yù)測因子優(yōu)化方法,構(gòu)建基于梯度提升決策樹算法的心外科手術(shù)患者ICU 住院時間預(yù)測模型。實驗結(jié)果可為輔助臨床預(yù)測、臨床決策支持系統(tǒng)提供算法支撐。
梯度提升決策樹算法[13](gradient boosting decision tree, GBDT)是一種迭代的決策樹算法,通過多輪迭代生成弱分類器,每個分類器都在前一輪分類器殘差的基礎(chǔ)上進行訓(xùn)練。對弱分類器的要求通常足夠簡單,且具有低方差和高偏差。訓(xùn)練過程是為了減少偏差以提高最終分類器的準(zhǔn)確率,每次訓(xùn)練的目的都是為了減少最后的殘差。為了連續(xù)地減小殘余誤差,需要在殘差減小的梯度方向上訓(xùn)練新的模型。每個新模型都是在梯度方向上減小前一個模型的殘差。
每一棵決策樹Tm按照分枝增益最大的方式進行增長,最終的回歸樹Tm的訓(xùn)練目標(biāo)則是真實值與(T1+T2+···+Tm?1)結(jié)果的殘差最小,整體而言GBDT 是一種基于Boosting 思想的加性模型。
該算法的主要步驟如下。
1) 初始化弱學(xué)習(xí)器:
式中,N為樣本數(shù);L為損失函數(shù)。
2) 對于樣本i=1,2···,N,計算負梯度:
3) 計算第m棵樹的參數(shù):
式中,h為決策樹函數(shù)。
4) 最優(yōu)化第m棵樹的權(quán)重:
5) 最終得到強學(xué)習(xí)器表達式:
本文數(shù)據(jù)集里存在較多的連續(xù)型數(shù)據(jù)與離散型數(shù)據(jù),同時,需要對于醫(yī)護記錄出錯導(dǎo)致的異常值有很強魯棒性的算法。GBDT 算法作為針對真實分布擬合最好的算法之一,較適合ICU 這種復(fù)雜的醫(yī)療環(huán)境的數(shù)據(jù)分析。
Lasso[14]是一種正規(guī)化線性回歸方法,在特征選擇方面有廣泛應(yīng)用[15]。Lasso 回歸的特點是在擬合廣義線性模型時進行變量篩選和復(fù)雜度調(diào)整。因此,無論目標(biāo)因變量是連續(xù)的、二元的還是多元離散的,都可以使用Lasso 回歸進行建模和預(yù)測。通常當(dāng)變量的數(shù)量大于數(shù)據(jù)點的數(shù)量時,或者當(dāng)離散變量具有太多唯一值時,可能產(chǎn)生過擬合。因此,本文使用Lasso 回歸來防止過度擬合。同時,Lasso 回歸能忽略不重要的特征,構(gòu)建一個稀疏且更易解釋的模型。
Lasso 回歸的表達式為:
本文通過調(diào)節(jié)參數(shù)λ,從所有預(yù)測影響因子中篩選出重要的因子,作為分析影響患者住院時間的主要因素。本文算法可忽略不重要的部分特征,防止過度擬合,最終構(gòu)建了一個稀疏且更易解釋的住院時間預(yù)測模型。
本文使用的是2021 年3 月16 日發(fā)布的MIMICIV 1.0。 MIMIC-IV 數(shù)據(jù)庫包含2008 年?2019 年貝斯以色列女執(zhí)事醫(yī)療中心ICU 的4 萬多名患者的信息(https://physionet.org/content/mimiciv/1.0/)[16],該數(shù)據(jù)庫是一個大型、開放的數(shù)據(jù)庫,包括實驗室計量結(jié)果、藥品、保險、護理記錄、生命體征計量等多種數(shù)據(jù)信息。也是目前重癥領(lǐng)域中數(shù)據(jù)完整性較好的數(shù)據(jù)庫,擁有近年來心臟手術(shù)患者的治療流程、預(yù)后情況等記錄。本文模型的預(yù)測結(jié)果不會因為醫(yī)療機構(gòu)治療水平的提升以及心臟外科的發(fā)展而產(chǎn)生偏差,時效性較好。
本文研究流程如圖1 所示,首先在MIMIC-IV數(shù)據(jù)庫中篩選患者,從10938 名患者中選出7567名患者,然后使用Lasso 回歸從126 個預(yù)測因子中篩選出41 個重要的預(yù)測因子,結(jié)合篩選的預(yù)測因子和全部預(yù)測因子分別使用傳統(tǒng)邏輯回歸(logistic regression, LR)算法和GBDT 算法進行訓(xùn)練。訓(xùn)練模型前,采用網(wǎng)格搜索優(yōu)化模型參數(shù)。
圖1 模型構(gòu)建流程圖
本文實驗使用計算機CPU 處理器為Intel Core i5-8500 3.00 GHz,內(nèi)存為8 GB。算法使用Python語言,集成開發(fā)環(huán)境使用jupyter notebook,且使用了第三方工具包scikit-learn。
本文通過國際疾病分類手術(shù)碼ICD-9-CM-3 納入心臟手術(shù)患者數(shù)據(jù),最初納入了10938 名接受心臟手術(shù)的患者。然后,將缺失值超過15%的患者排除在分析之外[17],18 歲以下的患者和死亡患者也被排除在外,最終共有7567 名患者被納入,納入患者數(shù)據(jù)的平均心率為81.69,平均格拉斯哥昏迷評分為8.46,在ICU 的平均住院時間為3.12 天。
本文提取了患者在ICU 住院前12 h 內(nèi)的數(shù)據(jù)。為了盡可能納入所有影響住院時間的因子,提取了心率、收縮壓、體溫、通氣狀態(tài)、格拉斯哥昏迷評分等38 個特征。對于重復(fù)測量的變量如心率、白細胞計數(shù)等,根據(jù)其生理意義在12 h 內(nèi)統(tǒng)計最大值、最小值和平均值。對于唯一的變量,如年齡,直接使用原始值。對于非數(shù)字變量,如入院類型和種族,使用one-hot 編碼處理。最終,共有126 個預(yù)測因子作為模型的輸入。
目前,對于住院時間的研究通過單變量分析住院時間的影響因素,或者采用簡單二分類對患者住院時間進行預(yù)測,存在明顯不足[7,11,18]。為了對患者住院時間進行更細致地劃分,本文根據(jù)專業(yè)心外科團隊的建議,將結(jié)果指標(biāo)中患者的住院時間分為4 類:少于3 天、大于等于3 天且小于7 天、大于等于7 天且小于14 天、大于等于14 天,建立四分類預(yù)測模型。這種劃分相比二分類模型更有助于明確衡量患者的住院時間,有利于準(zhǔn)確地評估患者病情以及預(yù)后效果。
本文使用Lasso 回歸篩選重要的預(yù)測因子,參數(shù) λ為0.05。經(jīng)過Lasso 算法篩選,從126 個預(yù)測因子中得到對ICU 住院時間影響較大的41 個預(yù)測因子,具體如表1 所示,預(yù)測因子中部分權(quán)重較大的預(yù)測因子權(quán)重值如圖2 所示。
表1 重要預(yù)測因子表
圖2 Lasso 回歸篩選的變量權(quán)重圖
從圖2 可見,預(yù)測因子中診斷個數(shù)和手術(shù)個數(shù)兩個變量對ICU 住院時間有顯著影響,權(quán)重均在0.8以上,顯然患者被診斷出患有的疾病越多,需要進行的手術(shù)越多,住院時間也會越長,這是一個符合臨床預(yù)期的結(jié)果。預(yù)測因子乳酸鹽濃度目前在ICU 中被用作診斷工具和預(yù)后指標(biāo),因為乳酸鹽濃度越高,死亡的風(fēng)險越大,這一結(jié)果與文獻[8,19]一致,這在一定程度上提示醫(yī)護人員在護理患者時應(yīng)注意的細節(jié)。通過Lasso 回歸分析,血清肌酐濃度(權(quán)重為0.192)是第七大最重要的預(yù)測指標(biāo),因為最小肌酐濃度是預(yù)測急性腎損傷最重要的變量,這一結(jié)果與文獻[20]一致。此外,心率和血壓、格拉斯哥昏迷評分(GCS)、入院類型和ICU 病房類型也對心臟外科患者在ICU 的住院時間有一定影響。
基于Lasso 算法的預(yù)測因子篩選結(jié)果符合其臨床意義,并與相關(guān)文獻結(jié)果一致,說明通過機器學(xué)習(xí)方法進行ICU 住院時間影響因子篩選是可行的,有助于臨床決策支持系統(tǒng)的開發(fā)。
訓(xùn)練模型前,通過網(wǎng)格搜索優(yōu)化模型參數(shù),窮舉搜索并將參數(shù)通過交叉驗證以優(yōu)化得到最優(yōu)模型。網(wǎng)格搜索分為粗搜索和細搜索兩個步驟[20],通過粗搜索確定參數(shù)的近似范圍,然后進一步通過細搜索確定在近似范圍內(nèi)的準(zhǔn)確參數(shù)值。
通過網(wǎng)格搜索,確定本文中GBDT 分類模型的重要參數(shù):每個弱學(xué)習(xí)器的權(quán)重縮減系數(shù)為0.1,弱學(xué)習(xí)器的最大迭代次數(shù)為40,決策樹最大深度為10,葉子節(jié)點最少樣本數(shù)為90,內(nèi)部節(jié)點再劃分所需最小樣本數(shù)為300,最大的葉子節(jié)點個數(shù)為6,一個葉子節(jié)點所需的總權(quán)重的最小加權(quán)分?jǐn)?shù)為0。
在本文實驗中,每次訓(xùn)練隨機抽取全體80%的數(shù)據(jù)作為訓(xùn)練集,20%的數(shù)據(jù)作為測試集,訓(xùn)練1000 次后,最終評估模型效果。
圖3 顯示,訓(xùn)練全部126 個預(yù)測因子的邏輯回歸算法平均準(zhǔn)確度為0.603(95%置信區(qū)間 CI:[0.602, 0.604]),訓(xùn)練全部預(yù)測因子的GBDT 算法平均準(zhǔn)確度為0.688(95%置信區(qū)間 CI:[0.687,0.689]),訓(xùn)練篩選出的41 個預(yù)測因子的GBDT算法平均準(zhǔn)確度為0.687(95%置信區(qū)間 CI:[0.687,0.688])。
圖3 模型準(zhǔn)確度箱線圖
可以看出,訓(xùn)練所有預(yù)測因子的GBDT 模型與傳統(tǒng)LR 模型相比預(yù)測結(jié)果更加準(zhǔn)確。GBDT作為一種Boosting 算法,由多棵決策樹組成,最終結(jié)果是所有決策樹的總和,這使其在區(qū)分不同病理特征和關(guān)聯(lián)的病理特征組合方面具有天然優(yōu)勢[21]。本文中,這一優(yōu)勢體現(xiàn)在重新衡量患者的預(yù)測因子時,可以處理非線性數(shù)據(jù),對異常值具有很強的魯棒性,這使得它適合ICU 復(fù)雜的醫(yī)療環(huán)境。
對比訓(xùn)練重要預(yù)測因子的GBDT 模型與訓(xùn)練所有預(yù)測因子的GBDT 模型,結(jié)果的平均準(zhǔn)確度基本相同,說明在減少了大量預(yù)測因子的情況下,模型仍能取得較好的預(yù)測效果,這樣通過Lasso 回歸篩選并減少住院時間的預(yù)測因子,將更有助于減少臨床數(shù)據(jù)收集的工作量,并保證臨床決策支持系統(tǒng)的快速運行。
本文隨機抽取1514 名(總數(shù)據(jù)的20%)患者作為測試集,其中65%的患者ICU 住院時間不超過3 天。針對訓(xùn)練重要預(yù)測因子的GBDT 模型預(yù)測值與實際值的差異進行分析,表3 為二者的混淆矩陣,圖4 反映了4 種類別上二者的差異。
表3 GBDT 預(yù)測值與真實值混淆矩陣
圖4 本文GBDT 模型預(yù)測值與真實值
結(jié)果顯示,模型對住院時間小于3 天的患者預(yù)測效果最好,真實值中92%(911 名)的患者被正確預(yù)測。對于住院時間在3~7 天的患者,僅34%(135 名)被正確分類,大多數(shù)患者被歸類為住院時間小于3 天,這一定程度上是由于數(shù)據(jù)分布所導(dǎo)致的。住院時間小于3 天的患者占所有患者的65%(991 名),因此對某一名患者的預(yù)測結(jié)果會更偏向于住院時間小于3 天。而7~14 天的患者的預(yù)測正確率最低,僅為11%(9 名),這主要是因為訓(xùn)練樣本過少所導(dǎo)致的。對于最后一類住院時間大于等于14 天的患者,算法取得了較好的預(yù)測效果,原因在于ICU 長期住院患者的生理等各類指標(biāo)與短期住院患者有明顯的不同,因此更容易被正確分類。
總體對比可以看出,本文GBDT 算法在預(yù)測心外科患者ICU 住院時間時取得了較好的效果,能夠準(zhǔn)確預(yù)測心外科ICU 患者的住院時間,對臨床決策有一定的指導(dǎo)作用。
本文使用Lasso 回歸篩選出重要的預(yù)測因子,其中診斷個數(shù)、手術(shù)個數(shù)、乳酸鹽濃度和血氧飽和度等因子對住院時間有顯著影響,結(jié)果符合臨床意義和臨床研究結(jié)果,增加了機器學(xué)習(xí)模型的可解釋性,有利于進一步臨床決策支持系統(tǒng)的開發(fā)。
本文提出的基于GBDT 算法的心外科手術(shù)患者重癥監(jiān)護室住院時間預(yù)測模型,取得了較好的預(yù)測效果,有利于長時間住院的ICU 患者的早期干預(yù),有利于智能方法合理配置醫(yī)療資源,提高治療效率。