王 鑫,廖 彬,李 敏,2,孫瑞娜,3,4
1(新疆財經(jīng)大學(xué) 統(tǒng)計與數(shù)據(jù)科學(xué)學(xué)院,烏魯木齊 830012)
2(新疆大學(xué) 信息科學(xué)與工程學(xué)院,烏魯木齊 830008)
3(中國科學(xué)院 信息工程研究所,北京 100093)
4(中國科學(xué)院大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,北京 100093)
E-mail:liaobin665@163.com
目前,醫(yī)療領(lǐng)域是人工智能技術(shù)發(fā)展相對較快的一個領(lǐng)域,科技型公司推出醫(yī)療人工智能產(chǎn)品,傳統(tǒng)的醫(yī)療企業(yè)也大量引入人工智能專業(yè)人才和技術(shù),人工智能在醫(yī)療領(lǐng)域的應(yīng)用范圍得到不斷的拓寬,“智慧醫(yī)院”,“數(shù)字診療”等成為醫(yī)療新方向.機器學(xué)習是當下最炙手可熱的人工智能技術(shù),各類預(yù)測算法被廣泛應(yīng)用于醫(yī)療大數(shù)據(jù),有利于對各種疾病進行探測[1,2]、診斷[3,4]、治療[5]和管理[6,7]工作.
糖尿病嚴重危害著人們的身體健康,是一種常見的慢性疾病,根據(jù)國際糖尿病聯(lián)盟協(xié)會(IDF)的數(shù)據(jù)統(tǒng)計:2019年全球大約有4.63億成年人(20歲~79歲)患有糖尿?。灰呀?jīng)導(dǎo)致420萬人死亡(1)https://www.idf.org/aboutdiabetes/what-is-diabetes/facts-figures.html,其中中國作為世界上糖尿病患病人數(shù)最多(大約1.16億人)的國家,如果能夠充分利用機器學(xué)習算法提高糖尿病預(yù)測模型的性能表現(xiàn)以及模型的可解釋性,這對于輔助醫(yī)生進行糖尿病診斷工作具有重要的現(xiàn)實意義.雖然目前已有不少這方面的研究工作,例如基于支持向量機(SVM)[8,9]、樸素貝葉斯[10]、決策樹[10-12]、深度神經(jīng)網(wǎng)絡(luò)(DNN)[13]、隨機森林[14,15]、Xgboost[16]等的機器學(xué)習模型,分別在皮馬印第安人糖尿病數(shù)據(jù)集、加拿大保健預(yù)防監(jiān)測中心等數(shù)據(jù)集上建立了預(yù)測模型,但是這些傳統(tǒng)模型在準確率(Accuracy)、精確率(Precision)等性能指標上基本都在90%以下,還未達到投入臨床應(yīng)用的性能要求.在此背景下,為了進一步提高對糖尿病預(yù)測的準確率、精確率、召回率(Recall)、F1值等性能指標,本文基于集成學(xué)習LightGBM算法,使用美國國家糖尿病、消化及腎臟疾病研究所提供的皮馬印第安人糖尿病數(shù)據(jù)集(Pima Indians Diabetes Data Set,以下簡稱Pima糖尿病數(shù)據(jù)集)作為研究對象,在對其進行數(shù)據(jù)預(yù)處理、模型訓(xùn)練、超參數(shù)優(yōu)化、泛化能力分析、模型性能分析、模型解釋等工作的基礎(chǔ)上,建立了性能更為出色的預(yù)測模型.本文工作主要集中在以下3個方面:
1)基于LightGBM算法建立了糖尿病預(yù)測模型,并通過對比實驗,比較了其他模型在準確率、精確率、召回率(Recall)、F1值等指標上的表現(xiàn),驗證了本文模型的性能優(yōu)越性.
2)通過網(wǎng)格搜索技術(shù)對模型超參數(shù)進行調(diào)優(yōu),進一步提高模型性能表現(xiàn),同時通過對比各模型的學(xué)習曲線,證明了本文模型在樣本量較少時,同樣擁有不錯的泛化能力.
3)在利用LightGBM算法保證預(yù)測性能的基礎(chǔ)上,為了增強模型的可解釋性,基于SHAP模型對影響糖尿病的關(guān)鍵因素進行了分析,為糖尿病的醫(yī)療診斷提供了決策參考.
近年來,隨著信息科技化的不斷發(fā)展,國內(nèi)外學(xué)者致力于利用機器學(xué)習算法輔助醫(yī)療診斷,對糖尿病預(yù)測研究方面進行深入探索,提出的部分預(yù)測模型及其在實驗當中的表現(xiàn)效果匯總?cè)绫?所示.其中,Annja等[8]提出一種基于SVM的糖尿病預(yù)測模型,在Pima數(shù)據(jù)集上進行驗證工作,模型的準確率達到78%.Aiswarya等[10]分別使用決策樹和樸素貝葉斯兩個模型對糖尿病的診斷進行分類,同樣應(yīng)用在Pima糖尿病數(shù)據(jù)集上,決策樹和樸素貝葉斯的分類準確率分別為74.8%和79.5%.與文獻[10]類似,Ashiquzzaman等[13]利用深度神經(jīng)網(wǎng)絡(luò)(DNN)訓(xùn)練預(yù)測模型,在Pima數(shù)據(jù)集上將模型準確率指標提升到88.41%.
表1 已有分類算法相關(guān)研究綜合比較Table 1 Comprehensive comparison of classification algorithms
李桃等[14]基于隨機森林(RandomForest),在上海交大第六人民醫(yī)院的2型糖尿病臨床數(shù)據(jù)上建立預(yù)測模型,預(yù)測精度為80%,優(yōu)于傳統(tǒng)的邏輯回歸算法.曲文龍等[16]采用Xgboost算法作用到6000多個體檢人員的真實糖尿病體檢數(shù)據(jù)中,對比SVM和隨機森林的平均絕對百分比誤差下降到8.75%.張富春等人[17]在原有集成算法Xgboost的基礎(chǔ)上,利用遺傳算法調(diào)參得到改進模型GA_Xgboost模型,對天池競賽平臺提供的糖尿病臨床數(shù)據(jù)進行血糖值預(yù)測,算法的均方誤差優(yōu)于其他機器學(xué)習算法的同時縮短了調(diào)參時長.2016年P(guān)erveen[18]等對比分析了bagging與boosting兩類集成學(xué)習算法,在加拿大保健預(yù)防監(jiān)測中心的數(shù)據(jù)集上的效果,結(jié)果發(fā)現(xiàn)adaboost優(yōu)于bagging算法.已有基于集成算法的工作相比傳統(tǒng)的機器學(xué)習模型,在準確率、精確率等性能表現(xiàn)上更為出色,但是同樣也存在兩個方面的問題:1)由于模型復(fù)雜度增加,當數(shù)據(jù)樣本量不足時,容易出現(xiàn)模型泛化能力較差的現(xiàn)象;2)諸如文獻[14-16,19]中采用的諸如Xgboost、隨機森林等集成學(xué)習,以及文獻[13]中的深度神經(jīng)網(wǎng)絡(luò)均為黑箱機器學(xué)習模型,這使得建立的預(yù)測模型缺乏可解釋性.
為了解決已有研究中存在的以上兩點問題,本文在用LightGBM算法保證預(yù)測性能的基礎(chǔ)上,引入SHAP增強模型的可解釋性.本文與已有的研究工作不同之處在于:1)預(yù)測模型不同,其中文獻[8-10]都是以Pima數(shù)據(jù)集為研究對象,采用SVM、決策樹、樸素貝葉斯以及深度神經(jīng)網(wǎng)絡(luò)作為預(yù)測模型,本文基于集成學(xué)習的LightGBM算法在準確率等性能指標上性能更優(yōu);2)由于文獻[14-16]中均為黑箱的機器學(xué)習模型,對建立的預(yù)測模型缺乏可解釋性,為了解決這一問題,本文通過引入SHAP模型,能夠?qū)继悄虿〉挠绊懸蛩剡M行分析,為糖尿病診斷建議提供了決策參考.
本章3.1節(jié)對LightGBM算法原理進行概述,3.2節(jié)對SHAP模型進行了介紹,闡述了基于LightGBM的糖尿病風險預(yù)測及特征分析模型的實現(xiàn)過程,本文所用到的符號及其解釋如表2所示.
表2 符號說明表Table 2 Symbol description
整個基于LightGBM的糖尿病風險預(yù)測及特征分析模型的構(gòu)建流程如圖1所示,主要包括數(shù)據(jù)處理、模型訓(xùn)練、超參數(shù)優(yōu)化、模型性能比較分析、模型解釋分析等核心模塊.
圖1 糖尿病風險預(yù)測及特征分析模型流程圖Fig.1 Flow chart of diabetes risk prediction and characteristic analysis model
本實驗選取LightGBM算法對Pima數(shù)據(jù)集進行是否患有糖尿病進行分類預(yù)測建模,輕量級梯度提升樹(Light Gradient Boosting Machine,LightGBM)是一種基于決策樹的梯度提升框架,起源于微軟亞洲研究院在NIPS發(fā)表的系列文獻[20,21].其優(yōu)點包括計算準確率高、運行速度快、支持并行處理、占用內(nèi)存少和適用于大規(guī)模數(shù)據(jù)處理等,相較于現(xiàn)有的集成算法Boosting在模型的精度表現(xiàn)和運算速度上都有較大的提升,目前被廣泛地應(yīng)用到排序、分類等多種機器學(xué)習任務(wù)中,且表現(xiàn)優(yōu)異.
GOSS(Gradient-based One-Side Sampling)算法主要是基于訓(xùn)練梯度的樣本采樣,其主要思想是保留了所有大梯度樣本,同時對小梯度樣本進行采樣,目的是用于減少訓(xùn)練樣本的數(shù)量.采用原始的直方圖算法計算節(jié)點的信息增益:令O為決策樹在一個固定節(jié)點上的訓(xùn)練數(shù)據(jù)集,此節(jié)點在值為d處分割特征j的信息增益定義為:
(1)
(2)
其中A是大梯度樣本集,B是小梯度樣本集當中隨機采樣的結(jié)果,Al=xi∈A:xij≤d表示左子節(jié)點被保留的重要樣本集合,Ar=xi∈A:xij>d表示右子節(jié)點被保留的重要樣本集合;Br=xi∈B:xij≤d表示左子節(jié)點被保留的不重要樣本集合,Br=xi∈B:xij>d表示左子節(jié)點被保留的不重要樣本集合,糖尿病預(yù)測模型訓(xùn)練算法流程如算法1所示.
算法1.Prediction model training algorithm
輸入:
Parameter1:I:訓(xùn)練數(shù)據(jù),d:迭代步數(shù)
Parameter2:a:大梯度數(shù)據(jù)的采樣率
Parameter3:b:小梯度數(shù)據(jù)的采樣率
Parameter4:loss:損失函數(shù),L:弱學(xué)習器
輸出:
Parameter:訓(xùn)練好的模型
1.models←{}
3.topN←a×len(I)
4.randN←b×len(I)
5.fori=1 toddo
6.preds←models.predict(I)
7.g←loss(I,preds)
8.w←{1,1,…}
9.sorted←GetSortedIndices(abs(g))
10.topSet←sorted[1:topN]
11.randSet←RandomPick(sorted[topN:len(I)],rand(N)
12.usedSet←topSet+randSet
13.w[randSet]×=fact//Assign weight fact to the small gradient data.
14.newModel←L(I[usedSet],-g[usedSet],w[usedSet])
15.models.append(newModel)
16.returnmodels
基于LightGBM算法進行訓(xùn)練可以得到預(yù)測精度較高的預(yù)測模型,但是LightGBM相較于傳統(tǒng)的統(tǒng)計模型,在模型的可解釋性方面表現(xiàn)較差,幾乎是一個黑箱模型.因此,本文采用SHAP值對模型中對糖尿病的影響因素進行解釋分析,用來增強模型的可解釋性.SHAP模型第一次出現(xiàn)在2017年,Lundberg和Lee[22]提出了SHAP值這一廣泛適用的方法,用以解釋各種模型(分類以及回歸),特別是難以理解的黑箱模型.SHAP值的作用主要是用于量化每個特征對模型預(yù)測所做的貢獻,源自博弈論中Shapley value.其基本的設(shè)計思想是:首先計算一個特征加入到模型當中時的邊際貢獻,然后計算該特征在所有特征序列中不同的邊際貢獻,最后計算該特征的SHAP值,即該特征所有邊際貢獻的均值.
假設(shè)第i個樣本為xi,第i個樣本的第j個特征為xij,特征的邊際貢獻為mcij,邊的權(quán)重為wi,其中f(xij)為xij的SHAP值,例如第i個樣本的第1個特征的SHAP值計算如下:
f(xi1)=mci1w1+…+mci1wn
(3)
模型對該樣本的預(yù)測值為yi,整個模型的基線(通常是所有樣本的目標變量的均值)為ybase,那么SHAP value服從以下等式:
yi=ybase+f(xi1)+f(xi2)+…+f(xis)
(4)
f(xi,1)就是第i個樣本中第1個特征對最終預(yù)測值yi的貢獻值,每個特征的SHAP值表示以該特征為條件時模型預(yù)測的變化.對于每個功能,SHAP值都說明了其所做貢獻,以說明實例的平均模型預(yù)測與實際預(yù)測之間的差異.當f(xi,1)>0,說明該特征提升了預(yù)測值,反之,說明該特征使得貢獻降低.LightGBM利用傳統(tǒng)的Feature Importance只能反映出特征的重要程度,但并不清楚該特征對預(yù)測結(jié)果的具體影響力.SHAP值計算的最大優(yōu)勢就在于能夠反映出樣本中每一個特征對預(yù)測結(jié)果的影響力,而且還可以指出其影響程度的正負性.
本文主要采用5項常見的分類性能指標來評估模型的優(yōu)劣,分別是準確率(Accuracy)、精確率(Precision)、召回率(Recall)、F1值和AUC值.其中準確率(Accuracy)作為最基本的一個評價指標,是針對所有樣本而言,預(yù)測分類正確所占總體的百分比,公式表達見公式(5).精確率(Precision)是僅針對預(yù)測結(jié)果而言的指標,分類為正類的樣本中預(yù)測分類正確所占的百分比,見公式(6).召回率(Recall)是針對原始樣本而言,真實的正樣本中預(yù)測分類正確所占百分比,也被稱為查全率,其計算表達見公式(7).F1值是一個綜合了Precision與Recall產(chǎn)出結(jié)果的指標,取值范圍從0~1,其中1代表模型的輸出最佳,反之,0代表模型的輸出結(jié)果最差.通常將關(guān)注的類作為正類,其余類為負類,分類器在測試集數(shù)據(jù)上預(yù)測是否準確,可通過如表3所示的混淆矩陣進行表示.
表3 分類結(jié)果混淆矩陣Table 3 Confusion matrix of classification results
Accuracy、Precision、Recall和F1值作為評價指標具體公式如下:
(5)
(6)
(7)
(8)
除了上述的4個評價指標之外,還用到了一些綜合指標來評價模型性能,本文用到ROC曲線和AUC值.受試者工作特征曲線(Receiver Operating Characteristic Curve,ROC)利用混淆矩陣中的參數(shù),逐步增大分類閾值,通過計算真正例率(TPR)和假正例率(FPR),繪制而成,其中:
TPR(TruePositiveRate)=TP/(TP+FN),即將正例分為正例的概率.
FPR(FalesPositiveRate)=FP/(FP+TN),即將負例分為正例的概率.
AUC值(Area Under Curve)是ROC曲線下方的面積總和,AUC值越大,表示模型的精度也越高.
本實驗的Pima數(shù)據(jù)集來源于美國國家糖尿病、消化及腎臟疾病研究所所提供的美國亞利桑那州中南部的皮馬印第安人糖尿病數(shù)據(jù)集(Pima Indians Diabetes Data Set).該地區(qū)擁有較為詳細的糖尿病數(shù)據(jù)資料的原因,是因為該種族是糖尿病的高發(fā)人群,有超過30%的皮馬人都患有糖尿病.Pima糖尿病數(shù)據(jù)集一共有8個特征和1個標簽,共768例樣本,數(shù)據(jù)基本特征屬性如表4所示.
表4 Pima 數(shù)據(jù)基本特征Table 4 Basic characteristics of Pima data
在Pima數(shù)據(jù)集中268例被診斷為患有糖尿病,占總體的34.9%,500例不患糖尿病患病,占總體的65.1%.使用python當中pandas庫describe函數(shù)對糖尿病原始數(shù)據(jù)進行描述性統(tǒng)計分析,結(jié)果如表5所示.可以發(fā)現(xiàn),各特征字段存在缺失值、數(shù)量不一、單位不同,均值和方差相差甚遠,數(shù)據(jù)預(yù)處理作為機器學(xué)習應(yīng)用過程中不可或缺的環(huán)節(jié),關(guān)系著實驗結(jié)果的好壞,因此需要對糖尿病數(shù)據(jù)進行缺失值填充、異常值分析、數(shù)據(jù)變換、數(shù)據(jù)標準化等特征工程操作.
表5 糖尿病數(shù)據(jù)描述性統(tǒng)計Table 5 Descriptive statistics of diabetes data
1)缺失值填充
糖尿病數(shù)據(jù)進行缺失值可視化處理,結(jié)果見圖2,白色代表數(shù)據(jù)缺失,全為黑色則表示特征完整,白色相對黑色占比越多證明缺失情況越嚴重.可以看出特征Glucose、BloodPressure、BMI、SkinThickness和Insulin都存在缺失,其中SkinThickness和Insulin缺失程度較大,高達29.6%和48.7%,其他特征沒有缺失值.對于缺失特征的填充工作,按照病人是否患有糖尿病進行中位數(shù)填充,將數(shù)據(jù)分為患病和不患病兩類,根據(jù)患病類別的中位數(shù)和不患病類別的中位數(shù)進行分開填充.
圖2 特征缺失情況Fig.2 Feature missing
2)異常值分析
采用數(shù)字異常值(Numeric Outlier)方法篩選數(shù)據(jù)中的異常值,通過IQR(Inter Quartile Range)計算得到四分位數(shù)間距,將四分位數(shù)之外的數(shù)視為異常值.為了給異常值同時也是真實值保留一定的緩沖空間,將異常值較多的特征進行數(shù)據(jù)變換處理.
3)數(shù)據(jù)標準化
由于各個屬性特征的單位不同,為了消除由于單位不同的影響,解決不同屬性之間的差異性和不可比性,需要在實驗前對數(shù)據(jù)進行標準化處理,由于Pima數(shù)據(jù)集中存在的離群值較多,所以使用穩(wěn)健標準化(RobustScaler)對數(shù)據(jù)進行標準化處理,能夠最大限度地保留數(shù)據(jù)集中的異常值(離群點),根據(jù)四分間距(IQR)縮放數(shù)據(jù),來弱化異常值的影響.RobusScaler的計算方法如下:
(9)
其中,vi表示數(shù)據(jù)集中的某個值,median表示數(shù)據(jù)的中位數(shù),IQR是數(shù)據(jù)的四分間距值.標準化后的數(shù)據(jù)為如表6所示.
表6 標準化后的Pima數(shù)據(jù)Table 6 Standardized Pima data
本節(jié)將本文的LGBM與已有的基于邏輯回歸(LR)[23]、KNN、SVM[8]、隨機森林(RF)[14]、決策樹[10]以及Xgboost[16]6種模型進行對比.為了提高模型之間對比的公平性及可靠性,實驗中采用了十折交叉驗證方法進行性能評估,如圖3所示為以Accuracy值作為評價指標并繪制箱型圖,初步查看預(yù)測精度的分布情況,LGBM模型比已有工作中的6種模型要高.
圖3 箱型圖比較Fig.3 Comparison of box diagrams
本實驗采用準確率(Accuracy)、精確率(Precision)、召回率(Recall)、F1值和AUC值5項常用的評價指標來評估模型的優(yōu)劣.表7和圖4是上述7種算法加上PLGBM(參數(shù)優(yōu)化后的LGBM,請參見4.4節(jié))的各項評價指標綜合對比結(jié)果.
表7 模型性能對比Table 7 Performance comparison of model
圖4 各算法性能對比Fig.4 Performance comparison of various algorithms
根據(jù)表7和圖4的實驗結(jié)果可知,其中LGBM的預(yù)測準確率為90.9 %,精確率為88.6%,召回率85.4%,F(xiàn)1值為87%,AUC值為0.96,PLGBM在準確率、精確度、F1值和AUC值上都有提高.相比其他機器學(xué)習算法,集成類算法RF、Xgboost、LGBM在預(yù)測準確率上表現(xiàn)更好,都在90%以上,體現(xiàn)了集成算法的優(yōu)越性.LGBM在各項性能上與Xgboost算法最為接近,但LGBM表現(xiàn)更優(yōu),性能提高約0.3%~2.1%,參數(shù)優(yōu)化后性能提高約0.3%~4.5%,原因在于LGBM保留了小樣本的信息增益,并且還具有支持高效并行的優(yōu)勢;Xgboost的預(yù)排序算法不同于GOSS采樣策略,需要遍歷每一個特征值,并且每遍歷一次都會根據(jù)需要進行一次分裂增益的計算,預(yù)排序后還需要記錄特征值及其對應(yīng)樣本的統(tǒng)計值索引,而 LGBM 使用了直方圖算法將特征值轉(zhuǎn)變?yōu)閎in值,且不再需要記錄特征到樣本的索引,并且在訓(xùn)練過程中采用互斥特征捆綁算法減少了特征數(shù)量,將空間復(fù)雜度從O(2×#data)降低為O(#bin),極大地減少了內(nèi)存的消耗.由此可見,在7個算法中,LGBM的結(jié)果更為準確,且占用內(nèi)存更低,運行速率更快,其穩(wěn)定性也相比其他算法更加優(yōu)秀.
LightGBM有6個核心參數(shù),不同的參數(shù)具有不同的功能,這些參數(shù)是否設(shè)定合理,直接影響模型的好壞,傳統(tǒng)的調(diào)參方法依賴經(jīng)驗判斷和遍歷實驗,本文結(jié)合傳統(tǒng)方法和網(wǎng)格搜索方法,幫助確定最佳參數(shù)如表8所示.
表8 LightGBM最優(yōu)參數(shù)及默認值Table 8 LightGBM best parameters and default values
將標準化后的Pima數(shù)據(jù)中的614條用作訓(xùn)練數(shù)據(jù)集,剩余的154條作為測試集,對比LGBM的默認參數(shù)組合和調(diào)參實驗過后的最佳參數(shù)組合,對患者未來5年內(nèi)是否會患糖尿病進行預(yù)測.實驗結(jié)果顯示,調(diào)參過后的PLGBM模型精確度提升至91.6%,明顯優(yōu)于默認參數(shù)下的精確度90.9%,模型的ROC曲線比較如圖5所示.
圖5 LightGBM算法調(diào)參前后ROC曲線比較Fig.5 Comparison of ROC curves before and after parameter tuning
判斷模型是否好,除了在訓(xùn)練集上表現(xiàn)良好,還要在交叉驗證中具有良好的泛化表現(xiàn),對新鮮的樣本具有適應(yīng)能力.本節(jié)主要通過學(xué)習曲線來分析來對模型進行收斂分析,圖6為LightGBM與其他模型學(xué)習曲線的對比,其中包括KNN、SVM和Xgboost的學(xué)習曲線.
從圖6中可以發(fā)現(xiàn)4種算法從擬合趨勢上看,隨著樣本量的不斷增大,模型的交叉驗證分數(shù)呈逐漸增加的趨勢,測試得分只有Xgboost出現(xiàn)性能略微下降的現(xiàn)象.而Xgboost與LightGBM模型在任何樣本量情況下,擬合情況與其他兩個算法都存在差距,擬合效果都要優(yōu)于KNN和SVM.從擬合趨勢上看,隨著樣本量的不斷增大,LightGBM逐步趨于穩(wěn)定,并且模型能夠達到更優(yōu)的擬合效果.
圖6 LightGBM 與各分類模型的學(xué)習曲線對比Fig.6 Performance comparison of LightGBM with Kr 、SVR and Xgboost
圖7顯示了SHAP摘要圖,該圖根據(jù)要素對影響是否患有糖尿病的因素重要性進行排序.從圖7可以看到:Insulin(血清胰島素)、Glucose(葡萄糖濃度)、Age(年齡)、BMI(身體質(zhì)量指數(shù))、DiabetesPedigreeFunction(糖尿病家族影響指數(shù),即遺傳因素)等特征的差異對模型的影響較顯著,并且這些因素對患有糖尿病都具有負面影響,隨著該值的增加,患有糖尿病的風險越大.
圖7 SHAP特征分析Fig.7 Feature analysis
圖8根據(jù)更改模型當中的特定特征,在x軸繪制了特征的值,在y軸上繪制特征的SHAP值,進行SHAP特征依賴分析,分別選取了Insulin(血清胰島素)、Glucose(葡萄糖濃度)、Age(年齡)、DiabetesPedigreeFunction(糖尿病家族影響指數(shù),即遺傳因素)作為指定特征繪制圖像.在圖8中,Insulin(血清胰島素)、Glucose(葡萄糖濃度)、Age(年齡)和DiabetesPedigreeFunction(糖尿病家族影響指數(shù),即遺傳因素)都隨著值的增加SHAP值也隨之增加,對促成糖尿病具有正向影響.
圖8 SHAP特征依賴分析Fig.8 Feature dependence analysis
根據(jù)圖9,SHAP模型、LightGBM模型和Xgboost模型的特征重要性排序可以看出,排名的特征順序并不完全相同,可以得出影響是否患有糖尿病的關(guān)鍵因素包括:Insulin(血清胰島素)、Glucose(葡萄糖濃度)、Age(年齡)、DiabetesPedigreeFunction(糖尿病家族影響指數(shù),即遺傳因素)、BMI(身體質(zhì)量指數(shù))以及SkinThickness(皮層厚度).其中3種算法都將Insulin(血清胰島素)、Glucose(葡萄糖濃度)、Age(年齡)排在了前3位,可見這3個因素是影響是否患有糖尿病最關(guān)鍵的因素,胰島素和葡萄糖濃度正是糖尿病的重要參考指標,研究結(jié)果表明,血清胰島素、葡萄糖濃度是糖尿病血糖監(jiān)測的重要臨床指標,也是診斷患者是否患糖尿病的重要依據(jù),如果空腹血糖大于7.0mmol/L或餐后兩小時血糖大于11.1mmol/L,就存在患病的可能[24].年齡的因素應(yīng)該也要列入醫(yī)療診斷的考慮當中,糖尿病的發(fā)病率還會隨著年齡的增長而增長.其次DiabetesPedigreeFunction(糖尿病家族影響指數(shù),即遺傳因素)、BMI(身體質(zhì)量指數(shù))以及SkinThickness(皮層厚度),其重要程度在LightGBM和Xgboost算法中排名均在前,此外其他因素需要在診斷時進行綜合分析.
圖9 特征重要性(分別是SHAP、LightGBM、Xgboost)Fig.9 Feature importance(Respectively SHAP,LightGBM,Xgboost)
中國作為糖尿病患病人數(shù)最多的國家,利用機器學(xué)習算法提高糖尿病預(yù)測模型性能及可解釋性,對于輔助醫(yī)生的診斷工作具有重要的現(xiàn)實意義.在此背景下,為了進一步解決已有基于集成算法的相關(guān)工作中存在的泛化能力不足以及解釋力不強的問題,本文基于LightGBM算法構(gòu)建糖尿病預(yù)測模型,同時引入SHAP模型進一步增強模型的可解釋性.首先,在對Pima糖尿病數(shù)據(jù)集進行特征工程的基礎(chǔ)上,將處理后的數(shù)據(jù)作為LightGBM訓(xùn)練模型的輸入,將訓(xùn)練后的模型用于預(yù)測是否患有糖尿??;然后,通過網(wǎng)格搜索方法尋找LightGBM算法的最優(yōu)參數(shù),并且通過與邏輯回歸(LR)、KNN算法、SVM、隨機森林(RF)、決策樹以及Xgboost等六種機器學(xué)習模型的對比實驗,證明了LightGBM算法的有效性.最后利用SHAP模型進行特征解釋分析,同時通過Xgboost和LightGBM的特征重要性排序,識別出了影響患糖尿病的關(guān)鍵因素是Insulin(血清胰島素)、Glucose(葡萄糖濃度)、Age(年齡)、DiabetesPedigreeFunction(糖尿病家族影響指數(shù),即遺傳因素)、BMI(身體質(zhì)量指數(shù))以及SkinThickness(皮層厚度);模型可解釋性的增強、預(yù)測性能的提高,對降低機器學(xué)習輔助診斷糖尿病的誤診率,提高診斷效率,具有重要的應(yīng)用價值.
下一步工作主要是將模型推廣到臨床實踐場景,并根據(jù)真實應(yīng)用場景的需求,對特征工程、模型訓(xùn)練、超參數(shù)優(yōu)化、誤差及偏差分析等內(nèi)容進一步優(yōu)化.