童 睿 闞麗虹 朱中生
(上海市浦東醫(yī)院-復(fù)旦大學(xué)附屬浦東醫(yī)院心內(nèi)科 上海 201399)
心力衰竭是導(dǎo)致老年人住院的常見(jiàn)原因,具有極高的病死率和致殘率。由于患者臨床狀況千差萬(wàn)別,不同研究報(bào)道的急性心力衰竭住院患者1年內(nèi)病死率從20%到60%不等[1-3],及時(shí)根據(jù)患者臨床狀況對(duì)患者預(yù)后進(jìn)行判斷有助于對(duì)高危患者實(shí)施不同強(qiáng)度的個(gè)體化干預(yù),改善臨床結(jié)局。針對(duì)心力衰竭預(yù)后的預(yù)測(cè)模型,目前比較著名的有西雅圖心 力 衰 竭 模 型(Seattle heart failure model,SHFM)[4]、心 衰 生 存 評(píng) 分(heart failure survival score,HFSS)[5]等。但是,盡管這些模型的表現(xiàn)在人群層面上尚可接受,其對(duì)個(gè)體的預(yù)測(cè)并不可靠[6-7];此外,這些模型建模數(shù)據(jù)均來(lái)自西方發(fā)達(dá)國(guó)家,其在亞洲人群、發(fā)展中國(guó)家的適用性仍待驗(yàn)證。
目前國(guó)內(nèi)對(duì)于心力衰竭預(yù)后模型的構(gòu)建主要基于前瞻性的隊(duì)列研究[8-9],通過(guò)多因素回歸分析繪制列線圖進(jìn)行危險(xiǎn)分層,這種方式對(duì)隨訪數(shù)據(jù)要求較高,且由于納入標(biāo)準(zhǔn)的限制,研究樣本量有限,樣本分布與真實(shí)臨床場(chǎng)景下數(shù)據(jù)特征的分布存在偏倚,外部數(shù)據(jù)驗(yàn)證效果往往欠佳。隨著電子病歷系統(tǒng)的推廣,各醫(yī)療機(jī)構(gòu)積累了大量真實(shí)世界臨床數(shù)據(jù),但傳統(tǒng)統(tǒng)計(jì)學(xué)方法難以對(duì)這種結(jié)構(gòu)混雜、特征高維、缺失值多的數(shù)據(jù)集進(jìn)行有效處理。近年來(lái),由于能從海量的非線性的、存在干擾的真實(shí)世界醫(yī)學(xué)數(shù)據(jù)中提取隱匿而有價(jià)值的信息,機(jī)器學(xué)習(xí)算法越來(lái)越受到關(guān)注。利用國(guó)外的公共數(shù)據(jù)庫(kù)和多中心電子病歷系統(tǒng)回顧性資料,一些研究者嘗試將LASSO回歸、隨機(jī)森林、XGBoost等機(jī)器學(xué)習(xí)方法引入心衰預(yù)后建模和能有效預(yù)測(cè)心衰預(yù)后的臨床特征探索挖掘中,提供了寶貴的真實(shí)世界臨床證據(jù)[10-11]。相比而言,國(guó)內(nèi)公開(kāi)的符合臨床倫理規(guī)范的心力衰竭電子病歷數(shù)據(jù)較少,基于中國(guó)人臨床電子病歷數(shù)據(jù)利用機(jī)器學(xué)習(xí)方法建立心力衰竭預(yù)后模型仍是空白。
本研究擬利用一個(gè)基于中國(guó)醫(yī)療機(jī)構(gòu)電子病歷系統(tǒng)結(jié)構(gòu)化臨床信息的數(shù)據(jù)集,通過(guò)機(jī)器學(xué)習(xí)算法進(jìn)行數(shù)據(jù)預(yù)處理、特征選擇、模型擬合及效果評(píng)估,構(gòu)建適合該醫(yī)療機(jī)構(gòu)收治心力衰竭患者預(yù)后預(yù)測(cè)的模型,由此摸索并完善一套預(yù)后預(yù)測(cè)模型構(gòu)建方法框架。
數(shù)據(jù)來(lái)源本研究處理的數(shù)據(jù)來(lái)自Zhang等2020年在PhysioNet網(wǎng)站上公開(kāi)的一個(gè)心力衰竭回顧性隨訪隊(duì)列臨床數(shù)據(jù)集[12-13],該數(shù)據(jù)集從醫(yī)院電子病歷系統(tǒng)中提取該隊(duì)列患者結(jié)構(gòu)化臨床信息,以及住院期間治療結(jié)局,并通過(guò)隨訪獲得其6個(gè)月內(nèi)死亡結(jié)局。該研究得到四川省自貢市第四人民醫(yī)院倫理委員會(huì)批準(zhǔn)(批準(zhǔn)號(hào):2020-010)[12]。
研究對(duì)象納入標(biāo)準(zhǔn)根據(jù)公開(kāi)數(shù)據(jù)集,本研究納入自2016年12月至2019年6月在四川省自貢市第四人民醫(yī)院住院且入院診斷為“心力衰竭”的所有患者,其中心力衰竭定義參照歐洲心臟病學(xué)會(huì)(European Society of Cardiology)制定的標(biāo)準(zhǔn)[14],包括急性心力衰竭、慢性心力衰竭、左心衰竭、右心衰竭、全心衰竭在內(nèi)的所有類型心力衰竭患者均應(yīng)納入,即電子病歷系統(tǒng)中所有入院診斷符合表1所示ICD-9編碼的患者為納入研究對(duì)象[12]。

