王 蔚,程 君,李先杰,彭 雷
(自貢市第一人民醫(yī)院信息科,自貢 643000)
根據(jù)2021年7月發(fā)布的《中國心血管健康與疾病報(bào)告2020》,我國城鄉(xiāng)居民總死亡原因當(dāng)中,心血管疾病死亡居于首位,高于腫瘤及其他疾病。心肌梗塞(myocardial infarction,MI)作為一種常見的心血管疾病,嚴(yán)重威脅人們的生命健康,從2005年開始,其死亡率呈快速上升趨勢。心肌梗塞患者的不同病程,可能不存在并發(fā)癥或者存在并發(fā)癥但不會嚴(yán)重威脅生命。與此同時(shí),大約一半的急性和亞急性期心肌梗塞患者有并發(fā)癥,如心力衰竭、心臟破裂、心房纖顫等,其致死率及致殘率仍然較高。因此,提前預(yù)測心肌梗塞患者未來可能發(fā)生的并發(fā)癥類型,能夠有效輔助臨床醫(yī)務(wù)人員實(shí)施必要的預(yù)防措施,也是降低心肌梗塞患者死亡率的重要途徑。
近年來,大數(shù)據(jù)、人工智能等技術(shù)的快速發(fā)展為疾病的診斷和預(yù)測提供了強(qiáng)大的技術(shù)支持,并表現(xiàn)出較好的應(yīng)用效果,例如糖尿病早期預(yù)測、糖尿病并發(fā)癥預(yù)測、脊柱手術(shù)并發(fā)癥預(yù)測、腦腫瘤分類等。
目前,心肌梗塞患者的并發(fā)癥研究主要集中于評價(jià)心肌梗塞并發(fā)癥與影響因子之間的關(guān)系,通過觀察影響因子來達(dá)到預(yù)測心肌梗塞并發(fā)癥的目的。黃佐貴等采用免疫比濁法測定51例心肌梗塞患者組和40例冠心病對照組的高敏C反應(yīng)蛋白水平來預(yù)測心肌梗塞并發(fā)心力衰竭死亡率,實(shí)驗(yàn)結(jié)果表明高敏C反應(yīng)蛋白可作為預(yù)測心肌梗塞患者一年內(nèi)總死亡率和心力衰竭死亡率的一項(xiàng)重要指標(biāo)。宗敏等采用統(tǒng)計(jì)學(xué)方法中的多因素logistic回歸分析來探討血小板分布寬度對老年人心肌梗塞患者住院期間心力衰竭的預(yù)測價(jià)值。實(shí)驗(yàn)結(jié)果表明血小板分布寬度對MI后心衰有獨(dú)立預(yù)測價(jià)值,具有較高的敏感性,可作為評價(jià)MI后心衰的獨(dú)立危險(xiǎn)因素。Azwari使用機(jī)器學(xué)習(xí)算法中的隨機(jī)森林模型來預(yù)測心肌梗塞患者發(fā)生心肌破裂并發(fā)癥的可能性,該模型以患者的年齡、性別、病死中的心肌梗塞次數(shù)、病史中的勞力性心絞痛、高血壓等作為模型的輸入特征,實(shí)驗(yàn)結(jié)果表明該模型具有較好的預(yù)測效果。由于心肌梗塞的并發(fā)癥不同,其影響因子也不同,想要利用影響因子來對心肌梗塞并發(fā)癥的總體分類進(jìn)行預(yù)測,將會變得十分困難。基于此,本文通過患者的既往病史,入院時(shí)體征記錄以及入院三天的治療措施來構(gòu)建多層感知機(jī)(multilayer perceptron,MLP)和支持向量機(jī)(support vector machine,SVM)兩種心肌梗塞并發(fā)癥預(yù)測模型,為臨床醫(yī)務(wù)人員早期判別心肌梗塞患者發(fā)生并發(fā)癥提供風(fēng)險(xiǎn)預(yù)警。
感知機(jī)作為神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)的起源算法,最初用于處理簡單的二元分類線性可分問題,即能獲得一個(gè)將訓(xùn)練數(shù)據(jù)集正實(shí)例點(diǎn)和負(fù)實(shí)例點(diǎn)完全正確分開的分離超平面,卻無法構(gòu)造非線性可分?jǐn)?shù)據(jù)集的超平面。多層感知機(jī),也稱為多層神經(jīng)網(wǎng)絡(luò),是在單層神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上引入了一個(gè)到多個(gè)隱藏層,并使用非線性激活函數(shù)來克服線性模型的限制,提升非線性數(shù)據(jù)處理能力,其基本結(jié)構(gòu)如圖1所示。

