楊小健 朱 月 錢景輝
(南京工業大學計算機科學與技術學院 江蘇 南京 211816)
基于FCM-ANN的化工儲罐異常檢測方法研究
楊小健 朱 月*錢景輝
(南京工業大學計算機科學與技術學院 江蘇 南京 211816)
如何準確地檢測出儲罐運行的異常狀態是工業控制系統的核心問題,針對傳統的有監督學習需要大量學習樣本,而無監督學習準確率不足的問題,提出一種基于FCM-ANN的異常檢測方法。該方法基于三層結構模型,FCM層不需要任何先驗知識,對數據進行初步異常檢測,ANN層對FCM層的每個類分別進行神經網絡學習,最后通過ANN集成得到檢測結果。對采集的儲罐運行狀態數據進行仿真后,結果表明該方法比ANN、FCM和Na?ve Bayes方法有更優的檢測性能。
儲罐 異常檢測 FCM ANN 三層結構模型
在工業化、信息化不斷融合與發展的過程中,進一步提高工業智能診斷技術,對工業設備的運行狀態進行實時監測與異常診斷是工業控制中的重要課題[1]。而儲罐是化工企業用來存儲化工原料的重要設備,其存儲的原料價值性和危險性都很高。但在現實生產中,由于各種不安全狀態的行為,容易造成儲罐中有毒物質泄露甚至產生爆炸現象,造成極大的人員財產傷害。實踐經驗表明,發生各種事故的原因主要是因為儲罐中的化工原料處于一種異常的狀態,比如各種指標低于或者高于某個臨界值。因此,建立對儲罐危險源設備的異常檢測系統,是實現安全生產的必要條件[2]。
目前化工儲罐的異常檢測基本是通過分布式控制系統,由數據采集與監控系統(SCADA系統)實時或定期采集儲罐狀態數據并錄入數據庫,利用異常檢測算法對數據進行分析,從而實現對異常狀態的檢測和監控。常用的基于數據驅動的異常檢測技術主要包括監督建模方法[3]和無監督聚類方法[5]。但在實際異常檢測過程中,目前的檢測技術仍然存在檢測率低、誤報率高,實時性差等缺陷,究其原因,主要包括有以下兩點原因:1)基于監督的建模方法需要標記大量序列以獲得足夠的樣本數據,不易于發現未知的異常類型;2)無監督聚類方法的訓練樣本中不含期望輸出,沒有任何先驗知識,因此往往會降低檢測精度。針對這些問題,國內外學者對異常檢測技術進行了深入研究,文獻[6]利用人工神經網絡對燃氣輪機設備的運行狀態參數進行學習監測,并提供報警功能;文獻[7]在無監督單分類支持向量機的基礎上采取主動學習方式,找出對提高檢測性能最有價值的標記,然后對這些標記數據的類型信息以半監督方法重新訓練;文獻[8]提出了基于時間序列數據的無監督聚類方法,并在大數據集處理環境下實現對多個氣體壓縮機站的異常檢測;文獻[9]優化了符號特征提取和模式分類,提出一種新的核電廠運行設備的異常檢測方法,提高了檢測質量。以上方法雖然在工業控制領域的異常檢測性能有所提高,但是也沒能很好的解決以上兩點問題。
本文結合監督學習和無監督學習的優點,采用基于數據驅動的檢測機制,提出了基于FCM-ANN的異常檢測方法。該方法首先利用無監督聚類FCM(Fuzzy C-means)算法對海量數據進行聚類,得到較少量標記數據以提高檢測性能,然后針對每個聚類簇進行ANN分類學習,最后對不同的學習結果進行集成分析。這種方法處理的數據量更大,可挖掘的信息更多,適用范圍更廣。通過對南京某化工企業采集到的十八萬項數據進行驗證,FCM-ANN異常檢測方法在檢測率和誤報率上均有所改善。
在實際生產運營中,廠區的儲罐設備和監控室的異常檢測系統在地理位置上是分開的,通過在儲罐設備區布置壓力、溫度、物位、氣體等傳感器采集儲罐及其中的化工原料狀態信息,經過簡單的數據處理后存入數據庫系統,選用合適的異常檢測方法實現狀態輸出與決策評估,具體流程如圖1所示。

