<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 模塊化免疫神經(jīng)網(wǎng)絡(luò)模型在計算機病毒分類檢測中的應(yīng)用

          模塊化免疫神經(jīng)網(wǎng)絡(luò)模型在計算機病毒分類檢測中的應(yīng)用

          作者: 時間:2016-10-22 來源:網(wǎng)絡(luò) 收藏

          0 引言

          本文引用地址:http://www.ex-cimer.com/article/201610/309307.htm

          隨著信息技術(shù)的發(fā)展和互聯(lián)網(wǎng)應(yīng)用的普及,計算機系統(tǒng)受到的威脅。檢測,指將可疑文件作為輸入,執(zhí)行某病毒檢測算法后輸出結(jié)果(無毒、帶毒/帶何種毒)的過程,實質(zhì)上是對文件的。病毒檢測應(yīng)屬于模式識別范疇。由于單一的技術(shù)無法有效地對抗,技術(shù)的融合并用及智能化,將是未來計算機病毒檢測的趨勢。故采用免疫算法和神經(jīng)網(wǎng)絡(luò)的新型網(wǎng)絡(luò)模型,對計算機病毒分類檢測進行研究。

          1 模型的提出

          人工神經(jīng)網(wǎng)絡(luò)和人工免疫系統(tǒng)都是受生物學的啟發(fā)發(fā)展而來的理論和技術(shù),兩者在生物學原理和人工原理上各有異同。研究表明,免疫原理可以應(yīng)用到神經(jīng)網(wǎng)絡(luò)中,以提高神經(jīng)網(wǎng)絡(luò)的性能;反之,神經(jīng)網(wǎng)絡(luò)理論也可以應(yīng)用到人工免疫系統(tǒng)中,從而產(chǎn)生一個相互之間可以受益的研究領(lǐng)域。

          圖1中,抗原(Ag)表示神經(jīng)網(wǎng)絡(luò)中輸入神經(jīng)元到輸出神經(jīng)元的權(quán)向量Wk(由抗體Ab和自體庫集S共同作用后,基本調(diào)節(jié)好的權(quán)向量),基于計算機病毒的入侵檢測中,代表一類網(wǎng)絡(luò)數(shù)據(jù)包,以二進制串表示??贵w(Ab)表示神經(jīng)網(wǎng)絡(luò)中的輸入樣本。S代表自體庫集合。權(quán)值及輸入樣本和輸出單元都使用二進制,即只使用0和1表示,如圖2。

          首先抗體庫中的向量都會和白體庫的向量進行識別。如果抗體庫中的向量一旦和自體庫中的向量匹配,則會進行剪枝操作。

          沿用傳統(tǒng)的抗體網(wǎng)絡(luò)特征,規(guī)定ξj表示網(wǎng)絡(luò)中抗體j的抗原濃度,即抗體j所能識別的抗原個數(shù)。1個抗體細胞k與某種抗原細胞的親和力,由權(quán)向量與該抗體的漢明距離(Hamming)決定,可由式(1)得到與Ag可能性的最大狀態(tài)序列δ:

          親和力δ越大,說明這種抗體能夠?qū)Υ丝乖M行較好的應(yīng)答,保留。相反,通過剪枝的方式,從網(wǎng)絡(luò)中刪掉。把不與自身反應(yīng)的抗體保留,進行對抗原的識別,進行后續(xù)的工作。

          否定選擇后的抗體與抗原進行神經(jīng)網(wǎng)絡(luò)的作用,規(guī)則如上,如果抗體不匹配,按照已有的神經(jīng)網(wǎng)絡(luò)的權(quán)值算法的改進步驟進行權(quán)值的調(diào)整,以達到在給定抗體空間中擁有最大的解空間度,即2個抗體之間有最大的不相同度。

          更新抗體種群,經(jīng)過若干次的疊代運算,把抗體種群訓練收斂于一個較穩(wěn)定的集合,即學習過程完畢。學習完成后,可以用于計算機病毒檢測中。

          2 模型設(shè)計思路

          整個網(wǎng)絡(luò)的競爭學習步驟分為2部分:

          第1部分:首先從抗體庫里根據(jù)概率密度P(Ab)選擇出1個抗體進行輸入。并和自體庫S進行運算,并設(shè)定閾值ε,當滿足式(2)時:

          抗體經(jīng)過了自體耐受,變?yōu)槌墒斓臋z測器,且不與自體發(fā)生免疫應(yīng)答,是合格的檢測器。如果超過閾值ε,則從網(wǎng)絡(luò)中刪除此抗體節(jié)點??贵wAb1和自體集S中的S1產(chǎn)生了免疫應(yīng)答。

          第2部分:經(jīng)過自體耐受的抗體分別和某個抗原Agk進行作用,在抗體內(nèi)部設(shè)定1個ξi,一旦抗原的權(quán)向量和抗體的漢明距離超過閾值ε,ξj增加1,如果ξj長時間等于0,將此抗體從網(wǎng)絡(luò)中刪去。當ξj增加到1個常值M時,不再繼續(xù)增加,啟動1個計時器,按一定的間隔時間t遞減ξj,避免了長時間未產(chǎn)生應(yīng)答的抗體繼續(xù)殘留在抗體庫中。新模型中的神經(jīng)網(wǎng)絡(luò)處理單元如圖3。

          在該模型中,每個神經(jīng)元的基本性質(zhì)相同,但具體形式不同。因此,每個神經(jīng)元的激活函數(shù)被設(shè)計成可變形式,也就是說,激活函數(shù)的基本性質(zhì)保持不變,但具體的形式應(yīng)該可以通過調(diào)整函數(shù)的參數(shù)來改變,任一神經(jīng)元i的激活函數(shù)可設(shè)計成:

          3 抗體自體庫的建立

          隨機獲取一組輸入向量抗原X,按照式(1)產(chǎn)生與X最匹配的中心序列k,把k添加到抗體群中。由于計算機病毒入侵檢測中在某段時間出現(xiàn)相同的入侵行為的概率較高,可根據(jù)網(wǎng)絡(luò)使用情況,進行最快速度的匹配運算,而不需要進行學習功能。

          抗體自體庫主要由選擇抗體集、交叉抗體集和變異抗體集組成。

          1)選擇抗體集的設(shè)計:是保證免疫算法種群優(yōu)勝劣汰的重要抗體集,且有較多的實現(xiàn)。

          2)交叉抗體集的設(shè)計:交叉就是把2個父個體的部分結(jié)構(gòu)加替換重組而生成新個體的操作,其目的是能在下一代產(chǎn)生新的優(yōu)化抗體集。

          3)變異抗體集的設(shè)計:因免疫算法中變異抗體集以輔助手段出現(xiàn),故采用本位變異的方法即可。

          4 仿真實驗

          其訓練方法如圖4。

          4.1 仿真訓練初始數(shù)據(jù)的收集

          目前世界上很多研究機構(gòu)和研究人員致力于計算機病毒入侵檢測方面的研究和系統(tǒng)開發(fā),提供了一些測試資料集合,包括網(wǎng)絡(luò)資料、基于主機的審計資料和系統(tǒng)調(diào)用序列。

          網(wǎng)絡(luò)傳輸協(xié)議/網(wǎng)絡(luò)協(xié)議(TCP/IP)對需要組織傳輸?shù)馁Y料包進行打包。TCP層在包中加入了頭信息如:源埠、目的埠、序列號、ACK確認號、偏移量、SYN、FIN、窗口和緊急指針等。含有TCP頭信息的包被送到IP層,加IP資料包頭如:包頭長度、服務(wù)類型、資料包長度、分段偏移量、生存期、協(xié)議類型、源地址和目標地址等。而正常和異常的數(shù)據(jù)包都在網(wǎng)上傳輸,其特征是有差別的。

          為測試改進后的網(wǎng)絡(luò)在病毒入侵檢測應(yīng)用中的效果,采用了具有30萬條數(shù)據(jù)記錄的測試數(shù)據(jù)集,每條數(shù)據(jù)包括了網(wǎng)絡(luò)數(shù)據(jù)包的包頭信息、網(wǎng)絡(luò)連接信息和數(shù)據(jù)信息等,每條數(shù)據(jù)包含96位的二進制代碼。其中前32位二進制為源IP地址,32-64位二進制為目標IP地址,64-96位二進制表示了一些數(shù)據(jù)信息,每個數(shù)據(jù)被標記為異?;蛘哒?。該數(shù)據(jù)源由MATLAB利用random()函數(shù)產(chǎn)生一組隨機的小數(shù),因為考慮到是二進制運算,規(guī)定:

          這樣隨機產(chǎn)生的二進制串96個為一組,模擬的IP數(shù)據(jù)包,一共產(chǎn)生96萬個二進制串組合。

          4.2 抗體自體庫仿真訓練(自體庫的建立)

          使用這1萬條數(shù)據(jù)進行自體庫的建立和神經(jīng)網(wǎng)絡(luò)的學習。在不斷調(diào)整抗體自體庫的同時,使自體庫的解空間在最大程度上得到提高,最后趨近與一個穩(wěn)定的自體庫接集合。利用建立好的抗體檢測庫檢測未知的29萬條數(shù)據(jù)紀錄。仿真試驗算法如下:

          4.3 病毒入侵檢測算法的仿真訓練

          建立起自體庫后,進行病毒入侵檢測算法的仿真試驗,步驟如下:

          首先,引入新的一組數(shù)據(jù)向量,與自體庫也就是所謂的記憶細胞匹配,如果在一定的閾值范圍內(nèi)匹配度很高,則認為該向量為入侵行為,并把匹配度提升1;相反,如果匹配度不高,則找出記憶細胞里與之親和力較大的進行權(quán)值的調(diào)整,達到兩者之間的最優(yōu)匹配度,然后把新的向量作為抗體集合加入到記憶細胞,重復操作,完成后統(tǒng)計結(jié)果。

          檢測算法仿真程序如下:

          4.4 實驗結(jié)果統(tǒng)計

          在模式識別領(lǐng)域中,Receiver OperatingCharacteristics(ROC)曲線用于比較不同分類檢測算法的性能。曲線下的面積越大,則算法分類檢測性能越好越穩(wěn)定。圖5為該模型與遺傳算法模型以及傳統(tǒng)抗體模型的基于MATLAB環(huán)境下的仿真測試ROC圖??梢姡尚滦涂贵w模型網(wǎng)絡(luò)ROC曲線下方的面積要大于其它2個網(wǎng)絡(luò)模型的面積。說明基于模型的計算機病毒檢測模型性能要優(yōu)于其它2個,正好支持了文獻[2]的結(jié)論。文獻[2]對基于n-gram的惡意代碼檢測取得了很好的效果,一共測試了8種分類器,結(jié)果如圖5、圖6,其中Boosted J48性能最優(yōu)。

          分析以上實驗數(shù)據(jù),可得到以下結(jié)果:

          1)由表1可知,自體庫選得過小,會造成單抗體的高擾動率,頻繁更新抗體群,缺乏抗體的多樣性,覆蓋范圍減小。

          2)自體庫過大,會造成訓練網(wǎng)絡(luò)的時間增多。擬采用200條為自體庫大小,對這30萬條數(shù)據(jù)記錄通過新模型進行檢測,并與單免疫算法模型和傳統(tǒng)的抗體網(wǎng)絡(luò)模型進行對比,如表2。雖然此網(wǎng)絡(luò)模型在時間上略遜于其他兩種已知算法模型,但在準確率上卻有明顯的提高。

          5 小結(jié)

          由實驗可知,基于免疫算法和神經(jīng)網(wǎng)絡(luò)的新型網(wǎng)絡(luò)模型降低了傳統(tǒng)的病毒入侵檢測模型的誤報率和漏報率,提高了免疫系統(tǒng)的學習效率和系統(tǒng)的智能化程度,在系統(tǒng)的容錯性上也有較大的改善,對提高系統(tǒng)的檢測能力具有重要意義。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();