劉冬冬
(中國(guó)電子科技集團(tuán)公司第二十研究所 西安 710000)
高新技術(shù)在武器裝備中的應(yīng)用越發(fā)廣泛,因此武器裝備的故障檢測(cè)診斷和維修保障工作也更為重要[1~2]。武器裝備的故障具有很強(qiáng)的隱蔽性和隨機(jī)性,而目前的裝備故障檢測(cè)依賴種類多,通用性差,而且操作復(fù)雜的故障檢修設(shè)備,其自動(dòng)化程度低,對(duì)工作環(huán)境要求苛刻,不能實(shí)現(xiàn)快速檢測(cè)[3]。針對(duì)裝備故障發(fā)生后的診斷與分析,國(guó)內(nèi)進(jìn)行了很多研究,文獻(xiàn)[4]采用基于決策樹的方法來(lái)發(fā)現(xiàn)軍用裝備故障特征與故障點(diǎn)之間的關(guān)聯(lián),文獻(xiàn)[5]提出了一種適合飛機(jī)機(jī)電系統(tǒng)故障診斷的改進(jìn)免疫算法,文獻(xiàn)[6]設(shè)計(jì)了一種基于虛擬儀器和BP神經(jīng)網(wǎng)絡(luò)技術(shù)的液壓系統(tǒng)遠(yuǎn)程故障診斷系統(tǒng)。
武器裝備在服役過(guò)程中,對(duì)其穩(wěn)定性要求較高,不只是需要在故障發(fā)生后能快速診斷與檢修,也需要在運(yùn)行過(guò)程中去實(shí)時(shí)檢測(cè)異常,防止發(fā)生大的故障導(dǎo)致硬件損壞。當(dāng)裝備有發(fā)生故障征兆時(shí),其運(yùn)行狀態(tài)參數(shù)也往往會(huì)發(fā)生變化,產(chǎn)生一些異常參數(shù)信息,因此,本文提出一種基于密度異常因子的異常檢測(cè)方法,針對(duì)采集的武器裝備運(yùn)行數(shù)據(jù)集,計(jì)算數(shù)據(jù)在其近鄰中的密度,并建立起密度相似隊(duì)列。最終,根據(jù)密度相似隊(duì)列和數(shù)據(jù)點(diǎn)與其近鄰的密度差異,給出每個(gè)數(shù)據(jù)點(diǎn)一個(gè)異常因子值,武器裝備的檢修人員可以根據(jù)運(yùn)行數(shù)據(jù)集中異常因子值較高的數(shù)據(jù)點(diǎn)快速定位和分析,確認(rèn)裝備是否存在異常或故障。
異常檢測(cè)是數(shù)據(jù)挖掘領(lǐng)域一個(gè)重要的研究領(lǐng)域,它是檢測(cè)其行為很不同于預(yù)期對(duì)象的過(guò)程,這種對(duì)象稱為異常點(diǎn)或孤立點(diǎn)[7]。而異常檢測(cè)又常被稱為離群點(diǎn)檢測(cè),孤立點(diǎn)檢測(cè)或數(shù)據(jù)缺陷檢測(cè)。