圖1 異常檢測流程圖
系統中數據的來源包括在線采集數據和離線異常數據,由于數據在時空、地理位置上存在差異性,因此對異常的敏感程度各不相同,數據呈現多樣性。離線數據還能提供一些以往出現的異常,將這些異常數據統一收集起來,為后續的異常檢測提供重要的學習樣本。在圖1整個流程中,異常檢測處理模塊當然是系統的核心模塊,其主要結構如圖2所示。

圖2 異常檢測處理模塊結構
異常信息處理模塊采用先進異常檢測技術進行處理,對在線采集數據和歷史數據進行分析,找到異常值,得出儲罐和其存儲物異常的原因,根據專家系統的對策及時對異常儲罐進行檢查和維護,形成事故分析報告。本文根據儲罐數據的特點,對數據進行預處理后采取結合監督學習和無監督學習的檢測策略,即基于FCM-ANN的異常檢測方法。
本文的數據采集于南京某化工企業,該企業某部門擁有上百個儲罐,中間采集程序每兩小時采集一次儲罐狀態數據,并記錄到數據庫。每個月的記錄有上萬條,可想而知,長年累積的數據量是非常大的。如果用傳統的基于FCM(無監督學習)或者基于ANN(監督學習)的異常檢測方法,檢測效率低下,誤報率較高,浪費大量人力財力。本文將兩種方法相結合,提出異常檢測三層架構模型,如圖3所示。

