999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于EasyEnsemble和XGBoost的冠心病預測模型研究

2023-04-29 00:00:00彭昊申艷光李焰
計算機時代 2023年12期

摘" 要: 針對醫療樣本不平衡的問題,使用集成采樣EasyEnsemble算法和XGBoost算法結合,搭建冠心病預測模型,來提高患病樣本識別準確率。選用公開弗雷明翰冠心病數據集,對數據預處理后,先采用EasyEnsemble算法平衡數據集,后采用極端梯度提升算法XGBoost作為基分類器進行訓練,調整各項實驗參數,并采用準確率、召回率、ROC曲線下面積(AUC)等指標評價模型。實驗結果表明,相較于XGBoost、過采樣SMOTE+XGBoost、欠采樣TomekLinks+XGBoost三種方法,EasyEnsemble+XGBoost模型極大地提高了召回率。

關鍵詞: 冠心?。?疾病預測; XGBoost; SMOTE; EasyEnsemble

中圖分類號:TP181;R54" " " " " 文獻標識碼:A" " "文章編號:1006-8228(2023)12-64-04

Research on coronary heart disease prediction model based on EasyEnsemble and XGBoost

Peng Hao1, Shen Yanguang1, Li Yan2

(1. School of Information & Electrical Engineering, Hebei University of Engineering, Handan, Hebei 056000, China;

2. Affiliated Hospital of Hebei Engineering University)

Abstract: In response to the issue of imbalanced medical samples, the integrated sampling EasyEnsemble algorithm and XGBoost algorithm are combined to build a coronary heart disease prediction model to improve the accuracy of disease sample recognition. Selecting the publicly available Framingham coronary heart disease dataset and after preprocessing the data, the EasyEnsemble algorithm is used to balance the dataset, and then the extreme gradient boosting algorithm XGBoost is used as the base classifier for training. Various experimental parameters are adjusted, and the model is evaluated using indicators such as accuracy, recall, and AUC (area under ROC curve). The experimental results show that compared to the three methods of XGBoost, oversampling SMOTE+XGBoost, and undersampling TomekLinks+XGBoost, the EasyEnsemble + XGBoost model greatly improves the recall rate.

Key words: coronary heart disease; disease prediction; XGBoost; SMOTE; EasyEnsemble

0 引言

據不完全統計,截至2018年,我國的心血管疾病患者數量高達3.3億[1]。心血管疾病死亡率高居城鄉居民總死亡率首位,其中農村居民為46.66%,城市居民為43.81%。

近年來人工智能輔助診療技術成為熱門研究方向,基于機器學習的輔助醫療技術也不斷成熟。就心血管疾病而言,其重要的行為風險是吸煙、酗酒、不健康飲食、缺乏鍛煉等。行為風險因素的影響在個體中表現為血壓高、血糖高、血脂高、超重和肥胖等。這些表現是可以量化的,根據這些影響結果的量化數據做數據分析,識別出易患病、已患病的人群,讓其早日接受治療,有助于提高人民群眾健康水平。

醫療預測應著重觀察患病樣本的預測準確性。實際情況中,醫療類數據集存在數據不平衡的情況,即健康樣本多于患病樣本。故使用人工智能方法做預測時,可以采用數據平衡算法、引入注意力機制等方法,來提高患病樣本的識別準確率。

以冠心病為例,林加侖[2]等人使用邏輯回歸LR、支持向量機SVM、極端梯度提升XGBoost算法進行預測;洪韻[3]等人使用SMOTE+logisitic、SMOTE+XGBoost算法預測,分別取得了67%、76%的準確度;Hoda[4]使用KNN算法,取得了66.7%的準確度;蔣林甫[5]使用PCHD-TABNET算法預測,雖然只取得了60%的準確度,但患病樣本的識別準確率卻有極大提升。

綜上,本文以冠心病預測為主題,結合患病人群和正常人群的醫療數據,運用過采樣、欠采樣和集成采樣三種算法來平衡數據集,使用XGBoost算法進行模型訓練,建立對應的冠心病的預測模型,為冠心病高危人群的防治提供參考。

1 數據預處理

1.1 數據來源