表1 符合研究納入標(biāo)準(zhǔn)的入院診斷ICD-9編碼列表Tab 1 List of the ICD-9 diagnosis code on hospital admission meeting the inclusion criteria
數(shù)據(jù)分析建模環(huán)境Python 3.8.5版,開(kāi)源的Anaconda3-2020.11發(fā) 行 版 本 ,Jupyterlab 2.2.6版 開(kāi)發(fā)環(huán)境下進(jìn)行數(shù)據(jù)分析和建模。
數(shù)據(jù)預(yù)處理根據(jù)業(yè)務(wù)知識(shí)刪除重復(fù)特征并去除完全共線性特征,特征如缺失值超過(guò)70%直接刪除。用scikit-learn庫(kù)SimpleImputer模塊,對(duì)連續(xù)型特征進(jìn)行均值填補(bǔ),分類型特征進(jìn)行眾數(shù)填補(bǔ),無(wú)序分類變量用OneHotEncoder模塊進(jìn)行獨(dú)熱編碼,形成預(yù)測(cè)6個(gè)月內(nèi)死亡風(fēng)險(xiǎn)的特征矩陣,進(jìn)一步剔除出院時(shí)才能揭盲的特征,形成預(yù)測(cè)住院結(jié)局的特征矩陣。住院結(jié)局標(biāo)注成存活和死亡二分類;6個(gè)月死亡結(jié)局沿用原始數(shù)據(jù)標(biāo)簽二分類。
訓(xùn)練集和測(cè)試集劃分利用scikit-learn庫(kù)model_selection模塊train_test_split類進(jìn)行訓(xùn)練集和測(cè)試集劃分,取30%的樣本作為測(cè)試集進(jìn)行模型內(nèi)部驗(yàn)證,其余70%樣本構(gòu)成訓(xùn)練集用于模型構(gòu)建和優(yōu)化。
基線數(shù)據(jù)統(tǒng)計(jì)描述全數(shù)據(jù)集、訓(xùn)練集和測(cè)試集基線數(shù)據(jù),連續(xù)型變量非偏態(tài)分布計(jì)算均值和標(biāo)準(zhǔn)差,偏態(tài)分布計(jì)算中位數(shù)和四分位數(shù),分類型變量計(jì)算在全數(shù)據(jù)集、訓(xùn)練集和測(cè)試集中各自的頻數(shù)和頻率。
特征選擇經(jīng)典統(tǒng)計(jì)學(xué)方法特征選擇采用方差分析(analysis of variance,ANOVA)F檢驗(yàn)進(jìn)行相關(guān)性過(guò)濾,利用scikit-learn庫(kù)f_classif模塊選取F檢驗(yàn)P<0.05的特征作為相關(guān)性特征,結(jié)合SelectKBest模塊提取相關(guān)性最強(qiáng)的10個(gè)特征。基于算法的特征選擇采取嵌入法和包裝法結(jié)合策略,嵌入法最佳特征子集的求解利用feature_selection模塊中SelectFromModel類進(jìn)行,Logistic回歸建模時(shí)通過(guò)L1正則化引入懲罰項(xiàng)壓縮特征參數(shù)實(shí)現(xiàn)特征選擇(least absolute shrinkage and selection operator,LASSO),隨機(jī)森林建模時(shí)通過(guò)設(shè)定特征重要性閾值實(shí)現(xiàn)特征選擇;包裝法特征選擇采取遞歸特征消除法(recursive feature elimination,RFE),利用feature_selection模塊RFE類將預(yù)測(cè)模型特征數(shù)量壓縮至10個(gè)。
結(jié)局樣本類別不平衡處理當(dāng)結(jié)局類別存在不平衡現(xiàn)象時(shí),使用合成少數(shù)類樣本的過(guò)采樣技術(shù)(synthetic minority over-sampling technique,SMOTE),利 用imblearn庫(kù) 中over_sampling模 塊SMOTE類來(lái)平衡樣本類別,使得多數(shù)類和少數(shù)類樣本1∶1平衡。
模型擬合和優(yōu)化Logistic回歸建模利用scikit-learn庫(kù)linear_model模 塊LogisticRegression類實(shí)現(xiàn),求解方式選擇“l(fā)iblinear”;隨機(jī)森林建模利用scikit-learn庫(kù) 中 集 成 算 法ensemble模 塊RandomForestClassifier類實(shí)現(xiàn);模型優(yōu)化以scikitlearn庫(kù)cross_val_score模塊5折交叉驗(yàn)證計(jì)算ROC曲線平均AUC值最大為目標(biāo),比較不同超參數(shù)(Logistic回歸模型中正則化強(qiáng)度倒數(shù)C,隨機(jī)森林模型中不純度衡量指標(biāo)criterion,最大樹(shù)深度max_depth)下模型效果差異,選取交叉驗(yàn)證下平均AUC值最大的超參數(shù)組合對(duì)訓(xùn)練集最終建模。
模型內(nèi)部驗(yàn)證通過(guò)scikit-learn庫(kù)metrics模塊計(jì)算模型在測(cè)試集上AUC驗(yàn)證模型效果,利用bootstrap方法對(duì)測(cè)試集進(jìn)行1 000次自助重抽樣,取模型在1 000個(gè)自助樣本上AUC分布的第2.5和第97.5百分位數(shù)作為模型在測(cè)試集上AUC的95%置信區(qū)間,利用roc_curve類結(jié)合matplotlib.pyplot繪制ROC曲線并計(jì)算最佳切點(diǎn)閾值和約登指數(shù),并計(jì)算對(duì)應(yīng)閾值下模型的精確度、召回率、F1分?jǐn)?shù)和準(zhǔn)確率。
各結(jié)局標(biāo)簽分布共2 008例病例,住院治療期間死亡11例,存活1 997例,多數(shù)類占比99.5%,存在嚴(yán)重樣本類別不均衡,其中訓(xùn)練集1 405例病例中住院期間死亡9例,存活1 396例,通過(guò)SMOTE方法平衡樣本后訓(xùn)練集擴(kuò)充至2 792例,死亡和存活病例各1 396例;6個(gè)月內(nèi)死亡57例,存活1 951例,多數(shù)類占比97.2%,存在樣本類別不平衡,其中訓(xùn)練集1 405例病例中6月內(nèi)死亡45例,存活1 360例,通過(guò)SMOTE方法平衡樣本后訓(xùn)練集擴(kuò)充至2 720例,死亡和存活病例各1 360例。
數(shù)據(jù)預(yù)處理后特征矩陣原始數(shù)據(jù)集進(jìn)行數(shù)據(jù)預(yù)處理后,最終形成的6個(gè)月死亡風(fēng)險(xiǎn)建模特征矩陣具有155個(gè)特征,進(jìn)一步剔除出院后才能揭盲的特征,形成的住院期間死亡風(fēng)險(xiǎn)建模特征矩陣具有146個(gè)特征,特征重建流程見(jiàn)圖1。這些用于建模的特征包括患者基本信息特征(性別、年齡、職業(yè)類別、入院途徑、入院科室等)、入院病情評(píng)估特征(生命體征、心衰分型、NYHA分級(jí)、Killip分級(jí)、心衰病因、合并癥、意識(shí)狀況、呼吸狀況等)、實(shí)驗(yàn)室和輔助檢查特征(超聲心動(dòng)圖、血常規(guī)、肝功能、腎功能、電解質(zhì)、心肌損傷標(biāo)志物、凝血功能、血脂、血?dú)夥治龅龋┮约俺鲈禾卣鳎ㄗ≡禾鞌?shù)、出院科室、出院去向)。本研究部分人口學(xué)特征和臨床建模特征在訓(xùn)練集和測(cè)試集中的基線水平如表2所示。