圖1 異常點(diǎn)示意
異常點(diǎn)或孤立點(diǎn)是一個(gè)較復(fù)雜的概念,長(zhǎng)期以來(lái)并沒有一個(gè)統(tǒng)一的定義。例如,統(tǒng)計(jì)學(xué)的觀點(diǎn)認(rèn)為,異常點(diǎn)是關(guān)于數(shù)據(jù)集的概率分布模型中具有低概率的點(diǎn)[8];基于距離的觀點(diǎn)認(rèn)為,異常點(diǎn)是數(shù)據(jù)集中與大多數(shù)點(diǎn)之間的距離大于某個(gè)閾值的對(duì)象[9];聚類學(xué)派的觀點(diǎn)則認(rèn)為,異常點(diǎn)是不嚴(yán)格屬于任何簇的對(duì)象[10];而基于密度的觀點(diǎn)認(rèn)為,異常點(diǎn)是具有最大局部孤立因子的對(duì)象[11]。這些對(duì)異常點(diǎn)概念的闡述都是從不同的側(cè)重點(diǎn)出發(fā),適用于某個(gè)具體的應(yīng)用情境。Hawkins提出了異常點(diǎn)最權(quán)威的定義:異常點(diǎn)是明顯偏離數(shù)據(jù)集中其他對(duì)象的數(shù)據(jù),使人猜測(cè)這些數(shù)據(jù)并非隨機(jī)偏差,而是產(chǎn)生于完全不同的機(jī)制[12]。
武器裝備的運(yùn)行狀態(tài)數(shù)據(jù)中存在異常點(diǎn),可能有兩方面的原因。第一,裝備存在某種故障,導(dǎo)致采集的數(shù)據(jù)中某些變量存在異常,該類異常需要被及時(shí)的檢測(cè)和分析,以便進(jìn)行相應(yīng)的維修。第二,由于測(cè)量?jī)x器的問題或者人為操作錯(cuò)誤,所記錄下來(lái)的測(cè)量值會(huì)出現(xiàn)不正確的情況。該類情況雖不及第一種嚴(yán)重,但在目前的軍用研究領(lǐng)域,常常需要采集并存儲(chǔ)裝備的運(yùn)行狀態(tài)數(shù)據(jù)進(jìn)行分析建模,如進(jìn)行武器裝備的效能評(píng)估[13],若數(shù)據(jù)集中存在異常點(diǎn),則會(huì)影響后續(xù)的分析挖掘進(jìn)程。
因此,無(wú)論異常點(diǎn)是由故障征兆產(chǎn)生還是測(cè)量失誤,都有及時(shí)檢測(cè)的價(jià)值和意義。然而,很多裝備的運(yùn)行數(shù)據(jù)采集周期短,數(shù)量大,靠人工很難進(jìn)行有效的分析與檢測(cè),因此,構(gòu)建一種可以進(jìn)行實(shí)時(shí)異常檢測(cè)和分析的算法是十分重要的。
針對(duì)武器裝備的運(yùn)行狀態(tài)數(shù)據(jù)集進(jìn)行異常檢測(cè)的需求,本文提出一種基于密度異常因子的異常檢測(cè)算法,大多數(shù)武器裝備的運(yùn)行狀態(tài)數(shù)據(jù)或檢修數(shù)據(jù)都是具有多種屬性的數(shù)據(jù)集,其本質(zhì)都是在多維數(shù)據(jù)空間中的點(diǎn)。首先,針對(duì)多維數(shù)據(jù)集中的點(diǎn),給出點(diǎn)的k-近鄰密度的定義如下:
定義1:對(duì)任意正整數(shù)k,一個(gè)點(diǎn) p周圍的密度等于它到k個(gè)最近鄰點(diǎn)的平均距離的倒數(shù)。

式中:Nk(p)表示 p的k近鄰鄰域,dist是求兩點(diǎn)之間距離的運(yùn)算符,median為取中值運(yùn)算符。該定義可以較好地反應(yīng)出數(shù)據(jù)集中點(diǎn)的密集分布程度。
在點(diǎn)的k-近鄰密度的基礎(chǔ)上,給出算法的詳細(xì)步驟流程。
輸入:數(shù)據(jù)集D;任意正整數(shù)k;
輸出:數(shù)據(jù)集D中點(diǎn)的異常因子值。
算法描述:
步驟1:計(jì)算數(shù)據(jù)集D中點(diǎn)兩兩之間的距離并且確定出每個(gè)點(diǎn)的k-近鄰鄰域;然后根據(jù)式(1)計(jì)算出所有數(shù)據(jù)點(diǎn)的k-近鄰密度。對(duì)象間距離的量度有很多種,本文采用常用的歐幾里得距離。
步驟2:根據(jù)D中所有數(shù)據(jù)點(diǎn)的密度值構(gòu)建密度相似隊(duì)列(DSQ,Density-Similarity-Queue)。