圖1 多層感知機(jī)模型
由圖1可知,MLP是由一個(gè)輸入層,一個(gè)輸出層以及若干個(gè)隱藏層構(gòu)成。輸入層負(fù)責(zé)將心肌梗塞患者的個(gè)特征作為輸入,隱藏層的神經(jīng)元節(jié)點(diǎn)對輸入層的輸入特征采取加權(quán)求和,通過非線性激活函數(shù)產(chǎn)生激活響應(yīng),使得神經(jīng)網(wǎng)絡(luò)可以任意逼近任何非線性函數(shù)。在訓(xùn)練過程中,采取向前傳播和反向傳播算法,不斷調(diào)整模型權(quán)重和偏置參數(shù),從而達(dá)到更好的分類效果。
SVM是由輸入空間、特征空間和輸出空間組成,在特征空間中可能存在多個(gè)超平面將數(shù)據(jù)進(jìn)行劃分,依據(jù)結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,從中尋找間隔最大的分類超平面,其基本結(jié)構(gòu)如圖2所示。在真實(shí)應(yīng)用數(shù)據(jù)集中,很難在現(xiàn)有特征空間中找到一個(gè)能夠正確劃分樣本的超平面,因此需要使用核函數(shù)將原始的特征空間映射到更高維的特征空間中,使得樣本在這個(gè)高維的特征空間中線性可分,即可求得最優(yōu)分類超平面。

圖2 支持向量機(jī)模型
為了驗(yàn)證心肌梗塞患者并發(fā)癥預(yù)測模型的有效性,需要對其預(yù)測效果進(jìn)行評價(jià),本文從準(zhǔn)確率、召回率、AUC三個(gè)維度對模型進(jìn)行評價(jià)。
(1)準(zhǔn)確率:心肌梗塞患者發(fā)生并發(fā)癥與不發(fā)生并發(fā)癥的預(yù)測準(zhǔn)確程度,如表達(dá)式(1)所示。

式中,表示正確預(yù)測心肌梗塞患者發(fā)生并發(fā)癥的數(shù)量,表示正確預(yù)測心肌梗塞患者不發(fā)生并發(fā)癥的數(shù)量,表示錯(cuò)誤預(yù)測心肌梗塞患者不發(fā)生并發(fā)癥的數(shù)量,表示錯(cuò)誤預(yù)測心肌梗塞患者發(fā)生并發(fā)癥的數(shù)量。
(2)召回率:正確預(yù)測心肌梗塞患者發(fā)生并發(fā)癥的數(shù)量占樣本集中有并發(fā)癥的比例,如表達(dá)式(2)所示。