表2 部分人口學(xué)特征和臨床建模特征基線水平Tab 2 The baseline level of population characteristic and several clinical features in modeling [n(%)]

圖1 數(shù)據(jù)預(yù)處理階段特征選擇重建流程圖Fig 1 The flow chart of feature selection and reconstruction during the data preprocessing
住院期間死亡風(fēng)險(xiǎn)預(yù)測(cè)模型構(gòu)建基于方差分析,與住院期間死亡結(jié)局相關(guān)特征共126個(gè),相關(guān)性最強(qiáng)10個(gè)特征的F檢驗(yàn)統(tǒng)計(jì)量和P值如表3所示。基于LASSO和RFE,以及隨機(jī)森林特征重要性進(jìn)行特征選擇構(gòu)成的特征子集如表4所示。用Logistic回歸和隨機(jī)森林模型對(duì)各特征子集建模,調(diào)整最佳超參數(shù)組合后,在測(cè)試集中計(jì)算AUC評(píng)估結(jié)果如表5所示。經(jīng)比較,用隨機(jī)森林算法對(duì)全部特征構(gòu)成的矩陣進(jìn)行建模,不純度衡量指標(biāo)criterion選擇gini(基尼系數(shù)),剪枝限制單個(gè)評(píng)估器決策樹(shù)最大學(xué)習(xí)深度max_depth為6時(shí),測(cè)試集AUC最大,達(dá)到0.893 1。此最佳模型下ROC曲線及最佳閾值切點(diǎn)如圖2所示,最佳分類概率閾值為0.007,約登指數(shù)為0.785,此閾值下模型的準(zhǔn)確率0.786,精確度0.015,召回率達(dá)到1,F(xiàn)1分?jǐn)?shù)0.030。