式中:oi∈Nk(p),i=1,2,…,r,并且 r是 Nk(p)中點(diǎn)的個(gè)數(shù)。
假設(shè)X和Y是兩個(gè)非空數(shù)據(jù)集,且X∩Y=φ,則它們之間的k-密度差值可定義為

對(duì)于任意給定的x,x∈X,如果Y中存在點(diǎn)y使得Δkden(x,y)=Δkden(X,Y),則 x被稱為對(duì)于Y的密度相似近鄰。
因此,步驟2是一個(gè)反復(fù)計(jì)算的過(guò)程,DSQ(p)的初始值是{}p。在每次計(jì)算時(shí),算法不斷從Nk(p)剩下的點(diǎn)中找到對(duì)于DSQ(p)的密度相似近鄰,并把找出的對(duì)象加到DSQ(p)中去。如果找到的對(duì)象不只一個(gè),則根據(jù)事先排好的對(duì)象順序?qū)⑶罢呒拥紻SQ(p)中去。在每次計(jì)算完畢后,更新DSQ(p)信息后再進(jìn)行下一次計(jì)算。當(dāng)Nk(p)中所有對(duì)象都被陸續(xù)加入到DSQ(p)后,該步驟結(jié)束。此時(shí),對(duì)象p的密度相似隊(duì)列構(gòu)建完畢。采用同樣的方法,算法可以完成對(duì)D中所有對(duì)象的密度相似隊(duì)列的構(gòu)建。
步驟3:基于步驟2中的密度相似隊(duì)列,計(jì)算平均連接波動(dòng)(ALF,Average-Link-Fluctuation)。
ALF是用于描述密度相似隊(duì)列的波動(dòng)的,它可以反應(yīng)數(shù)據(jù)點(diǎn)與其近鄰之間的密度波動(dòng),且密度相似隊(duì)列中越靠前的對(duì)象對(duì)ALF的貢獻(xiàn)越大,具體計(jì)算如下:

式中:r是Nk(p)中點(diǎn)的個(gè)數(shù),dist(p,oi)是計(jì)算兩點(diǎn)之間的距離。
步驟4:計(jì)算D中所有對(duì)象的密度異常因子(Density-Anomaly-Factor)。

密度異常因子是基于數(shù)據(jù)點(diǎn)與其k-近鄰鄰域中點(diǎn)的密度差異,它給出數(shù)據(jù)集中每個(gè)點(diǎn)一個(gè)異常得分,故障診斷人員可以根據(jù)高得分的異常點(diǎn)進(jìn)行針對(duì)性的分析。
為了驗(yàn)證本文所提算法的有效性,本節(jié)將在實(shí)際數(shù)據(jù)集上對(duì)所提算法進(jìn)行仿真實(shí)驗(yàn),并與經(jīng)典的LOF算法[14]進(jìn)行比較,本文仿真所用數(shù)據(jù)集來(lái)自著名的UCI機(jī)器學(xué)習(xí)開源數(shù)據(jù)庫(kù)。
對(duì)于異常檢測(cè)算法,學(xué)術(shù)界一般使用精度(Precision)、召回率(Recall)作為評(píng)價(jià)算法的標(biāo)準(zhǔn)[15],異常檢測(cè)算法一般都是給出目標(biāo)數(shù)據(jù)集中每個(gè)對(duì)象是孤立點(diǎn)的程度或得分,根據(jù)該程度從大到小將數(shù)據(jù)集中的對(duì)象重新排序。用Om表示這個(gè)新序列的最前面m個(gè)對(duì)象中所有孤立點(diǎn)的集合,其中m是大于等于1的正整數(shù)。
精度等于由算法返回的新序列的最前面m個(gè)對(duì)象中孤立點(diǎn)的個(gè)數(shù)占這m個(gè)對(duì)象的百分比:

