雷 麗,李運明
(1.西南交通大學(xué)數(shù)學(xué)學(xué)院,四川 成都 611756;2.西部戰(zhàn)區(qū)總醫(yī)院衛(wèi)勤部醫(yī)療管理科,四川 成都 610083)
隨著大數(shù)據(jù)技術(shù)的廣泛應(yīng)用,已有學(xué)者將大數(shù)據(jù)方法用于臨床醫(yī)學(xué)研究[1-3],基于機器學(xué)習(xí)方法建立預(yù)測模型已取得一定成果。此外,隨著脂肪肝檢出率逐年上漲,許多學(xué)者圍繞脂肪肝防治工作也展開了大量研究[4-6]。脂肪肝是彌漫性肝病之一,前期臨床反應(yīng)不明顯,若不加以治療可能會演變成嚴重肝病。但由于脂肪肝具有可逆性,研究基于縱向體檢數(shù)據(jù),采用機器學(xué)習(xí)算法建立較為精準的脂肪肝風險預(yù)測模型用于脂肪肝相關(guān)指標定期篩查,為脂肪肝易發(fā)人群健康管理及風險評估提供參考,提高了脂肪肝體檢工作效率并減少相關(guān)醫(yī)療費用支出,具有較大的實用性。
研究數(shù)據(jù)源自2006—2016年在西部戰(zhàn)區(qū)總醫(yī)院(原成都軍區(qū)總醫(yī)院)健康體檢中心定期健康體檢人群的體檢數(shù)據(jù)(體檢中心為該類人群建有專門軟件用于管理體檢數(shù)據(jù)資料),并且循證醫(yī)學(xué)文獻資料檢索結(jié)果、臨床指南等。
將體檢數(shù)據(jù)中共24個指標納入動態(tài)分析,賦值情況[7-10]如表1所列。
表1 變量賦值情況Table 1 Variable assignment
研究采用Python3中的Scikitlearn機器學(xué)習(xí)軟件進行統(tǒng)計分析,運用Logistic回歸算法進行特征選擇,確定脂肪肝相關(guān)指標?;?006—2016年縱向體檢隊列資料抽樣產(chǎn)生不同樣本量的模擬數(shù)據(jù),運用決策樹(DT,decision tree)、XGBoost(extreme gradient boosting)、Bagging、隨機森林(RF,random forest)、人工神經(jīng)網(wǎng)絡(luò)(ANN,artificial neural network)和支持向量機(SVM,support vector machine) 6種機器學(xué)習(xí)算法建立脂肪肝預(yù)測模型并評價預(yù)測價值。計量資料分析采用t/u檢驗,計數(shù)資料分析采用卡方檢驗,以P<0.05為差異有統(tǒng)計學(xué)意義。
基于2006年橫斷面體檢數(shù)據(jù),以是否檢出脂肪肝作為因變量,以高血壓、血紅蛋白、總膽紅素、谷丙轉(zhuǎn)氨酶等指標是否異常作為自變量(變量及賦值情況見表1)。將單因素Logistic回歸有統(tǒng)計學(xué)意義的影響因素篩選出來(篩選結(jié)果見表2),以便確定納入機器學(xué)習(xí)算法的脂肪肝風險變量。
表2 Logistic回歸模型變量篩選結(jié)果Table 2 Variable screening results of Logistic regression model
既往脂肪肝預(yù)測模型以傳統(tǒng)Logistic回歸模型為主,旨在篩選脂肪肝影響因素,由于Logistic模型要求變量獨立且不能處理變量共線性的問題[11],因此具有一定的局限性。已有學(xué)者將機器學(xué)習(xí)算法運用到臨床醫(yī)學(xué)領(lǐng)域,如朱立強等[12]采用支持向量機建立了Ⅰ類切口手術(shù)患者使用抗菌藥物合理性的評價模型,模型預(yù)測精度明顯高于其他文獻報道結(jié)果;何玉花等[13]采用XGBoost集成算法建立了大于胎齡兒的風險預(yù)測模型;李桃等[14]采用隨機森林算法建立了2型糖尿病并發(fā)頸動脈斑塊的預(yù)測模型。而機器學(xué)習(xí)算法在脂肪肝預(yù)測領(lǐng)域應(yīng)用極少,因此研究引入機器學(xué)習(xí)算法能夠建立更為精準的脂肪肝預(yù)測模型,為脂肪肝防治工作增加新思路。
機器學(xué)習(xí)算法在脂肪肝預(yù)測領(lǐng)域的應(yīng)用效果在體檢數(shù)據(jù)中未得到驗證,所以需要通過模擬實驗進行評估,探究脂肪肝預(yù)測模型的穩(wěn)定性。為了保證變量之間的協(xié)方差關(guān)系以及模擬數(shù)據(jù)與實際數(shù)據(jù)的一致性,研究基于實際數(shù)據(jù)抽樣產(chǎn)生模擬數(shù)據(jù)[15]。
模擬實驗方案如下:
(1) 提取觀察對象一一對應(yīng)的ID號作為抽樣號碼集;
(2) 提取體檢數(shù)據(jù)中的檢測指標數(shù)據(jù)和時間作為新的數(shù)據(jù)集;
(3) 從抽樣號碼集中隨機抽取N(100,200,500)個樣本;
(4) 以Logistic回歸模型為模擬框架,給定特定的系數(shù)生成因變量,以均勻分布產(chǎn)生截尾時間,根據(jù)截尾時間和生存時間確定截尾情況;
(5) 抽取的結(jié)果作為模擬數(shù)據(jù)集,重復(fù)上述過程100次,得到100個模擬數(shù)據(jù)集,即模擬100次;
(6) 基于不同樣本量的抽樣模擬數(shù)據(jù),分別建立6種機器學(xué)習(xí)預(yù)測模型,并比較6種機器學(xué)習(xí)算法的預(yù)測性能。
由于精確率(precision)和召回率(recall)在實際情況中會出現(xiàn)矛盾的情況,所以采用精確率和召回率的調(diào)和平均值(F-measure)以及標準均方誤差(NMSE,normalized mean square error)作為衡量機器學(xué)習(xí)算法模擬實驗效果的評價指標。
F-measure值計算公式為
NMSE的計算公式為
當樣本量N分別取100、200、500,6種機器學(xué)習(xí)算法分別建立脂肪肝分類預(yù)測模型,重復(fù)模擬100次F-measure值的平均值如表3所列。由表3可見采用XGBoost算法建立脂肪肝預(yù)測模型的F-measure值在3種不同樣本量情況下都最大。
表3 機器學(xué)習(xí)算法建模F-measure值Table 3 F-measure values modelled by machine learning algorithm
當樣本量N分別取100、200、500,6種機器學(xué)習(xí)算法分別建立脂肪肝分類預(yù)測模型,重復(fù)模擬100次的NMSE的平均值如表4所列。由表4可見當N取100和200時,利用XGBoost算法建模的NMSE值最小,當樣本量N取500時,支持向量機算法建模的NMSE值最小。通過模擬實驗,選擇XGBoost機器學(xué)習(xí)算法建立脂肪肝分類預(yù)測模型。
表4 機器學(xué)習(xí)算法建模NMSE平均值Table 4 NMSE values modelled by machine learning algorithm
2006—2016年健康體檢中心連續(xù)11年總參檢24 106人次。男性21 777人次(90.34%),女性2 329人次(9.66%),研究人群中最小年齡34歲,最大103歲,平均年齡(67.79±12.90)歲。根據(jù)世界衛(wèi)生組織有關(guān)老年人的定義,結(jié)合實際數(shù)據(jù)情況,將老年年齡的界限定為65歲[16]:年齡<65歲非高齡組10 774人(44.7%),年齡≥65歲高齡組13 332人(55.3%)。近年來,脂肪肝檢出率呈逐年攀升趨勢,采用卡方趨勢性檢驗(χ2=228.71,P<0.001),脂肪肝男性檢出率(15.6%)大于女性(9.3%)(χ2=7.899,P<0.05);高齡組脂肪肝檢出率(12.8%)小于非高齡組(18.4%)(χ2=17.578,P<0.001)。
基于2006—2016年縱向體檢隊列數(shù)據(jù),采用交叉驗證法將其分為訓(xùn)練集和測試集。訓(xùn)練集用以訓(xùn)練機器學(xué)習(xí)算法,測試集用以評估模型的擬合效果與預(yù)測性能。采用ROC曲線下面積、準確率、召回率等指標評價6種機器學(xué)習(xí)算法建立脂肪肝預(yù)測模型的預(yù)測效果,具體數(shù)值如表5所列,ROC曲線對比情況見圖1。
表5 評價指標對比情況Table 5 Comparison of evaluation indicators
由表5和圖1可知,XGBoost算法建立的脂肪肝預(yù)測模型ROC曲線下面積為0.958,召回率為0.790,精確率為0.761,準確率為0.898,均高于其他機器學(xué)習(xí)算法。此外傳統(tǒng)Logistic回歸模型ROC曲線下面積為0.732,這遠小于XGBoost預(yù)測模型,二者比較差異有統(tǒng)計學(xué)意義(P<0.05)。支持向量機的召回率較低,為0.594,決策樹算法的精確率較低,為0.592。
圖1 機器學(xué)習(xí)算法預(yù)測模型ROC曲線對比Fig.1 ROC curve comparison diagram of prediction model of machine learning algorithm
綜上所述,機器學(xué)習(xí)算法構(gòu)建的脂肪肝預(yù)測模型綜合性能較強,其中XGBoost集成算法表現(xiàn)最佳,具有非常大的潛在應(yīng)用價值,值得更深一步研究。
機器學(xué)習(xí)算法具有限制少、預(yù)測準確的優(yōu)點。已有學(xué)者將機器學(xué)習(xí)算法用到多個領(lǐng)域建立預(yù)測模型,而將機器學(xué)習(xí)算法運用到脂肪肝等慢性疾病預(yù)測的相關(guān)研究較少。2006—2016年慢性病檢出率結(jié)果顯示,脂肪肝檢出率呈逐年上升趨勢,男性檢出率普遍高于女性。因此,建立精確有效的脂肪肝等慢性疾病的預(yù)測模型具有十分顯著的實用性,有助于相關(guān)健康部門加強脂肪肝等慢性病預(yù)防和治療的宣傳活動,提高人們生活質(zhì)量。
為了提高數(shù)據(jù)準確性,數(shù)據(jù)建模之前先進行缺失數(shù)據(jù)填補,并且利用單因素Logistic回歸將有統(tǒng)計學(xué)意義的影響因素篩選出來,消除部分混雜信息的干擾。Logistic回歸篩選出脂肪肝影響因素有:谷丙轉(zhuǎn)氨酶、空腹血糖、甘油三酯、血尿酸、白細胞、年齡和體重指數(shù)等。王菊芳等[17]運用人工神經(jīng)網(wǎng)絡(luò)篩選出脂肪肝危險因素為低密度脂蛋白、谷丙轉(zhuǎn)氨酶、空腹血糖、血尿酸、甘油三酯。除低密度脂蛋白外,其余變量都包含于本研究篩選結(jié)果中。
研究采用機器學(xué)習(xí)方法建立脂肪肝預(yù)測模型,初步嘗試將人工智能的技術(shù)引入脂肪肝等慢性疾病的預(yù)防工作中。通過模擬實驗從決策樹、XGBoost、Bagging、隨機森林、人工神經(jīng)網(wǎng)絡(luò)和支持向量機6種算法中選擇建立脂肪肝預(yù)測模型的機器學(xué)習(xí)算法。XGBoost集成算法F-measure值最大,標準均方誤差最小,所以選擇XGBoost算法建立脂肪肝預(yù)測模型。實例分析中XGBoost建立的脂肪肝預(yù)測模型ROC曲線下面積、召回率、精確率和準確率均高于其他機器學(xué)習(xí)算法,傳統(tǒng)Logistic回歸模型ROC曲線下面積也遠小于XGBoost預(yù)測模型。研究結(jié)果顯示XGBoost集成算法具有較好的綜合預(yù)測性能,適合用于脂肪肝等慢性病風險評估研究。在以后的研究中將繼續(xù)探討利用機器學(xué)習(xí)算法建立針對中國人群的其他常見慢性病風險預(yù)測模型,進一步為控制慢性病風險因素和精準醫(yī)療提供科學(xué)依據(jù)。