• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      結合批歸一化的多層感知機糖尿病預測診斷模型①

      2020-05-22 04:47:20胡清禮胡建強余小燕
      計算機系統(tǒng)應用 2020年5期
      關鍵詞:診斷模型神經(jīng)元準確率

      胡清禮,胡建強,余小燕

      1(廈門理工學院 計算機與信息工程學院,廈門 361024)

      2(上海工程技術大學 電子電氣工程學院,上海 201620)

      1 引言

      糖尿病是一個日益嚴重的全球問題,對患者的日常生活和身體健康影響巨大,甚至威脅患者的生命.近年來,糖尿病的患病率愈來愈高,根據(jù)國際糖尿病聯(lián)盟最新數(shù)據(jù)指出,2017年全球約4.25 億成人患糖尿病,若按照當前趨勢持續(xù)下去,預計到2045年,糖尿病患病人數(shù)將達到6.29 億[1].早期發(fā)現(xiàn)糖尿病,盡早進行強化治療,可以使接近50%的患者病情緩解,早期發(fā)現(xiàn)便可通過運動飲食將血糖控制在正常范圍.

      糖尿病誘發(fā)的病因病理復雜,醫(yī)學界尚未建立統(tǒng)一的預測模型,可以完全科學的早期發(fā)現(xiàn)、診斷糖尿病.國內(nèi)外許多研究者圍繞糖尿病的早期預測展開許多有益的工作.具體包括:

      文獻[2]采用樸素貝葉斯、支向量機和決策樹等算法,在PIMA 測試集上獲得76.3%的準確率.文獻[3]提出基于支持向量機的糖尿病預測模型,采用徑向基作為核函數(shù),通過三折交叉驗證和網(wǎng)格搜索確定最優(yōu)懲罰參數(shù)和核參數(shù),在PIMA 測試集上獲得78.39%的準確率.文獻[4]提出基于奇異值(Singular Value Decomposition,SVD)和Boosting 級聯(lián)學習的糖尿病風險分級模型,提高預測的智能性和準確率.文獻[5]提出結合遺傳算法和樸素貝葉斯算法的糖尿病預測模型,即利用遺傳算法進行特征選擇,樸素貝葉斯進行分類決策,在PIMA 數(shù)據(jù)集上獲得了78.7%的準確率.上述模型由于精度較低,很難滿足實際的需求.

      文獻[6]提出概率人工神經(jīng)網(wǎng)絡方法(PNN)診斷2 型糖尿病,即一個隱藏層,神經(jīng)元數(shù)量與訓練數(shù)據(jù)集數(shù)量相等,該方法的預測精度略有提高,但泛化能力低,影響模型精度提升.文獻[7]使用多層感知機(MLP)模型,由于層數(shù)或神經(jīng)元的個數(shù)過多反而更容易產(chǎn)生過擬合現(xiàn)象,泛化能力不足,在PIMA 數(shù)據(jù)集上測試精度不高.過擬合使得模型對未知數(shù)據(jù)擬合效果差,導致泛化能力下降,影響整個模型的精度.文獻[8]采用Dropout方法解決多層感知機過擬合問題,該方法根據(jù)設置的失活率使神經(jīng)元隨機失活,減少神經(jīng)元參加訓練,以此來降低過擬合問題,該方法在一定程度上抑制了過擬合,提高了模型的精度.為了保證模型具有較高的精度,需要能夠?qū)W習到更多的特征,勢必會增加網(wǎng)絡的層數(shù)和神經(jīng)元個數(shù),導致整個網(wǎng)絡訓練速度變慢,即收斂速度慢.

      多層感知機的隱藏層能夠分析并學習數(shù)據(jù)的特征,通常其層數(shù)越多或?qū)由仙窠?jīng)元個數(shù)越多,該網(wǎng)絡表征數(shù)據(jù)特征的能力就越強,但事實上并非如此,其層數(shù)或神經(jīng)元的個數(shù)過多反而更容易產(chǎn)生過擬合現(xiàn)象,使得模型對未知數(shù)據(jù)擬合效果非常差.因此,在保證能夠充分學習到數(shù)據(jù)特征的前提下,解決多層感知機的過擬合現(xiàn)象是一個重要問題.此外,隨著多層感知機的層數(shù)增加,每一層的參數(shù)更新會導致數(shù)據(jù)分布在輸入和輸出時發(fā)生變化,經(jīng)過多個隱藏層后,最后面的隱藏層的輸入數(shù)據(jù)分布會發(fā)生劇烈的變化,這就使得靠后的隱藏層需要不斷去重新適應靠前的隱藏層的參數(shù)更新,這會嚴重影響模型的收斂速度,甚至由于數(shù)據(jù)分布不一致從而導致模型泛化能力不足.

      針對上述問題,本文將批歸一化算法與多層感知機結合,構建新的多層感知機深度神經(jīng)網(wǎng)絡模型,該模型在每個隱藏層后面增加一個批歸一化層,該批歸一化層對前一層的輸出進行歸一化處理并學習其分布特性,保證模型中數(shù)據(jù)分布的一致性.經(jīng)過實驗驗證,結合批歸一化算法的多層感知機深度神經(jīng)網(wǎng)絡模型不僅具有較好的泛化能力,而且收斂速度快,同時其準確率較上述方法有明顯提高.

      2 結合批歸一化算法的多層感知機

      為解決多層感知機的過擬合問題和數(shù)據(jù)分布不一致帶來的負面影響,將批歸一化算法與多層感知機結合,解決多層感知機在訓練過程中的過擬合問題,同時減小數(shù)據(jù)分布不一致帶來的不利影響,提高模型在訓練過程中的收斂速度.批歸一化算法最初由Ioffe 等[9]提出,該算法能夠?qū)斎霐?shù)據(jù)的分布狀況進行學習,保證數(shù)據(jù)分布的一致性,減小數(shù)據(jù)分布改變對訓練的影響,加快訓練速度[10].此外,該算法能夠在一定程度上消除使用Dropout 的情況,即降低過擬合,提高模型的泛化能力[11].

      結合批歸一化算法的多層感知機模型如圖1所示.對數(shù)據(jù)集進行預處理,使模型學習效果更好.采用zscore 方法將數(shù)據(jù)轉換為均值為0,方差為1 的正態(tài)分布;然后將預處理后的數(shù)據(jù)送至網(wǎng)絡的輸入層,依次通過3 個隱藏層,對數(shù)據(jù)的特征進行提取,每個隱藏層后面都有一個批歸一化層,對每個隱藏層輸出的分布進行學習和調(diào)整,最后在輸出層進行分類決策得出結果.

      圖1 結合批歸一化算法的深度神經(jīng)網(wǎng)絡模型

      批歸一化算法單獨地對每一個神經(jīng)元的特征進行批歸一化處理,并且每次只在一個訓練用的mini-batch上計算均值和方差,對數(shù)據(jù)歸一化的處理就是讓數(shù)據(jù)的均值為0,方差為1,計算公式如式(1)所示.

      其中,x=(x(1),···,x(d))是輸入數(shù)據(jù),是對應的x(k)批歸一化處理后的數(shù)據(jù).輸出在經(jīng)過歸一化處理后會改變學習到的特征分布,批歸一化算法引入的可學習的重構參數(shù) γ、β,通過重構變換恢復出原始學到的特征,其表達式如(2)所示.

      結合批歸一化算法的多層感知機網(wǎng)絡結構在每個隱藏層后有一個批歸一化層,對隱藏層的輸出進行處理,可將其與隱藏層看成一個結合層.其結構如圖2所示.

      圖2 結合批歸一化算法的多層感知機網(wǎng)絡結構

      假設一個mini-batch 有m個 數(shù)據(jù),第l層經(jīng)過一個mini-batch 后,該層的第i個神經(jīng)元有m個輸出,則對應的均值、方差以及歸一化處理如式(3)、式(4)以及式(5)所示.

      其中,Yil為第l層 第i個神經(jīng)元經(jīng)過批歸一化層后的輸出,γli和βli分別為第l層第i個神經(jīng)元的兩個重構參數(shù),每一個神經(jīng)元都有一對這樣的參數(shù),且這些參數(shù)可以根據(jù)前一層輸出的分布特點進行學習,通過這兩個參數(shù),使得輸出經(jīng)過歸一化處理后,依然能夠恢復原先的分布.

      隱藏層與批歸一化層形成的結合層輸出為:

      最后一層輸出層y為:

      式中,g為輸出層的激活函數(shù),用于決策最終的類別.

      3 糖尿病診斷模型

      使用結合批歸一化算法的多層感知機建立糖尿病診斷模型,該模型搭建及訓練所用電腦的CPU 配置為Intel Core i7-8750H@2.20 GHz,16 GB 內(nèi)存,模型采用Keras[12],sklearn[13]進行實現(xiàn),并且使用Tensorflow GPU 加速訓練.整個模型建立流程圖如圖3所示.

      圖3 糖尿病診斷模型建立流程圖

      糖尿病診斷模型建立流程:

      (1)定義網(wǎng)絡隱藏層個數(shù)及神經(jīng)元個數(shù).給定網(wǎng)絡的初始隱層層數(shù)和神經(jīng)元個數(shù),通過后續(xù)的訓練和測試效果,對隱層層數(shù)和神經(jīng)元個數(shù)做加減,使得模型效果好.

      (2)開始訓練過程,反復訓練,直到符合要求.將前期劃分出來的訓練集輸入網(wǎng)絡中,并在訓練集中劃分0.1 作為驗證集微調(diào)模型的超參數(shù),直到訓練誤差達到最小值或誤差不再變化,訓練結束.

      (3)將符合要求的網(wǎng)絡及訓練參數(shù)保存下來,用于測試集.對第(2)步中訓練好的網(wǎng)絡,保存下來,使用測試集評估網(wǎng)絡的性能.

      (4)重復(1)到(3)尋找最優(yōu)參數(shù)組合.

      4 實驗

      4.1 訓練數(shù)據(jù)集

      本文建立的模型采用PIMA 印第安糖尿病數(shù)據(jù)集(PIDD)[14]進行訓練.該數(shù)據(jù)集中共有768 條數(shù)據(jù),9 個屬性,數(shù)據(jù)集屬性如表1所示.該數(shù)據(jù)集中的第9 個屬性是分類標簽,其值為0 和1,0 表示沒有糖尿病,1 表示患有糖尿病.標簽為0 的有500 個,為1 的有268 個.前8 個屬性是每個樣本的特征.

      表1 PIDD 屬性

      4.2 數(shù)據(jù)預處理

      為了提升模型的訓練效果,對該數(shù)據(jù)集進行一些預處理.通過pandas 中的describe 函數(shù)對整個數(shù)據(jù)集進行描述,如表2所示.可以看出數(shù)據(jù)集中各屬性的取值范圍較大.而且該數(shù)據(jù)集屬性量綱不統(tǒng)一,對模型的訓練影響較大.因此,本文采用sklean 框架中StandardScaler標準化方法,其通過刪除均值和縮放到單位方差來標準化特征,原理公式為:

      其中,z為標準化后的值,s為方差,x為樣本特征值,u為平均值.

      表2 PIDD 的描述信息

      箱型圖[15]是目前最受歡迎的數(shù)據(jù)分析圖之一,如圖4所示,該圖能夠直觀表示數(shù)據(jù)離散分布狀況,上四分位數(shù)和下四分位數(shù)的間距越小,說明分布越集中,否則越分散.箱型圖的一個優(yōu)點就是基本不受異常值的影響,因此常用來判斷數(shù)據(jù)集中是否存在異常值.

      圖4 箱型圖

      對PIDD 應用箱型圖,其結果如圖5所示,可以直觀的看出數(shù)據(jù)的分布狀況,雖然箱型圖對數(shù)據(jù)分析比較客觀,但是同樣需要結合實際情況對箱型圖給出的異常值進行判斷,比如懷孕次數(shù)中的3 個異常值是符合實際的,還有皮脂厚度、遺傳系數(shù)以及年齡等,考慮到實際情況,這些數(shù)據(jù)不予處理.綜合箱型圖和實際情況,對數(shù)據(jù)進行處理,因為PID 樣本量比較小,若將包含異常樣本的數(shù)據(jù)刪除,將會丟失其他特征信息.因此,在本文中,對異常值按照缺失值處理,即使用平均值來替換異常值.除了異常值,該數(shù)據(jù)集中同樣包含許多缺失值,對這些缺失值用該列的平均值進行替換.

      圖5 PIDD 中前8 個屬性的箱型圖

      4.3 模型訓練

      將處理后的數(shù)據(jù)按照9:1 比例劃分為訓練集和測試集,即訓練集有691 個樣本,測試集有77 個樣本.將訓練集送至本文搭建好的神經(jīng)網(wǎng)絡中進行訓練,訓練過程中劃分0.1 的訓練集做驗證集,調(diào)整網(wǎng)絡超參數(shù).經(jīng)過多次實驗調(diào)參,選擇最優(yōu)模型,即3 個隱藏層,各層神經(jīng)元個數(shù)分別是16、32、8,輸出層僅有1 個神經(jīng)元.隱藏層的激活函數(shù)選用Relu 激活函數(shù),該激活函數(shù)能夠使得輸出的均值更接近于0,輸出層的激活函數(shù)選用Softplus 激活函數(shù),該激活函數(shù)更接近生物學的模型且具有一定的稀疏能力,可進一步優(yōu)化網(wǎng)絡性能[16].采用均方誤差作為損失函數(shù),優(yōu)化器采用Adadelta 優(yōu)化算法.

      4.4 實驗驗證及結果分析

      本文共做了3 組實驗,分別是(a)、(b)和(c).(a)組實驗即為本文建立的糖尿病診斷模型;(b)組實驗采用文獻[8]中提出的模型;(c)組實驗將(a)組中所有批歸一化層去除,其他參數(shù)不變,作為一個MLP.3 組實驗的數(shù)據(jù)集以及預處理都相同.

      3 組實驗訓練過程中訓練和驗證的準確率與損失值的變化如圖6所示.圖6(a)中訓練和驗證的損失值在175 輪訓練時趨于穩(wěn)定,且兩者基本重合,網(wǎng)絡擬合效果好;圖6(b)中訓練和驗證的損失值在300~350 輪之間已經(jīng)穩(wěn)定,較(a)組收斂稍慢;圖6(c)中很明顯的可以看出,其訓練的收斂速度遠遠慢于(a)組,說明結合批歸一化算法的多層感知機建立的糖尿病診斷模型收斂速度顯著提高.

      由圖6中的點虛線和粗實線(即訓練準確率和驗證準確率)可以看出,(c)組實驗訓練集準確率遠遠高于驗證集,即模型對訓練集過度擬合,泛化能力最差;(a)組和(b)組兩者之間誤差較小,泛化能力好,說明批歸一化算法能夠在一定程度上消除使用Dropout 的情況,提高模型的泛化能力.

      3 組實驗的實驗結果如表3所示,分別記錄各組實驗的訓練準確率、測試準確率以及AUC 值.由表中數(shù)據(jù)可知,(a)組實驗效果最好.

      綜上所述,本文建立的糖尿病診斷模型的使用批歸一化算法,提高了模型的收斂速度,同時其泛化性能有明顯提高.

      5 結束語

      本文主要研究多層感知機在構建糖尿病診斷模型中出現(xiàn)的過擬合導致的泛化能力不足以及收斂速度慢等問題,提出將批歸一化算法運用到多層感知機中,利用批歸一化算法能夠?qū)W習數(shù)據(jù)分布,提高訓練速度等優(yōu)點,重新構建新的多層感知機深度神經(jīng)網(wǎng)絡模型.批歸一化算法通過對隱藏層的輸出數(shù)據(jù)進行批歸一化處理,并能夠?qū)W習數(shù)據(jù)的分布,保證了網(wǎng)絡每次輸出的分布一致,加快收斂速度,并在一定程度上能夠緩解過擬合問題.本文通過對比實驗,在PIMA 數(shù)據(jù)集上驗證,提出的神經(jīng)網(wǎng)絡模型在訓練集和測試集分別達到了88.28%和92.21%的準確率,泛化能力好且收斂速度比其他兩組實驗快,可見基于批歸一化算法改進的多層感知機神經(jīng)網(wǎng)絡不僅能夠有效降低神經(jīng)網(wǎng)絡的過擬合問題,提高模型的泛化能力.同時,改進的多層感知機神經(jīng)網(wǎng)絡模型相比較其他方法在精度上有所提高.下一步工作將利用本文建立的糖尿病診斷模型與實際應用結合起來,對模型的適用性作進一步探究.

      圖6 3 組實驗訓練過程中訓練和驗證的準確率和損失值的變化

      表3 3 組實驗的實驗結果記錄

      猜你喜歡
      診斷模型神經(jīng)元準確率
      多源領域自適應的往復壓縮機在線診斷方法
      石油機械(2025年2期)2025-03-12 00:00:00
      《從光子到神經(jīng)元》書評
      自然雜志(2021年6期)2021-12-23 08:24:46
      乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
      健康之家(2021年19期)2021-05-23 11:17:39
      不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
      2015—2017 年寧夏各天氣預報參考產(chǎn)品質(zhì)量檢驗分析
      CD4細胞計數(shù)聯(lián)合IGRA預測AIDS/Ⅲ型TB影像診斷模型分析
      甘肅科技(2020年20期)2020-04-13 00:30:56
      高速公路車牌識別標識站準確率驗證法
      躍動的神經(jīng)元——波蘭Brain Embassy聯(lián)合辦公
      一種電網(wǎng)通信網(wǎng)絡的故障檢測方法及系統(tǒng)
      基于二次型單神經(jīng)元PID的MPPT控制
      電源技術(2015年5期)2015-08-22 11:18:38
      东阿县| 迁安市| 呼玛县| 濮阳县| 石渠县| 宜宾县| 鄂托克前旗| 汉寿县| 长沙市| 三亚市| 随州市| 新余市| 曲阜市| 禹城市| 太谷县| 巨鹿县| 灵台县| 汤阴县| 密山市| 神池县| 兴海县| 玉林市| 普兰店市| 马公市| 来宾市| 阜南县| 宿迁市| 玉树县| 五莲县| 廉江市| 山西省| 江北区| 方正县| 剑河县| 长丰县| 岑巩县| 嘉黎县| 洪泽县| 云浮市| 宕昌县| 怀宁县|