圖3 異常檢測方法三層架構模型
每一層功能明確,分別為:
FCM層:聚類分析是無監督異常檢測中的重要技術,而FCM算法改進了傳統硬聚類的不足,是目前聚類分析中最常用最成熟的方法。該層不需要任何先驗知識,依據指定的相似度標準,對數據集進行劃分,使得正常數據和異常數據歸屬到不同的類簇,每個簇類內部具有高度相似性,簇類之間高度分離。通過劃分為多個數據簇,極大地降低了后續ANN訓練數據的復雜度。
ANN層:由于異常數據在數據總量中一般占少部分,所以通過FCM層的簡單處理不能達到很好的檢測性能。本層針對上層得到的多個簇,利用ANN分別對每個簇和離線歷史數據進行訓練網絡。經過該層ANN網絡訓練,異常檢測準確率有所提高,原因有兩點:一是由于不是對所有海量雜糅數據進行訓練,而是針對數據特征集中的簇進行訓練,ANN網絡訓練效率提高;二是因為ANN網絡可以彌補上層聚類的不足,檢測準確度提高。
ANN集成層:理論研究發現,各子ANN差異性越大,集成效果越好,本層正是針對差異性較大的各個ANN進行集成,能顯著提高ANN的泛化能力。
2.1 FCM層
Zadeh提出模糊集概念之后,模糊聚類憑借其優越的性能成為無監督學習的重要領域,其中最廣泛研究的便是模糊C均值算法[10]。FCM聚類算法是基于目標函數的非線性規劃問題,通過迭代優化獲得數據集的最佳聚類。設將數據集X={x1,x2,…,xn}劃分為c類,U=[uij]∈Rcn表示模糊隸屬度矩陣,U中元素uij表示第j(j=1,2,…,n)個數據屬于第i(i=1,2,…,c)類的隸屬度,dij表示數據xj到聚類中心vi的歐式距離,即dij=‖xj-vi‖,m為模糊加權指數,表示模糊聚類算法的模糊化程度,則FCM算法的目標函數Jm可定義為式(1):
(1)
使用Lagrange乘子法構造無約束函數得到隸屬度uij和聚類中心vi的迭代公式:
(2)
(3)
綜上所述,FCM的具體步驟如下:
1) 初始化聚類數c,參數m,設定迭代停止閾值ε,迭代計數器k=0;
2) 初始化聚類中心V0和模糊劃分矩陣U0;
3) 由式(2)計算更新劃分矩陣Uk,由式(3)更新聚類中心Vk;
4) 如果滿足‖V(k+1)-V(k)‖<ε,則算法停止迭代并輸出劃分矩陣U和聚類中心V,否則令k=k+1,轉向執行步驟 3)。
經過上述步驟,所有采集的儲罐運行及原料各參量狀態數據被分為若干類別,降低了數據量和后續ANN網絡訓練的復雜度。
2.2ANN層
ANN在處理異常檢測方面有諸多優越性,它可以通過訓練獲取知識,并把知識存儲到連接結點的權重上,具有很好的學習和自適應能力,能夠識別未知的異常。ANN還能夠根據歷史行為自動識別與以往類似的異常,有效地提高了異常檢測的準確率。
本文使用前饋型ANN對數據進行訓練,再使用反向傳播算法對網絡進行調整。前饋型神經網絡包括一個輸入、多個隱含層和一個輸出層。ANN訓練過程分兩個階段,正向輸入和反向傳播:信息從輸入層進入網絡,逐層向前傳播,經過隱含層逐層處理傳向輸出層,比較實際輸出與期望值的誤差,并反向傳輸將誤差分攤給各層所有單元,不斷調整各單元權值,權值的調整過程就是網絡學習的過程,此過程一直進行到網絡輸出誤差減小到可接受的范圍。
設xi表示輸入層第i個神經單元的輸入, wij表示輸入層到隱含層第j個神經單元的權值,θj表示隱含層第j個神經單元的閾值,則隱含層第j個單元的輸入netj的值如下所示:
(4)
采用sigmoid激活函數:
則隱含層第j個單元的輸出yc為:
yc=f(netj)
(5)
網絡實際輸出與期望輸出的系統均方差為:
(6)
其中Tc為期望輸出,通過最速下降法求得網絡的全局最優權值,如式(7)所示:
(7)
為了加速學習過程的收斂速度,引入平滑因子α,修正網絡的權值,如式(8)所示。閾值的修正過程和權值修正類似。
(8)
通過神經網絡的訓練,根據實際數據值是否落入正常區間來判斷該數據是否異常,同時結合歷史異常數據給出儲罐異常類型。
2.3 ANN集成
因為ANN網絡之間差異性較大,為了降低錯檢率,需要將訓練好的ANN網絡進行集成。由于ANN集成規模較小,采用加權平均方式可以有效提高ANN集成泛化能力[11]。
集成主要步驟如下:
1) 將每個ANN的輸出記為:yj=[yj1,yj2,…,yjc],j=1,2,…,n,其中yjc為第c個ANN的輸出。
2) 用加權平均方法對子網絡進行集成,權值和等于1,輸出結果記為:youput=[y1·u1,y2·u2,…,yn·un],其中u為到聚類中心的隸屬度。
通過以上三個主要步驟的異常檢測方法,最后輸出儲罐及原料參數的狀態,分析異常產生的原因,及時進行設備與原料的檢查。由于化工儲罐所處環境比較復雜,采集的數據呈現多樣性,有些狀態雖然在正常范圍內,但是某項指標已經處在異常狀態了,所以通過單一的無監督學習往往檢測率比較低。
本文以南京某化工企業煉油一線所采集的數據為數據集,采用隨機采樣的方式,截取在2015年1月1號0點到6月31號12點作為實驗數據源,時間包含春夏冬三季。根據專家定義,數據包含儲罐開關狀態、靜態設置特征、動態實時特征等形式數據,共計184 210項,且都經過現場專門人員審核過,已含有標記位,便于算法的驗證。
3.1 數據描述
采集數據所包含的屬性多達十幾項,主要的屬性主要有儲罐的液位、氣壓、容積、實際儲量,化工原液的溫度、密度、流量等。這幾項屬性是儲罐安全操作的重要指標,一般失誤操作或者儲罐自身裝備的異??杀憩F為溫度、壓力的突然變化。圖4-圖6分別是溫度、壓力、儲量參量的表示。

