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

基于機器學習算法的糖尿病預測

2024-09-26 00:00:00凌雄娟王俊杰
現代信息科技 2024年14期

摘 要:糖尿病是一種無法根治的慢性疾病,早發現、早干預、早治療能夠延緩病情進展,提高患者的治療效率。構建基于決策樹、邏輯回歸、XGBoost等六種機器學習分類算法的預測模型,實現糖尿病風險預測。該模型以皮馬印第安人糖尿病數據集為研究對象,通過數據預處理、數據特征分析構建有效數據集,采用網格搜索方法進行交叉驗證尋找算法的最佳參數組合,構建超參數及基于超參數的分類模型,并對模型的預測性能進行評價。實驗結果表明,該模型擁有良好的糖尿病風險預測性能。

關鍵詞:糖尿病預測;分類算法;網格搜索;模型評價

中圖分類號:TP18 文獻標識碼:A 文章編號:2096-4706(2024)14-0059-06

Prediction of Diabetes Based on Machine Learning Algorithm

LING Xiongjuan, WANG Junjie

(Foshan Polytechnic, Foshan 528137, China)

Abstract: Diabetes is an incurable chronic disease. Early detection, early intervention, and early treatment can delay the progression of the disease and improve the treatment efficiency of patients. A prediction model based on six Machine Learning classification algorithms, such as Decision Tree, Logical Regression and XGBoost, is constructed to predict the risk of diabetes. The model takes the Pima Indian diabetes dataset as the research object, builds an effective dataset through data pre-processing and data feature analysis, uses grid search method to cross verify and find the optimal parameter combination of the algorithm, builds a super parameter and a classification model based on super parameters, and evaluates the prediction performance of the model. The experimental results show that the model has good risk prediction performance for diabetes.

Keywords: diabetes prediction; classification algorithm; grid search; model evaluation

DOI:10.19850/j.cnki.2096-4706.2024.14.012

0 引 言

糖尿病是一種無法根治的慢性內分泌疾病,根據國際糖尿病聯盟(IDF)的最新數據顯示,全球糖尿病患者的人數已經達到4.66億,并且這個數字仍在持續增長。中國是世界糖尿病人口數最多和患病率最高的國家,患病率達到了11.2%,相當于每100人就有11人得糖尿病,且未被診斷的糖尿病人數所占比例較高,中國糖尿病防治指南[1]顯示,糖尿病知曉率僅有36.5%,相當于11個患者中僅有4人被確診糖尿病,有7個人不知道自己血糖高。糖尿病無法根治,且容易引發各種并發癥,對個人、家庭和社會造成巨大的經濟負擔。目前糖尿病已嚴重影響居民的健康與經濟發展,糖尿病預測問題亟待解決。

現今,在人工智能及大數據技術高速發展下,越來越多的機器學習被運用到糖尿病研究之中。在糖尿病分類預測研究中[2-5],張玉璽和賀松等分別采用KNN、支持向量機、邏輯回歸等單一算法及隨機森林和投票法等復雜分析模型對糖尿病數據進行預測。他們的研究結果表明,選擇準確率最高、AUC值最大的集成模型Voting作為最終的糖尿病數據預測模型。前人的研究為當下的研究提供了理論基礎和先驗知識,也為進一步的研究工作奠定了重要的前提條件。目前尚未發現一種普適的預測方法和理論,并且在將預測模型應用到系統研究方面的研究仍相對較少,因此它具有巨大的研究潛力。

本文以皮馬印第安人糖尿病數據集為研究對象,結合機器學習算法的計算能力和預測優勢,建立基于機器學習分類算法的預測模型,對糖尿病發病風險進行預測,為高危人群提供提前預警,輔助醫生進行早期干預、診斷,從而降低糖尿病發病風險。

1 機器學習分類算法在糖尿病預測中的應用

機器學習分類算法在糖尿病風險預測中有著廣泛的應用。這些算法可以通過分析患者的生理特征和病史等數據來建立糖尿病預測模型,實現對糖尿病的早期預測和篩查。常用的機器學習分類算法包括決策樹、邏輯回歸、XGBoost等。這些算法可以根據患者的年齡、性別、身體質量指數(BMI)、血壓、血清化驗數據等特征,預測患者罹患糖尿病的風險。

2 試驗與檢驗

2.1 糖尿病數據集