(3):表示ROC曲線下的面積,用于判斷模型的優(yōu)劣,其值一般介于0.5和1之間,值越大,表明模型的分類效果越好。
本文使用的數(shù)據(jù)集來源于加州大學(xué)歐文分校的UCI機(jī)器學(xué)習(xí)數(shù)據(jù)庫中的心肌梗塞并發(fā)癥數(shù)據(jù)集,總計(jì)1700例,數(shù)據(jù)信息包含患者以往病史(如心肌梗死數(shù)量,心絞痛的功能等級、肺結(jié)核的既往病史、糖尿病的既往病史等),入院時(shí)患者體征(如心電圖節(jié)律、室顫心電圖等),入院三天治療措施(如藥品使用頻率),共計(jì)111個(gè)輸入特征向量,11種并發(fā)癥以及無并發(fā)癥作為樣本標(biāo)簽結(jié)果,對每一種并發(fā)癥建立二分類預(yù)測模型。
數(shù)據(jù)集中含有1700例患者的樣本數(shù)據(jù),每例樣本數(shù)據(jù)包含111個(gè)臨床數(shù)據(jù)點(diǎn),由于部分記錄數(shù)據(jù)存在數(shù)據(jù)缺失情況,直接影響數(shù)據(jù)挖掘的結(jié)果。針對數(shù)據(jù)集中缺失的數(shù)據(jù),本文采用最近鄰算法進(jìn)行數(shù)據(jù)補(bǔ)齊,即首先采用K-means聚類將所有樣本進(jìn)行聚類劃分,隨后通過劃分的種類的均值對各自類中的缺失值進(jìn)行填補(bǔ)。
心肌梗塞常見于中老年人群,本數(shù)據(jù)集中心肌梗塞患者的年齡分布如圖3所示。從圖中可以看出,心肌梗塞患者的年齡多集中于[40,80]之間,平均年齡為61.85歲。

圖3 心肌梗塞患者的年齡分布
隨著病程的發(fā)展,心肌梗塞患者可能沒有并發(fā)癥,也可能會有一種或多種并發(fā)癥,圖4展示了數(shù)據(jù)集中各并發(fā)癥的人數(shù)分布情況。

圖4 心肌梗塞患者的并發(fā)癥類型分布
由圖4可知,心肌梗塞患者最容易面臨慢性心力衰竭并發(fā)癥,與臨床實(shí)際經(jīng)驗(yàn)一致。本數(shù)據(jù)集中各并發(fā)癥的樣本集,有并發(fā)癥類別的樣本數(shù)遠(yuǎn)低于沒有并發(fā)癥類別的樣本數(shù),存在數(shù)據(jù)類別不平衡的問題。基于此,本文對每一種并發(fā)癥的樣本采用隨機(jī)過采樣的方法擴(kuò)充訓(xùn)練集的數(shù)據(jù)樣本量,達(dá)到樣本平衡的目的。
本模型以數(shù)據(jù)集的80%作為訓(xùn)練集,以此不斷地訓(xùn)練模型,優(yōu)化模型參數(shù),使得整個(gè)模型收斂,然后將剩余的20%作為測試集,評估模型的預(yù)測效果。由于心肌梗塞患者可能發(fā)生多個(gè)并發(fā)癥的情況,違背多分類輸出互斥的原則,故對數(shù)據(jù)集中的每一種并發(fā)癥分別建立MLP和SVM模型。經(jīng)過大量的訓(xùn)練擬合測試后,確定了兩種模型的使用參數(shù)。
針對MLP,本文構(gòu)建1個(gè)輸入層,1個(gè)隱藏層,1個(gè)輸出層的網(wǎng)絡(luò)結(jié)構(gòu),其中隱藏層的神經(jīng)元數(shù)量為100,損失函數(shù)LogLoss,優(yōu)化函數(shù)Adam,激活函數(shù)ReLU。
針對SVM,利用python中sklearn.svm.svc()函數(shù),在核函數(shù)系數(shù)和懲罰松弛變量為默認(rèn)值的情況下,分別采用Linear和RBF兩種核函數(shù),即Linear_SVM和RBF_SVM進(jìn)行預(yù)測分析比較。
利用MLP、Linear_SVM和RBF_SVM三種模型對數(shù)據(jù)集中的每一種并發(fā)癥進(jìn)行預(yù)測,其性能如表1~表3所示。

表1 基于MLP的心肌梗塞并發(fā)癥預(yù)測結(jié)果

表3 基于RBF_SVM的心肌梗塞并發(fā)癥預(yù)測結(jié)果