圖2 最優(yōu)超參數(shù)下住院期間死亡隨機(jī)森林預(yù)測(cè)模型ROC曲線Fig 2 The ROC curve of random forest model of death during hospitalization prediction with optimal hyper-parameters

表3 基于方差分析F檢驗(yàn)的住院期間死亡相關(guān)特征排序Tab 3 Ranking of the relevant features to death during hospitalization based on ANOVA

表4 基于LASSO結(jié)合RFE以及特征重要性篩選的10個(gè)預(yù)測(cè)住院期間死亡的最佳特征Tab 4 The top 10 features to predict in-hospital mortality selected by LASSO integrated with RFE and feature importance

表5 Logistic回歸和隨機(jī)森林模型預(yù)測(cè)住院期間死亡效果評(píng)估Tab 5 Model evaluation of Logistic regression and random forest for in-hospital mortality prediction
6個(gè)月內(nèi)死亡風(fēng)險(xiǎn)預(yù)測(cè)模型構(gòu)建基于方差分析,與6個(gè)月死亡結(jié)局相關(guān)特征有128個(gè),相關(guān)性最強(qiáng)的10個(gè)特征F檢驗(yàn)統(tǒng)計(jì)量和P值如表6所示。基于LASSO和RFE,以及隨機(jī)森林特征重要性進(jìn)行特征選擇構(gòu)成的特征子集如表7所示。用Logistic回歸和隨機(jī)森林模型對(duì)各特征子集建模,調(diào)整最佳超參數(shù)組合后,在測(cè)試集中計(jì)算AUC評(píng)估結(jié)果如表8所示。經(jīng)比較,用隨機(jī)森林算法對(duì)全部特征構(gòu)成的矩陣進(jìn)行建模,不純度衡量指標(biāo)criterion選擇entropy(信息熵),剪枝限制單個(gè)評(píng)估器決策樹(shù)最大學(xué)習(xí)深度max_depth為11時(shí),測(cè)試集AUC最大,達(dá)到0.8460(95%CI:0.7504~0.9305),此時(shí)最佳分類概率閾值為0.099,約登指數(shù)為0.579,模型的準(zhǔn)確率0.587,精確度0.046,召回率達(dá)到1,F(xiàn)1分?jǐn)?shù)為0.088。而利用LASSO結(jié)合RFE選擇10個(gè)特征后Logistic回歸,正則化參數(shù)C=0.76時(shí)預(yù)測(cè)效果與之相當(dāng),AUC達(dá)到0.8336(95%CI:0.7213~0.9286),此時(shí)最佳分類概率閾值為0.027,約登指數(shù)為0.568,模型的準(zhǔn)確率0.736,精確度0.060,召回率為0.833,F(xiàn)1分?jǐn)?shù)為0.112。