本文數據集來是國外機器學習競賽Kaggle網站的馬薩諸塞州弗雷明翰鎮居民的心血管研究數據集。該數據集可預測患者在未來十年內是否會患冠心病。數據集包含4240例樣本、15項特征屬性、一項結果。樣本當中,十年內發病患者644例,不發作3596例,二者數量差接近六倍,存在數據不平衡現象。特征屬性當中Sex(性別)、Education(教育水平)、BPmeds(是否服用降壓藥)、Currentsmoke(是否吸煙)、Diabetes(糖尿?。revalentstroke(中風)、prevalentHyp(高血壓)、CigsPerDay(吸煙數量)為離散型變量,Totchol(血清總膽固醇)、BMI(體重指數)、Glucose(血糖)、Heartrate(心率)、Age(年齡)、Sysbp(收縮壓)、Diabp(舒張壓)為連續型變量。TenYearCHD(未來十年內是否患?。┯涗浗Y果,其中0為負例代表健康樣本,1為正例代表患病樣本。

1.2 數據處理

1.2.1 缺失值處理

本文采用的數據集中,有七項特征存在缺失現象,依次為Glucose、Education、Bpmeds、Totchol、CigsPerDay、BMI、Heartrate,分別缺失9.15%、2.48%、1.25%、1.18%、0.68%、0.45%、0.02%,含有缺失值數據總占比15.21%。數據缺失會增加分析預測的難度,提高運算時間,降低結果準確性。因此,本文對Education、BPMeds采用眾數填補,對Glucose、TotChol、CigsPerDay、BMI、Heartrate采用均值填補。

1.2.2 離群值處理

醫療樣本中,必然存在一些特征中的數據遠超正常范圍。數據分析時發現,Totchol、SysBP、Glucose等特征存在大量離群值。為了減小異常值對訓練的影響,在盡量保留數據特征的情況下,本文將上述存在離群值的特征范圍上界修正為當前最大值的75%,超出該范圍的數據修改為范圍上界。

數據處理完畢后,將數據集按照8:2劃分訓練集和測試集。訓練集3392例,其中健康樣本2877例,患病樣本515例;測試集848例,其中健康樣本719例,患病樣本129例。后續所有采樣算法均只在訓練集上操作。

2 模型搭建

2.1 XGBoost算法原理

XGBoost是一種Boosting集成樹模型,核心思想是將多個弱分類器集成成為一個強分類器。并且具有預測精度高、訓練速度快、靈活性強、支持自定義損失函數等優點。

XGBoost算法中,第t棵樹的預測總值為前t-1棵樹的預測值加上第t棵樹的預測值。即:

[y(t)i=y(t-1)i+ftxi]" ⑴

XGBoost的目標函數為:

[L(t)=i=1nlyi,yt-1i+ftxi+Ωft+c]" ⑵

其中,[l(*)]為損失函數;[yt-1i]為前t-1顆樹對樣本的預測值;[xi]為輸入;t為訓練過程的第t次迭代;[Ωft]為正則化的懲罰項,用來限制模型的復雜程度;c為常數項。

對目標函數進行二階泰勒展開,即得:

[L(t)≈i=1nlyi,yt-1i+giftxi+12hi(ft(xi))2+Ωft] ⑶

其中,[gi]和[hi]為標量,定義為:

[gi=?yt-1il(yi,yt-1i)]

[hi=?2yt-1il(yi,yt-1i)]

由于[l(yi,yt-1i)]為前t-1棵樹得預測誤差,與第t次迭代所得模型無關,因此,可以將其從目標函數中刪掉,則有:

[L(t)≈i=1ngiftxi+12hi(ft(xi))2+Ωft]" ⑷

2.2 EasyEnsemble算法原理

EasyEnsemble算法[6-7]是一種基于集成思想的欠采樣方法,用于解決類別不平衡數據的有監督學習中的信息缺失問題。該算法將多數類樣本集分成N個子集,并且每個子集的樣本數與少數類樣本數相同。然后,將多數類樣本子集依次與少數類樣本進行組合,形成N個新的訓練集,用于訓練多個分類器。所有的分類器通過Bagging算法集成,形成最終的分類器。在集成過程中,將N個基分類器的預測概率進行相加,然后通過sign函數來決定分類。

通過集成多個分類器,可以有效降低單一分類器的過擬合風險,提高少數類樣本的影響;同時通過對概率的集成和sign函數的運用,可以更好地處理類別不平衡問題。

2.3 冠心病預測模型構建

醫療類樣本存在一定的不平衡性,若僅考慮識別準確率,將本文所有實驗數據均判斷為多數情況,整體準確率也能高達84.8%(719/848=0.848)。顯然,這類僅關注準確率的模型毫無意義。醫療預測更加需要關注患病樣本的識別準確性,多數學者采用以SMOTE算法為主的平衡算法處理數據,來擴大少數類樣本的影響力。但是過采樣算法生成數據普遍會引入噪聲,欠采樣算法刪除數據會使部分特征丟失。而EasyEnsemble集成采樣算法合理使用了數據集中的全部數據,并可以多次訓練集成結果。

XGBoost算法具有高效準確等優點,也是醫療預測中常用且效果好的一種算法。綜上,本文以EasyEnsemble算法平衡數據,以XGBoost算法,分類預測,構建如圖1所示的EasyEnsemble+XGBoost模型作為冠心病預測模型。

該算法的主要流程:

⑴ 重新劃分訓練集。給定少數類樣本,樣本量P,給定多數類樣本,樣本量Q。從多數類樣本中隨機抽樣,抽出樣本量為P的子集N個,將少數類樣本和多數類子樣本組合,生成樣本量為2P的新訓練集N個。

⑵ 訓練基分類器模型。在新訓練集中訓練XGBoost分類器。

[Hix=sign(j=1Siαi,jhi,jx-θi)]" ⑸

其中,[Hi]為第i個基分類器XGBoost模型;[αi,j]為相應基分類器的權重;[hi,j]為第i個XGBoost的第j個基分類器;[θi]為集成閾值。

⑶ 將基分類器集成。

[Hx=sign(i=1Nj=1Siαi,jhi,jx-i=1Nθi)]" ⑹

其中,H(x)為集成后EasyEnsemble模型。

3 實驗結果分析

3.1 參數設置

本文設置四個對比實驗,分別為無采樣處理的XGBoost模型,過采樣處理的SMOTE+SGBoost模型,欠采樣處理的TomekLinks+XGBoost模型,集成采樣的EasyEnsemble+XGBoost模型。

在上述對比實現中,采用貝葉斯優化算法分別調整各個模型中XGBoost算法的四個參數:n_estimator最大生成樹目、learning_rate迭代步長、max_depth最大深度和min_child_weight葉子最小權重。

XGBoost中,n_estimator=167、learning_rate=0.09、max_depth=2、min_child_weight=7。

SMOTE+XGBoost中,n_estimator=513、learning_

rate=0.46、max_depth=8、min_child _weight=0.4。

TomekLinks+XGBoost中,n_estimator=73、learning_

rate=0.14、max_depth=3、min_child_weight=1。

因為EasyEnsemble算法中,各個小樣本與欠采樣樣本相似,故選用了TomekLinks+XGBoost的參數進行實驗。

3.2 評價指標

為了評估各個模型的性能,使用了準確率(ACC)、精確率(PRE)、召回率(REC)ROC曲線下面積(AUC)、精確率和召回率的調和均值(F1)等多個評價指標進行評估。

[ACC=TP+TNTP+TN+FP+FN]" ⑺

[PRE=TPTP+FP]" ⑻

[REC=TPTP+FN]" ⑼

[F1=2*PRE*RECPRE+REC]" ⑽

其中,TP表示正例識別正確;TN表示負例識別正確;FP表示負例識別錯誤;FN表示正例識別錯誤。

3.3 結果分析

混淆矩陣(見表1)可直觀看到各類模型訓練完畢后的測試集測試結果。其中負例為健康樣本,正例為患病樣本。相較于XGBoost算法,SMOTE+XGBoost算法的少數類識別率提升了2.00%,EasyEnsemble+ XGBoost算法提升了8.61%,TomekLinks+ XGBoost算法則是在整體識別率未出現明顯變化的情況下,對少數類樣本識別率小幅提高。

表2中給出了各類模型的量化結果,XGBoost、SMOTE+XGBoost、TomekLinks+ XGBoost模型的ACC值均超過了80%,但其REC值普遍偏低,均未超過30%。而EasyEnsemble+XGBoost模型,雖然ACC值僅為62%,但是REC值達到了64%,相較于XGBoost模型提高了近八倍,相較于SMOTE+XGBoost模型提高了約三倍。

同時,本文的SOMTE+XGBoost模型結果相較于蔣林甫[5]的同名算法,雖數據處理方式略有出入,但結果基本一致。相較于PCHD-TABNET這種引入注意力機制的算法,本文EasyEnsemble+XGBoost模型PRE指標上表現略優,可以更加精確的預測患病樣本。

4 結束語

本文針對醫療數據集不平衡的問題,提供了一種數據采樣和集成學習相結合的冠心病預測模型,使用集成采樣EasyEnsemble算法平衡數據集,將XGBoost算法作為基分類器,以ACC、REC、F1、AUC等多個指標作為模型性能的評價標準。在公開數據集弗雷明翰冠心病數據集中進行模擬,結果表明,該模型多個指標優于傳統的SMOTE+XGBoost模型,顯著改善了少數類識別準確率低的問題,提高了預測模型的召回率,對用戶了解自身患病風險有極大幫助。

但是該模型整體識別準確率有一定程度的下降,后續工作需要在保證少數類預測準確的情況下,提升整體的準確率??梢試L試通過修改模型的代價敏感函數等的方法進行試驗,使得模型性能進一步提升。

參考文獻(References):

[1] 盧文婷,姚遠,熊靜,等.機器學習在心血管疾病輔助診斷模型

中的效果[J].中華全科醫學,2023,21(1):112-117.

[2] 林加論,余洋鑫,許磊,等.基于機器學習的冠心病預測模型

研究[J].中國數字醫學,2023,18(01):48-52.

[3] 洪韻,馬勇,陳榕,等.基于機器學習算法的冠心病風險預測及

其特征分析模型[J].廣東醫科大學學報,2023,41(1):53-57.

[4] Elsayed H A G , Syed L .An automatic early risk

classification of hard coronary heart diseases using framingham scoring model[C]//the Second International Conference,2017.

[5] 蔣林甫.基于深度學習的冠心病風險分層[D].杭州:杭州

師范大學,2022.

[6] 陳毓,陳亮,汪琰,等.基于EasyEnsemble和XGBoost算法的焊縫

超聲波檢測結果預測模型[J].船舶工程,2022,44(4):134-139.

[7] 張青周,高龍,胡穎迪,等.EasyEnsemble算法在金融風控不均衡

數據集建模中的應用[J].金融科技時代,2023,31(1):41-46.

主站蜘蛛池模板: 国产精品无码翘臀在线看纯欲| 在线精品欧美日韩| 国产91高跟丝袜| 国产熟睡乱子伦视频网站| 久久超级碰| 色噜噜在线观看| 一级爆乳无码av| 韩日无码在线不卡| 亚洲 欧美 中文 AⅤ在线视频| 亚洲另类第一页| 老熟妇喷水一区二区三区| 久久综合色视频| 91成人精品视频| 中国精品自拍| 91精品日韩人妻无码久久| 中文字幕免费在线视频| 欧美三級片黃色三級片黃色1| 亚洲色偷偷偷鲁综合| 青青极品在线| 最新国产高清在线| 超清无码一区二区三区| 亚洲人成色77777在线观看| 996免费视频国产在线播放| 欧美日韩激情在线| 国产精品尹人在线观看| 2021亚洲精品不卡a| 亚洲av色吊丝无码| 精品撒尿视频一区二区三区| 欧美福利在线| 亚洲国产AV无码综合原创| 国产免费观看av大片的网站| 久久这里只有精品66| 亚洲国产成熟视频在线多多| 亚洲人成在线免费观看| 午夜日本永久乱码免费播放片| 高潮毛片无遮挡高清视频播放| 亚洲天堂视频在线播放| 99热这里只有精品国产99| 国产三区二区| 国产精品毛片一区视频播| 91在线日韩在线播放| 在线无码av一区二区三区| 国产在线专区| 国产久草视频| 亚洲成aⅴ人在线观看| 精品视频在线观看你懂的一区| 四虎国产精品永久一区| 久久婷婷综合色一区二区| 亚洲黄网视频| 看看一级毛片| 美女无遮挡免费视频网站| 亚洲一区二区视频在线观看| 国产麻豆精品手机在线观看| 久久精品国产电影| 国产精品久久国产精麻豆99网站| 欧美日韩第三页| 白丝美女办公室高潮喷水视频 | 在线播放国产一区| 最新无码专区超级碰碰碰| 久久这里只有精品2| 97久久精品人人| 久久综合国产乱子免费| 国产av一码二码三码无码| 毛片视频网址| 欧美日本在线播放| 成人小视频网| 久久久久免费看成人影片| 在线精品自拍| 精品无码国产自产野外拍在线| 国产色婷婷| 欧美日韩中文国产| 国产国拍精品视频免费看| 国产精品美女在线| 欧美a级在线| 伊人AV天堂| 亚洲视频二| 九九免费观看全部免费视频| 国产成人狂喷潮在线观看2345| 国产色偷丝袜婷婷无码麻豆制服| 亚洲女同一区二区| 亚洲美女一区| 国产自产视频一区二区三区|