本研究選取在眾多研究中被廣泛使用的皮馬印第安人糖尿病數據集(Pima Indians Diabetes Datasets, PIDD)[6]為研究對象,此數據集來源于美國國立糖尿病與消化及腎臟疾病研究所,這是一個權威的醫學研究機構,所提供的數據具有很高的可靠性和可信度。糖尿病數據集共有768條數據項,包含8個醫學預測變量和1個結果變量,其具體的醫學特征屬性如表1所示。

2.2 特征工程

特征工程是指利用領域知識從原始數據中提取特征的過程,目的是提高機器學習過程的結果質量。通過特征工程,可以從原始數據中提取出更具代表性和預測性的特征,從而提高模型預測的準確性和穩定性。本研究主要的特征工程有數據預處理和數據特征分析。

2.2.1 數據預處理

為提高糖尿病預測模型的性能和效果,需要對原始數據進行預處理,對不適合模型的數據或不準確的數據進行修改或刪除,最終使得預處理完的數據符合模型的需求。數據預處理方式如下:

1)異常值處理。異常值是指數據集中與其他數值明顯不同的數值,它們可能是因測量誤差、數據錄入錯誤造成的,也可能代表了真實但罕見的情況。處理異常值的目的是確保數據分析的準確性和可靠性,避免異常值對分析結果產生誤導性影響。先通過pandas庫中的groupby()函數對數據的分布特征進行分組,再通過Matplotlib庫中的hist()函數繪制直方圖進行數據可視化分析,如圖1、圖2所示。

通過圖1和圖2中的分布特征可以發現,血糖濃度和年齡對患糖尿病的影響比較大,而且可以發現一些異常值的存在,充分吸收醫學知識后得知,血糖濃度、血壓、BMI在正常情況下不會為0。因此將血糖濃度、血壓及BMI中的異常值予以刪除,去除掉異常數據后,數據集的總樣本數為724條。

2)缺失值處理。缺失值處理是數據預處理的重要環節,對保證數據的完整性、準確性和可靠性至關重要。通過pandas庫的read.csv()方法將數據導入,并打印出所有數據記錄。在查看結果的過程中發現,Glucose、BloodPressure、SkinThickness、Insulin、BMI五個維度存在缺失現象,這顯然是不符合實際情況的。設計使用pandas庫的median()函數通過中值補全的方式將數據的缺失值補全。

3)數據規范化。由于糖尿病數據集中不同的特征具有不同的尺度和范圍,為了使數據更適用于機器學習模型,需要對數據進行規范化。本研究中使用了Sklearn中的StandardScaler函數對數據進行標準化處理,最后對清洗后的數據進行保存。

2.2.2 數據特征分析

特征選擇分析有助于挖掘特征之間的相關性和相互作用。本研究通過觀察選定的特征集合來推斷特征之間的關聯性和相互影響程度,從而更好地理解數據的結構和模式。通過對特征選擇的特征進行分析可以提供有關特征的重要信息,幫助優化模型、改善特征工程、提高模型的準確性和解釋性,以及簡化模型的復雜性。

特征選擇分析有助于分析糖尿病特征之間的相關性。分別使用Matplotlib庫以及Seaborn庫的figure()函數和heatmap()函數來創建一個熱力圖,以觀察糖尿病影響因素之間的相關性,如圖3所示。

從圖3中可以看出,糖尿病患病率與血糖濃度的相關性最大,與皮膚厚度不相關;相關性排在其次的是年齡與懷孕次數。值得關注的是,糖尿病患病率與年齡的相關性并不是很大,甚至低于BMI,由此可以總結出健康飲食、適度運動的重要性。

2.3 糖尿病預測模型創建與效果評價

本研究使用糖尿病原始數據集經過預處理的724條樣本數據,進行訓練集和測試集的劃分,采用網格搜索方法GridSearchCV進行交叉驗證,尋找算法的最佳參數組合來構建超參數,使用決策樹、邏輯回歸、XGBoost等六種算法建立基于訓練集的糖尿病風險預測模型,進而通過測試集來計算準確率、精準率、召回率、F1-score和AUC值這五個指標,以此驗證六種算法模型的效果,最后通過實驗結果對比分析來預測模型效能。

2.3.1 建立訓練集和測試集

