

























摘 要:工業控制系統異常檢測面臨著數據缺乏標簽信息、類不平衡和類重疊的耦合問題,導致現有的分類器難以精準檢測異常數據?,F有的數據級采樣方法在打偽標簽、數據平衡或檢測重疊區域時存在著打偽標簽結果不準確、采樣效果穩定性差以及重疊識別率低等問題。為此,提出一種基于半監督學習的欠采樣方法(SSLU-LP)。該方法通過異構集成將標簽傳播機制和單類分類器結合,補充數據偽標簽;利用最小生成樹策略構建重疊區域檢測模型;采用欠采樣策略,通過最近鄰搜索有選擇性地去除部分多數類樣本。最后該方法與四種經典分類器結合,在九個工控數據集上與九種混合算法進行比較。實驗結果表明,所提方法可以精準地為無標簽數據打偽標簽,高效且有效檢測出不平衡數據集中的重疊數據,改善了分類器的訓練效果,提高了分類器的異常檢測性能。
關鍵詞:工業控制系統;類不平衡;類重疊;半監督學習;異常檢測
中圖分類號:TP181"" 文獻標志碼:A
文章編號:1001-3695(2025)01-022-0156-09
doi: 10.19734/j.issn.1001-3695.2024.06.0195
Semi-supervised under-sampling method for anomaly detection of industrial control data with class imbalance and overlap
Abstract:Anomaly detection in industrial control systems faces challenges such as lack of label information, class imbalance, and class overlap, which hinder existing classifiers from accurately detecting anomalies. Current data-level sampling methods suffer from inaccurate pseudo-labeling, poor sampling stability, and low overlap detection rates. Therefore, this paper proposed an undersampling method based on semi-supervised learning (SSLU-LP). This method combined the label propagation mechanism with a single class classifier through heterogeneous integration to supplement pseudo-labels. It constructed an overlap region detection model using the minimum spanning tree strategy and employed an undersampling strategy to selectively remove some majority class samples via nearest neighbor search. Finally, this paper combined the proposed method with 4 classical classifiers and compared it with 9 hybrid algorithms on 9 industrial control datasets. Experimental results show that the proposed method can accurately pseudo-label unlabeled data, efficiently and effectively detect overlapping data in unbalanced datasets, improve the classifier’s training performance, and enhance its anomaly detection capabilities.
Key words:industrial control system; class imbalance; class overlap; semi-supervised learning; anomaly detection
0 引言
工業控制系統(industrial control system,ICS)是一種用于監控和控制工業過程的計算機系統,通常用于能源、交通、電力等國家關鍵基礎設施,其安全性已提升到國家戰略層面[1~3]。隨著工業化與信息化的深度融合,ICS面對著來自網絡的安全威脅。典型的ICS安全保障由防護、檢測、響應和恢復四個階段構成[4]。其中,檢測階段專注于監測和發現安全事件的跡象和異常行為,采用各種技術和工具來及時發現潛在的安全威脅。
異常檢測在ICS中扮演著至關重要的角色,用于識別潛在的故障或異常行為,從而保證系統的可靠性和安全性[1]。然而,ICS數據大多存在著缺乏標簽信息、數據不平衡和重疊的問題[5],都進一步加劇了異常檢測分類任務的難度。
數據類不平衡指的是不同類別的數據數量嚴重不均衡,其中少數類數據的數量遠遠少于多數類數據,而在異常檢測中,少數類數據尤為重要。類重疊表示數據集中可能存在部分數據,它們的數據特征表示或數據分布在某些方面與其他數據非常相似或相近,存在重疊區域,導致分類模型難以區分,從而影響分類器的表現和學習效果。不幸的是,不平衡和重疊總是耦合的。因此,對于分類器來說,該耦合關系構成了一個相當困難的場景[6]。
數據級和算法級的方法已經被用來嘗試解決這種耦合問題[7]。前者側重于預處理以平衡數據并消除重疊[8],而后者則引導分類器偏向少數或重疊數據[9]。數據級方法是基于現有數據特征的模式學習,包括過采樣和欠采樣,雖然過采樣是一種被廣泛使用的技術,但可能導致重疊問題的加重,并引入部分噪聲,從而削弱模型對于少數類的檢測能力。因此,本文著重關注欠采樣方法,特別是局部方法[10]。局部方法僅使用少數類數據與其鄰居之間的關系,有選擇地刪除多數類數據,以在減少多數類數據的同時盡可能保留多數類的信息,避免丟失重要數據,并提高計算效率,該方法很好地解決了類不平衡問題[11],特別針對異常檢測分類任務,其效果高度依賴于足夠的已知信息。
然而,ICS數據存在缺乏標簽信息的問題,可能導致在異常檢測任務中無法輕松地識別和檢索該類數據,限制了傳統監督學習方法的應用,因為該類方法需要大量含有標簽的數據來訓練模型[12],這對于采樣來說是一個非常棘手的問題。
針對ICS異常檢測中存在的問題,本文提出一種面向類不平衡和重疊數據半監督欠采樣方法(semi-supervised learning under-sampling method derived from label propagation mechanism, SSLU-LP),并將其應用于工業控制系統異常檢測任務中。首先利用異構集成學習將標簽傳播機制與單類分類器相結合,準確地找到決策邊界,采用雙重驗證機制為缺失標簽信息的數據打偽標簽。同時,為了避免過采樣方法可能增加的噪聲和重疊,采用最小生成樹策略構建面向決策邊界的重疊區域檢測模型,對該區域采用欠采樣策略,提出最近鄰搜索選擇被刪除的多數類數據。最后構建一種半監督學習欠采樣框架,有效解決不平衡和重疊數據的異常檢測分類問題,特別適用于標簽信息不足的情況。
1 相關工作
關于類不平衡和類重疊的共同效應與數據分布的內在特征,Vuttipittayamongkol等人[13]提出了不平衡域中類重疊的存在。他們指出,當這兩個因素都存在時,比單獨處理任何一個問題時要復雜得多。因此,類重疊和類不平衡存在著隱性的依賴關系,不能單獨分析。根據以往的研究,欠采樣方法對解決重疊問題更有效。最簡單的欠采樣方法是隨機欠采樣(random under sampling, RUS)[14],它通過隨機去除一些多數類數據來實現數據平衡。同時,Near Miss[14]和清洗規則(neighborhood cleaning and labeling, NCL)[14]也被證明是有效的。
研究表明,重疊檢測被認為是確定哪些數據應該被欠采樣的關鍵步驟,重疊的影響甚至大于不平衡的影響[12]。其中基于密度的方法很受歡迎。Mayabdi等人[15]提出了兩種新的基于密度(density-based sampling approaches , DBSA)的算法來消除兩個類之間的重疊和噪聲,并產生平衡和規范化的類分布。這兩種算法從大多數類中去除高密度數據,并消除兩個類中重疊的噪聲。Bunkhumpornpat等人[16]提出了基于密度的欠采樣(density-based majority under sampling technique , DBMUTE)算法,使用密度函數定義偽質心,即每個多數類與少數類數據沿最短路徑距離聚類,較短的路徑意味著應該刪除的潛在重疊區域。然而,這些基于密度的方法耗時較長。
另外以決策邊界為中心構造重疊區域也很流行。Vuttipittayamongkol等人[17]提出了模糊聚類欠采樣(overlap based under sampling , OBU)算法,使用模糊聚類算法來確定邊界數據,將其定義為重疊區域,為了區分多數類和少數類,將聚類的數量強制為2,使得該方法不適合處理包含多個類的不平衡數據集。Dai等人[18]提出了分解類重疊欠采樣(Schur decomposition class-overlap under sampling method, NSchur)方法來確定數據集的全局相似度,以獲取潛在的邊界重疊數據,并首次使用矩陣分解方法處理類不平衡數據上的類重疊問題。高冰等人[4]提出了面向重疊區域的混合采樣方法(overlap region with hybrid sampling, OverlapRHS),通過利用支持向量機分別識別多數類和少數類數據的邊界重疊區域,并進行混合采樣來提升分類器的訓練效果。但上述方法在識別重疊區域時面臨著精度不高、計算復雜度高和使用范圍受限等問題。
此外,缺少標簽信息是一種更現實的情況。半監督學習更適合于解決該類問題,該方法通過利用有標簽數據來預測無標簽數據,嘗試給無標簽數據分配一個“偽標簽”。一旦分配了偽標簽,這些缺少標簽的數據就可以被視為帶有標簽的數據,用于訓練模型。標簽傳播(label propagation, LP)[19]是最著名的基于標簽傳播局部劃分的半監督學習方法。Zhang等人[20]提出了基于標簽重要性的標簽傳播算法(label importance based label propagation algorithm, LILPA),但是,當一個數據節點的最重要標簽數大于1時,LILPA會隨機選擇一個標簽分配給其他節點,會導致不穩定問題。Zhang等人[21]提出了基于節點能力的標簽傳播算法(node ability based label propagation algorithm, NALPA),使用從節點屬性推斷的信息進行傳播,保持簡單性并提高了準確性。高兵等人[22]提出一種基于度和節點聚類系數的節點重要性定義(overlapping community detection based on graph embedding and multi-label propagation algorithm,OCD-GEMPA),進一步優化重疊社區檢測算法。Taha等人[23]提出了基于統一圖的缺失標簽傳播方法(unified graph-based missing label propagation method, UGMLP),應用于補充缺失的標簽矩陣,以指導標簽分類模型的創建。Yan等人[24]提出了一種快速標簽傳播算法(fast label propagation algorithm, FLPA),提升了傳播速度,但是忽略了精度。Li等人[25]提出了增量標簽傳播(incremental label propagation, ILPF)算法,通過逐漸增加可信的偽標簽來平衡標簽分布,從而減少偽標簽帶來的不確定性。但是這些半監督學習方法依賴于低密度假設,即決策邊界必須位于低密度區域[26],導致標簽傳播不準確和時間復雜度較高等問題,最終影響分類器在不平衡和類重疊問題上表現不佳。
2 基于半監督學習的欠采樣算法
本文旨在解決異常檢測分類任務中常見的類不平衡和類重疊耦合的問題,特別是在缺乏標簽信息的情況下。首先,在圖1“打偽標簽階段”,設計一種多元分層半監督學習方法,綜合利用有標簽和無標簽數據,以及數據分布信息來生成高質量的偽標簽。然后,在“重疊區域檢測階段”,設計一種有效的檢測模型,在剩余部分數據無標簽的情況下,能夠準確識別重疊區域。最后,在“重疊區域采樣階段”,設計一個自適應參數化的欠采樣方法,通過最小生成樹策略更準確地識別并刪除重疊區域的多數類數據。
綜上所述,本文提出一種面向類不平衡和重疊的工控數據異常檢測的半監督欠采樣方法SSLU-LP,更好地探索類不平衡和類重疊問題之間的內在聯系,并將其應用于缺少標簽的實際應用中。方法結構如圖1所示。
2.1 偽標簽生成
在缺少標簽信息的數據挖掘和機器學習任務中,單類支持向量機(one class support vector machine, OCSVM)[27]是一種廣泛使用的單類分類異常檢測方法。因此,在本節中,使用參數調優的OCSVM算法,初步解決無標簽數據集中部分數據的標簽劃分問題,并找到多數類和少數類之間的決策邊界。這將為后續的分類任務提供更準確的標簽信息和決策邊界位置。
訓練樣本x1,x2,…,xl∈X,其中l∈N(N為樣本總數),X為集合。如圖2(a)所示,設Φ為X→F到點積空間的特征映射。其中k(·,·)表示一個核函數,高斯核函數是最常見和最靈活的:
其中:φ(x)、φ(y)分別為樣本x、y到點積空間的特征映射;c作為核函數的超參數。
OCSVM算法返回一個函數f,策略將樣本映射到內核對應的特征空間中,并以最大邊界將其與原點分離。捕獲大部分樣本點的區域中取值為+1,在其他地方取值為-1。
超平面是根據決策邊界描述訓練集找到的。在特征空間中,用超平面分隔區域內的訓練樣本,使用ωT·φ(xi)-ρ=0劃分超平面,其中ω決定了超平面的方向,ρ為位移項。對于新的點x,值f(x)是通過評估落在超平面上的特征空間的邊來確定的。
為了將樣本集與原點分離,求解如下二次規劃:
其中:v∈(0,1)為參數。索引i和j在1,…,l(縮寫為i,j∈[l])內考慮,其中l表示向量維數。非零松弛變量ξi在目標函數中受到懲罰。
在式(2)中,正則化系數v和核函數中的超參數c對于形成超平面至關重要。當正則化系數v較小時,超平面會將更多的樣本放置在超平面上,從而減少了離群值的數量,表明訓練樣本超出了決策邊界的上限;然而,由于超參數c縮放了兩個原始值之間的距離,當c較大時,決策邊界會變得粗糙,容易過擬合,從而影響決策邊界的定位。因此,可以設置超參數(v,c)的范圍,然后使用所有可能的組合來訓練OCSVM,即求解式(2),選擇使用分類誤差最小的超參數組合來完成OCSVM的訓練。
采用拉格朗日公式求解決策函數公式f(x)=sgn((ω*φ(x))-ρ),得到式(3)尋找不同樣本類別的決策邊界。
返回具有非零αi的對應樣本xi的支撐向量,其中系數αi為對偶問題的解:
對于任何不在上界或下界的αi,可以用相應的樣本xi來滿足偏移量ρ。
根據決策函數返回的結果ypred,可以基于樣本x進行如下預測:
a)ypred=-1:樣本屬于離群值或異常值,也意味著該樣本暫時無法打偽標簽;
b)ypred !=-1:樣本與訓練集樣本具有相同的特征,屬于決策邊界內的樣本,可以打偽標簽。
對樣本初步劃分后,可以得到部分偽標簽數據集Xpartpselabel0:
其中:Xmajnol和Xminnol分別為多數類和少數類偽標簽樣本;Xnol0和Xnol1分別為多數類和少數類剩下的無標簽樣本。
在現有分割的基礎上,本文設計一種半監督模型,利用雙重驗證機制打偽標簽,進一步確定完整樣本集的標簽。假設樣本空間中的距離越近,具有相同樣本標簽的可能性就越大。故假設得到的剩余無標簽樣本集Xnol0、Xnol1,樣本點之間的位置關系是一個有向完全圖,樣本之間的距離越近,其特征越相似,對應的權重越大。
通過上述得到的已知標簽樣本(x1,y1),(x2,y2),…,(xl,yl),其中yl={0,1}為樣本集對應的標簽,多數類樣本和少數類樣本分別分布在兩個已知的標簽樣本集中。
設(xl+1,yl+1),(xl+2,yl+2),…,(xl+l,yl+l)為不帶標簽的樣本點,其中標簽值Yu={0,1}的具體值未知。
首先按如下方法計算樣本間的權重:
其中:σ為控制權值的超參數;wij為樣本點xi和xj之間的權值距離;d為數據維度。
計算權重距離后,得到樣本與邊之間的權重矩陣w,為對稱矩陣。接下來,定義維度為(l+u,l+u)的概率轉移矩陣T,計算兩個樣本之間的轉移概率:
其中:Tij表示當T不是對稱矩陣時,樣本j轉移到樣本i的概率。然后定義維度為(l+u,C)的標簽矩陣Y,其中每個數值表示每個樣本屬于不同類別的概率分布。
最后,只需迭代以下步驟即可獲得未知標簽樣本的預測結果。
a)計算更新后的Y:Y=TY。
Xpartpselabel0和Xpartpselabel1兩個偽標簽樣本集采取數學驗證方法取交集,對于標簽進行雙重驗證,最終確定偽標簽數據集Xpesudolabel,如圖2(c)所示。
對于非相交區域的樣本,暫時不能對樣本打偽標簽,直接使用清洗NCL方法對區域內的樣本進行刪除。
在使用異構集成學習和雙重驗證機制對數據打偽標簽后,必須繼續解決數據不平衡和重疊的問題。因此,有必要繼續對樣本進行重疊區域檢測和采樣,以平衡數據集。
2.2 重疊區域檢測
在獲得所有已知標簽的數據集后,必須重點解決數據之間的類不平衡和重疊問題。因此,數據區域劃分的好壞直接影響到后續解決不平衡和重疊問題的效果和效率。Schlkopf等人[27]提出了在基于OCSVM方法上將數據集劃分為重疊區域,并研究了在學習決策邊界后,根據數據特征將數據劃分為不同的群體,從而制定不同的策略。Napierala等人[28]提出了首先通過KNN將少數類樣本分為安全(safe)、邊際(marginal)、罕見(rare)和異常(outliers)四組。根據這些分組的特點,使用不同的過采樣機制來生成新樣本。對于這些問題,靠近邊界的樣本比遠離邊界的樣本更容易被誤分類,因此對其分類更重要。本文利用已經得到最優參的OCSVM的區域邊界結果值,進一步劃分樣本集,得到更細致的重疊區域。
根據OCSVM區域邊界的特性,對于圖1中重疊區域采樣階段的方法構造了最小生成樹(minimum spanning tree, MST)策略。當圖中可能有多條連通的邊,并且圖中每條邊都有權值時,從中選取一些邊生成一棵有n條邊的樹,生成這棵樹的總代價是使每條邊的權值之和最小。換句話說,掃描決策邊界區域內的所有點,分別計算不同點之間的距離,使其成為權值,然后選擇不同區域內權值和最小的連接點。
首先,在決策邊界附近輸入偽標簽數據集Xpsel。對于Xpsel中的每個樣本xi,計算新數據集中樣本點之間的距離矩陣dm:
根據返回的dm計算MST。首先遍歷MST,找到最接近的同類樣本xi或不同類樣本yi。取樣本xi、yi的索引inx。根據inx提取超球中心(xi,yi)的樣本點形成一個新的數據集newx和標簽集newy。
統計有邊連接但連接點是不同類樣本的個數nin,返回具體nin所代表的重疊區域樣本值。
由此,可以得到樣本具體的分組信息:
a)非重疊區域:OCSVM決策邊界內的樣本;
b)重疊區域:位于決策邊界附近且不同類別的樣本彼此相鄰的樣本。
2.3 最近鄰欠采樣
在確定了重疊區域的確切范圍之后,必須關注數據重疊問題,因為重疊區域主要位于兩種數據類型的決策邊界附近。因此,通過比較數據點在其所屬類別內和其他類別之間的最近鄰距離來判斷其是否位于重疊區域,從而選擇要保留或排除的樣本;同時也為了更好地保留決策邊界附近的重疊區域內的樣本點,以提高模型對這些關鍵區域的敏感度,并盡量減少信息損失,本文提出了一種基于類內外最近鄰距離連接點的欠采樣方法。該方法的核心思想是通過考慮數據在所屬類別內和其他類別之間的最近鄰距離來選擇要保留或排除的樣本。
具體來說,要在決策邊界附近保留足夠的樣本,以確保模型能夠最優地捕獲這些關鍵區域的特征。欠采樣時,優先考慮的是保護重疊區域內的少數類樣本,因此本文計算了少數類樣本(label = 1)的每個樣本,樣本到同類樣本的最近鄰居的距離d(xi,NNis),以及該樣本點到不同類的最近鄰居的距離d(xi,NNio),如圖3所示。
若d(xi,NNis)≥d(xi,NNio),則刪除d(xi,NNio)所連接的非同類樣本點;否則留下。并且在算法計算過程中該點已經安全,則下一次迭代中不被計算,直到計算完輸入的所有樣本,如圖2(d)所示。
總的來說,基于類內和類外最近鄰連接點的欠采樣方法通過準確地選擇保留或排除樣本,為解決重疊區域樣本問題提供了一種有效而準確的方法,可以更好地平衡模型性能并捕獲關鍵區域。
2.4 時間復雜度
在本節中,將描述SSLU-LP方法的算法流程和時間復雜度。該方法的總體框架如圖1所示,包括偽標簽生成、重疊區域檢測和重疊區域采樣三個階段。
時間復雜度越低通常意味著效率越高。這個時間復雜度是一個近似的估計值,具體的實際復雜度也可能受到具體實現細節和數據特征的影響。其中,u為樣本總數(其中m為多數類樣本數量,l為少數類樣本數量),k為最近鄰數量,t為迭代次數。
不同欠采樣的時間復雜度如表1所示。
對于本文提出的SSLU-LP,對于每個少數類樣本,需要計算相同類的最近鄰和不同類的最近鄰之間的距離。假設有l個少數類樣本,計算復雜度為O(l),表示與要刪除的點的數量有關的復雜度。對于刪除不同類樣本點的操作,該步驟的復雜度與需要刪除的點的數量有關,最壞情況下需要刪除的點的數量為O(u)。整個算法的迭代次數取決于算法中要執行的迭代次數。在每次迭代中,計算新的最近鄰距離并去除一些樣本點。假設迭代次數為k,則整個算法的復雜度為O(k)。因此,整個欠采樣算法的時間復雜度可以表示為O(k+ut)。
將提供的算法按時間復雜度從小到大排序:
可以看出,ALLKNN[29]方法是最快的,因為它不進行迭代計算;其次是本文算法SSLU-LP,它進行迭代,但整體時間效率更高;而cluster centroids[14]方法通常需要多次迭代來更新聚類中心,直到收斂為止,每次迭代都涉及到計算每個樣本點到聚類中心的距離,并重新分配樣本到最近的聚類中心,所以時間復雜度最高。
3 實驗
3.1 數據集
實驗選取九個公開的ICS數據集,分別為BHP(burst header packet)是用于光突發交換網絡的入侵檢測研究[4]的數據集,包含多控制分組存在洪泛攻擊的情景。GP(gas pipeline)是關于天然氣管道傳感器數據的研究[4],包括檢測與天然氣管道相關的異常或入侵情況的結果數據。Power數據集與電力輸電系統相關,包含混合入侵檢測系統的數據[4]。Nslkdd數據集是一種用于網絡入侵檢測的標準數據集,常用于評估入侵檢測算法的性能[4]。Iscx(information security center for the x-informatics) 數據集用于信息安全研究,包括各種網絡流量數據,用于入侵檢測和惡意行為分析[30]。Wst (wireless sensor testbed) 數據集包含與無線傳感器網絡或IoT設備相關的數據,用于研究無線通信和傳感器數據的安全性和性能[31]。Firewall數據集包含與防火墻日志或網絡流量相關的信息[32]。水處理(swat water treatment, Swat)系統,用于研究與工業自動化安全和入侵檢測相關的問題,包括模擬水處理廠的工業控制系統在過去的11天中收集的實驗數據[33]。Wadi(water distribution) 數據集是與水處理操作和工業自動化相關的數據集[34],該數據集中包括傳感器和網絡的數據。
這些數據集都是不平衡的數據集,它們都存在標簽缺失和重疊的問題,而標簽缺失和重疊的問題被廣泛使用。對于數據集的選擇,在實驗開始之前,為了模擬真實情況,通過設置一個隨機數,隨機選擇部分數據去除標簽,形成缺失標簽的數據集。此時將比率定義為
Deletionratio=DR=numnonum(11)
這些數據集的詳細特征,如數據量總數(num)、屬性、已知標簽數據數量、未知標簽數據數量(numno)、缺失標簽比(DR)、已知標簽多數類數據數量、已知標簽少數類數據數量和已知標簽數據不平衡比,如表2所示。
3.2 實驗設置
a)驗證框架的整體性能。為了揭示不同算法之間的差異和局限性,將三種經典的半監督學習算法(OCSVM, Label Propagation和Self-Training)和三種適應性較強的欠采樣算法(ENN[14], Tomek Link[14]和ALLKNN[29])進行組合,作為九種混合方法,與本文提出的SSLU-LP方法進行對比實驗,以確保比較結果的可靠性和可解釋性。它們分別為SE (Self-Training + ENN)、ST (Self-Training + Tomek Link)、SA (Self-Training + ALLKNN)、LE (Label Propagation + ENN)、LT (Label Propagation + Tomek Link)、LA (Label Propagation + ALLKNN)、OE (OCSVM + ENN)、OT (OCSVM + Tomek Link)和OA (OCSVM +ALLKNN)。
b)驗證采樣性能。因不同算法可能對數據集的分布、屬性和規模有不同的假設和適應性,為了提供更全面的比較,本文選擇十種基準欠采樣方法與SSLU-LP方法進行對比,分別為ENN (edited nearest neighbors)、RENN (repeated edited nearest neighbors)、Near Miss、RUS、Cluster Centroids、Tomek鏈、AllKNN、壓縮最近鄰 (CNN)、單側選擇 (one sided selection, OSS)、NCL。
c)驗證采樣后的分類性能。除了與上述經典算法的對比之外,還與Vuttipittayamongkol等人[8]提出的四種基于鄰域搜索的潛在重疊實例識別欠采樣框架進行對比,這四種方法分別為NB-Basic、NB-Tomek、NB-Comm和NB-Rec。
上述算法均使用Python庫Scikit-Learn[35]實現,使用默認設置。
在保持默認參數的情況下,本文選擇常用的支持向量機(support vector machine, SVM)、邏輯回歸(logistic regression, LR)、高斯樸素貝葉斯(gaussian naive bayes, GNB)和多層感知器(multilayer perceptron, MLP)四種異常檢測分類器進行實驗。所有實驗均在Python 3.9下的AMD Ryzen 7-6800H處理器上進行。
3.3 評價指標
本文在不同的驗證實驗中使用了不同的評估指標,選擇靈敏度(sensitivity)、特征曲線下方的面積(area under curve, AUC)和幾何均值(G-mean)來評估方法的整體性能。
此外,同時進行了非參數統計檢驗,以支持整體框架的結果。弗里德曼統計檢驗用于檢測所有實驗方法的差異,然后使用Nemenyi事后檢驗來區分每種方法的關鍵差異。
3.4 分類結果
3.4.1 分類性能
根據實驗a)的設置,可以得到表3和4的分類性能結果。
表3顯示了分類性能的Sensitivity結果。該方法在所有測試數據集上都能表現出最佳的性能。其中,使用SVM分類器方法的結果在七個數據集中排名第一;使用LR、GNB和MLP分類器方法的結果在六個數據集中排名第一,在其余數據集中排名前三。
從表3可知,根據SVM分類器的結果,在BHP數據集中,SSLU-LP的靈敏度達到76.19%,比OT方法提高了49.16百分點;比次優方法SE提高了4.19百分點。根據LR分類器的結果,在Wadi數據集中,SSLU-LP的靈敏度達到了90.65%,比OT方法提高了80.19百分點,較次優方法SA的89.66%提高了0.99百分點。根據GNB分類器的結果,在Firewall數據集中,SSLU-LP的靈敏度達到了99.96%,比OT方法提高了95.81百分點,在次優方法ST方法中達到了99.93%,提高了0.03百分點。最后,根據MLP分類器的結果,在Wst數據集中,SSLU-LP達到70.97%,比OT方法提高了62.86百分點,比次優方法LE提高了0.17百分點。
表4顯示了AUC結果。本文方法使用SVM和MLP分類器的結果在七個數據集中排名第一;使用LR和GNB分類器的結果在六個數據集中排名第一;SE和LA方法次之。
從表4可知,根據SVM分類器的結果,在Wadi數據集中,SSLU-LP的AUC值為99.65%,比OT方法提高了42.57百分點;較次優方法LT的99.33%,提高了0.32百分點。根據LR分類器的結果,在Power數據集中,SSLU-LP的AUC值達到80.51%,相較于OT方法提高了21.82百分點;比次優方法ST提高了5.97百分點。根據GNB分類器的結果,在Gas數據集中,SSLU-LP的AUC結果為97.10%,比SA方法提升44.16百分點;比次優方法OT提高了2.94百分點。最后,根據MLP分類器的結果,在Swat數據集中AUC值為99.84%,比OE方法提高了31.76百分點,比次優方法LE提高了0.05百分點。
根據實驗c)的設置,可以得到圖4和5的分類性能結果。
圖4展示了G-mean值的比較結果。其中,SSLU-LP方法在使用SVM和MLP分類器時,在八個數據集中排名第一;在使用LR和GNB分類器時,在七個數據集中排名第一。NB-Comm和NB-Rec方法次之。
圖5展示了AUC值的比較結果。其中,SSLU-LP方法在使用SVM和GNB分類器時,在八個數據集中排名第一;在使用MLP分類器時,在七個數據集中排名第一;在使用LR分類器時,在六個數據集中排名第一。NB-Tomek和NB-Rec方法次之。
可以看出,SSLU-LP方法在所有ICS數據集上至少在一個性能指標方面表現出最佳性能,并且在所有指標上都與最先進的方法相當。這種優異的綜合性能得益于本文方法是一種基于異構集成學習的偽標簽生成方法,結合了面向決策邊界的重疊區域檢測模型,不僅可以更清晰地描繪待采樣的數據區域,而且通過采用最近鄰搜索的欠采樣機制,可以準確地去除對數據分類影響較大的重疊多數類數據。
3.4.2 分類時間
在表5中比較了本文方法和其他九種混合方法的運行時間??梢钥闯觯琒SLU-LP方法在八個數據集上都是領先且高效的方法。
例如,在BHP數據集中,SSLU-LP方法的運行時間為0.15 s,而其他九種比較算法的平均時間約為1.087 s,SSLU-LP方法減少了0.937 s;在Iscx數據集中,其他九種比較算法的平均時間約為1.114 s,SSLU-LP方法的運行時間為0.576 s,減少了0.538 s。數據集的大小、維度和分布對運行時間有顯著影響。在Firewall數據集上,SSLU-LP方法的運行時間不是最優的,這可能是因為數據集的大小以及數據分布復雜,導致算法需要更多時間來處理重疊區域,導致結果欠佳。
結合表1中采樣方法的時間復雜度結果,盡管ALLKNN的時間復雜度最低,但當與不同的半監督算法結合使用時,其運行時間卻不一定是最優的。這主要是因為數據集的維度、不平衡度和缺失標簽等因素對于混合方法的影響。
在實際運用中,算法的運行時間直接影響其可用性和效率,SSLU-LP方法在多種數據集中表現出高效性,表明其在處理不同規模的數據都具有潛在優勢。相比之下,其他混合算法雖然在某些特定情況下表現良好,但在處理較為復雜的數據集時,其時間效率顯著降低。
3.4.3 統計檢驗
為了反映本文SSLU-LP方法與其他混合方法在泛化方面的差異,使用Friedman檢驗進行全面比較,如表6所示。
可以推斷,四種分類器的每種抽樣方法得到的Sensitivity、AUC和G-mean指標在α=0.05的置信水平上拒絕Friedman檢驗(所有顯著性都小于0.05),這表明所有方法的性能之間存在顯著差異。
同時可以獲得Friedman檢測對于各種混合方法的G-mean測試排名,如圖6所示。SSLU-LP在所有分類器的G-mean指標上都獲得了很高的排名。因此,可以得出結論,與其他方法相比,SSLU-LP方法具有更積極的可變性。
在Friedman檢驗的基礎上,使用Nemenyi事后檢驗進一步區分這些算法在G-mean上的性能。該測試主要使用式(12)計算每個平均排名的臨界值CD。
其中:qα為Tukey分布的臨界值;k為算法數;t為數據集的數量。每個度量的CD值都是相同的,因為k和t是常數。一般情況下,如果算法的平均排名大于CD值,則假設被拒絕,并具有相應的置信水平。由k=10, t=9, qα=0.05= 3.16,得到CD= 4.47。G-mean結果如圖7所示。在大多數情況下,SSLU-LP作為一種控制方法具有突出的優點。
3.4.4 采樣性能
接下來,繪制平均特征曲線(receiver operating characteristic curve, ROC)以觀察采樣的性能。這里選擇了六個ICS數據集進行觀察,分別為BHP、Nslkdd、Gas、Iscx、Power和Swat。
通過圖8可以觀察到,本文方法在所有數據集中都優于基線,并且曲線下方的面積也都較大。這表明SSLU-LP預測的結果相較于其他十種欠采樣方法具有更高的準確率。
4 結束語
本文對于工業控制系統異常檢測中在部分數據缺失標簽信息的情況下,還存在類不平衡和類重疊問題,提出了一種基于半監督學習的欠采樣方法。在解決數據標簽缺失的問題上,引入了多元分層和雙重驗證機制,提高了偽標簽的準確性。其中多元分層框架利用數據分布規律,提供了更穩定和準確的偽標簽。該方法適用于復雜領域,擴展了半監督學習在處理不平衡和重疊數據方面的應用。針對類不平衡和重疊耦合問題,采用最小生成樹策略在決策邊界附近識別不同的類數據,同時構建重疊區域,進而對所選類別的分布進行有針對性的欠采樣。經實驗驗證,SSLU-LP方法的結果在ICS數據集上表現出高性能,特別是在靈敏度和AUC方面,優于現有的欠采樣方法,且不需要手動調參,可以很好地適應不同的數據集,提供了可解釋和可重復的重疊數據識別結果,更好地指導分類器進行訓練。
參考文獻:
[1]彭勇, 江常青, 謝豐, 等. 工業控制系統信息安全研究進展 [J]. 清華大學學報: 自然科學版, 2012, 52 (10): 1396-1408. (Peng Yong, Jiang Changqing, Xie Feng, et al. Research progress on information security of industrial control system [J]. Journal of Tsinghua University: Natural Science Edition, 2012, 52 (10): 1396-1408.)
[2]曾瑜, 郭金全. 工業控制系統信息安全現狀分析 [J]. 信息網絡安全, 2016, 16 (9): 169-172. (Zeng Yu, Guo Jinquan. Research of the security situation about industrial control information system [J]. Netinfo Security, 2016, 16 (9): 169-172.)
[3]蘇紅生, 劉燕江, 李高橋, 等. 工業控制系統網絡安全防護體系建設研究 [J]. 自動化儀表, 2024, 45 (2): 111-115. (Su Hongsheng, Liu Yanjiang, Li Gaoqiao, et al. Research on construction of network security protection system for industrial control system [J]. Process Automation Instrumentation, 2024, 45 (2): 111-115.)
[4]高冰, 顧兆軍, 周景賢, 等. 面向ICS不平衡數據的重疊區混合采樣方法 [J]. 計算機工程與應用, 2023, 59 (19): 305-315. (Gao Bing, Gu Zhaojun, Zhou Jingxian, et al. Hybrid sampling method for overlap region of ICS imbalanced data [J]. Computer Engineering and Applications, 2023, 59 (19): 305-315.)
[5]Lee H, Kim S B. An overlap-sensitive margin classifier for imba-lanced and overlapping data [J]. Expert Systems with Applications, 2018,98:72-83.
[6]Wan Ming, Shang Wenli, Zeng Peng. Double behavior characteristics for one-class classification anomaly detection in networked control systems [J]. IEEE Trans on Information Forensics and Security, 2017, 12(12): 3011-3023.
[7]Das S, Datta S, Chaudhuri B B. Handling data irregularities in classification: foundations, trends, and future challenges [J]. Pattern Recognition, 2018, 81: 674-693.
[8]Vuttipittayamongkol P, Elyan E. Neighbourhood-based undersampling approach for handling imbalanced and overlapped data [J]. Information Sciences, 2020, 509: 47-70.
[9]Zhao Yudi, Hao Kuangrong, Tang Xuesong,et al. A conditional varia-tional autoencoder based self-transferred algorithm for imbalanced classification[J]. Knowledge-Based Systems, 2021, 218: 106756.
[10]Ren Jinjun, Wang Yuping, Cheung Y,et al. Grouping-based oversampling in kernel space for imbalanced data classification [J]. Pattern Recognition, 2023, 133: 108992.
[11]Santos M S, Abreu P H, Japkowicz N,et al. A unifying view of class overlap and imbalance: key concepts, multi-view panorama, and open avenues for research [J]. Information Fusion, 2023, 89: 228-253.
[12]董成榮, 姚俊萍, 李曉軍, 等. 面向分布式復雜數據樣本的聯邦語義分割方法研究綜述 [J]. 計算機應用研究, 2024, 41 (6):1610-1617. (Dong Chengrong, Yao Junping, Li Xiaojun, et al. Survey on federated semantic segmentation methods for distributed complex data samples [J]. Application Research of Computers, 2024, 41 (6):1610-1617.)
[13]Vuttipittayamongkol P, Elyan E, Petrovski A. On the class overlap problem in imbalanced data classification [J]. Knowledge-Based Systems, 2021, 212: 106631.
[14]Santos M S, Abreu P H, Japkowicz N, et al. On the joint-effect of class imbalance and overlap: a critical review [J]. Artificial Intelligence Review, 2022,55: 6207-6275.
[15]Mayabdi S, Saadatfar H. Two density-based sampling approaches for imbalanced and overlapping data [J]. Knowledge-Based Systems, 2022, 241: 108217.
[16]Bunkhumpornpat C, Sinapiromsaran K. DBMUTE: density-based majority under-sampling technique [J]. Knowledge and Information Systems, 2017, 50(3): 827-850.
[17]Vuttipittayamongkol P, Elyan E, Petrovski A,et al. Overlap-based undersampling for improving imbalanced data classification [M]// Intelligent Data Engineering and Automated Learning: volume 11314. Cham: Springer International Publishing, 2018: 689-697.
[18]Dai Qi, Liu Jianwei, Shi Yonghui. Class-overlap undersampling based on Schur decomposition forclass-imbalance problems [J]. Expert Systems with Applications, 2023, 221: 119735.
[19]Santos M S, Soares J P, Abreu P H,et al. Cross-validation for imba-lanced datasets: avoiding overoptimistic and overfitting approaches [J]. IEEE Computational Intelligence Magazine, 2018, 13 (4): 59-76.
[20]Zhang Yun, Liu Yongguo, Li Qiaoqin,et al. LILPA: a label importance based label propagation algorithm for community detection with application to core drug discovery [J]. Neurocomputing, 2020, 413: 107-133.
[21]Zhang Yun, Liu Yongguo, Zhu Jiajing,et al. NALPA: a node ability based label propagation algorithm for community detection [J]. IEEE Access, 2020, 8: 46642-46664.
[22]高兵, 宋敏, 鄒啟杰, 等. 基于圖嵌入和多標簽傳播的重疊社區檢測算法 [J]. 計算機應用研究, 2024, 41 (5): 1428-1433. (Gao Bing, Song Min, Zou Qijie, et al. Overlapping community detection based on graph embedding and multi-label propagation algorithm [J]. Application Research of Computers, 2024, 41 (5): 1428-1433.)
[23]Taha A Y, Tiun S, Rahman A H A,et al. Unified graph-based missing label propagation method for multilabel text classification [J]. Symmetry, 2022, 14 (2): 286.
[24]Yan Rong, Yuan Wei, Su Xiangdong,et al. FLPA: a fast label pro-pagation algorithm for detecting overlapping community structure [J]. Expert Systems with Applications, 2023, 234: 120971.
[25]Li Yaoxing, Bai Liang, Liang Zhuomin,et al. Incremental label pro-pagation for data sets with imbalanced labels [J]. Neurocomputing, 2023, 535: 144-155.
[26]Lee G, Woo P, Lee K. Data generation using geometrical edge pro-bability for one-class support vector machines [J]. Expert Systems with Applications, 2023, 229: 120387.
[27]Schlkopf B, Williamson R C, Smola A J,et al. Support vector method for novelty detection [C]//Proc of the 12th Intrnational Conference on Neural Information Processing Systems.Combridge,MA:MIT Press,1999:582-588.
[28]Napierala K, Stefanowski J. Types of minority class examples and their influence on learning classifiers from imbalanced data [J]. Journal of Intelligent Information Systems, 2016, 46(3): 563-597.
[29]Singh P, Singla K, Piyush P,et al. Anomaly detection classifiers for detecting credit card fraudulent transactions [C]// Porc of the 4th International Conference on Advances in Electrical, Computing, Communication and Sustainable Technologies. Piscataway,NJ:IEEE Press, 2024: 1-6.
[30]Draper-gil G, Lashkari A H, Mamun M S I,et al. Characterization of encrypted and VPN traffic using time-related features [C]// Proc of the 2nd International Conference on Information Systems Security and Privacy. Rome: SCITEPRESS-Science and Technology Publications, 2016: 407-414.
[31]Zaman N, Ragab K, Abdullah A B. Wireless sensor networks and energy efficiency: protocols, routing and management [M].[S.l.]:IGI Global, 2012.
[32]Schufrin M, Lücke-Tieke H, Kohlhammer J. Visual firewall log analysis-at the border between analytical and appealing [C]//Proc of IEEE Symposium on Visualization for Cyber Security. Piscataway,NJ:IEEE Press, 2022: 1-11.
[33]Mathur A P, Tippenhauer N O. SWaT: a water treatment testbed for research and training on ICS security [C]//Proc of International Workshop on Cyber-physical Systems for Smart Water Networks. Piscataway,NJ:IEEE Press, 2016: 31-36.
[34]Ahmed C M, Palletl V R, Mathur A P. WADI: a water distribution testbed for research in the design of secure cyber physical systems [C]// Proc of the 3rd International Workshop on Cyber-Physical Systems for Smart Water Networks.New York:ACM Press, 2017: 25-28.
[35]Pedregosa F, Varoquaux G. Scikit-Learn: machine learning in Python [J]. Journal of Machine Learning Research, 2013, 12(10): 2825-2830.