表2 基于Linear_SVM的心肌梗塞并發(fā)癥預(yù)測結(jié)果
為了進(jìn)一步比較三種模型在心肌梗塞并發(fā)癥中的預(yù)測性能,對表1~表3中的所有并發(fā)癥的預(yù)測結(jié)果取均值,將其作為模型的性能評價(jià)指標(biāo),結(jié)果如表4所示。從表4可以看出,相比于Linear_SVM和RBF_SVM,MLP的準(zhǔn)確率最高,召回率和最低,這與原始數(shù)據(jù)集中的并發(fā)癥樣本數(shù)量息息相關(guān),即使擴(kuò)充樣本數(shù)量,仍然面臨無法準(zhǔn)確挖掘出這些并發(fā)癥與輸入特征之間的關(guān)聯(lián),往往出現(xiàn)過擬合,使得模型的泛化能力較弱。在兼顧準(zhǔn)確率、召回率、三種評價(jià)指標(biāo)的情況下,Linear_SVM的整體表現(xiàn)最優(yōu),可見在小樣本、數(shù)據(jù)高維的心肌梗塞并發(fā)癥數(shù)據(jù)集中,基于Linear核函數(shù)的支持向量機(jī)表現(xiàn)出更優(yōu)的模型泛化能力。特別是心房纖顫、三度房室傳導(dǎo)阻滯、心肌破裂、心肌梗死后綜合征四種并發(fā)癥均表現(xiàn)出較好的準(zhǔn)確率、召回率和AUC,表明該模型對這四種并發(fā)癥具有較好的擬合能力。

表4 心肌梗塞并發(fā)癥預(yù)測模型性能對比
近年來,在醫(yī)療領(lǐng)域中利用機(jī)器學(xué)習(xí)算法輔助醫(yī)務(wù)人員完成疾病診斷一直是研究的熱點(diǎn)和難點(diǎn),目前已經(jīng)廣泛應(yīng)用于心血管疾病、糖尿病、腫瘤、腎病等疾病預(yù)測中,并取得了較好的應(yīng)用效果。在相關(guān)應(yīng)用研究中,研究人員將患者的臨床檢測數(shù)據(jù)作為機(jī)器學(xué)習(xí)模型的輸入,將疾病的發(fā)生風(fēng)險(xiǎn)作為預(yù)測輸出,有效輔助醫(yī)務(wù)人員提前采取干預(yù)措施,減少患病風(fēng)險(xiǎn),達(dá)到早發(fā)現(xiàn)、早預(yù)防、早治療的診療目的。
目前,研究人員重點(diǎn)關(guān)注挖掘診療過程的部分特征數(shù)據(jù)與特定的心肌梗塞并發(fā)癥之間的關(guān)聯(lián),忽略了患者診療前的病史數(shù)據(jù)。本文采用公開的真實(shí)數(shù)據(jù)集,根據(jù)心肌梗塞患者既往病史,入院時(shí)的體征數(shù)據(jù)以及入院三天的治療措施,通過機(jī)器學(xué)習(xí)算法中的多層感知機(jī)模型和支持向量機(jī)模型,建立心肌梗塞患者并發(fā)癥的預(yù)測模型。實(shí)驗(yàn)表明基于Linear核函數(shù)的支持向量機(jī)在本數(shù)據(jù)集下取得了較好的預(yù)測效果,對臨床醫(yī)務(wù)人員提早發(fā)現(xiàn)心肌梗塞并發(fā)癥有一定的參考價(jià)值。
在心肌梗塞并發(fā)癥的后續(xù)研究中,一方面需要持續(xù)優(yōu)化模型參數(shù),嘗試使用更多的分類預(yù)測模型,進(jìn)一步提高模型的預(yù)測準(zhǔn)確率、召回率、AUC值;另一方面可使用深度學(xué)習(xí)等方法繼續(xù)深入分析現(xiàn)有輸入特征與心肌梗塞并發(fā)癥之間的內(nèi)在聯(lián)系,對各并發(fā)癥的影響因子進(jìn)行重要性排序。