建立訓練集和測試集是機器學習和數據挖掘中的一種常用技術,它的主要目的是評估和驗證模型的性能以及避免過擬合。它可以幫助我們選擇最佳模型,避免過擬合,以及進行參數調優。

本文使用Python的Sklearn庫的train_test_split()函數來將75%的數據劃分作為訓練集,剩下25%的數據作為測試集。

2.3.2 網格搜索方法

網格搜索(GridSearchCV)是一種常用的調參手段,是一種窮舉方法[7]。它是通過交叉驗證的方法來對估計函數的參數進行優化得到最優的學習算法。由于糖尿病原始數據集經過處理后的糖尿病最終數據集的樣本量不多,而且特征維度也不高,故本文采用網格搜索方法在預測模型的訓練集上使用交叉驗證,遍歷所有可能的參數組合,尋找最佳的參數組合,得到算法的超參數,使用超參數訓練模型,提升糖尿病預測模型的分類性能。

2.3.3 機器學習模型的建立和分析

決策樹是一種非參數的有監督學習方法[8],較常應用于分類和回歸問題。決策樹算法之所以廣泛應用于糖尿病風險預測,是因為它能夠根據不同的特征點信息對數據集進行劃分,最終得到一棵樹形的分類模型。本文通過Python中Sklearn庫的tree模塊中的DecisionTreeClassifier模型進行數據集的訓練和測試。采用網格搜索方法計算決策樹預測模型主要參數的最佳數據值組合,程序如下所示:

X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.25)

param_grid = {

'criterion': ['gini', 'entropy'],

'max_depth': [3, 5, 7, 10],

'min_weight_fraction_leaf': [0.01, 0.02, 0.03]

}

grid_search = GridSearchCV(DecisionTreeClassifier(), param_grid, cv=5)

grid_search.fit(X_train, y_train)

print("Best parameters found: ", grid_search.best_params_)

print("Best accuracy: ", grid_search.best_score_)

程序運行結果為模型最優超參數,具體指標如下:

1)criterion。這個參數指定了用來衡量特征重要性的標準,Sklearn提供兩種選擇方式,分別是基尼系數(gini)和信息熵(entropy)。本研究設置為entropy。

2)max_depth。這個參數指定了樹的最大深度,即決策樹允許生長的最大層數。將其設置為10時模型表現最佳。

3)min_weight_fraction_leaf。這個參數指定了葉子節點中樣本權重的最小加權和。將其設置為0.03時模型表現最佳。

經調參后,使用最優超參數重新訓練決策樹模型,并對模型的準確率、精準率、召回率、F1-score和AUC值進行計算評價并繪制ROC曲線。決策樹評估指標表如表2所示。

由表2可知,決策樹模型在測試集上的F1-score值為0.637 9,AUC值為0.728 2,說明決策樹模型的分類能力和泛化能力良好。ROC曲線(Receiver Operating Characteristic Curve)是二分類模型性能評估的常用工具。模型的性能越好,ROC曲線越靠近左上角。由圖4可以看出,ROC曲線較靠近左上角,決策樹模型的性能良好。

2.3.4 邏輯回歸的構建和分析

邏輯回歸算法適用于二分類和多分類問題,它具有模型簡單、易于實現和解釋的特點,同時也可以處理大規模數據集[9]。本文通過Python的Sklearn庫的linear_model模塊中的LogisticRegression模型進行數據集的訓練和測試。采用網格搜索方法計算邏輯回歸預測模型主要參數的最佳值組合,關鍵程序如下所示:

classifier =LogisticRegression(random_state=0)

param_grid = {

'max_iter':[1000,10000],

'C': [0.01, 0.2, 1, 10]}

grid_search = GridSearchCV(estimator=classifier, param_grid=param_grid, cv=5, scoring='acckTscns/5aqhsKcaYSlWGJw==uracy')

grid_search.fit(X_train, y_train)

程序運行結果為邏輯回歸預測模型優化后的超參數,具體參數及意義如表3所示。

經調參后,使用最優超參數重新訓練邏輯回歸模型,對邏輯回歸模型的準確率、精準率、召回率、F1-score和AUC值進行計算評價并繪制ROC曲線,如圖5所示。邏輯回歸評估指標表如表4所示。

由表4可知,邏輯回歸模型在測試集上的準確率達到0.773 4,AUC在測試集上的準確率達到了0.750 7,相較于決策模型略有提升,說明邏輯回歸模型有較好的分類效果和泛化能力。由邏輯回歸模型的ROC曲線可知,邏輯回歸模型性能良好,較為穩定。

