摘要:針對工業(yè)物聯(lián)網(wǎng)數(shù)據(jù)來源的多樣性和復(fù)雜性,以及數(shù)據(jù)分布和特征差異性大的特性,這里提出了一種基于CNN-LSTM-FedAvg的入侵檢測方法。該方法結(jié)合CNN 提取特征、LSTM 分類和 FedAvg 分布式模型訓(xùn)練的優(yōu)勢,以提高檢測效率并保護數(shù)據(jù)隱私。實驗結(jié)果表明,該方法在UNSW-NB15和CSE-CIC-IDS 2018數(shù)據(jù)集上取得了較好的檢測效果。
關(guān)鍵詞:工業(yè)物聯(lián)網(wǎng);入侵檢測;CNN;LSTM;聯(lián)邦學(xué)習(xí)
中圖分類號:TP393" " " " 文獻標(biāo)識碼:A
文章編號:1009-3044(2025)19-0097-03
開放科學(xué)(資源服務(wù)) 標(biāo)識碼(OSID)
0 引言
隨著 5G 通信技術(shù)和嵌入式設(shè)備能力的提升,工業(yè)物聯(lián)網(wǎng)(IIoT) 在工業(yè)系統(tǒng)中的應(yīng)用日益廣泛。然而,物聯(lián)網(wǎng)設(shè)備的安全性普遍較差,容易成為攻擊目標(biāo),如分布式拒絕服務(wù)攻擊等,這對工業(yè)物聯(lián)網(wǎng)的廣泛應(yīng)用構(gòu)成重要威脅。傳統(tǒng)的工業(yè)環(huán)境也曾遭受攻擊并造成災(zāi)難性后果,因此安全性對于工業(yè)物聯(lián)網(wǎng)至關(guān)重要[1]。
深度學(xué)習(xí)算法在人工智能領(lǐng)域具備從海量數(shù)據(jù)中學(xué)習(xí)并提取復(fù)雜特征的能力,因此被廣泛應(yīng)用于入侵檢測領(lǐng)域,并成為當(dāng)前研究的熱點。例如,文獻[2-5]提出了基于深度學(xué)習(xí)的入侵檢測方法,包括利用 CNN、LSTM、DBN 等網(wǎng)絡(luò)結(jié)構(gòu)提取特征并分類,以及解決數(shù)據(jù)分布不平衡和提高檢測準(zhǔn)確率等問題,為工業(yè)互聯(lián)網(wǎng)安全提供了有效手段。聯(lián)邦學(xué)習(xí)的工作原理主要基于分布式機器學(xué)習(xí)的思想,其核心是在多個擁有本地數(shù)據(jù)的數(shù)據(jù)源之間進行分布式模型訓(xùn)練,通過交換模型參數(shù)或中間結(jié)果,構(gòu)建基于虛擬融合數(shù)據(jù)下的全局模型,從而實現(xiàn)數(shù)據(jù)隱私保護和數(shù)據(jù)共享計算[6-7]。然而,基于聯(lián)邦學(xué)習(xí)的入侵檢測方法由于數(shù)據(jù)來源的多樣性和復(fù)雜性,以及數(shù)據(jù)分布和特征的差異性較大,會降低模型的準(zhǔn)確性并提高模型的誤報率。
因此,本文提出了一種基于CNN-LSTM-FedAvg的入侵檢測方法。該方法首先構(gòu)建一個深度卷積網(wǎng)絡(luò),通過結(jié)合CNN 和LSTM 的優(yōu)勢,先用CNN 提取特征,再用LSTM 進行分類;接著采用FedAvg方法進行分布式模型訓(xùn)練,以提高訓(xùn)練速度并保護客戶端隱私數(shù)據(jù);最后,在UNSW-NB15和CSE-CIC-IDS 2018數(shù)據(jù)集上進行仿真實驗。實驗結(jié)果表明,該方法在保護數(shù)據(jù)隱私的同時,能夠縮短訓(xùn)練時間并提高模型的準(zhǔn)確性和降低誤報率。
1 相關(guān)理論
1.1 CNN 算法
CNN 的全稱是Convolutional Neural Network(卷積神經(jīng)網(wǎng)絡(luò)) ,是深度學(xué)習(xí)的代表算法之一。基于其共享權(quán)重架構(gòu)和平移不變性特征,它們也被稱為移位不變或空間不變?nèi)斯ど窠?jīng)網(wǎng)絡(luò)(Shift-Invariant Artificial Neural Networks, SIANN) 。與其他圖像分類算法相比,CNN使用相對較少的預(yù)處理,且CNN 在異常檢測方面優(yōu)于循環(huán)神經(jīng)網(wǎng)絡(luò)[8]。
1.2 LSTM 算法
LSTM 全稱為Long Short-Term Memory(長短期記憶網(wǎng)絡(luò)) ,是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN) ,專門設(shè)計用于解決長期依賴的問題,即在處理序列數(shù)據(jù)時能夠記住較長時間間隔的信息。RNN 通過在序列中每個時間步傳遞隱藏狀態(tài)來保留過去信息,但它在處理長序列時往往會遇到梯度消失或梯度爆炸的問題,這限制了它記憶遠距離信息的能力[9]。
1.3 FedAvg算法
聯(lián)邦學(xué)習(xí)可以在不共享隱私數(shù)據(jù)的前提下,聯(lián)合多設(shè)備共同訓(xùn)練入侵檢測模型,打破數(shù)據(jù)孤島現(xiàn)象,實現(xiàn)共同建模,達到提升模型效果的目的。聯(lián)邦學(xué)習(xí)雖然和分布式機器學(xué)習(xí)有相似之處,但也存在著本質(zhì)上的區(qū)別,聯(lián)邦學(xué)習(xí)強調(diào)“數(shù)據(jù)不動,模型動”的核心,這里的數(shù)據(jù)既包括原始數(shù)據(jù)也包括模型私密參數(shù)[10]。
FedAvg 是一種常用的聯(lián)邦學(xué)習(xí)算法,它通過加權(quán)平均來聚合模型參數(shù)。FedAvg 的基本思想是將本地模型的參數(shù)上傳到服務(wù)器,服務(wù)器計算所有模型參數(shù)的平均值,然后將這個平均值廣播回所有本地設(shè)備。這個過程可以迭代多次,直到收斂。
FedAvg 聯(lián)邦平均算法如下:1) 服務(wù)器初始化全局模型參數(shù)[ω0];2) 所有本地設(shè)備隨機選擇一部分?jǐn)?shù)據(jù)集,并在本地計算本地模型參數(shù)[ωi];3) 所有本地設(shè)備上傳本地模型參數(shù)[ωi]到服務(wù)器;4) 服務(wù)器計算所有本地模型參數(shù)的加權(quán)平均值[ω],并廣播到所有本地設(shè)備;5) 所有本地設(shè)備采用[ω]作為本地模型參數(shù)的初始值,重復(fù)步驟2~4,直到全局模型全局收斂。
2 基于CNN-LSTM-FedAvg的入侵檢測方法
2.1 整體流程
基于CNN-LSTM-FedAvg的入侵檢測方法的整體流程如圖1所示。首先,每個客戶端獲取數(shù)據(jù),并進行數(shù)據(jù)預(yù)處理。數(shù)據(jù)經(jīng)過CNN和LSTM的特征提取和分類后,服務(wù)端初始化全局入侵檢測模型并將其分發(fā)給各個客戶端;各個本地客戶端根據(jù)本地所擁有的數(shù)據(jù)集和FedAvg算法來訓(xùn)練本地入侵檢測模型,并將訓(xùn)練后的模型參數(shù)上傳到服務(wù)器端;服務(wù)器進行參數(shù)聚合并將全局入侵檢測模型分發(fā)給客戶端;最后,達到全局模型收斂,各個客戶端得到最終的本地入侵檢測模型。
2.2 CNN+LSTM訓(xùn)練客戶端模型
CNN+LSTM訓(xùn)練客戶端模型如下:首先對數(shù)據(jù)進行預(yù)處理,然后通過卷積層提取輸入數(shù)據(jù)的局部特征。這里卷積層之后通常跟隨池化層,用于降低特征圖的維度,同時保留重要的特征信息。提取了數(shù)據(jù)的局部特征后,這些特征被送入 LSTM 層進行時間序列上的建模。LSTM 層能夠捕捉數(shù)據(jù)中的時間依賴性,適用于處理序列數(shù)據(jù)。最后,通過全連接層將 LSTM 層的輸出轉(zhuǎn)換為所需的輸出格式。
2.3 FedAvg的入侵檢測算法
輸入:全局模型參數(shù)初始值[ω0],參與方個數(shù)[n],批樣本大小[B],訓(xùn)練輪數(shù)[E],參與方比例[C],局部模型學(xué)習(xí)率[η],各參與方的樣本數(shù)[mk]。
輸出:最后一次迭代的全局模型參數(shù)[ωt+1]。
1) 中央服務(wù)器初始化全局模型參數(shù)[ω0],并傳輸給所有客戶端。
2) 對[t= 0, 1, 2 ,...],迭代以下步驟直到全局模型參數(shù)[ωt+1]收斂。
①中央服務(wù)器根據(jù)參與方比例[C∈(0,1]],計算參與第[t ]輪迭代的參與方個數(shù):
[M←max(C×n,1)]" " " (1)
②中央服務(wù)器隨機選取[M]個參與方, 構(gòu)成參與方集合 [St]。
③對[?k∈St],通過以下步驟更新局部模型參數(shù):
a.使用接收到的模型參數(shù)[ωt]進行模型初始化[ωkt+1←ωt]。
b.數(shù)據(jù)索引集[pk]按照批樣本大小[B]分為若干個批次,記由這些批次構(gòu)成的集合為[Bk]。對每次訓(xùn)練 [ j= 1,...,E]使用 [ j= 1,...,E],更新局部模型參數(shù):
[ωkt+1←ωkt+1-η?Fk(ω;b)]" " " (2)
將更新好的局部模型參數(shù)[ωkt+1]傳輸給中央服務(wù)器。
④中央服務(wù)器聚合所有參數(shù),并傳輸回所有參與方。
[ωt+1=k=1Mmkmωkt+1]" " " (3)
式(3) :[mkm] 為[t+1]輪迭代中客戶端[k]占參與訓(xùn)練的[M]個客戶端總樣本的比例。
3 實驗設(shè)計與結(jié)果分析
為了驗證基于CNN-LSTM-FedAvg的工業(yè)互聯(lián)網(wǎng)入侵檢測方法的有效性,本研究在具有高性能計算能力的服務(wù)器上搭建了實驗環(huán)境。服務(wù)器配備了Intel Xeon E5-2690 v4處理器、128GB內(nèi)存和NVIDIA Tesla P100 GPU。實驗環(huán)境采用Python 3.7作為編程語言,深度學(xué)習(xí)框架為TensorFlow 2.3,分布式訓(xùn)練框架為TensorFlow Federated。
3.1 數(shù)據(jù)集描述與預(yù)處理
本研究采用了兩個公開數(shù)據(jù)集進行實驗:UNSW-NB15和CSE-CIC-IDS 2018。UNSW-NB15數(shù)據(jù)集中的流量被分為正常流量和攻擊流量兩種,攻擊流量被進一步細(xì)分為9種攻擊類型,該數(shù)據(jù)集用于訓(xùn)練和測試入侵檢測模型[11]。
CSE-CIC-IDS 2018數(shù)據(jù)集包含了實際網(wǎng)絡(luò)流量數(shù)據(jù),涵蓋了暴力攻擊、Heartbleed漏洞攻擊、DOS攻擊、分布式拒絕服務(wù)(Distributed Denial of Service,DDoS) 攻擊、Web攻擊(跨站腳本攻擊) 、結(jié)構(gòu)化查詢語言(Structured Query Language,SQL) 注入、僵尸網(wǎng)絡(luò)、滲透攻擊共7種攻擊場景[12]。
在數(shù)據(jù)預(yù)處理階段,首先對數(shù)據(jù)集進行了清洗,去除了噪聲數(shù)據(jù)和異常值。然后,對數(shù)據(jù)進行了歸一化處理,將特征值縮放到[0, 1]區(qū)間內(nèi)。接著,采用K-means聚類算法對數(shù)據(jù)進行了劃分,將數(shù)據(jù)集劃分為訓(xùn)練集、驗證集和測試集。最后,對數(shù)據(jù)進行了特征提取,提取了41個特征用于訓(xùn)練模型。
3.2 實驗參數(shù)設(shè)置
本研究在實驗過程中參數(shù)初始值如表1所示。
3.3 實驗結(jié)果展示與分析
使用訓(xùn)練時間、準(zhǔn)確率(Accuracy)、召回率(Recall) 和F1分?jǐn)?shù)(F1-score) 作為評價指標(biāo)[13],模型的實驗結(jié)果如表2所示。
從模型實驗結(jié)果可以看出,在UNSW-NB15數(shù)據(jù)集上,基于CNN-LSTM-FedAvg的工業(yè)互聯(lián)網(wǎng)入侵檢測方法在訓(xùn)練時間、準(zhǔn)確率、召回率和F1值等指標(biāo)上表現(xiàn)優(yōu)異。具體來說,準(zhǔn)確率達到了96.5%,召回率為95.3%,F(xiàn)1值為95.9%。在CSE-CIC-IDS 2018數(shù)據(jù)集上,基于CNN-LSTM-FedAvg的方法同樣表現(xiàn)優(yōu)異。準(zhǔn)確率為97.2%,召回率為96.1%,F(xiàn)1值為96.6%。
3.4 對比實驗與性能評估
為了進一步驗證基于CNN-LSTM-FedAvg的方法的有效性,本研究將其與其他幾種主流的入侵檢測方法進行了對比實驗,包括基于深度學(xué)習(xí)的檢測方法和基于聯(lián)邦學(xué)習(xí)的檢測方法[14],對比的實驗結(jié)果如表3所示。
從對比實驗結(jié)果可以看出,在UNSW-NB15數(shù)據(jù)集上,基于CNN-LSTM-FedAvg的方法在訓(xùn)練時間、準(zhǔn)確率、召回率和F1值等指標(biāo)上均優(yōu)于其他方法。特別是在召回率方面,基于CNN-LSTM-FedAvg的方法比其他方法提高了約5%。
在CSE-CIC-IDS 2018數(shù)據(jù)集上,基于CNN-LSTM-FedAvg的方法同樣表現(xiàn)優(yōu)異。與其他方法相比,該方法在訓(xùn)練時間、準(zhǔn)確率、召回率和F1值等指標(biāo)上均有顯著提升。特別是在準(zhǔn)確率方面,基于CNN-LSTM-FedAvg的方法比其他方法提高了約6%。
綜合以上實驗結(jié)果,可以得出結(jié)論:基于CNN-LSTM-FedAvg的工業(yè)互聯(lián)網(wǎng)入侵檢測方法在訓(xùn)練時間、準(zhǔn)確率、召回率和F1值等指標(biāo)上均優(yōu)于傳統(tǒng)方法和其他深度學(xué)習(xí)方法,具有較高的檢測性能和實用性。
4 結(jié)論與展望
本研究成功提出并驗證了基于CNN-LSTM-FedAvg的工業(yè)互聯(lián)網(wǎng)入侵檢測方法。該方法結(jié)合了卷積網(wǎng)絡(luò)(CNN) 與長短期記憶網(wǎng)絡(luò)(LSTM) ,并通過改進的聯(lián)邦學(xué)習(xí)算法FedAvg進行訓(xùn)練,顯著提升了入侵檢測的準(zhǔn)確性與時效性。實驗結(jié)果表明,相較于傳統(tǒng)方法,本方法在檢測率、誤報率和響應(yīng)時間上均表現(xiàn)出色,但仍然有改進空間。后續(xù)研究方向可以放在處理大規(guī)模、高動態(tài)性的工業(yè)互聯(lián)網(wǎng)數(shù)據(jù)的入侵檢測系統(tǒng)中,進一步提高檢測精度和魯棒性。
參考文獻:
[1] 孫海麗,龍翔,韓蘭勝,等.工業(yè)物聯(lián)網(wǎng)異常檢測技術(shù)綜述[J].通信學(xué)報,2022,43(3):196-210.
[2] YANG K,LI Q,LIN X D,et al.iFinger:intrusion detection in industrial control systems via register-based fingerprinting[J].IEEE Journal on Selected Areas in Communications,2020,38(5):955-967.
[3] LI Y M,XU Y Y,LIU Z,et al.Robust detection for network intrusion of industrial IoT based on multi-CNN fusion[J].Measurement,2020,154:107450.
[4] ZHOU X K,HU Y Y,LIANG W,et al.Variational LSTM enhanced anomaly detection for industrial big data[J].IEEE Transactions on Industrial Informatics,2021,17(5):3469-3477.
[5] CHEN Y L,SU S D,YU D,et al.Cross-domain industrial intrusion detection deep model trained with imbalanced data[J].IEEE Internet of Things Journal,2023,10(1):584-596.
[6] LIU Y,KUMAR N,XIONG Z H,et al.Communication-efficient federated learning for anomaly detection in industrial Internet of Things[C]//Proceedings of 2020 IEEE Global Communications Conference. Piscataway: IEEE Press,2020:1-6.
[7] LIU Y,GARG S,NIE J T,et al.Deep anomaly detection for time-series data in industrial IoT:a communication-efficient on-device federated learning approach[J].IEEE Internet of Things Journal,2021,8(8):6348-6358.
[8] KRAVCHIK M,SHABTAI A.Detecting cyber attacks in industrial control systems using convolutional neural networks[C]//Proceedings of the 2018 Workshop on Cyber-Physical Systems Security and PrivaCy.Toronto Canada.ACM,2018:72-83.
[9] FENG C,LI T T,CHANA D.Multi-level anomaly detection in industrial control systems via package signatures and LSTM networks[C]//2017 47th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).Denver,CO,USA.IEEE,2017:261-272.
[10] YANG Q,LIU Y,CHEN T J,et al.Federated machine learning[J].ACM Transactions on Intelligent Systems and Technology,2019,10(2):1-19.
[11] MOUSTAFA N,SLAY J.UNSW-NB15:a comprehensive data set for network intrusion detection systems (UNSW-NB15 network data set)[C]//2015 Military Communications and Information Systems Conference (MilCIS). Canberra,ACT,Australia.IEEE,2015:1-6.
[12] ARQANE A,BOUTKHOUM O,BOUKHRISS H,et al.A review of intrusion detection systems:datasets and machine learning methods[C]//Proceedings of the 4th International Conference on Networking,Information Systems amp; Security.KENITRA AA Morocco.ACM,2021:1-6.
[13] SIDDIQUI M K,MORALES-MENENDEZ R,HUANG X D,et al.A review of epileptic seizure detection using machine learning classifiers[J].Brain Informatics,2020,7(1):5.
[14] RUZAFA-ALCáZAR P,F(xiàn)ERNáNDEZ-SAURA P,MáRMOL- CAMPOS E,et al.Intrusion detection based on privacy-preserving federated learning for the industrial IoT[J].IEEE Transactions on Industrial Informatics,2023,19(2):1145-1154.
【通聯(lián)編輯:代影】