黃波, 楊正, 王超
(1.廣州市第八人民醫院,廣東,廣州 510060;2.福建師范大學,光電與信息科技學院,福建,福州 350007)
隨著現代信息技術和移動互聯網技術的飛躍式發展,各行各業的信息化和網絡化進程不斷加快。為了有效提升工作效率,緩解人力不足的壓力,政府、企業、醫院等紛紛開始利用互聯網技術進行管理改革。醫院管理系統中管理著海量患者隱私信息和技術資料,如果遭受網絡攻擊,將會對醫院帶來巨大經濟損失,對社會造成不良影響。所以開展醫院網絡異常流量的識別研究是非常重要的[1]。現有網絡異常流量識別主要有神經網絡、支持向量機、深度學習等[2-4]。為更好地提升醫院的網絡異常流量識別的準確度和識別效率,本文嘗試將灰狼優化算法(Grey Wolf Optimization,GWO)和深度置信網絡(Deep Belief Network,DBN)結合起來,提出一種基于GWO-DBN的醫院網絡異常流量識別方法。
在標準GWO算法[5]中,用α、β、δ和ω表示灰狼個體,其中α代表決策和管理狼群的個體,β和δ適應度低于α,ω為普通個體。GWO算法的具體行為有包圍、捕獵和攻擊。
灰狼包圍獵物[6]的數據模型可以表示為式(1)和式(2)。
D=|C·Xp(t)-X(t)|
(1)
X(t+1)=Xp(t)-A·D
(2)
式中,D表示狼群與獵物的距離,A=2a·r1-a,C=2·r2,t表示迭代的次數,Xp和X分別表示獵物和狼群的位置,r1、r2為隨機量,其取值范圍為[0,1],a的取值范圍為[0,2]。
假設α、β、δ代表灰狼個體的全局最優解、第二解和第三解,對其進行優化定位[7],則距離分別表示為式(3)—式(5)。
Dα=|C1·Xα-X|
(3)
Dβ=|C2·Xβ-X|
(4)
Dδ=|C3·Xδ-X|
(5)
式中,Dα、Dβ、Dδ表示個體α、β、δ與當前的位置X的近似距離,Xα、Xβ、Xδ依次表示全局最優解、第二解和第三解的位置;C1、C2、C3表示隨機向量,其取值范圍為[0,1]。X和X(t+1)表示分別為式(6)—式(8)和式(9)。
X1=Xα-A1·(Dα)
(6)
X2=Xβ-A2·(Dβ)
(7)
X3=Xδ-A3·(Dδ)
(8)
(9)
式中,X(t+1)表示更新解,A1、A2、A3表示隨機量。
攻擊是狼群捕食行為的最后階段,通過調節參數a即可實現攻擊。如果|A|≤1,狼群接近獵物,集中攻擊獵物(X*,Y*);反之,狼群逐漸遠離獵物。
DBN是由一系列受限玻爾茲曼機(Restricted Boltzmann Machine,RBM)堆疊而成的一種概率型深度學習網絡[8]。RBM由一層顯層v和一層隱層h組成,其中顯層v和隱層h二者的作用分別是用于輸入數據和作為特征收集器。RBM結構如圖1所示。

圖1 RBM結構圖
假若給定RBM的(v,h)的狀態,那么其能量函數如式(10)。
(10)
式中,θ={w,a,b}為待求參數,其中a和b分別為為顯層和隱層偏置,w為顯層和隱層間的連接權值。當θ確定后,根據能量函數可計算出(v,h)的聯合概率分布[9],如式(11),
(11)