2.3.5 XGBoost的構建和分析

XGBoost(eXtreme Gradient Boosting)是一種基于決策樹模型的集成學習算法,它在Kaggle等數據科學競賽中表現出色,并且在實際應用中也取得了不錯的效果。其核心思想是利用損失函數的負梯度值作為當前擬合模型的殘差近似值來實現精準的分類效果[10]。

本文使用XGBoost庫中的XGBClassifier模型進行數據集的訓練和測試。采用網格搜索方法計算XGBoost預測模型主要參數的最佳值組合,關鍵程序如下所示:

classifier = XGBClassifier()

param_grid = {

'learning_rate': [0.01, 0.1, 0.5],

'max_depth': [5, 10, 15],

'n_estimators': [100, 500, 1000],

'reg_alpha': [0, 1, 3],

'reg_lambda': [1, 3, 6]}

grid_search = GridSearchCV(estimator=classifier, param_grid=param_grid, cv=5, scoring='accuracy')

grid_search.fit(X_train, y_train)

程序運行結果為XGBoost預測模型優化后的超參數,具體參數及意義如表5所示。

經調參后,使用最優超參數重新訓練XGBoost模型,對模型的準確率、精準率、召回率、F1-score和AUC值進行計算評價并繪制ROC曲線。XGBoost模型評估指標表如表6所示。

由表6可知,XGBoost模型測試集的召回率為0.716 6,比邏輯回歸模型的0.683 3略有提升,而且測試集上的AUC值達到了0.746 7,說明XGBoost模型有較好的分類效果和泛化能力。由如圖6所示XGBoost模型的ROC曲線圖可以看出,XGBoost模型的性能良好,較為穩定。

以同樣的方法構建隨機森林模型、K最近鄰模型、神經網絡模型等模型,得到六種糖尿病預測模型的性能指標。

3 實驗結果分析

通過決策樹模型、邏輯回歸模型、XGBoost模型、隨機森林模型、K最近鄰模型、神經網絡模型對測試集進行糖尿病風險預測,本研究中的測試集占原始數據的25%,運行得到的結果如表7所示。

由表7可以看出,在測試集上的預測結果分析對比發現,在模型的準確率、F1-score、AUC三個方面,邏輯回歸模型均高于其他五個模型,說明邏輯回歸模型在糖尿病預測的二分類問題上具有較高的穩定性和準確率,分類能力較好;決策樹模型的準確率和精準率均優于其他五個模型;XGBoost模型的召回率均優于其他五個模型。

4 結 論

本文構建了基于多種機器學習算法的預測模型,可應用于根據用戶輸入的特征數據進行糖尿病風險預測。該模型以皮馬印第安人糖尿病數據集為研究對象,通過數據預處理技術得到724條有效數據集,通過數據特征分析得出糖尿病患病率與血糖濃度的相關性最大,與皮膚厚度不相關,相關性排在其次的是年齡與懷孕次數。采用網格搜索方法進行交叉驗證以尋找算法的最佳參數組合超參數,使用超參數建立基于決策樹、邏輯回歸、XGBoost等六種分類算法的預測模型。最后使用測試集進行預測模型的預測性能評價,通過對模型準確率、精準率、召回率、F1-score、AUC等指標的分析,發現使用決策樹算法構建的模型取得的預測結果準確率最高,使用邏輯回歸模型預測糖尿病則有較好的分類能力和較高的穩定性。

參考文獻:

[1] 王富軍,王文琦.《中國2型糖尿病防治指南(2020年版)》解讀 [J].河北醫科大學學報,2021,42(12):1365-1371.

[2] 張玉璽,賀松,尤思夢.集成學習糖尿病預測中的應用 [J].智能計算機與應用,2019,9(5):176-179.

[3] 歐陽平,李小溪,冷芬,等.機器學習算法在體檢人群糖尿病風險預測中的應用 [J].中華疾病控制雜志,2021,25(7):849-853+868.

[4] 王鑫,廖彬,李敏,等.融合LightGBM與SHAP的糖尿病預測及其特征分析方法 [J].小型微型計算機系統,2022,43(9):1877-1885.