式中: ||Om表示Om中對(duì)象的個(gè)數(shù)。
召回率等于由算法返回的新序列最前面m個(gè)對(duì)象中孤立點(diǎn)的個(gè)數(shù)占數(shù)據(jù)集中孤立點(diǎn)個(gè)數(shù)的百分比:

式中: ||Do表示Do中對(duì)象的個(gè)數(shù)。
根據(jù)以上兩個(gè)評(píng)價(jià)標(biāo)準(zhǔn)的定義,算法的精度和召回率越高對(duì)于異常點(diǎn)的發(fā)現(xiàn)效果越好。
實(shí)驗(yàn)1采用Johns Hopkins university ionosphere數(shù)據(jù)集,該數(shù)據(jù)集由good類的所有225個(gè)對(duì)象和bad類的10個(gè)對(duì)象組成,類的具體分布如表1所示。

表1 Johns Hopkins university ionosphere數(shù)據(jù)集類的分布
在該數(shù)據(jù)集中,bad類的對(duì)象相對(duì)整個(gè)數(shù)據(jù)集而言就是異常點(diǎn),本文使用所提算法和LOF算法在該數(shù)據(jù)集上來(lái)檢測(cè)異常點(diǎn),仿真結(jié)果如表2所示,當(dāng)m等于5和10時(shí),本文所提算法和LOF算法的精度和召回率保持一致,然后隨著m的增大,本文所提算法檢測(cè)出的異常點(diǎn)個(gè)數(shù)要大于LOF算法,且精度更高。

表2 實(shí)驗(yàn)1仿真結(jié)果
實(shí)驗(yàn)2采用Pima Indians diabetes數(shù)據(jù)集,該數(shù)據(jù)集有8個(gè)屬性且包括280個(gè)點(diǎn),所有對(duì)象分別屬于“0”和“1”兩個(gè)類,類的具體分布如表3所示。

表3 Pima Indians diabetes數(shù)據(jù)集類的分布
同理,在該數(shù)據(jù)集中,“0”類中的12個(gè)點(diǎn)相對(duì)整個(gè)數(shù)據(jù)集為異常點(diǎn),本文使用所提算法和LOF算法在該數(shù)據(jù)集上來(lái)檢測(cè)異常點(diǎn),仿真結(jié)果如表4所示,當(dāng)m等于5時(shí),LOF算法無(wú)法發(fā)現(xiàn)任何異常點(diǎn),隨著m的增大,本文所提算法的性能始終優(yōu)于LOF算法,當(dāng)m=60時(shí),本文算法可以檢測(cè)到所有的異常點(diǎn),而LOF算法有3個(gè)異常點(diǎn)未能成功檢測(cè)。

表4 實(shí)驗(yàn)2仿真結(jié)果
通過(guò)兩組實(shí)際數(shù)據(jù)集的仿真可以看出,本文所提算法在檢測(cè)異常點(diǎn)上具有較好的性能。
本文在分析了武器裝備故障檢測(cè)現(xiàn)狀與問題的基礎(chǔ)上,基于數(shù)據(jù)挖掘的理念,提出基于密度異常因子的異常檢測(cè)算法,能根據(jù)武器裝備的運(yùn)行狀態(tài)數(shù)據(jù)與檢修數(shù)據(jù),發(fā)現(xiàn)數(shù)據(jù)集中隱藏的異常點(diǎn),并使用算法在開源數(shù)據(jù)集上進(jìn)行了仿真實(shí)驗(yàn),與經(jīng)典算法的對(duì)比證明的所提算法的有效性。因軍用裝備數(shù)據(jù)的保密問題,所提算法還未在多種實(shí)戰(zhàn)裝備的數(shù)據(jù)集上進(jìn)行測(cè)試驗(yàn)證,未來(lái)仍需進(jìn)行更多的測(cè)試驗(yàn)證。