★北京理工大學(xué)龐統(tǒng),馬思琦,楊德全
1 概述
2024年1月,瑞星公司發(fā)布的《2023年中國(guó)網(wǎng)絡(luò)安全報(bào)告》,基于星核平臺(tái)的數(shù)據(jù),詳細(xì)分析了惡意軟件、惡意網(wǎng)址、移動(dòng)安全、企業(yè)安全、勒索軟件等領(lǐng)域,并探討了人工智能在網(wǎng)絡(luò)安全上的風(fēng)險(xiǎn)及未來趨勢(shì)。2023年,瑞星“云安全”系統(tǒng)截獲病毒樣本總量8,456萬個(gè),病毒感染次數(shù)9,052萬次,較2022年增長(zhǎng)了14.98%[1]。
隨著數(shù)字化進(jìn)程的加快,網(wǎng)絡(luò)安全問題成為全球性挑戰(zhàn),惡意流量檢測(cè)是網(wǎng)絡(luò)安全的核心任務(wù)之一。惡意流量包括病毒、僵尸網(wǎng)絡(luò)、勒索軟件等,可能導(dǎo)致信息泄露、數(shù)據(jù)損失、系統(tǒng)癱瘓,損害個(gè)人隱私和企業(yè)利益。傳統(tǒng)惡意流量檢測(cè)依賴手動(dòng)設(shè)計(jì)特征和規(guī)則,面對(duì)不斷演變的攻擊手段存在局限性。
為探究更好的惡意流量檢測(cè)方法,本文選擇決策樹、隨機(jī)森林、支持向量機(jī)和卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)四種方法對(duì)公開數(shù)據(jù)集NSL-KDD進(jìn)行訓(xùn)練和測(cè)試,比較各模型的準(zhǔn)確率、精確率、召回率、F1值和AUC值。結(jié)果表明,基于CNN的檢測(cè)模型在準(zhǔn)確率和F1值上明顯優(yōu)于其他模型。
在當(dāng)前學(xué)術(shù)界中,知識(shí)遷移是一種創(chuàng)新學(xué)習(xí)方式,它通過將源領(lǐng)域知識(shí)引入目標(biāo)領(lǐng)域,來提高學(xué)習(xí)效果[2]。因此,本文進(jìn)一步借鑒知識(shí)遷移理論,選取數(shù)據(jù)量較大的CICIDS2017數(shù)據(jù)集,通過使用在數(shù)據(jù)集ImageNet上預(yù)訓(xùn)練的VGG16和ResNet50模型,凍結(jié)預(yù)訓(xùn)練模型的權(quán)重,并添加自定義層以適應(yīng)新數(shù)據(jù)集的處理。實(shí)驗(yàn)結(jié)果表明,經(jīng)知識(shí)遷移后的模型在新數(shù)據(jù)集上的準(zhǔn)確率均超過99%,且需要較少的訓(xùn)練時(shí)間和數(shù)據(jù)量,展示了知識(shí)遷移在惡意流量檢測(cè)中的重要作用。
2 背景知識(shí)
2.1 惡意流量
惡意流量是指出于惡意目的生成的網(wǎng)絡(luò)流量,可能來源于惡意軟件分發(fā)、網(wǎng)絡(luò)攻擊、非法信息采集等活動(dòng),目標(biāo)包括攻擊網(wǎng)絡(luò)和系統(tǒng)、控制設(shè)備、盜取數(shù)據(jù)、傳播惡意軟件等[3]。
2.1.1 惡意攻擊特點(diǎn)和行為
了解惡意流量的特點(diǎn)和行為對(duì)于預(yù)防和減輕網(wǎng)絡(luò)安全威脅至關(guān)重要。以下是一些主要的惡意流量特點(diǎn)和行為:
(1)特點(diǎn)
目的明確:如竊取數(shù)據(jù)、篡改信息或執(zhí)行DDoS攻擊,具有特定的行為模式和通信特征。
異常訪問:通常脫離正常通信路徑,訪問不常用或異常的IP地址和端口,執(zhí)行不符合正常業(yè)務(wù)邏輯的請(qǐng)求。
高危性:后果嚴(yán)重,包括系統(tǒng)中斷、數(shù)據(jù)泄露和業(yè)務(wù)停擺,帶來重大經(jīng)濟(jì)損失和聲譽(yù)損害。
(2)行為
掃描和爬蟲行為:利用自動(dòng)化工具執(zhí)行端口、服務(wù)和漏洞掃描,識(shí)別系統(tǒng)漏洞和網(wǎng)絡(luò)入口點(diǎn)。
拒絕服務(wù)攻擊(DoS)和DDoS攻擊:DoS通過大量請(qǐng)求使合法用戶無法訪問服務(wù);DDoS由全球分布的受控設(shè)備(僵尸網(wǎng)絡(luò))進(jìn)行,更難防御和追蹤。
數(shù)據(jù)竊取:通過網(wǎng)絡(luò)監(jiān)聽、釣魚等手段非法獲取敏感數(shù)據(jù),如用戶名、密碼和財(cái)務(wù)信息。
惡意軟件分發(fā):通過下載請(qǐng)求等方式傳播惡意軟件,如通過電子郵件附件或惡意鏈接,引誘用戶下載并運(yùn)行惡意軟件。
C2(命令和控制)通信:已感染設(shè)備與攻擊者服務(wù)器通信,接收惡意指令或上傳竊取的數(shù)據(jù)。
利用已知漏洞:利用SQL注入、緩沖區(qū)溢出等漏洞進(jìn)行攻擊。
2.1.2 惡意攻擊類型
根據(jù)表現(xiàn)形式的不同,惡意攻擊可分為如下四種
(1)DoS:使在線服務(wù)不可用,通過大量發(fā)送請(qǐng)求或數(shù)據(jù)包,超出系統(tǒng)處理能力,導(dǎo)致服務(wù)中斷或崩潰。常見方法有SYN Flood、Tear Drop、Smurf等。
(2)探測(cè)攻擊(Probe):獲取網(wǎng)絡(luò)系統(tǒng)信息,如弱點(diǎn)、服務(wù)、應(yīng)用程序版本、操作系統(tǒng)類型、網(wǎng)絡(luò)結(jié)構(gòu)等,為進(jìn)一步攻擊做準(zhǔn)備。常見方法有ICMP探測(cè)、操作系統(tǒng)探測(cè)、漏洞探測(cè)等。
(3)用戶到根用戶攻擊(U2R):普通用戶權(quán)限升級(jí)到根用戶或管理員權(quán)限,完全控制系統(tǒng),修改或刪除敏感數(shù)據(jù),安裝惡意軟件。常見方法有緩沖區(qū)溢出、提權(quán)漏洞等。
(4)遠(yuǎn)程到本地攻擊(R2L):利用系統(tǒng)漏洞,從遠(yuǎn)程地點(diǎn)獲取本地用戶權(quán)限,攻擊者最初無系統(tǒng)合法權(quán)限,通過攻擊獲得普通用戶或更高權(quán)限。常見方法有IP Spoofing等。
2.2 知識(shí)遷移
知識(shí)遷移是將一個(gè)領(lǐng)域或任務(wù)中學(xué)習(xí)到的知識(shí)應(yīng)用到另一個(gè)領(lǐng)域或任務(wù)中的技術(shù),在機(jī)器學(xué)習(xí)和人工智能領(lǐng)域非常重要[4]。它提高了學(xué)習(xí)效率,減少了對(duì)大量標(biāo)注數(shù)據(jù)的需求,幫助了模型在新領(lǐng)域快速適應(yīng)。盡管不同任務(wù)或領(lǐng)域可能差異較大,但它們之間存在共通的特征或模式,可作為遷移基礎(chǔ)。
2.2.1 知識(shí)遷移技術(shù)的主要類型
知識(shí)遷移是一種利用已解決任務(wù)中獲得的知識(shí)來解決新任務(wù)的方法。根據(jù)具體的遷移方式,知識(shí)遷移可分為以下幾種主要類型[5]:
(1)基于特征的遷移:將源任務(wù)的特征直接遷移到目標(biāo)任務(wù)。例如,利用CNN在ImageNet上的預(yù)訓(xùn)練特征進(jìn)行其他圖像分類任務(wù)。
(2)基于參數(shù)的遷移:共享源任務(wù)的模型參數(shù),并將其遷移到目標(biāo)任務(wù)。在深度學(xué)習(xí)中,常見做法是凍結(jié)預(yù)訓(xùn)練模型的某些層的參數(shù),然后在新任務(wù)上微調(diào)頂層參數(shù)。
(3)基于關(guān)系的遷移:適用于知識(shí)圖譜和多任務(wù)學(xué)習(xí),利用源任務(wù)和目標(biāo)任務(wù)的關(guān)系,例如多任務(wù)學(xué)習(xí)中不同任務(wù)間的共享層捕捉共同特征。
(4)基于實(shí)例的遷移:基于源任務(wù)的實(shí)際數(shù)據(jù)樣本,通過選擇和再利用源任務(wù)的樣本提升目標(biāo)任務(wù)性能,例如實(shí)例選擇和實(shí)例加權(quán)。
3 模型選擇
當(dāng)前有多種針對(duì)惡意流量檢測(cè)的方法和模型,本文選擇常用的決策樹、隨機(jī)森林、支持向量機(jī)和CNN四種模型,為進(jìn)一步利用知識(shí)遷移的思想提高惡意流量檢測(cè)性能提供了最優(yōu)模型。
3.1 數(shù)據(jù)集準(zhǔn)備與處理
3.1.1 NSL-KDD數(shù)據(jù)集
本文在進(jìn)行模型選擇的過程中選擇使用NSL-KDD數(shù)據(jù)集。該數(shù)據(jù)集是網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)(NIDS)研究中常用的一個(gè)數(shù)據(jù)集,且已經(jīng)劃分好了訓(xùn)練集(NSL-KDD train)和測(cè)試集(NSL-KDD test),便于使用機(jī)器學(xué)習(xí)模型進(jìn)行訓(xùn)練和評(píng)估[6]。該數(shù)據(jù)集標(biāo)識(shí)類型和數(shù)量如表1所示。
表1 NSL-KDD數(shù)據(jù)集標(biāo)識(shí)類型數(shù)量
3.1.2 數(shù)據(jù)集預(yù)處理
數(shù)據(jù)預(yù)處理是指在將數(shù)據(jù)應(yīng)用于機(jī)器學(xué)習(xí)模型之前,對(duì)數(shù)據(jù)進(jìn)行清洗、轉(zhuǎn)換和整理的過程。這包括處理缺失值、異常值,進(jìn)行特征縮放、標(biāo)準(zhǔn)化,以及進(jìn)行特征工程等操作,以確保數(shù)據(jù)質(zhì)量和可用性,以及提高機(jī)器學(xué)習(xí)模型的性能和準(zhǔn)確性。公開數(shù)據(jù)集NSL-KDD的處理過程如圖1所示。
圖1 NSL-KDD數(shù)據(jù)集預(yù)處理流程
3.2 模型選擇
3.2.1 決策樹DT
決策樹是一種用于分類和回歸的機(jī)器學(xué)習(xí)算法,它利用樹狀結(jié)構(gòu)模擬決策過程[7]。
其中內(nèi)部節(jié)點(diǎn)代表特征,邊對(duì)應(yīng)特征值,葉子節(jié)點(diǎn)表示類別標(biāo)簽或數(shù)值。構(gòu)建過程遵循分而治之的策略。決策樹的優(yōu)點(diǎn)包括易于理解、能處理數(shù)值和類別數(shù)據(jù)、不易受缺失值影響;缺點(diǎn)是易過擬合,對(duì)噪聲和異常值敏感。實(shí)驗(yàn)中通過參數(shù)調(diào)整優(yōu)化模型,常用信息增益作為特征選擇指標(biāo),值越大,特征重要性越高。構(gòu)建樹的步驟包括特征選擇、數(shù)據(jù)集劃分、構(gòu)建、剪枝和預(yù)測(cè)。
3.2.2 隨機(jī)森林RF
隨機(jī)森林是一種集成學(xué)習(xí)方法[8],它通過構(gòu)建多棵決策樹并綜合其結(jié)果進(jìn)行分類或回歸。它結(jié)合了決策樹的易理解性和集成學(xué)習(xí)的優(yōu)點(diǎn),能夠有效減少過擬合并提高泛化能力。隨機(jī)森林由多棵通過放回抽樣和隨機(jī)特征選擇構(gòu)建的決策樹組成,每棵樹在不同的數(shù)據(jù)和特征子集上訓(xùn)練,從而增加多樣性。分類時(shí)采用多數(shù)投票,回歸時(shí)取平均值。優(yōu)點(diǎn)包括降低過擬合、提高準(zhǔn)確性和泛化能力,并能處理大量特征和樣本,對(duì)缺失值不敏感。缺點(diǎn)是難以解釋和可能消耗較多內(nèi)存和計(jì)算資源。
3.2.3 支持向量機(jī)SVM
支持向量機(jī)(SVM)是一種經(jīng)典的監(jiān)督學(xué)習(xí)算法,廣泛用于分類和回歸任務(wù)[9]。其核心原理是尋找一個(gè)最佳超平面,以最大化不同類別數(shù)據(jù)點(diǎn)之間的間隔,作為線性分類器。支持向量是距離超平面最近的訓(xùn)練樣本點(diǎn),決定了超平面的位置和方向,定義了分類邊界。
對(duì)于非線性數(shù)據(jù),SVM引入核函數(shù),將輸入空間映射到高維特征空間。常見核函數(shù)包括線性核、多項(xiàng)式核和高斯核(RBF核)。通過選擇適當(dāng)?shù)暮撕瘮?shù),SVM可以處理非線性分類問題。
SVM算法的一般步驟如下:
數(shù)據(jù)預(yù)處理:將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,并進(jìn)行特征縮放。
構(gòu)建模型:選擇適當(dāng)?shù)暮撕瘮?shù)和懲罰參數(shù),構(gòu)建SVM模型。
訓(xùn)練模型:使用訓(xùn)練集進(jìn)行訓(xùn)練,通過最大化間隔找到最優(yōu)超平面。
預(yù)測(cè):使用訓(xùn)練好的模型對(duì)測(cè)試集進(jìn)行預(yù)測(cè)。
3.2.4 卷積神經(jīng)網(wǎng)絡(luò)CNN
CNN是一種深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò),廣泛用于深度學(xué)習(xí)領(lǐng)域。其主要組成部分包括卷積層、池化層和全連接層[10]。CNN的權(quán)值共享機(jī)制能夠顯著降低模型復(fù)雜性和過擬合風(fēng)險(xiǎn)。
典型的CNN架構(gòu):
(1)輸入層:標(biāo)準(zhǔn)化處理輸入特征。
(2)卷積層:使用卷積核提取輸入數(shù)據(jù)的特征,生成特征圖,捕捉局部模式。
(3)池化層:通過池化函數(shù)降低特征圖的維度,減少模型復(fù)雜性并防止過擬合。常見池化操作包括最大值池化和均值池化。
(4)全連接層:每個(gè)神經(jīng)元與前一層所有神經(jīng)元相連,將提取的特征轉(zhuǎn)化為一維向量,并通過權(quán)重矩陣生成最終輸出,用于分類或回歸任務(wù)。
(5)激活函數(shù):引入非線性元素,使網(wǎng)絡(luò)能夠解決非線性問題。常見激活函數(shù)有Sigmoid、Tanh、ReLU、ELU等。
本文構(gòu)建的CNN模型包含兩個(gè)卷積層和兩個(gè)池化層,用來提取輸入數(shù)據(jù)的特征,然后通過全連接層將這些特征轉(zhuǎn)化為最終的輸出。ReLU激活函數(shù)提高了模型的非線性特性,而sigmoid函數(shù)在輸出層使用,使輸出限制在0到1之間,方便進(jìn)行二分類任務(wù)的概率預(yù)測(cè)。
輸入層(input):模型接收的輸入數(shù)據(jù)形狀為(?,116),其中116表示特征數(shù),?表示樣本數(shù)量不定。
Reshape層:將數(shù)據(jù)形狀變?yōu)椋?,116,1),這里的1表示數(shù)據(jù)是一維的。
卷積層(Conv1D):第一個(gè)卷積層輸出形狀為(?,114,32),即32個(gè)濾波器,每個(gè)濾波器產(chǎn)生大小為114的特征圖。
最大池化層(MaxPooling1D):特征圖形狀變?yōu)椋?,57,32),池化層將每個(gè)特征圖大小減半。
第二個(gè)卷積層(Conv1D):輸出形狀為(?,55,64),使用64個(gè)濾波器。
第二個(gè)最大池化層(MaxPooling1D):特征圖形狀變?yōu)椋?,27,64)。
Flatten層:將特征圖展平成一維向量,形狀為(?,1728)。
全連接層(Dense):第一個(gè)全連接層輸出形狀為(?,64),最后一個(gè)全連接層輸出形狀為(?,1),用于二分類問題,輸出為概率值。
模型的流程圖如圖2所示。
圖2 卷積神經(jīng)網(wǎng)絡(luò)模型流程圖
3.3 模型對(duì)比分析
為了衡量模型的性能,本文使用機(jī)器學(xué)習(xí)領(lǐng)域中常用的二分類評(píng)估指標(biāo)準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)、F1值和ROC曲線下面積(Area Under an ROC Curve,AUC)進(jìn)行模型性能的評(píng)估。四種模型的各項(xiàng)二分類評(píng)估結(jié)果如表2所示。
表2 四種實(shí)驗(yàn)?zāi)P驮u(píng)估結(jié)果
從表2的實(shí)驗(yàn)結(jié)果數(shù)據(jù)中可以看出,DT、RF、SVM對(duì)惡意流量檢測(cè)的準(zhǔn)確率、F1值和AUC值都明顯低于CNN模型。從中可以得出結(jié)論,CNN模型對(duì)惡意流量檢測(cè)的性能要明顯優(yōu)于其他三種機(jī)器學(xué)習(xí)算法。
4 知識(shí)遷移的應(yīng)用
為進(jìn)一步提高模型對(duì)惡意流量的檢測(cè)準(zhǔn)確率,本文引入知識(shí)遷移的思想,對(duì)CNN模型進(jìn)行進(jìn)一步的探究,以期獲得更好的實(shí)驗(yàn)效果。
4.1 數(shù)據(jù)集準(zhǔn)備與預(yù)處理
4.1.1 CICIDS2017數(shù)據(jù)集
本文在進(jìn)行知識(shí)遷移應(yīng)用的過程中選用數(shù)據(jù)規(guī)模更大、數(shù)據(jù)結(jié)構(gòu)更復(fù)雜的CICIDS2017數(shù)據(jù)集[11]。該數(shù)據(jù)集包含真實(shí)的網(wǎng)絡(luò)流量和攻擊數(shù)據(jù),涵蓋正常流量和多種類型的網(wǎng)絡(luò)攻擊(如DoS、DDoS、暴力破解、滲透等)。該數(shù)據(jù)集包含來自不同協(xié)議(TCP、UDP、ICMP)和服務(wù)(HTTP、SSH、DNS)的流量。每個(gè)樣本被標(biāo)記為正常流量或具體攻擊類型,特征包括源/目標(biāo)IP地址、源/目標(biāo)端口、協(xié)議、流量大小、持續(xù)時(shí)間等基本信息,如表3所示。
表3 CICIDS2017所包含惡意流量數(shù)目與種類
4.1.2 數(shù)據(jù)預(yù)處理
神經(jīng)網(wǎng)絡(luò)輸入之前需要對(duì)原始流量數(shù)據(jù)進(jìn)行預(yù)處理,本章數(shù)據(jù)輸入是經(jīng)過處理之后的csv格式數(shù)據(jù)。
首先進(jìn)行數(shù)據(jù)加載和預(yù)處理。加載CICIDS2017數(shù)據(jù)集并進(jìn)行必要的預(yù)處理,這個(gè)過程中需要處理缺失值,刪除數(shù)據(jù)集中缺失類標(biāo)簽和缺少信息的實(shí)例。由于數(shù)據(jù)集中數(shù)據(jù)量巨大,需要?jiǎng)h除其中無窮大和百萬級(jí)別的數(shù)據(jù),從而節(jié)省模型處理開銷。
其次將數(shù)據(jù)轉(zhuǎn)換為圖像,由于VGG和ResNet模型都是圖像分類模型,需要將網(wǎng)絡(luò)流量數(shù)據(jù)轉(zhuǎn)換為圖像,相關(guān)代碼如下所示:
target_features=32*32*3
num_samples=X_scaled.shape[0]
ifX_scaled.shape[1]>target_features:
X_scaled=X_scaled[:,:target_features]
elifX_scaled.shape[1]<target_features:
X_padded=np.zeros((num_samples,target_features))
X_padded[:,:X_scaled.shape[1]]=X_scaled
X_scaled=X_padded
X_images=np.reshape(X_scaled,(num_samples,32,32,3))
4.2 知識(shí)遷移使用的模型
本文將使用VGG和ResNet模型進(jìn)行基于特征的遷移。將在ImageNet數(shù)據(jù)集上預(yù)訓(xùn)練好的VGG和ResNet模型,凍結(jié)預(yù)訓(xùn)練模型的權(quán)重,并添加自定義層以適應(yīng)新數(shù)據(jù)集的處理[12]。最終通過知識(shí)遷移技術(shù),應(yīng)用到對(duì)CICIDS2017數(shù)據(jù)集的處理上。
(1)VGG模型
VGG模型最初是由牛津大學(xué)計(jì)算機(jī)視覺組提出,常見的版本有VGG16和VGG19,分別包含16和19層卷積網(wǎng)絡(luò)。VGG模型主要由多個(gè)3×3的卷積層和2×2的最大池化層堆疊而成,最后接上若干個(gè)全連接層。本文采用的是VGG16模型[13]。
(2)ResNet模型
ResNet由微軟研究院提出,最初的版本包括ResNet-50、ResNet-101和ResNet-152。其核心思想是通過引入殘差塊(ResidualBlocks)來解決深層神經(jīng)網(wǎng)絡(luò)中的梯度消失和梯度爆炸問題[14]。這些殘差塊通過短路連接(Shortcut Connections)將輸入直接跳過特定的層,從而使得模型更易于訓(xùn)練。本文采用ResNet50結(jié)構(gòu)。
4.3 知識(shí)遷移實(shí)現(xiàn)流程
首先,初始化預(yù)訓(xùn)練模型,加載在大型數(shù)據(jù)集ImageNet上預(yù)訓(xùn)練的VGG16和ResNet50模型。這些模型已學(xué)到大量低級(jí)特征(如邊緣、紋理等),有助于更有效地提取新任務(wù)的數(shù)據(jù)特征。由于頂層通常為原數(shù)據(jù)集設(shè)計(jì),因此需要?jiǎng)冸x。
第二步是模型微調(diào)。在預(yù)訓(xùn)練模型的基礎(chǔ)上,適應(yīng)CICIDS2017數(shù)據(jù)集。具體步驟包括:
去除頂層:剝離預(yù)訓(xùn)練模型的頂層,因?yàn)檫@些層與原數(shù)據(jù)集類別相關(guān)。
添加新層:在去除頂層的預(yù)訓(xùn)練模型上添加新層,包括全局平均池化層和全連接層,并使用ReLU激活函數(shù)。最后,添加一個(gè)輸出層,節(jié)點(diǎn)數(shù)等于CICIDS數(shù)據(jù)集的分類類別數(shù),并使用softmax激活函數(shù)輸出類別概率。
第三步是特征提取。凍結(jié)部分卷積層,僅微調(diào)頂層新添加的層,以利用預(yù)訓(xùn)練模型的高效特征提取能力。這樣可以僅訓(xùn)練新添加的全連接層和輸出層,加速訓(xùn)練過程并防止過擬合。
第四步是模型訓(xùn)練。采用知識(shí)遷移的方法在CICIDS2017數(shù)據(jù)集上進(jìn)行微調(diào),并通過驗(yàn)證集進(jìn)行評(píng)估。
5 實(shí)驗(yàn)結(jié)果分析
本文利用已經(jīng)在大型數(shù)據(jù)集ImageNet上預(yù)訓(xùn)練的VGG16和ResNet50模型進(jìn)行基于特征的遷移學(xué)習(xí),將微調(diào)后的模型處理CICIDS2017數(shù)據(jù)集,并通過驗(yàn)證集進(jìn)行評(píng)估。
VGG16模型經(jīng)過遷移學(xué)習(xí)后對(duì)數(shù)據(jù)集CICIDS2017的檢測(cè)結(jié)果如圖3、圖4所示。
圖3 VGG16模型的準(zhǔn)確率隨迭代次數(shù)的變化
圖4 VGG16模型的損失函數(shù)隨迭代次數(shù)的變化
ResNet50模型經(jīng)過遷移學(xué)習(xí)后對(duì)數(shù)據(jù)集CICIDS2017的檢測(cè)結(jié)果如圖5、圖6所示。
圖5 ResNet模型的準(zhǔn)確率隨迭代次數(shù)的變化
圖6 ResNet模型的損失函數(shù)隨迭代次數(shù)的變化
從圖3~6中可以看出,兩種網(wǎng)絡(luò)模型結(jié)構(gòu)在進(jìn)行知識(shí)遷移后在新的數(shù)據(jù)集中對(duì)惡意流量的檢測(cè)結(jié)果的準(zhǔn)確率都能達(dá)到99%以上,說明經(jīng)過知識(shí)遷移后的兩種模型在針對(duì)惡意流量檢測(cè)的問題上都具有十分優(yōu)異的效果。
6 結(jié)束語(yǔ)
近年來,網(wǎng)絡(luò)安全和數(shù)據(jù)隱私領(lǐng)域面臨著惡意流量帶來的諸多挑戰(zhàn),因此惡意流量檢測(cè)技術(shù)受到了廣泛關(guān)注和持續(xù)發(fā)展。本文積極探索基于知識(shí)遷移的惡意流量檢測(cè)方法,知識(shí)遷移在惡意檢測(cè)領(lǐng)域的應(yīng)用,可以縮短訓(xùn)練時(shí)間,提高檢測(cè)精度等。相信隨著更復(fù)雜的深度學(xué)習(xí)模型和更豐富的數(shù)據(jù)集的不斷出現(xiàn),知識(shí)遷移將在惡意流量檢測(cè)中發(fā)揮越來越重要的作用,將提高整體的網(wǎng)絡(luò)防御能力和安全性。
作者簡(jiǎn)介:
龐 統(tǒng)(2001-),男,河南南陽(yáng)人,現(xiàn)就讀于北京理工大學(xué),研究方向?yàn)閿?shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)。
馬思琦(2002-),女,云南開遠(yuǎn)人,現(xiàn)就讀于北京理工大學(xué),研究方向?yàn)閿?shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)。
楊德全(1980-),男,山西人,高級(jí)工程師,博士,現(xiàn)就職于北京理工大學(xué),研究方向?yàn)榫W(wǎng)絡(luò)安全。
參考文獻(xiàn):
[1] 北京瑞星網(wǎng)安技術(shù)股份有限公司,《2023年中國(guó)網(wǎng)絡(luò)安全報(bào)告》. 2024.1[EB/OL]
[2] 裴嬋娟. 基于遷移學(xué)習(xí)的網(wǎng)絡(luò)入侵檢測(cè)方法研究[D]. 合肥: 安徽大學(xué), 2022.
[3] 魯剛, 郭榮華, 周穎, 等. 惡意流量特征提取綜述[J]. 信息網(wǎng)絡(luò)安全, 2018, (9) : 1 - 9.
[4] 王軍敏, 樊養(yǎng)余, 李祖賀. 基于深度卷積神經(jīng)網(wǎng)絡(luò)和遷移學(xué)習(xí)的紋理圖像識(shí)別[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2022, 34 (5) : 701 - 710.
[5] 鄧雅文. 基于遷移學(xué)習(xí)的加密惡意流量檢測(cè)技術(shù)研究[D]. 武漢: 湖北大學(xué), 2022.
[6] 孫佳佳, 李承禮, 常德顯, 等. 基于生成對(duì)抗網(wǎng)絡(luò)的入侵檢測(cè)類別不平衡問題數(shù)據(jù)增強(qiáng)方法[J]. 科學(xué)技術(shù)與工程, 2022, 22 (18) : 7965 - 7971.
[7] 張小云, 康曉霞. 基于決策樹算法的網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)設(shè)計(jì)與評(píng)估[J]. 信息技術(shù), 2023, 47 (2) : 117 - 122.
[8] 王國(guó)華, 伍忠東, 丁龍斌. 改進(jìn)多層分類策略的隨機(jī)森林網(wǎng)絡(luò)入侵檢測(cè)方法[J]. 蘭州交通大學(xué)學(xué)報(bào), 2022, 41 (2) : 55 - 62.
[9] 王云鵬, 張浩. 基于支持向量機(jī)的網(wǎng)絡(luò)入侵檢測(cè)算法綜述[J]. 科學(xué)技術(shù)創(chuàng)新, 2017, (25) : 136 - 137.
[10] 嚴(yán)春滿, 王鋮. 卷積神經(jīng)網(wǎng)絡(luò)模型發(fā)展及應(yīng)用[J]. 計(jì)算機(jī)科學(xué)與探索, 2021, 15 (1) : 27 - 46.
[11] Yifan Zhao, Zhanhui Hu, Rongjun Liu. TBGD: Deep Learning Methods on Network Intrusion Detection Using CICIDS2017 Dataset[J]. Journal of Physics: Conference Series, 2023, (2670) : 012025.
[12] Dhananjay Theckedath, R. R. Sedamkar. Detecting Affect States Using VGG16, ResNet50 and SE-ResNet50 Networks[J]. SN Computer Science, 2020, 1 (2).
[13] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition[J]. arXiv preprint arXiv:1409.1556, 2014.
[14] He, K.;Zhang, X.;Ren, S.;Sun, J..Deep residual learning for image recognition(Conference Paper)[J]. Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2016 : 770 - 778.
摘自《自動(dòng)化博覽》2024年10月刊