[5] 劉睿懿,曲翌敏,劉璇,等.集成學習和決策樹在2型糖尿病前瞻性風險評估中的應用 [J].中國慢性病預防與控制,2023,31(4):278-283+288.

[6] 柴鑫,王雅晨,王金平,等.糖尿病預防研究的創舉:大慶糖尿病預防研究36年回顧 [J].科學通報,2023,68(Z2):3834-3845.

[7] 馬良玉,於世磊,趙尚羽,等.基于隨機搜索算法優化XGBoost的過熱汽溫預測模型 [J].華北電力大學學報:自然科學版,2021,48(4):99-105.

[8] 蒲海坤,高鑫,桑鑫.基于C4.5數據挖掘算法研究與實現 [J].科學技術創新,2021(23):55-56.

[9] 張小雪,張祖婷,劉莉,等.基于決策樹和邏輯回歸算法的輔具適配模型研究與實現 [J].中國康復醫學雜志,2023,38(8):1108-1113.

[10] 張春富,王松,吳亞東,等.基于GA_Xgboost模型的糖尿病風險預測 [J].計算機工程,2020,46(3):315-320.

作者簡介:凌雄娟(1980—),女,漢族,廣東廉江人,高級工程師,碩士,研究方向:人工智能、數據分析與應用。

收稿日期:2024-01-22

基金項目:廣東省普通高校創新團隊項目(2022KCXTD060);佛山市教育局2021年高校教師特色創新研究項目(2021DZXX02);佛山職業技術學院2023年質量工程項目(2023SZTD-004)

主站蜘蛛池模板: 国产福利2021最新在线观看| 人人91人人澡人人妻人人爽| 91蝌蚪视频在线观看| 女人av社区男人的天堂| 欧美日韩中文字幕二区三区| 亚洲国产黄色| 亚洲国产成人麻豆精品| 亚洲无码一区在线观看| 亚洲日韩国产精品无码专区| 国产一二视频| 国产香蕉一区二区在线网站| 亚洲午夜综合网| 国产人妖视频一区在线观看| 国产日韩欧美一区二区三区在线 | 天天综合网站| 91娇喘视频| 99中文字幕亚洲一区二区| 欧美日韩在线亚洲国产人| 国产精品第| 国产成本人片免费a∨短片| 97国产在线观看| 一级毛片在线播放| 中文字幕无线码一区| 免费在线播放毛片| 免费在线看黄网址| 欧美福利在线播放| 色播五月婷婷| 欧洲熟妇精品视频| 青青草国产精品久久久久| 看你懂的巨臀中文字幕一区二区| 亚洲国产天堂久久九九九| 黄色网页在线观看| 又爽又大又黄a级毛片在线视频 | 国产精品原创不卡在线| 亚洲婷婷六月| 国产一级毛片在线| 99视频在线免费观看| 国产玖玖视频| 玖玖免费视频在线观看| 国产va在线观看免费| 人妻精品全国免费视频| 91精品情国产情侣高潮对白蜜| 国产成人亚洲欧美激情| 国产AV无码专区亚洲A∨毛片| 自拍欧美亚洲| 99re在线视频观看| 久久久精品国产SM调教网站| 国产白浆视频| 性视频一区| 91精品网站| 在线国产毛片手机小视频| 亚洲男人的天堂在线观看| 色窝窝免费一区二区三区| 精品剧情v国产在线观看| 亚洲精品欧美日韩在线| 老司机精品一区在线视频| 91蜜芽尤物福利在线观看| 高清乱码精品福利在线视频| 国产91丝袜在线播放动漫 | 亚洲国产欧美中日韩成人综合视频| 久青草免费在线视频| 伊人激情久久综合中文字幕| 综合社区亚洲熟妇p| 亚洲性色永久网址| 亚洲一区二区三区国产精华液| 色哟哟国产成人精品| 国产拍在线| 亚洲色图在线观看| 91香蕉视频下载网站| 黄色网页在线观看| 亚洲欧美综合在线观看| 国产AV毛片| 国产午夜人做人免费视频| 亚洲日韩精品综合在线一区二区| jijzzizz老师出水喷水喷出| 亚洲欧洲日韩综合色天使| 被公侵犯人妻少妇一区二区三区| 真人高潮娇喘嗯啊在线观看| 91精品免费久久久| 中文字幕一区二区人妻电影| 欧美成人看片一区二区三区| 亚洲AV无码久久天堂|