圖4 溫度參量數據分布

圖5 壓力參量數據分布

圖6 儲量參量數據分布
3.2 異常類型
儲罐的運行狀態的控制主要分為生產條件、設備狀況和安全裝置三個方面。生產條件包括溫度、壓力、液位或者化學成分是否符合要求;設備狀況是檢查罐體及其關聯設備的運行狀態,是否包括泄露、腐蝕可疑情況,這些異常狀態可通過生產條件的變化反映出來;安全裝置包括檢查附件、報警裝置、計量儀表是否完好等。根據采集數據和離線歷史數據,分析得出各狀態類型及其所占的百分比,如表1所示。

表1 異常類型及百分比
3.3 評估參數
評估異常檢測性能的兩個重要參數分別為檢測率DR(DetectionRate)和誤報率FAR(FalseAlarmRate):
(8)
(9)
如何提高檢測率、降低誤報率是任何異常檢測系統優化的目標,但是誤報率通常會隨著檢測率的提高而提高,因此單一追求高的檢測率沒有說服性,在保持較低誤報率的前提下提高檢測率是異常檢測的重要目標。
3.4 實 驗
根據采集的數據和輸出狀態特征,選取4個聚類數,輸入層、隱含層和輸出層節點數分別為8、8和10,訓練誤差為0.001。隨著聚類個數的增加,對異常狀態的檢測率會逐漸增強,但是對正常狀態的正確鑒別能力下降即誤報率提升,因此鑒于異常狀態數目,本文的聚類個數設為4。通過與傳統三層ANN網絡、FCM聚類和Na?veBayes進行對比分析,本文提出的基于FCM-ANN的檢測算法在檢測率和誤報率方面均有顯著優勢,所得結果如圖7、圖8所示。

圖7 檢測率對比圖

圖8 誤報率對比圖
從圖7和圖8看出,基于FCM-ANN方法的異常檢測技術對不同類型的儲罐運行狀態都有較高的檢測率和低誤報率,基本保持在90%以上的檢測率和5%以下的誤報率,而基于監督學習和無監督學習的單一模式的檢測精度則明顯較差。從圖中還可以看出,基于FCM-ANN的檢測方法比較穩定,對各種正常和異常狀態的檢測率和誤報率能保持在10%以內的浮動,而其他方法浮動較大,范圍基本是在20%左右。由于FCM-ANN方法結合了監督學習和無監督學習的特點,基于足量的標記數據,既能夠發現未知的異常,又可以準確學習過去發現的異常,檢測性能得到增強。
由圖9可以看出,雖然FCM-ANN方法是基于三層結構模型,但是時間復雜度卻沒有顯著增加,由于FCM層的初始檢測,使得ANN層的訓練量降低,運行時間比ANN方法快很多。綜合考慮檢測精度和運行時間兩方面因素,基于FCM-ANN的儲罐異常狀態檢測方法在化工企業工業控制中具有實際應用價值。