表6 基于方差分析F檢驗(yàn)的6個(gè)月內(nèi)死亡相關(guān)特征排序Tab 6 Ranking of the relevant features to death within 6 months based on ANOVA

表7 基于LASSO結(jié)合RFE以及特征重要性篩選的10個(gè)預(yù)測(cè)6個(gè)月內(nèi)死亡最佳特征Tab 7 The top 10 features to predict 6-month mortality selected by LASSO integrated with RFE and feature importance

表8 Logistic回歸和隨機(jī)森林模型預(yù)測(cè)6個(gè)月內(nèi)死亡效果評(píng)估Tab 8 Model effects evaluation of Logistic regression and random forest for 6-month mortality prediction
目前疾病預(yù)后模型構(gòu)建的主流方法是Cox生存回歸分析,但該方法實(shí)施需完整的患者生存資料,更適合注冊(cè)登記臨床研究的預(yù)后分析。在真實(shí)世界研究數(shù)據(jù)建模場(chǎng)景下,這種生存資料往往缺失。本研究探索了一套基于國(guó)內(nèi)電子病歷系統(tǒng)臨床數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)處理、特征工程,利用機(jī)器學(xué)習(xí)方法進(jìn)行模型構(gòu)建、優(yōu)化并驗(yàn)證的方法框架,充分挖掘真實(shí)世界臨床數(shù)據(jù)的價(jià)值,構(gòu)建出兼顧預(yù)測(cè)準(zhǔn)確性和高危個(gè)體識(shí)別能力的心衰預(yù)后預(yù)測(cè)模型。
本研究比較了兩類不同機(jī)器學(xué)習(xí)模型對(duì)住院期間和6個(gè)月內(nèi)死亡兩類結(jié)局的預(yù)測(cè)效果。在以AUC為評(píng)估指標(biāo)的前提下,對(duì)住院期間死亡結(jié)局的預(yù)測(cè),隨機(jī)森林模型明顯優(yōu)于Logistic回歸預(yù)測(cè)模型,這提示臨床上來(lái)自病歷系統(tǒng)的這些特征與住院死亡結(jié)局之間可能呈現(xiàn)非線性的關(guān)系,而擅長(zhǎng)于擬合線性關(guān)系的回歸模型在這類臨床預(yù)測(cè)問(wèn)題上往往表現(xiàn)較差。對(duì)于6個(gè)月內(nèi)死亡結(jié)局的預(yù)測(cè),雖然隨機(jī)森林模型的效果略優(yōu)于Logistic回歸,但經(jīng)過(guò)LASSO和RFE特征選擇簡(jiǎn)化后的Logistic回歸模型效果已極其逼近利用全部特征建模的隨機(jī)森林模型,而如果對(duì)隨機(jī)森林用于預(yù)測(cè)的特征數(shù)量加以壓縮限制,模型的預(yù)測(cè)效果下降明顯,考慮到模型的臨床實(shí)用性和模型可解釋性,在這一問(wèn)題上這種只需要少量臨床信息即可達(dá)到較優(yōu)效果的高效Logistic回歸建模方式可能具有更高的臨床價(jià)值。