當顯層v狀態確定后,隱層單元激活概率為式(12),
(12)
當隱層h狀態確定后,顯層單元激活概率為式(13),
(13)
當訓練樣本數為K時,通過求解對數似然函數最大化問題,可以確定參數θ,對數似然函數最大化問題的目標函數[10]如式(14)給出,
(14)
式中,maxL(θ)由隨機梯度法求取。
通過Gibbs采樣重復,可以得到RBM參數的更新規則如式(15)。
Δwij=ε(〈vihj〉data-〈vihj〉recon)
Δai=ε(〈vi〉data-〈vi〉recon)
(15)
Δbj=ε(〈hj〉data-〈hj〉recon)
式中,ε為RBM學習速率,〈·〉data和〈·〉recon分別為輸入數據和重構后數據的數學期望。
網絡流量異常識別本質上是一種多模式識別問題。針對DBN模型性能受到參數θ={W,a,b}選擇的影響[11],本文運用GWO算法優化選擇DBN模型的參數θ={W,a,b},目標函數選擇均方根誤差,如式(16)。
s.t.W∈[Wmin,Wmax]
(16)
a∈[amin,amax]
b∈[bmin,bmax]
式中,k為訓練樣本數量,x(k)和p(k)分別為DBN模型的實際值和預測值,Wmin、Wmax,amin、amax和bmin、bmax分別為W、a和b的下限和上限。
基于GWO-DBN的醫院網絡流量異常識別算法流程描述如下。
1)讀取醫院網絡流量異常數據,劃分訓練集和測試集,對數據進行歸一化處理如式(17)。
(17)
式中,x′表示歸一化后的數據,La、Lb分別表示歸一化之后的最小值和最大值,此處均取值為1,x、xmax和xmin表示原始數據、原始最大值、原始最小值。
2)GWO算法參數初始化處理:最大迭代次數Max gen、種群規模N、搜索維數D。隨機產生灰狼初始種群個體,每個灰狼種群個體位置為ELM模型參數組合(W、a、b)。
3)計算不同的灰狼個體的適應度fi,并對其進行排序,選出排名前三的個體,分別標記為Xα、Xβ和Xδ。
4)根據式(3)—式(5)計算α、β、δ與ω之間的距離,按照式(6)—式(8)和式(9)對獵物和狼的位置進行更新。
5)更新參數a、參數A、參數C。
6)判斷算法執行是否符合終止條件;如果已經達到最大的迭代次數,輸出DBN模型的最優參數解,否則返回繼續執行步驟3。
7)將最優參數(W、a、b)代入DBN模型進行醫院網絡流量異常識別?;贕WO-DBN的醫院網絡流量異常識別流程如圖2所示。

圖2 基于GWO-DBN的醫院網絡流量異常識別流程圖
為了驗證GWO-DBN進行醫院網絡異常流量識別的效果,在操作系統為Windows10、中央處理器為Intel core I5 2.4 GHz、內存8 GB的個人計算機上選擇MATLAB2015(a)進行仿真實驗。選擇KDD CUP99標準數據集為研究對象[12],其中網絡異常流量類型分為正常樣本、DoS、Probe、U2R和R2L,每個樣本包括34個數值型字段和7個符號型字段,共41個特征。不同樣本含義與分布如表1所示。

表1 樣本含義與分布
為了說明醫院網絡異常流量識別的效果,選擇準確率(accuracy,ACC)、檢測率(Detection Rate,DR)和誤報率(False Alarm Rate,FAR)作為評價指標,如式(18)—式(20)。
(18)
(19)
(20)
式中,TP、TN分別為異常流量和正常流量被正確識別的樣本數量,FP、FN分別為正常流量和異常流量被錯誤識別為異常流量、正常流量的樣本數量。
為了驗證GWO-DBN進行醫院網絡異常流量識別的效果,對比GWO-DBN、粒子群算法優化DBN(PSO-DBN)和DBN算法的識別效果,表2所示為不同算法的參數。PSO-DBN、GWO-DBN的收斂曲線分別如圖3(a)、圖3(b)所示,通過對比分析可以看出GWO-DBN算法的收斂效果更好,迭代5次后即開始收斂。

表2 參數設置

(a)PSO-DBN
GWO-DBN、PSO-DBN和DBN識別結果如表3所示,識別結果對比分析如圖4所示。

表3 識別結果

圖4 ACC、DR和FAR對比圖
由表3和圖4可知,GWO-DBN的準確率(ACC)為97.62%,優于PSO-DBN的92.85%和DBN的90.76%。GWO-DBN的檢測率(DR)為95.38%,優于PSO-DBN的93.10%和DBN的92.33%。GWO-DBN的誤報率(FAR)為4.15%,優于PSO-DBN的6.34%和DBN的7.46%。由ACC、DR以及FAR 3個評價指標的對比結果可知,GWO-DBN進行醫院網絡異常流量識別具有更高的準確率、檢測率和更低的誤報率。
為了提高醫院網絡異常流量識別的精度,針對DBN模型性能受權值和偏置參數的影響,運用灰狼算法對DBN模型的權值和偏置進行優化選擇,提出一種灰狼算法優化DBN的醫院網絡異常流量識別方法。研究結果表明,GWO-DBN進行醫院網絡異常流量識別具有更高的準確率、檢測率和更低的誤報率。