圖9 運行時間對比圖
本文針對監督學習和無監督學習檢測方法中存在的檢測率低、誤報率高的問題,提出基于FCM-ANN的異常檢測方法。建立三層結構模型,通過無監督FCM算法,對異常狀態進行初步檢測并且減少了后續ANN訓練的數據量和復雜度,提高了ANN訓練的性能和效率。最后經過ANN集成,將差異性較大的ANN子網進行加權聚合,提高ANN的泛化能力。實驗表明基于FCM-ANN的異常檢測方法比ANN、FCM和Na?veBayes方法有較好的檢測性能,在實際化工生產監測系統中也得到了運用。
[1]StoufferK,FalcoJ,ScarfoneK.Guidetoindustrialcontrolsystems(ICS)security:NISTSpecialPublication800-82[S].Gaithersburg,MD,USA:NationalInstituteofStandardsandTechnology(NIST), 2011.
[2]MinR,XuL,WeiC,etal.Anomalydetectionofrunningstateofmachiningsystem[J].ChineseJournalofScientificInstrument, 2006, 27(6): 1777-1778.
[3]FaltinskiS,FlattH,PethigF,etal.Detectinganomalousenergyconsumptionsindistributedmanufacturingsystems[C]//2012IEEE10thInternationalConferenceonIndustrialInformatics, 2012:358-363.
[4]SriramA,RahanamayanS,BourennaniF.Artificalneuralnetworksforearthquakeanomalydetection[J].JournalofAdvancedComputionalIntelligenceandIntelligentInformatics, 2014, 18(5):701-713.
[5]HaghtalabS,XanthopoulosP,MadaniK.Arobustunsupervisedconsensuscontrolchartpatternrecognitionframework[J].ExpertSystemswithApplications, 2015, 42(19):6767-6776.
[6]KenyonAD,CattersonVM,McArthurSDJ.Developmentofanintelligentsystemfordetectionofexhaustgastemperatureanomaliesingasturbines[J].Insight:Non-DestructiveTestingandConditionMonitoring, 2010, 52(8):419-423.
[7] 劉敬, 谷利澤, 鈕心忻, 等. 基于單分類支持向量機和主動學習的網絡異常檢測研究[J].通信學報, 2015, 36(11):136-146.
[8]KissI,GengeB,HallerP,etal.Dataclustering-basedanomalydetectioninindustrialcontrolsystems[C]//2014IEEE10thInternationalConferenceonIntelligentComputerCommunicationandProcessing, 2014:275-281.
[9]JinX,GuoY,SarkarS,etal.Anomalydetectioninnuclearpowerplantsviasymbolicdynamicfiltering[J].IEEETransactionsonNuclearScience, 2011,58(1):277-288.
[10]BezdekJC,HathawayRJ,SabinMJ,etal.Convergenceandtheoryforfuzzyc-meansclustering:counterexamplesandrepairs[J].IEEETransactionsonSystems,Man,andCybernetics, 1987,17(5):873-877.
[11] 周志華, 陳世福. 神經網絡集成[J]. 計算機學報, 2002,25(1):1-8.
[12] 程加堂, 艾莉, 段志梅. 改進證據理論與神經網絡集成的變壓器故障診斷[J].電力系統保護與控制, 2013,41(14):92-96.
RESEARCH ON ABNORMAL DETECTION OF CHEMICAL STORAGE TANK BASED ON FCM-ANN
Yang Xiaojian Zhu Yue*Qian Jinghui
(SchoolofComputerScienceandTechnology,NanjingTechUniversity,Nanjing211816,Jiangsu,China)
How to detect the abnormal state of the operation of the storage tank is the core problem in industrial control systems. Most of the detection methods proposed so far employ a supervised-learning or unsupervised-learning technique, the former fails to detect unknown anomalies while the latter requires large amounts of learning data. In order to solve the above problems, this paper presents a hybrid algorithm named FCM-ANN which is a mixture of Fuzzy C-Means clustering and Artificial Neural Network. There are three phases involved in the algorithm, in the first phase, namely the FCM layer, FCM algorithm is used to separate the data into several clusters and most of the abnormal data gather together. In second phase, different ANNs is trained based on various clusters and at last neural network ensemble is used to combine the results of different ANNs. Some experiments are conducted on the database of storage tank operation and the results indicate the proposed algorithm is able to detect anomalies with better detection performance compared with ANN, FCM and Na?ve Bayes.
Storage tank Anomaly detection FCM ANN Three layer structure
2015-12-27。楊小健,教授,主研領域:信息自動化,復雜過程先進控制。朱月,碩士生。錢景輝,講師。
TP391
A
10.3969/j.issn.1000-386x.2017.02.038