劉 洋,宋其江,宋佳音
(東北林業(yè)大學(xué)機(jī)電工程學(xué)院,黑龍江 哈爾濱 150040)
腦卒中是在臨床表現(xiàn)上高復(fù)發(fā)率和高致殘率的一類疾病,中國卒中協(xié)會(huì)發(fā)布的研究報(bào)告顯示,腦卒中已經(jīng)成為威脅我國國民生命安全的第一大疾病。腦卒中疾病發(fā)病快,致死致殘率高,一旦發(fā)病,對(duì)心腦血管損傷嚴(yán)重。對(duì)于腦卒中這類疾病,預(yù)防大于治療,如果能夠?qū)δX卒中進(jìn)行及早預(yù)防及干預(yù),將會(huì)有重要意義[1]。卒中可能隨時(shí)發(fā)生,醫(yī)學(xué)專家知道哪些人最容易發(fā)生腦卒中,但是醫(yī)生不能同時(shí)監(jiān)控所有病人。機(jī)器學(xué)習(xí)模型可以實(shí)時(shí)跟蹤數(shù)千名患者,讓醫(yī)生有機(jī)會(huì)跟上需求。本文通過對(duì)已有的神經(jīng)網(wǎng)絡(luò)進(jìn)行參數(shù)的改良,提高原有模型的準(zhǔn)確率,增加表現(xiàn)模型性能的曲線進(jìn)而構(gòu)建一個(gè)更加貼切的模型來預(yù)測(cè)腦卒中的風(fēng)險(xiǎn)。
數(shù)據(jù)集的數(shù)據(jù)來源是5 111 個(gè)身份不同,家庭情況不同的人(數(shù)據(jù)集及原模型作者是來自索馬里的fedesoriano)。他們身體的各項(xiàng)指標(biāo)和生活習(xí)慣也有所不同,5 000 多條數(shù)據(jù)足以滿足訓(xùn)練和驗(yàn)證模型的需要。在他們的身體數(shù)據(jù)中,被普遍認(rèn)為和腦卒中有關(guān)系,被記錄成為特征的如下:ID,性別,年齡,高血壓,心臟病,婚姻狀況,工作類型,居住地,平均血糖水平,身體質(zhì)量指數(shù),是否吸煙[2]。研究證明,全球范圍內(nèi),性別在腦卒中負(fù)擔(dān)比例上沒有顯著差異,但在低收入和中等收入國家,男性行為風(fēng)險(xiǎn)集群的人口歸因分?jǐn)?shù)(PAF)大于女性。隨著年齡的增長(zhǎng)[3],身體機(jī)能也有所下降,卒中的風(fēng)險(xiǎn)也會(huì)隨之升高,尤其50 歲之后,卒中患病率顯著增加。研究表明,BMI 是可歸因DALY 最重要的五個(gè)風(fēng)險(xiǎn)因素之一,占比23.5%,卒中患者BMI 的DALY 增加比例高達(dá)46%,位居第一;高血壓是最重要的卒中影響因素[4],它與出血性卒中的相關(guān)性更強(qiáng);心臟病包括房顫、冠心病、瓣膜病和心肌梗死等心臟相關(guān)病癥,可令缺血性卒中風(fēng)險(xiǎn)增加3.49倍。平均血糖水平是為了更好地顯示患者患糖尿病的情況,是正常還是糖尿病前期,還是已經(jīng)有糖尿病,比簡(jiǎn)單地分為是否有糖尿病更加具體。很多研究證實(shí),糖尿病是僅次于高血壓的重要卒中風(fēng)險(xiǎn)因素,且與缺血性卒中的關(guān)系更為密切。在居住地的劃分上,所有的研究對(duì)象被劃分成兩種,城市和農(nóng)村,城市和農(nóng)村的生活環(huán)境有不小的差異,這有可能對(duì)卒中造成影響[5]。
本文使用的數(shù)據(jù)庫涉及到患者一些身體數(shù)據(jù),比起姓名,用ID 來區(qū)分不同的人更為合理[6]。為了使數(shù)據(jù)庫的數(shù)據(jù)能夠輸入神經(jīng)網(wǎng)絡(luò),本文對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行了一些預(yù)處理。
第一步是數(shù)據(jù)清理,數(shù)據(jù)清理可以通過填補(bǔ)空缺值,刪除或者解決數(shù)據(jù)的不一致性來達(dá)到清理數(shù)據(jù)的目的[7]。例如將文中的ID 列刪除是為了減少不必要的工作量,因?yàn)镮D 列僅僅是為了區(qū)分不同的健康數(shù)據(jù),對(duì)于模型數(shù)據(jù)的訓(xùn)練并沒有其他的意義。本研究對(duì)缺失數(shù)據(jù)的處理是用其他數(shù)據(jù)的平均值來進(jìn)行填充,這也是最為普遍的一種方法[8]。
第二步是數(shù)據(jù)規(guī)范,數(shù)據(jù)采集的信息是多樣化的,為了其能在神經(jīng)網(wǎng)絡(luò)中得到更好的處理,需要將數(shù)據(jù)的格式統(tǒng)一。在本文中將性別、婚姻狀況、住宅類型和吸煙狀況的相關(guān)信息由字符串形式改為數(shù)字形式,便于更好地輸入神經(jīng)網(wǎng)絡(luò)。將平均血糖水平、年齡、身體質(zhì)量指數(shù)等一些出現(xiàn)連續(xù)數(shù)值的指標(biāo)按照一定的醫(yī)學(xué)標(biāo)準(zhǔn)分為幾類,再分別對(duì)應(yīng)成‘0’‘1’‘2’這樣的數(shù)字用來區(qū)分不同的身體狀況。其中,平均血糖指標(biāo)“avg_glucose_level”根據(jù)美國糖尿病協(xié)會(huì)給出的標(biāo)準(zhǔn)分為不同的類型。小于或等于100 的值被認(rèn)為是正常的,大于100 和小于125 的值被認(rèn)為是糖尿病前期,大于125 的值被認(rèn)為是糖尿病。
神經(jīng)網(wǎng)絡(luò)模擬是機(jī)器學(xué)習(xí)算法的一種,通過模擬高度復(fù)雜、非線性、自適應(yīng)和并行的人腦系統(tǒng)功能,構(gòu)成彼此相互連接的神經(jīng)系統(tǒng),用來進(jìn)行復(fù)雜的計(jì)算和建模。人工神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)是由隱層和隱節(jié)點(diǎn)的個(gè)數(shù)決定的,在對(duì)原有的神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn)的同時(shí)也要考慮到網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜度和模型的訓(xùn)練效率[9]。如果結(jié)構(gòu)過于簡(jiǎn)單,學(xué)習(xí)收斂速度快,不一定達(dá)到預(yù)想的精度,如果過于復(fù)雜,預(yù)測(cè)原有的神經(jīng)網(wǎng)絡(luò)輸入層有64 個(gè)神經(jīng)元,由relu 函數(shù)激活,由統(tǒng)一的內(nèi)核初始化,前三個(gè)隱藏層的個(gè)數(shù)分別是32、16、10,所用的激活函數(shù)都是Relu 函數(shù),最后的輸出層則只有一個(gè)神經(jīng)元,輸出層的激活函數(shù)是Sigmoid 函數(shù),使用Adam 優(yōu)化器以0.001 的學(xué)習(xí)率學(xué)習(xí),以5 批大小對(duì)該模型進(jìn)行30 個(gè)歷元的訓(xùn)練。
神經(jīng)網(wǎng)絡(luò)參數(shù)改進(jìn)前后的模型準(zhǔn)確率和損失情況見圖1。訓(xùn)練成功后,該模型報(bào)告的損失值為37.3%,準(zhǔn)確率為83.7%。如第103 頁圖2 所示,本研究對(duì)參數(shù)進(jìn)行了相應(yīng)的調(diào)整,增加了神經(jīng)網(wǎng)絡(luò)的層數(shù)和每層神經(jīng)元的個(gè)數(shù),訓(xùn)練的批次變成了epochs=200,batch_size=15,同時(shí)也兼顧了網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜度和訓(xùn)練效率,成功提高了模型的準(zhǔn)確率。
圖1 模型改進(jìn)前后對(duì)比圖
圖2 對(duì)神經(jīng)網(wǎng)絡(luò)參數(shù)的改進(jìn)
準(zhǔn)確率是評(píng)價(jià)一個(gè)模型性能的重要指標(biāo),是對(duì)模型預(yù)測(cè)準(zhǔn)確度的評(píng)判標(biāo)準(zhǔn),即分類模型判斷正確的結(jié)果占所有觀測(cè)率的比值,其計(jì)算公式為
式中:TP 表示正類判斷為正類;FP表示負(fù)類判斷為正類;FN表示正類判斷為負(fù)類;TN 表示負(fù)類判斷為負(fù)類。
為了更好地評(píng)估模型,本研究增加了ROC 曲線,用圖像來更加直觀地描述模型的性能。1960 年開始,ROC 曲線開始被應(yīng)用于醫(yī)療領(lǐng)域。ROC曲線是一種比較模型效果坐標(biāo)圖的可視化工具,用來展示靈敏度和特異度之間的相互關(guān)系[10]。靈敏度(TPR)是對(duì)真實(shí)正例覆蓋率的測(cè)量,指的是觀察為正例的結(jié)果中,模型判斷為正例的比率,公式為
特異度也叫真陰性率(TNR),是對(duì)真實(shí)負(fù)例的預(yù)測(cè)覆蓋面的度量,指觀測(cè)值為負(fù)例的結(jié)果中,模型判斷為負(fù)例的占比,公式為
ROC 曲線以靈敏度為縱坐標(biāo),特異度為橫坐標(biāo),通過設(shè)定出不同的臨界值,得出每個(gè)點(diǎn)對(duì)應(yīng)的坐標(biāo),最后繪制曲線,通過曲線下面積值(AUC),用來評(píng)價(jià)模型的準(zhǔn)確率AUC 的值越大,證明模型的效果越好。ROC 分析最早在信號(hào)檢測(cè)中出現(xiàn),作用是選擇出最優(yōu)的信號(hào)偵測(cè)模型。由于ROC 分析不受成本和收益的影響,所以評(píng)估的效果也更加中立。AUC 曲線有兩種極端情況,一種是所有樣本都正確,AUC=1;另一種是分類幾乎沒有發(fā)揮作用,等價(jià)于隨機(jī)分類,AUC=5,但是實(shí)際情況可能是RUC 曲線的值大于0.5 小于1。
此外ROC 曲線能夠很好地體現(xiàn)自適應(yīng)合成抽樣對(duì)模型的效果,如圖3 所示,自適應(yīng)合成抽樣是原有的模型中作者為了處理不平衡類采用的一種方法。這個(gè)方法通過插值法創(chuàng)建不平衡類的更多樣本來生成合成數(shù)據(jù),調(diào)整網(wǎng)絡(luò)參數(shù)對(duì)ROC 曲線的影響并不大,但是對(duì)于體現(xiàn)自適應(yīng)合成抽樣的作用卻有很好的效果。
圖3 ROC 曲線對(duì)自適應(yīng)合成抽樣的體現(xiàn)
對(duì)于腦卒中這種突發(fā)類且傷害大的疾病,現(xiàn)階段還沒有理想的治療方法,所以是預(yù)防大于治療,有效的預(yù)測(cè)模型能夠更好地保障大眾的健康,也讓醫(yī)學(xué)知識(shí)與深度學(xué)習(xí)的結(jié)合更好地造福大眾。已經(jīng)對(duì)腦卒中做預(yù)測(cè)模型的研究不在少數(shù),本文找到一個(gè)已有的神經(jīng)網(wǎng)絡(luò)模型,通過調(diào)節(jié)參數(shù)使得模型準(zhǔn)確率更高,通過添加AUC 曲線評(píng)估模型,使得模型能夠更好地預(yù)測(cè)腦卒中數(shù)據(jù)。