摘要:
摘要: 在工業(yè)系統(tǒng)中普遍存在樣本數(shù)據(jù)不平衡現(xiàn)象,正常樣本數(shù)量遠(yuǎn)遠(yuǎn)大于異常樣本數(shù)量。而傳統(tǒng)的機(jī)器學(xué)習(xí)算法和深度學(xué)習(xí)方法,例如樸素貝葉斯和支持向量機(jī),在處理類不平衡問題時(shí),很難獲得較高的識別分類準(zhǔn)確率,因?yàn)樗鼈兺鶗虮WC多數(shù)類的準(zhǔn)確率。為此,本文提出了一種基于生成對抗網(wǎng)絡(luò)(GAN)的異常檢測方法。這個(gè)方法中的生成器結(jié)構(gòu)是“編碼器–解碼器–編碼器”的三子網(wǎng),并且訓(xùn)練該生成器只需要從正常樣本中提取特征,所以訓(xùn)練數(shù)據(jù)集中就不需要異常樣本。此系統(tǒng)的異常檢測結(jié)果由樣本的最終得分來判別,其中異常分?jǐn)?shù)由表觀損失和潛在損失組成。本文方法的亮點(diǎn)在于可以實(shí)現(xiàn)在無異常樣本訓(xùn)練的情況下對異常數(shù)據(jù)樣本做檢測,通過系統(tǒng)生成更高的異常分?jǐn)?shù)來診斷故障。本項(xiàng)目在凱斯西儲大學(xué)(CWRU)獲得的基準(zhǔn)滾動軸承數(shù)據(jù)集上驗(yàn)證了該方法的可行性和有效性。本文提出的方法在數(shù)據(jù)集中區(qū)分異常樣本與正常樣本的準(zhǔn)確率達(dá)到了100%。
1. 項(xiàng)目介紹
異常檢測對于現(xiàn)代工業(yè)系統(tǒng)的可靠性和安全性至關(guān)重要。及時(shí)準(zhǔn)確的異常檢測有助于預(yù)防重大事故的發(fā)生,提高生產(chǎn)效率。然而,工業(yè)生產(chǎn)中數(shù)據(jù)類不平衡的情況比較嚴(yán)重,在正常條件下的樣本比在異常條件下的樣本普遍得多,為準(zhǔn)確診斷工業(yè)設(shè)備故障造成了巨大的障礙。此外,工業(yè)系統(tǒng)總是具有非線性和不確定性,這對模型訓(xùn)練提出了很大的挑戰(zhàn) [1]。
工業(yè)異常檢測的數(shù)據(jù)一般是不同傳感器在一定時(shí)間內(nèi)記錄的電流、溫度等物理信號,也稱為時(shí)間序列。對于工業(yè)異常檢測領(lǐng)域,時(shí)間序列通常作為訓(xùn)練模型的輸入數(shù)據(jù) [2]。一般以時(shí)間序列為輸入,異常檢測框架通常分為特征提取和故障識別兩個(gè)階段。通過特征提取算法,將時(shí)間序列預(yù)處理為低維特征向量,送入故障檢測器進(jìn)行故障檢測 [3]。機(jī)器學(xué)習(xí)算法作為一種強(qiáng)大的異常檢測模式識別工具,已經(jīng)成為關(guān)注的焦點(diǎn),包括貝葉斯分類器、支持向量機(jī)方法等 [4]。上述方法都是假設(shè)基于類平衡的情況,然而當(dāng)數(shù)據(jù)分類不平衡時(shí)這些方法難以獲得較高的精度 [5]。除了數(shù)據(jù)集的類均衡假設(shè)外,標(biāo)記數(shù)據(jù)也是訓(xùn)練階段機(jī)器學(xué)習(xí)算法的關(guān)鍵。然而,在許多實(shí)際的工業(yè)系統(tǒng)中,來自異常情況下的樣本數(shù)量往往很少。另外,當(dāng)系統(tǒng)在正常狀態(tài)下運(yùn)行了很長一段時(shí)間后,突然出現(xiàn)異常,要準(zhǔn)確定位異常的發(fā)生時(shí)間是極其困難的 [6]。因此,不準(zhǔn)確的異常標(biāo)簽也會對異常檢測的準(zhǔn)確性產(chǎn)生不利的影響。
當(dāng)正常和異常的標(biāo)簽不平衡時(shí),機(jī)器學(xué)習(xí)方法的分類器會犧牲少數(shù)類來保證多數(shù)類的準(zhǔn)確性,這意味著分類結(jié)果會偏向于測試樣本整體的正態(tài)性 [5]。但是,對于工業(yè)系統(tǒng)中的異常檢測,我們應(yīng)該特別關(guān)注那些處于少數(shù)情況的類,如何能夠準(zhǔn)確捕捉和判別異常數(shù)據(jù)是當(dāng)前工業(yè)系統(tǒng)中異常檢測的重點(diǎn)。在2014年,由Goodfellow等人提出的生成對抗網(wǎng)絡(luò)(GAN)為解決工業(yè)中類不平衡問題提供了一個(gè)新的思路。這個(gè)網(wǎng)絡(luò)模型最先出現(xiàn)在“Generative Adversarial Networks”一文中,起初它被用于圖像識別領(lǐng)域,并取得了卓越的成績 [7]。GAN的基本思想是通過一個(gè)具有隨機(jī)數(shù)據(jù)點(diǎn)的生成器生成原型樣本,這些隨機(jī)數(shù)據(jù)點(diǎn)滿足一定的分布(如高斯分布)。在圖像的異常診斷領(lǐng)域,已經(jīng)有一些基于GAN的具有競爭力的網(wǎng)絡(luò)架構(gòu)被提出,如AnoGAN [8] 、BiGAN [9] 和GANomaly [10]。這些基于GAN的方法只訓(xùn)練正常圖像的模型,根據(jù)正常圖像和異常圖像的特征分布差異來區(qū)分異常圖像。從這一點(diǎn)出發(fā),基于GAN的模型對于學(xué)習(xí)和識別不平衡數(shù)據(jù)集是有效的,可以防止診斷結(jié)果偏向于多數(shù)類。然而,在工業(yè)應(yīng)用中,基于GAN的異常檢測方法非常少見。經(jīng)過類似項(xiàng)目的調(diào)查研究,發(fā)現(xiàn)依次有基于GAN網(wǎng)絡(luò)的機(jī)械故障檢測方法 [11] 和基于GAN的不平衡數(shù)據(jù)故障診斷方法 [12] 被提出。這些研究啟發(fā)可以進(jìn)一步研究GAN在工業(yè)故障檢測方面的有效性,特別是在沒有異常數(shù)據(jù)的情況下。因此針對工業(yè)時(shí)間序列的特性,本文基于GANomaly,改善了生成器整體的損失函數(shù),以實(shí)現(xiàn)類不平衡場景的檢測高精度。
在這項(xiàng)工作中,針對工業(yè)系統(tǒng)中異常數(shù)據(jù)的匱乏,本文提出了一種基于GAN的方法來解決智能異常檢測問題。這個(gè)方法的系統(tǒng)由一個(gè)生成器和一個(gè)判別器組成,將生成器和判別器進(jìn)行對抗訓(xùn)練得到訓(xùn)練后的模型來用于診斷。該系統(tǒng)的生成器基于卷積生成對抗網(wǎng)絡(luò),采用“Encoder-Decoder-Encoder”為結(jié)構(gòu)的三子網(wǎng)絡(luò)。為了提高診斷性能,在原始數(shù)據(jù)和GAN之間插入數(shù)據(jù)轉(zhuǎn)換器對原始數(shù)據(jù)集進(jìn)行預(yù)處理。通過在CWRU滾動軸承數(shù)據(jù)集的實(shí)驗(yàn),驗(yàn)證了該方法的可行性和有效性。
本文的主要貢獻(xiàn)如下:
a) 針對工業(yè)領(lǐng)域的不平衡時(shí)間序列問題,提出了一種新的基于GAN的異常檢測方法。
b) 所提出的網(wǎng)絡(luò)訓(xùn)練中只需要正常樣本。這是一個(gè)比其他現(xiàn)有算法網(wǎng)絡(luò)更貼合現(xiàn)實(shí)場景的網(wǎng)絡(luò)。因?yàn)樵谡鎸?shí)的工業(yè)場景中,異常樣本的數(shù)量往往非常少。實(shí)驗(yàn)基于CWRU的滾動軸承基準(zhǔn)數(shù)據(jù)集進(jìn)行了訓(xùn)練和調(diào)整,通過測試確保了該系統(tǒng)模型具有良好的診斷性能,并進(jìn)一步驗(yàn)證了本文方法的有效性,使其可以作為解決工業(yè)數(shù)據(jù)類不平衡問題的新思路。
2. 項(xiàng)目背景
關(guān)注微信公眾號:人工智能技術(shù)與咨詢。了解更多咨詢!
2.1. 深度學(xué)習(xí)用于智能故障診斷
隨著各種工業(yè)系統(tǒng)中產(chǎn)生的時(shí)間序列數(shù)據(jù)流越來越動態(tài)、復(fù)雜和龐大,許多用于深度學(xué)習(xí)的異常檢測技術(shù)得到了很好的發(fā)展。在調(diào)用這些深度學(xué)習(xí)模型的過程中,它們被賦予學(xué)習(xí)目的,但這并不意味它們清楚最終的輸出特性是什么。這些黑箱旨在為特定的數(shù)據(jù)集提取特定的模式,如長短時(shí)記憶網(wǎng)絡(luò)(LSTM),遞歸神經(jīng)網(wǎng)絡(luò)(RNN),卷積神經(jīng)網(wǎng)絡(luò)(CNN)。雖然上述的這些深度學(xué)習(xí)模型在異常檢測方面顯現(xiàn)出了許多卓越的性能,但在面對不平衡的數(shù)據(jù)集時(shí),其準(zhǔn)確率仍然不能令人滿意 [13]。此外,由于數(shù)據(jù)表示的差異(如圖像和時(shí)間序列),許多深度學(xué)習(xí)模型適用于圖像領(lǐng)域,但在工業(yè)領(lǐng)域往往難以實(shí)施和應(yīng)用。
2.2. 類不平衡問題
在基于不平衡時(shí)間序列的異常檢測中,通常會考慮兩種主要方法:數(shù)據(jù)級方法和算法級方法 [14]。數(shù)據(jù)級方法通常利用采樣策略改變不平衡的數(shù)據(jù)分布,其中廣泛使用過采樣和欠采樣兩種策略 [15]。算法級的方法一般采用調(diào)整分類器以適應(yīng)不平衡的數(shù)據(jù),其中通常使用bagging和boost ensemble-based方法 [16]。具體的有Easy Ensemble [17] 和Balance Cascade [18] 算法被提出用于處理類不平衡問題。Easy Ensemble [17] 是通過多次從多數(shù)類樣本有放回的隨機(jī)抽取一部分樣本生成多個(gè)子數(shù)據(jù)集,將每個(gè)子集與少數(shù)類數(shù)據(jù)聯(lián)合起來進(jìn)行訓(xùn)練生成多個(gè)模型,然后集合多個(gè)模型的結(jié)果進(jìn)行判斷。這種方法看起來和隨機(jī)森林的原理很相似 [14]。Balance Cascade [17] 是通過一次隨機(jī)欠采樣產(chǎn)生訓(xùn)練集,訓(xùn)練一個(gè)分類器,對于那些分類正確的多數(shù)類樣本不放回,然后對這個(gè)剩下的多數(shù)類樣本再次進(jìn)行欠采樣產(chǎn)生第二個(gè)訓(xùn)練集,訓(xùn)練第二個(gè)分類器,同樣把分類正確的樣本不放回,以此類推,直到滿足某個(gè)停止條件,最終的模型也是多個(gè)分類器的組合 [17]。
2.3. GAN和GANOMALY
近年來,在類不平衡圖像的異常檢測中,對抗訓(xùn)練尤其是GAN占據(jù)了越來越重要的地位。GAN最早由Goodfellow等人提出,被認(rèn)為是一種無監(jiān)督機(jī)器學(xué)習(xí)算法,在圖像識別領(lǐng)域取得了突出的應(yīng)用效果。GAN的網(wǎng)絡(luò)結(jié)構(gòu)如圖1,使用原始數(shù)據(jù)對生成器進(jìn)行訓(xùn)練,生成器(Generator)產(chǎn)生新的樣本。生成器數(shù)據(jù)和真實(shí)訓(xùn)練數(shù)據(jù)輸入到判別器(Discriminator)中,訓(xùn)練得到能正確區(qū)分?jǐn)?shù)據(jù)類型的判別器。判別器和生成器相互對抗,生成器通過學(xué)習(xí)來產(chǎn)生更逼近真實(shí)數(shù)據(jù)的新樣本,用于欺騙判別器,反之判別器也需要更好地區(qū)分生成數(shù)據(jù)與真實(shí)數(shù)據(jù)。自2014年以來,基于GAN的對抗性算法層出不窮,很多新的方法和框架被提出并取得了優(yōu)秀的表現(xiàn)。
Figure 1. Structure of generate adversarial network
圖1. 生成對抗網(wǎng)絡(luò)結(jié)構(gòu)
在圖像分類領(lǐng)域中,Akcay等人提出了一種通用的異常檢測體系結(jié)構(gòu)GANomaly。與以往的先進(jìn)方法相比,該結(jié)構(gòu)在多個(gè)基準(zhǔn)圖像數(shù)據(jù)集上具有顯著的優(yōu)越性和有效性 [10],給予我們在工業(yè)領(lǐng)域的異常檢測一些啟發(fā)。下面是對GANomaly的簡要介紹。該模型中,其生成器由“編碼器–解碼器–編碼器”三子網(wǎng)構(gòu)成訓(xùn)練半監(jiān)督網(wǎng)絡(luò),該結(jié)構(gòu)使用深度卷積生成對抗網(wǎng)絡(luò)(DCGAN) [18],并在生成器中使用三個(gè)損失函數(shù)來捕獲輸入圖像和潛在空間中的特征。該算法的特點(diǎn)之一是不考慮異常樣本,并在圖像數(shù)據(jù)集中實(shí)現(xiàn)了優(yōu)異的異常檢測性能。
論文的其余結(jié)構(gòu)如下。第三部分提出了基于GAN的異常檢測框架。第四節(jié)和第五節(jié)分別介紹了實(shí)驗(yàn)裝置和實(shí)驗(yàn)結(jié)果。第六部分為結(jié)論和未來工作。
3. 項(xiàng)目方法
圖2是本文提出的方法概述。圖中可以看出在訓(xùn)練階段,這個(gè)系統(tǒng)模型只考慮正常樣本。本文使用數(shù)據(jù)轉(zhuǎn)換器來對樣本進(jìn)行處理并提取有用的特征,這些特征經(jīng)過轉(zhuǎn)換可以更好的被模型學(xué)習(xí)。系統(tǒng)中生成器采用編碼器–解碼器–編碼器三子網(wǎng),判別器則是基于DCGAN網(wǎng)絡(luò)結(jié)構(gòu)。在檢測階段,異常樣本可以通過比正常樣本更高的異常分?jǐn)?shù)來識別。
3.1. 方法介紹
Figure 2. The proposed method framework
圖2. 本文方法框架
在訓(xùn)練的步驟中,用 DtrainDtrain 訓(xùn)練一個(gè)GAN-Based模型M。訓(xùn)練過程的目標(biāo)是最小化 DtrainDtrain 中每個(gè)子數(shù)據(jù)集的輸出。在訓(xùn)練過后,用于測試的數(shù)據(jù)集 DtestDtest 將會放入模型M。訓(xùn)練后的生成器將對故障樣本和正常樣本進(jìn)行相應(yīng)的編碼和解碼。由于訓(xùn)練后的網(wǎng)絡(luò)只學(xué)習(xí)了正常數(shù)據(jù)的可能表示模式,如果用異常數(shù)據(jù)樣本 DutestDtestu 作為輸入,那么模型M的輸出與正常輸入 DvtestDtestv 的輸出相比,會有很大的偏差。這個(gè)偏差值最終幫助確定異常樣本的存在。
3.2. 訓(xùn)練的過程
本文提出的方法中其訓(xùn)練階段的主要目的是正常條件下生成盡可能小的樣本分?jǐn)?shù)的模型。本文方法的網(wǎng)絡(luò)結(jié)構(gòu)由數(shù)據(jù)轉(zhuǎn)換器、生成器和判別器三部分組成。基本網(wǎng)絡(luò)架構(gòu)用DCGAN表示。在生成器的設(shè)計(jì)中,開發(fā)了一種由“Encoder-Decoder-Encoder”組成的三子網(wǎng)。在將數(shù)據(jù)輸入生成器之前,需要設(shè)計(jì)一個(gè)數(shù)據(jù)轉(zhuǎn)換器將一維的時(shí)間序列數(shù)據(jù)轉(zhuǎn)為二維的圖像數(shù)據(jù),可以幫助DCGAN更好的提取和學(xué)習(xí)樣本特征。基于普適性原則,不對原始數(shù)據(jù)進(jìn)行其他處理,因此任何時(shí)間序列都可以封裝到這些特征中。在訓(xùn)練過程中,首先在正常條件下提取時(shí)間序列的特征,然后利用本文設(shè)計(jì)的異常檢測器獲得這些特征的數(shù)據(jù)分布和可能的代表模式。在測試階段,將異常樣本輸入訓(xùn)練好的異常檢測器,異常數(shù)據(jù)的特征分布會得到比正常樣本更高的分?jǐn)?shù),以此為差異來識別和診斷。
3.2.1. 生成器和判別器
在生成器中,第一個(gè)編碼器用于學(xué)習(xí)樣本原始特征F的表征,第二個(gè)編碼器用于生成再生特征F^。同時(shí),解碼器 GdGd 用于試圖重建F^。整個(gè)過程如下:
該生成器保證了原始特征集F的特征不變的同時(shí)可以得到潛在向量Z的模式。判別器(Discriminator)采用DCGAN中引入的標(biāo)準(zhǔn)判別器網(wǎng)絡(luò),用于判斷輸入數(shù)據(jù)是真實(shí)的還是生成的。根據(jù)判別器的反饋再對生成器進(jìn)行調(diào)整和訓(xùn)練。在定義了整個(gè)網(wǎng)絡(luò)架構(gòu)之后,本文將稱述如何定義訓(xùn)練的損失函數(shù)。
3.2.2. 目標(biāo)函數(shù)
在訓(xùn)練階段,因?yàn)橹挥?xùn)練正常數(shù)據(jù)集 DtrainDtrain,所以模型M只會獲得正常數(shù)據(jù)集下的模式。但是在測試階段,M需要通過輸出更高的異常分?jǐn)?shù)來確定異常樣本。那就意味著 GdGd 和 GeGe 將會解碼潛在表示Z和重新編碼F^,這與在訓(xùn)練階段獲得的模式類似。之后F^和Z^將不可避免地與原來的F和Z產(chǎn)生差異,這樣有助于我們識別異常故障。
由于生成器的結(jié)構(gòu)是采用“Encoder-Decoder-Encoder”組成的三個(gè)子網(wǎng)絡(luò),因此生成器的最終損失函數(shù)將由欺騙損失(Fraud Loss)、表面損失(Apparent Loss)和潛在損失(Latent Loss)三部分組成,接下來將會分別對三個(gè)損失函數(shù)進(jìn)行說明。
欺騙損失:在這里引入fraud loss的目的是為了誘導(dǎo)判別器將生成器生成的樣本誤判為真實(shí)的工業(yè)樣本。將生成的樣本輸入判別器,通過判別器輸出計(jì)算的fraud loss,公式如下:
3.3. 測試步驟
在測試階段,我們的模型使用潛在損失和表面損失對檢測到的測試數(shù)據(jù)樣本進(jìn)行評分。判定樣本分?jǐn)?shù)的公式可以定義為:
在這一部分中,我們使用 ωaωa, ωlωl 的比率作為合適的加權(quán)值超參數(shù) λλ,意思是此處使用最好的訓(xùn)練結(jié)果,即最小的生成器損失和判別器損失。因?yàn)楸疚奶岢龅姆椒ㄖ辉谡?shù)據(jù)樣本上訓(xùn)練異常檢測器,所以實(shí)驗(yàn)中的異常檢測器將只學(xué)習(xí)和識別正常樣本的潛在模式和數(shù)據(jù)分布。在這個(gè)判定公式中,正常樣本得到的T(F)將接近于0,而對于異常樣本,公式得到的值將相對大很多。在測試中,通過公式T(F)的值的波動可以很容易地找到異常。
4. 實(shí)驗(yàn)設(shè)置
為了評估本文方法的可行性和有效性,實(shí)驗(yàn)和測試將在凱斯西儲大學(xué)(CWRU)獲得的滾動軸承數(shù)據(jù)上進(jìn)行,實(shí)驗(yàn)臺如圖3所示。
Figure 3. Testing bed in CWRU
圖3. CWRU實(shí)驗(yàn)臺
4.1. 數(shù)據(jù)集描述
這是一個(gè)基準(zhǔn)軸承異常檢測數(shù)據(jù)集,通過在電機(jī)上使用加速度計(jì)測量軸承的振動信號得到。采用電火花加工方法對電機(jī)軸承進(jìn)行了故障樣本創(chuàng)建。分別在內(nèi)滾道(IR),滾動部件(i.e. Ball)和外滾道(OR)創(chuàng)建了直徑范圍在0.007英寸到0.028英寸的故障點(diǎn)。故障軸承被重新安裝到測試電機(jī)中,并記錄電機(jī)負(fù)載從0到3馬力(電機(jī)速度從1720到1797 rpm)。數(shù)據(jù)集的采樣頻率為48 kHz,每個(gè)數(shù)據(jù)集文件由三種類型的信號組成,即驅(qū)動端加速度計(jì)信號、風(fēng)扇端加速度計(jì)信號和基礎(chǔ)加速度計(jì)信號。表1總結(jié)了實(shí)驗(yàn)中數(shù)據(jù)集的詳細(xì)信息。
? | CWRU數(shù)據(jù) |
信號類型 | 振動信號 |
信噪比 | 高 |
采樣頻率(kHz) | 48 |
運(yùn)轉(zhuǎn)速度(rmp) | 1730,1750,1772,1797 |
故障直徑 | 0.007,0.014,0.021,0.028 |
故障類型 | IR,OR,B |
Table 1. Data parameters collected by CWRU
表1. CWRU數(shù)據(jù)集的參數(shù)
4.1. 數(shù)據(jù)集處理
我們將正常數(shù)據(jù)樣本分為訓(xùn)練集和測試集兩個(gè)部分。對于來源于CWRU的滾動軸承數(shù)據(jù)集,得到的初始訓(xùn)練數(shù)據(jù)集 DtrainDtrain 都是傳感器在一段時(shí)間t內(nèi)記錄的樣本。這些數(shù)據(jù)可以寫成矩陣型式,
在項(xiàng)目的實(shí)際訓(xùn)練中發(fā)現(xiàn)樣本的數(shù)量以及樣本的多樣性需要得到進(jìn)一步擴(kuò)充,因此采用了對初始數(shù)據(jù)進(jìn)行分割的方法來處理數(shù)據(jù)集。將時(shí)間t內(nèi)記錄的樣本進(jìn)行分割,依次取連續(xù)不間斷的3136個(gè)數(shù)據(jù)點(diǎn)作為新樣本。這個(gè)新數(shù)據(jù)樣本是一個(gè)1 × 3136的矩陣 Dti=[Xi1,Xi2,Xi3,?,Xi3136]Dti=[Xi1,Xi2,Xi3,?,Xi3136]。然后將數(shù)據(jù)轉(zhuǎn)換成4 × 28 × 28的矩陣,此處可以理解為將一維的原始數(shù)據(jù)轉(zhuǎn)變成了4張尺寸為1 × 28 × 28的圖像數(shù)據(jù)作為輸入模型的訓(xùn)練數(shù)據(jù),經(jīng)過處理得到訓(xùn)練集 Dtrain∈Rt×bDtrain∈Rt×b (b是訓(xùn)練樣本的數(shù)量)。眾所周知GAN這一網(wǎng)絡(luò)模型最初就是在圖像識別領(lǐng)域展現(xiàn)了優(yōu)異的性能,因此對數(shù)據(jù)進(jìn)行該項(xiàng)處理可以優(yōu)化模型對樣本特征的學(xué)習(xí)和提取。
對應(yīng)的測試樣本是 Dtest=[Dvtest,Dutest]∈Rt×(v+u)Dtest=[Dtestv,Dtestu]∈Rt×(v+u),v和u分別是正常樣本和異常樣本的數(shù)量。所以這個(gè)項(xiàng)目的樣本總數(shù)n可以表示為 n=b+v+un=b+v+u。在CWRU的數(shù)據(jù)集中,實(shí)驗(yàn)使用正常狀態(tài)條件下b = 400的樣本來訓(xùn)練異常檢測器,同時(shí)設(shè)置了v = 541和u = 383的沒有標(biāo)簽的樣本用于測試集。
4.3. 實(shí)施細(xì)節(jié)
實(shí)驗(yàn)的具體實(shí)施放在PyTorch中,并使用了Adam優(yōu)化網(wǎng)絡(luò)來實(shí)現(xiàn)本文提出的方法。首先設(shè)定訓(xùn)練模型的參數(shù),初始化學(xué)習(xí)率設(shè)為 lr=0.0001lr=0.0001,動量 β1,β2β1,β2 的值分別設(shè)為0.5和0.999。對于兩個(gè)數(shù)據(jù)集,每個(gè)模型在訓(xùn)練時(shí)epochs都設(shè)為50,batch-size即一次訓(xùn)練樣本的數(shù)量設(shè)為32。本文提出的方法的具體網(wǎng)絡(luò)結(jié)構(gòu)在表2中進(jìn)行了詳細(xì)的說明。
Table 2. Model network structure
表2. 模型網(wǎng)絡(luò)結(jié)構(gòu)
Ks/S?1 = Kernel Size/Stride.
5. 實(shí)驗(yàn)結(jié)果
在實(shí)驗(yàn)時(shí),將凱斯西儲大學(xué)(CWRU)收集的滾動軸承數(shù)據(jù)輸入本文方法構(gòu)建的系統(tǒng)中,生成器經(jīng)過訓(xùn)練集數(shù)據(jù)的訓(xùn)練生成初始的網(wǎng)絡(luò)模型,接著將生成器生成的樣本輸入判別器,根據(jù)判別器反饋的結(jié)果,對生成器進(jìn)行新的訓(xùn)練,直到判別器能成功被生成器生成的樣本所欺騙,此時(shí)生成器的訓(xùn)練收斂。接著調(diào)用生成器訓(xùn)練后的網(wǎng)絡(luò)模型對測試樣本進(jìn)行測試,得到并輸出該樣本數(shù)據(jù)的得分情況。所提出方法的CWRU數(shù)據(jù)集得分如圖4所示。
Figure 4. CWRU data experimental results
圖4. CWRU數(shù)據(jù)實(shí)驗(yàn)結(jié)果
從這張輸出結(jié)果圖中可以看出因?yàn)闈L動軸承的故障情況不同,所以每種情況所得分值也明顯不同。同時(shí)表示閾值的藍(lán)色虛線清晰的分隔了正常和異常樣本。紅色的數(shù)值點(diǎn)是正常樣本在生成器中的得分情況,可以清楚的看出正常樣本的Scores值區(qū)間小于0.02并總體呈均勻分布,此處可以進(jìn)一步驗(yàn)證該生成器的訓(xùn)練收斂了。圖中紫色的點(diǎn)代表內(nèi)滾道故障樣本的得分情況,該類型樣本的整體分布較為混亂,得分區(qū)間在[0.04, 0.06]之間。圖中黃色的點(diǎn)代表外滾道故障樣本的得分情況,該類型的整體得分情況最為分散。此外圖中綠色的點(diǎn)代表滾動部件故障樣本的得分情況,此故障的得分情況相較其余兩種較為穩(wěn)定,得分區(qū)間在[0.08, 0.10]之間。該得分結(jié)果還表明,滾動故障(圖中的Ball fault)數(shù)據(jù)的模式與正常樣本數(shù)據(jù)的模式最接近,而外滾道故障(圖中的OR fault)與正常數(shù)據(jù)模式的差異最大。
6. 項(xiàng)目結(jié)論
本文提出了一種基于生成對抗網(wǎng)絡(luò)(GAN)的針對工業(yè)時(shí)間序列不平衡的異常檢測體系結(jié)構(gòu)。與當(dāng)前大多數(shù)的深度學(xué)習(xí)方法相比,這種體系結(jié)構(gòu)的特點(diǎn)是只需要使用正常的數(shù)據(jù)樣本進(jìn)行訓(xùn)練,不用考慮工業(yè)系統(tǒng)中樣本分類不均衡的問題。在異常檢測之前,我們根據(jù)本項(xiàng)目工業(yè)數(shù)據(jù)的特征和網(wǎng)絡(luò)模型的特點(diǎn)設(shè)計(jì)了一個(gè)數(shù)據(jù)轉(zhuǎn)換器。然后利用“Encoder-Decoder-Encoder”構(gòu)建的生成器輸出較大的異常分?jǐn)?shù)來檢測異常樣本的存在。該網(wǎng)絡(luò)結(jié)構(gòu)在CWRU滾動軸承數(shù)據(jù)集上實(shí)現(xiàn)了100%的測試精度。
隨著工業(yè)領(lǐng)域技術(shù)的進(jìn)步,以及設(shè)備的計(jì)算能力和存儲能力的提高,工業(yè)中的傳感器現(xiàn)在可以收集比以往更多更復(fù)雜的多元時(shí)間序列數(shù)據(jù)。在未來的工作中,針對多元的時(shí)間序列數(shù)據(jù),如何將不同維度的信息進(jìn)行融合或者如何對這些工業(yè)數(shù)據(jù)進(jìn)行多進(jìn)程的學(xué)習(xí)和識別,會有更多的想法和嘗試。
審核編輯:湯梓紅
評論
查看更多