圖3 最優(yōu)超參數(shù)下6個(gè)月內(nèi)死亡隨機(jī)森林和Logistic回歸預(yù)測(cè)模型ROC曲線Fig 3 The ROC curve of random forest and Logistic regression prediction model of death within 6 months with optimal hyper-parameters
本研究存在許多局限性:數(shù)據(jù)來(lái)源來(lái)自單個(gè)醫(yī)療機(jī)構(gòu),我們利用測(cè)試集對(duì)模型效果進(jìn)行了內(nèi)部驗(yàn)證,但限于收集到的數(shù)據(jù)資源,沒(méi)有利用其他中心外部數(shù)據(jù)對(duì)模型進(jìn)行外部驗(yàn)證。考慮到人群的代表性和醫(yī)療機(jī)構(gòu)間不同的質(zhì)控水平,本研究?jī)H提供一種值得參考的心力衰竭預(yù)后建模方法框架,建立的模型本身以及模型相關(guān)參數(shù)在實(shí)際應(yīng)用中仍需各中心數(shù)據(jù)進(jìn)行驗(yàn)證和調(diào)整。對(duì)于住院期間死亡結(jié)局預(yù)測(cè),雖然隨機(jī)森林模型的AUC值較高,但該模型需要納入的變量過(guò)多,臨床實(shí)用性較差,而經(jīng)過(guò)特征選擇限制變量數(shù)量后,無(wú)論是隨機(jī)森林還是Logistic回歸模型,預(yù)測(cè)效果均不理想,這一問(wèn)題上仍有必要進(jìn)行特征工程和建模方法的深入探索。本研究出于探索目的,建模時(shí)納入一些存在大量缺失值的特征,如既往文獻(xiàn)報(bào)道的與心衰預(yù)后密切相關(guān)的左室射血分?jǐn)?shù)[7],在原始數(shù)據(jù)集中缺失達(dá)69%,本研究采取均值填補(bǔ)和眾數(shù)填補(bǔ)方式處理,可能導(dǎo)致相關(guān)信息損失,如果要進(jìn)行嚴(yán)格的驗(yàn)證性方法研究,需充分考慮這種偏倚,采取必要的敏感性分析以證實(shí)結(jié)論的穩(wěn)健性。
作者貢獻(xiàn)聲明童睿 機(jī)器學(xué)習(xí)模型擬合,參數(shù)調(diào)整,論文撰寫。闞麗虹 數(shù)據(jù)獲取和預(yù)處理,文獻(xiàn)調(diào)研。朱中生 研究設(shè)計(jì),獲取資助,論文修訂。
利益沖突聲明所有作者均聲明不存在利益沖突。