張友坤, 陳偉, 靳小靜, 孫潔, 李瑞月, 張瑛琪*
(1. 華北理工大學(xué)電氣工程學(xué)院, 唐山 063210; 2. 中國移動通信集團河北有限公司系統(tǒng)集成中心, 石家莊 050000; 3. 河北醫(yī)科大學(xué)第一醫(yī)院急診科/河北省急診急救技術(shù)創(chuàng)新中心, 石家莊 050031)
隨著大數(shù)據(jù)、人工智能、區(qū)塊鏈、物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,醫(yī)療數(shù)據(jù)的獲取、儲存、查詢、分析方法已經(jīng)實現(xiàn)了網(wǎng)絡(luò)化,智能化。這推動了人工智能技術(shù)在醫(yī)療領(lǐng)域迅速落地。急診醫(yī)學(xué)領(lǐng)域目前面臨著醫(yī)務(wù)人員診療水平差別、患者診治時間、醫(yī)療資源相對短缺等問題[1]。機器學(xué)習(xí)技術(shù)作為人工智能的核心技術(shù)在急診醫(yī)療中已運用于診療決策輔助、醫(yī)療資源快速分揀、疾病預(yù)測、病例記錄檢測、藥物檢測等方面,在急診醫(yī)學(xué)領(lǐng)域具有廣闊的運用前景[2-3]。近年來機器學(xué)習(xí)模型可解釋性得到了越來越多的關(guān)注,使機器學(xué)習(xí)的特征與機器學(xué)習(xí)預(yù)測結(jié)果之間的關(guān)系變得更為清晰,使醫(yī)生可以參考各個特征對模型預(yù)測結(jié)果的影響,這為機器學(xué)習(xí)在醫(yī)療中的應(yīng)用,對臨床輔助診斷提供了依據(jù)。
在心肺復(fù)蘇領(lǐng)域?qū)C器學(xué)習(xí)的運用近年來開始有所涉及, Harford等[4]運用機器學(xué)習(xí)在心肺復(fù)蘇數(shù)據(jù)集上依據(jù)27個特征預(yù)測了心肺復(fù)蘇后神經(jīng)系統(tǒng)的預(yù)后情況并通過敏感性分析探討了旁觀者心肺復(fù)蘇(cardio pulmonary resuscitation, CPR)、靶向溫度管理和冠狀動脈造影對患者的預(yù)后(神經(jīng)預(yù)后良好與否)的影響。Nooraldeen等[5]使用隨機森林模型在收集的心肺復(fù)蘇相關(guān)數(shù)據(jù)直接訓(xùn)練。對患者院前的生存率進行預(yù)測并根據(jù)隨機森林的特征重要性評分分析影響患者院前生存率影響因素的相對重要性。證實了初始節(jié)律是最重要的預(yù)后因素,其次是年齡、心肺復(fù)蘇開始時間、院外高級心肺復(fù)蘇情況(emergency medical services, EMS)反應(yīng)時間和位置。一些傳統(tǒng)上被視為重要的因素,例如性別,并不重要。韓劍等[6]運用統(tǒng)計學(xué)的方法及Logistic模型對院前心臟驟?;颊咝姆螐?fù)蘇成功率的影響因素進行了分析。現(xiàn)階段中外的研究主要集中于利用傳統(tǒng)的機器學(xué)習(xí)模型分析心肺復(fù)蘇后與存活率相關(guān)的特征及其重要性,并未使用有效的特征提取方法進行特征過濾,且并未探討預(yù)測結(jié)果下各個特征的具體表現(xiàn)對臨床診療輔助的意義。
針對上述問題,現(xiàn)基于河北省急診急救技術(shù)創(chuàng)新中心的急診數(shù)智化平臺收集的1 201份心肺復(fù)蘇數(shù)據(jù),建立于多模型加權(quán)遞歸消除法(MW-REF)的心肺復(fù)蘇結(jié)果預(yù)測模型,通過與傳統(tǒng)的遞歸消除算法對比對模型預(yù)測結(jié)果進行評價,并依據(jù)SHAP評分,分析預(yù)測結(jié)果對心肺復(fù)蘇輔助診療的意義。
心肺復(fù)蘇相關(guān)數(shù)據(jù)來源于河北醫(yī)科大學(xué)第一醫(yī)院急診科、河北省急診急救技術(shù)創(chuàng)新中心的急診數(shù)智化平臺的院內(nèi)心臟驟停和心肺復(fù)蘇注冊登記網(wǎng)。數(shù)據(jù)的收集參考了Utstein Resuscitation Registry Template[7]的心肺復(fù)蘇結(jié)果報告模板,創(chuàng)建了基于Utstein模式的院內(nèi)心臟驟停和心肺復(fù)蘇注冊研究登記表。該登記表由中國研究型醫(yī)院學(xué)會心肺復(fù)蘇學(xué)專業(yè)委員會和河北省急救醫(yī)學(xué)會心肺復(fù)蘇專業(yè)委員會專家論證聯(lián)合制定。在2018年9月至2022年4月收集了來自河北省7家醫(yī)院急診科心臟驟停和心肺復(fù)蘇數(shù)據(jù)。數(shù)據(jù)主要包含醫(yī)院等級和年急診量、患者一般情況、發(fā)生心臟驟停和心肺復(fù)蘇時情況、院內(nèi)自主循環(huán)恢復(fù)(return of spontaneous circulation,ROSC)、ROSC到住院、住院到出院、出院后隨訪等部分內(nèi)容。在此基礎(chǔ)上在相關(guān)領(lǐng)域?qū)<业闹笇?dǎo)下對數(shù)據(jù)進行了整理,最終整理后的數(shù)據(jù)包含心臟驟停原因推斷、心搏驟停至CPR開始總時間、腎上腺素總劑、意識、CPR開始至停止總時間等30個特征以及死亡與復(fù)蘇成功兩個標(biāo)簽。
整理完畢的數(shù)據(jù)含有1 201個樣本與29個特征。
對特征的統(tǒng)計指標(biāo)進行探索。由于患者個體的特殊性,頭部磁共振成像(magnetic resonance imaging, MRI)、頭部CT、碳酸氫鹽總量、碳酸氫鹽首次使用時間在數(shù)據(jù)集中屬于小樣本特征,故其缺失值大于50%,所以對這5個特征刪除。
對于時間類型數(shù)據(jù)CPR開始時間(CPR start time,TCPR)與腎上腺素開始使用時間(first use time of adrenaline,TFa)求差值,使用新特征腎上腺素首次使用時間(time to use adrenaline,Ta)進行代替,并對其缺失值進行刪除。
Ta=TCPR-TFa
(1)
分別對年齡、腎上腺素總劑量的缺失值使用中位數(shù)、眾數(shù)填補。對其他缺失值較少(<0.02)的樣本進行刪除。
檢驗可以檢驗出一組數(shù)據(jù)中與均值偏差超過3倍標(biāo)準(zhǔn)差的數(shù)據(jù),剔除異常值。對數(shù)據(jù)集進行檢驗后的結(jié)果表明數(shù)據(jù)中無異常值。
對于標(biāo)簽使用LabelEncoder將死亡與復(fù)蘇成功分別轉(zhuǎn)換為1與0。對于分類型特征使用OrdinalEncoder將其轉(zhuǎn)換為對應(yīng)其特征類別數(shù)目的數(shù)值形式
隨機森林分類器、梯度提升決策樹(gradient boosting decision tree,GBDT)、極端梯度提升樹(eXtreme gradient boosting, Xgboost)是機器學(xué)習(xí)時下非常流行的集成算法,通過在數(shù)據(jù)上構(gòu)建多個模型,再綜合各個模型的預(yù)測結(jié)果,獲得比單個模型更優(yōu)異的性能[8-10]。樹模型的可解釋性較強可以通過對各個特征在模型預(yù)測結(jié)果的重要性評估得出特征重要性得分進行特征分析。本次研究使用包含200棵樹的隨機森林分類器、GBDT分類器與Xgboost分類器。
常用的特征提取方法包括統(tǒng)計學(xué)的過濾方法如卡方過濾、互信息法過濾等[11-12]。這些方法都側(cè)重于對各個特征對模型的線性或者非線性相關(guān)性進行描述,排除相關(guān)性低的特征。在實際運用中存在某些變量在統(tǒng)計學(xué)分析中相關(guān)性不高但是模型認為重要的情況。
各種降維算法也被采用作為特征提取的一種方式但降維后的特征已經(jīng)經(jīng)過特征變換,提取出的特征不能直接觀察出與原始數(shù)據(jù)的關(guān)系,在醫(yī)療數(shù)據(jù)中不具有可解釋性。
遞歸特征消除法(recursive eliminat feature, REF)是特征重要性過濾法衍生而來的。通過該模型下特征重要性得分的排序情況每次消除一個或多個特征并重新訓(xùn)練模型,多次迭代來選取評價指標(biāo)下的最優(yōu)特征集[13]。但單一模型的預(yù)測結(jié)果往往側(cè)重于某幾個特征進行預(yù)測,各個學(xué)習(xí)器之間對特征側(cè)重點不同,隨著學(xué)習(xí)器的改變,選取出的最優(yōu)特征也會隨之發(fā)生改變。
本文中設(shè)計的MW-REF算法在傳統(tǒng)的REF算法上對3種基模型的特征重要性得分進行加權(quán),并采用融合模型的交叉驗證準(zhǔn)確率篩選最優(yōu)特征。其目的在于融合多個模型的重要性得分從而消除各個特征獨立進行特征遞歸消除時對某幾個特征的‘偏向性’其算法具體實現(xiàn)步驟為:①使用3種模型在數(shù)據(jù)集下進行訓(xùn)練;②使用Voting融合3種模型并計算其5折交叉驗證下的平均準(zhǔn)確率;③對3種模型訓(xùn)練結(jié)果的特征重要性得分進行加和;④濾除得分最低的特征;⑤判斷是否達到閾值;⑥更新數(shù)據(jù)集回到步驟①直到達到閾值,特征數(shù)目等于5時停止訓(xùn)練;⑦選取交叉驗證準(zhǔn)確率最高特征下的模型。
其具體實現(xiàn)流程如圖1所示。
圖1 算法流程圖Fig.1 Algorithm flow chart
模型結(jié)果評估指標(biāo)根據(jù)混淆矩陣(混淆矩陣可以反映出模型結(jié)果中真實值與預(yù)測值的分布情況)計算出模型的評價指標(biāo)。
準(zhǔn)確率(Accuracy)是樣本中,所有標(biāo)簽預(yù)測結(jié)果中分類正確的樣本所占比例,用于衡量模型對心肺復(fù)蘇結(jié)果預(yù)測的準(zhǔn)確率。
(2)
精確度(Precision)是模型預(yù)測的結(jié)果中有多少是預(yù)測正確的。在少數(shù)樣本上的精確率可以衡量將死亡預(yù)測為復(fù)蘇成功的代價。在實際中將死亡預(yù)測為復(fù)蘇可能會致使醫(yī)生判斷失誤影響診療效果。
(3)
在一些情況下,希望不計一切代價找出少數(shù)類,即希望更多樣本被預(yù)測為復(fù)蘇成功就可以追求較高的召回率。
(4)
F1-score是精確率和召回率的調(diào)和平均數(shù)用于綜合評估模型的性能。
(5)
AUC面積是ROC曲線(受試者工作特征曲線)下的面積之和,其越接近1,表明預(yù)測方法的正確性越高,本文研究采用5折交叉驗證下的平均AUC面積作為模型的評價指標(biāo)。
SHAP是基于Python的一個機器學(xué)習(xí)模型可解釋包,對于每個預(yù)測樣本,每個特征都會被分配一個SHAP值用于衡量各個特征對預(yù)測結(jié)果的影響力,并能夠表現(xiàn)其正負性[14]。
MW-REF算法特征提取結(jié)果通過與RC-REF、XGBOOST-REF、GBDT-REF特征提取的結(jié)果對比來驗證其在心肺復(fù)蘇數(shù)據(jù)集下性能的優(yōu)勢。MW-REF設(shè)置每次過濾得分最低的特征。各算法閾值都設(shè)置為5個特征。各算法在評價指標(biāo)下的得分如表1所示。
表1 算法對比Table 1 Algorithm contrast
可以看出MW-REF算法在準(zhǔn)確率、精確率、召回率與F1-score上都有提升。其能夠在心肺復(fù)蘇數(shù)據(jù)集上發(fā)揮更好的性能,提升心肺復(fù)蘇預(yù)測的準(zhǔn)確率。
進一步對比MW-REF算法提取出的特征重要性得分與RC-REF、XGBOOST-REF、GBDT-REF提取出的特征重要性得分如圖2所示。
圖2 特征重要性對比Fig.2 Feature importance comparison
可以看出,MW-REF算法提取出的重要特征有8個包括:年齡、疾病細分、心臟驟停發(fā)生地點、心臟驟停至CPR開始總時間、CPR總時間、除顫、腎上腺素總劑量、腎上腺素首次使用時間。
在RC-REF算法下沒有特征被過濾掉,且心臟驟停至CPR開始總時間、心臟驟停發(fā)生地點、除顫重要程度不高。RC-REF高度依賴年齡、CPR總時間、腎上腺素總劑量、腎上腺素首次使用時間4個特征對結(jié)果進行預(yù)測。
在GBDT-REF算法下只留下了年齡、疾病細分、CPR總時間、腎上腺素總劑量、腎上腺素首次使用時間這5個特征。
在XGBOOST-REF算法篩選出16個特征,模型認為院外高級心肺復(fù)蘇情況、意識比較重要而這兩個特征在其余算法上的重要性得分均不高。
綜上采用MW-REF算法可以彌補單一特征的缺陷。
SHAP特征密度散點圖可以根據(jù)特征重要性對心肺復(fù)蘇預(yù)測結(jié)果的貢獻度進行分析,并提供特征在其分布下對結(jié)果的貢獻程度如圖3所示。
圖3 SHAP特征密度散點圖Fig.3 SHAP characteristic density scatter plot
圖3中從上到下依次為SHAP框架下的特征重要性排序,模型認為CPR總時間、腎上腺素使用量、疾病史、年齡、腎上腺素首次使用時間、心搏驟停至CPR開始總時間為對預(yù)測結(jié)果產(chǎn)生重要影響的特征。對重要特征進一步探尋其分布情況與心肺復(fù)蘇結(jié)果的影響繪制其獨立分布散點圖,如圖4所示。
圖4 SHAP獨立分布散點圖Fig.4 SHAP independent distribution Scatter plot
模型認為對于CPR總時間,時間越長,患者越容易死亡,在臨床中隨著CPR總時長的增加,重要臟器血流灌注越差,會加重損傷,從而導(dǎo)致ROSC率進一步下降[15]。在發(fā)生心臟驟停30 min以內(nèi)進行心肺復(fù)蘇對患者的復(fù)蘇結(jié)果有積極影響。對于腎上腺素使用量,預(yù)測結(jié)果表明在腎上腺素使用量為5 mg左右時患者生存的可能性很高,使用量超過50 mg時模型預(yù)測結(jié)果全部為死亡。對于患者年齡,模型認為患者年齡處于25~35歲時復(fù)蘇成功率最高,隨著年齡的增加,死亡風(fēng)險也會增加。對于心搏驟停至CPR開始總時間,模型認為該時間越長,患者越容易死亡,在臨床上認為快速進入高質(zhì)量的CPR對患者的復(fù)蘇成功率提升有很大的幫助[16]。對于疾病史模型認為,對于有高血壓病史的患者更容易產(chǎn)生不良的預(yù)后情況。對于腎上腺素首次使用時間,預(yù)測結(jié)果表明初次使用腎上腺素時間越短,ROSC率越高。且復(fù)蘇組相比于死亡組在使用腎上腺素初始時間上的分布較廣,其分布與患者是否需要除顫、心臟驟停發(fā)生的地點、救治間隔時間的長短等因素相關(guān)[17-18]。需要綜合多種變量進行多因素分析研究。
在心肺復(fù)蘇數(shù)據(jù)集上,基于多模型加權(quán)遞歸消除算法建立了心肺復(fù)蘇結(jié)果預(yù)測模型,相比于傳統(tǒng)的機遞歸特征消除算法達到了更為理想的預(yù)測效果。通過對模型預(yù)測結(jié)果的分析與解釋,發(fā)現(xiàn)并挖掘了影響心肺復(fù)蘇結(jié)果的影響因素,提出了為臨床診療提供輔助的方法。
機器學(xué)習(xí)需要大量的數(shù)據(jù)支撐,本文研究的數(shù)據(jù)量對于機器學(xué)習(xí)模型來說較少,死亡與復(fù)蘇成功的樣本存在樣本不均衡問題,當(dāng)數(shù)據(jù)量增加時模型的擬合能力可以得到進一步的提升。只進行了單變量分析未對多個特征之間的相關(guān)性進行分析,僅依據(jù)單個特征對臨床診斷的輔助有限。預(yù)測結(jié)果沒有在臨床上的實際運用中得到驗證,模型的外推性不足。
綜上所述本文研究建立的機器學(xué)習(xí)模型在心肺復(fù)蘇結(jié)果預(yù)測上能夠達到較好的準(zhǔn)確率,能夠探尋出影響心肺復(fù)蘇結(jié)果的重要因素并給出臨床上的解釋達到輔助診療的目的。但還需進一步擴大數(shù)據(jù)集,綜合分析各個變量的相關(guān)性,并增強模型的外推性。