熊 逸,梁意文,譚成予,周 雯
武漢大學(xué) 計(jì)算機(jī)學(xué)院,武漢 430072
地震前兆觀測(cè)數(shù)據(jù)中蘊(yùn)藏著很多有價(jià)值的地震相關(guān)信息,強(qiáng)震前存在的地震電磁異?,F(xiàn)象已被大量的強(qiáng)震記錄所證實(shí),地震電磁前兆在我國(guó)已成為地震短臨預(yù)測(cè)的有效手段[1]。從海量地震前兆觀測(cè)數(shù)據(jù)中挖掘出有效信息是地震學(xué)者研究的熱點(diǎn)。地震前兆觀測(cè)類(lèi)型較多,如電磁、電離層、地下流體(水氡、地下水溫、地下水位)、紅外線(xiàn)、GPS 等[2],由于采集的設(shè)備眾多,采集密度大,導(dǎo)致地震前兆觀測(cè)數(shù)據(jù)量巨大,地震數(shù)據(jù)的分析工作是個(gè)巨大的挑戰(zhàn)。
傳統(tǒng)的地震前兆觀測(cè)數(shù)據(jù)異常檢測(cè)方法主要是人工檢查,這種方式存在處理效率低、人為經(jīng)驗(yàn)影響大等缺點(diǎn),處理結(jié)果并不理想。因此,國(guó)內(nèi)外學(xué)者嘗試采取不同的研究方法對(duì)其進(jìn)行異常檢測(cè),如支持向量機(jī)、人工神經(jīng)網(wǎng)絡(luò)等方法[3-11]。
2010 年,Geng 等人[3]采用 BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)插值技術(shù),分析了震中周邊區(qū)域f2 層峰電子密度 、NmF2 和 f2 峰 高 度 hmF2 的 異 常 變 化 。 2010 年 ,Torkar等人[4]利用人工神經(jīng)網(wǎng)絡(luò)對(duì)土地中氡的含量進(jìn)行異常檢測(cè),區(qū)分了環(huán)境參數(shù)(空氣和土壤溫度、氣壓和土壤氣壓、降雨量)與僅由地震活動(dòng)引起的異常。2011年,張興國(guó)等人[5]利用相關(guān)分析、差分檢測(cè)、固體潮相關(guān)檢測(cè)、方差檢測(cè)、臺(tái)階檢測(cè)與金日光第四統(tǒng)計(jì)力學(xué)群子統(tǒng)計(jì)理論等多種檢測(cè)方法,實(shí)現(xiàn)了對(duì)地震前兆觀測(cè)數(shù)據(jù)的自動(dòng)異常檢測(cè)與報(bào)警,有一定的應(yīng)用價(jià)值。2012 年,Akhoondzadeh[6]采用平均法、中值法、小波變換法和卡爾曼濾波法四種方法,對(duì)東北地震的異常TEC(Total Electron Content)變化進(jìn)行了檢測(cè)。后續(xù),Akhoondzadeh[7-8]利用人工神經(jīng)網(wǎng)絡(luò)對(duì)GPS-TEC 進(jìn)行異常檢測(cè),并將地震前異常與太陽(yáng)地磁活動(dòng)有關(guān)的異常進(jìn)行了區(qū)分,證明了人工神經(jīng)網(wǎng)絡(luò)有更好的檢測(cè)效果。2016年,安建琴等人[9]利用人工神經(jīng)網(wǎng)絡(luò)對(duì)地震衛(wèi)星異常數(shù)據(jù)進(jìn)行識(shí)別,采用汶川地震發(fā)生前10 天的ULF 頻段電場(chǎng)波形數(shù)據(jù),以均值、均方差、峰度和偏度作為特征信息,設(shè)計(jì)了BP 神經(jīng)網(wǎng)絡(luò)分類(lèi)器,實(shí)驗(yàn)取得了較好的檢測(cè)效果。2016年,F(xiàn)isher等人[10]利用支持向量機(jī)(Support Vector Machine,SVM)對(duì)堤壩地震數(shù)據(jù)進(jìn)行異常檢測(cè),使用兩個(gè)不同的數(shù)據(jù)集(每個(gè)大約有80%的正常和20%的異常),整體檢測(cè)準(zhǔn)確率超過(guò)94%。2017 年,Singh 等人[11]通過(guò)多元線(xiàn)性回歸和人工神經(jīng)網(wǎng)絡(luò)對(duì)氡的含量進(jìn)行異常檢測(cè)對(duì)比實(shí)驗(yàn),證明了人工神經(jīng)網(wǎng)絡(luò)具有更好的檢測(cè)效果。
以上研究均取得有效成果,但在實(shí)際工作中仍然存在一些問(wèn)題,地震前兆觀測(cè)數(shù)據(jù)中異常數(shù)據(jù)較少,正負(fù)樣本分布不均衡,導(dǎo)致人工神經(jīng)網(wǎng)絡(luò)等機(jī)器學(xué)習(xí)模型難以訓(xùn)練,故此類(lèi)方法也會(huì)存在異常檢測(cè)準(zhǔn)確率偏低等問(wèn)題。
受生物免疫的啟發(fā),F(xiàn)orrest等人[12]提出了一種模擬免疫系統(tǒng)識(shí)別自我(self)和非我(nonself)的反向選擇模型,其生理依據(jù)是T細(xì)胞的產(chǎn)生過(guò)程。未成熟的T細(xì)胞在胸腺中進(jìn)行反向選擇,對(duì)生物體self 起反應(yīng)的T 細(xì)胞被清除,對(duì)self不敏感的T細(xì)胞離開(kāi)胸腺到達(dá)身體各處,行使免疫機(jī)能,即只對(duì)nonself 進(jìn)行免疫反應(yīng)。該模型的特點(diǎn)是不需要先驗(yàn)知識(shí),通過(guò)有限的正常樣本可以檢測(cè)出異常數(shù)據(jù)。后續(xù),Zhou、Dasgupta 等團(tuán)隊(duì)[13]對(duì)反向選擇算法進(jìn)行擴(kuò)展和改進(jìn),并將此思想應(yīng)用于入侵檢測(cè)[14-15]、故障診斷[16]、在線(xiàn)監(jiān)測(cè)[17]、異常檢測(cè)[18-20]等研究領(lǐng)域。例如,公茂果等人[14]將反向選擇用于網(wǎng)絡(luò)入侵檢測(cè),提出了多種網(wǎng)絡(luò)免疫模型以及檢測(cè)方法;王維等人[17]成功將反向選擇應(yīng)用于病毒特征提取,實(shí)現(xiàn)了對(duì)未知病毒的高效識(shí)別;Dasgupta等人[18]將反向選擇應(yīng)用于時(shí)間序列數(shù)據(jù)的異常檢測(cè);Zhu 等人[20]將反向選擇算法用于大數(shù)據(jù)量的異常檢測(cè),取得了較好的檢測(cè)結(jié)果。
本文將反向選擇用于地震前兆觀測(cè)數(shù)據(jù)的異常檢測(cè),以解決傳統(tǒng)機(jī)器學(xué)習(xí)在檢測(cè)中存在的問(wèn)題。將正常前兆觀測(cè)數(shù)據(jù)定義為自我,異常前兆觀測(cè)數(shù)據(jù)定義為非我,通過(guò)使用自我作為訓(xùn)練數(shù)據(jù)集,隨機(jī)生成未成熟檢測(cè)器,訓(xùn)練數(shù)據(jù)集與未成熟檢測(cè)器通過(guò)反向選擇過(guò)程生成覆蓋非我空間的成熟檢測(cè)器,用于檢測(cè)出地震前兆觀測(cè)數(shù)據(jù)的非我,即異常數(shù)據(jù),達(dá)到異常檢測(cè)的目的。
地震前兆指標(biāo)來(lái)源于“AETA 多分量地震系統(tǒng)”[21],此系統(tǒng)為課題組與北京大學(xué)合作項(xiàng)目,實(shí)驗(yàn)數(shù)據(jù)來(lái)源于此。系統(tǒng)中的前兆信號(hào)分為四類(lèi):低頻電磁信號(hào)(頻率范圍0.1 Hz~200 Hz)、全頻電磁信號(hào)(頻率范圍0.1 Hz~10 kHz)、低頻地聲信號(hào)(頻率范圍0.1 Hz~200 Hz)、全頻地聲信號(hào)(頻率范圍0.1 Hz~50 kHz)。其中,每種信號(hào)又各有3 個(gè)數(shù)據(jù)特征:均值、振鈴計(jì)數(shù)、全局峰值頻率。均值表示采集時(shí)間段內(nèi)信號(hào)幅值的平均值,振鈴計(jì)數(shù)表示采集時(shí)間段內(nèi)信號(hào)正向穿越零值的次數(shù),全局峰值頻率表示采集時(shí)間段內(nèi)信號(hào)出現(xiàn)的主頻率成分。共12項(xiàng)指標(biāo)(低頻電磁均值、低頻電磁振鈴計(jì)數(shù)、低頻電磁全局峰值頻率、全頻電磁均值、全頻電磁振鈴計(jì)數(shù)、全頻電磁全局峰值頻率、低頻地聲均值、低頻地聲振鈴計(jì)數(shù)、低頻地聲全局峰值頻率、全頻地聲均值、全頻地聲振鈴計(jì)數(shù)、全頻地聲全局峰值頻率)。本文選取已做標(biāo)記的數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。
本文采用可變實(shí)值的反向選擇算法[13](V-detector算法)。算法包括兩個(gè)階段:第一階段為檢測(cè)器生成階段;第二階段為異常檢測(cè)階段。
在檢測(cè)器生成階段,先定義self 集,每個(gè)self 均為n維實(shí)數(shù)向量的超球體模型,通過(guò)隨機(jī)選取未成熟檢測(cè)器,計(jì)算未成熟檢測(cè)器與self 集之間的距離(使用歐氏距離進(jìn)行計(jì)算),判斷檢測(cè)器是否保留。若距離大于self半徑,說(shuō)明不在self范圍,覆蓋了nonself空間,標(biāo)記為成熟的檢測(cè)器;反之則拋棄。成熟的檢測(cè)器生成算法如下:
輸入:訓(xùn)練集S,自我半徑Rs,檢測(cè)器個(gè)數(shù)Tmax。
輸出:成熟的檢測(cè)器集D。
1. 初始化D={},T=0;
2. 初始化r;//r為預(yù)設(shè)的檢測(cè)器半徑
3. repeat
4. 隨機(jī)生成檢測(cè)器d;
5. repeatS中每個(gè)Si
6.dist=dist([Si],d);//計(jì)算距離
7. ifdist-Rs<=r
8.r=dist-Rs;//更換檢測(cè)器半徑
9. ifr>Rs
10.D=D∪{
11.T=T+1;
12. untilT=Tmax;
13. returnD;
在異常檢測(cè)階段,根據(jù)生成的成熟檢測(cè)器與待檢測(cè)數(shù)據(jù)進(jìn)行匹配。若匹配成功,說(shuō)明為異常,反之,則為正常。異常檢測(cè)的算法如下:
輸入:成熟的檢測(cè)器集D,測(cè)試集Test。
輸出:Test結(jié)果分類(lèi)(正?;虍惓#?/p>
1. repeatTest中每個(gè)Ti
2. repeatD中每個(gè)Di
3.dist=dist(Ti,Di);//計(jì)算距離
4. ifdist<=ri//ri為檢測(cè)器對(duì)應(yīng)半徑
5.Ti標(biāo)記為 nonself;
6. 未被標(biāo)記成nonself的Ti標(biāo)記為self;
7. until 每個(gè)Test檢測(cè)完成;
8. returnTest檢測(cè)結(jié)果;
本文對(duì)使用反向選擇算法作為地震前兆數(shù)據(jù)異常檢測(cè)模型,主要流程分為以下四部分:
(1)數(shù)據(jù)預(yù)處理
獲取系統(tǒng)采集到的原始地震前兆觀測(cè)數(shù)據(jù),根據(jù)一段時(shí)間數(shù)據(jù)的列標(biāo)準(zhǔn)差計(jì)算生成一條n維實(shí)值向量X=
(2)self集與nonself集定義
地震正常數(shù)據(jù)定義為self集,地震異常數(shù)據(jù)定義為nonself集:
self與nonself關(guān)系如下:
(3)生成檢測(cè)器
通過(guò)反向選擇算法生成成熟的檢測(cè)器集,其覆蓋地震異常數(shù)據(jù)nonself 空間,檢測(cè)器為n維實(shí)值向量d=
(4)地震前兆數(shù)據(jù)異常檢測(cè)
將上一步生成的成熟檢測(cè)器與待檢測(cè)地震前兆數(shù)據(jù)Test進(jìn)行匹配,不匹配的即為地震正常數(shù)據(jù),輸出0,匹配成功的即為地震異常數(shù)據(jù),輸出1。用RES表示輸出結(jié)果,關(guān)系如下:
對(duì)于地震前兆數(shù)據(jù)異常檢測(cè)的模型,分為兩個(gè)階段,即檢測(cè)器生成階段和異常檢測(cè)階段。
圖1 為檢測(cè)器生成階段,將地震中正常數(shù)據(jù)作為“地震正常數(shù)據(jù)self”,隨機(jī)選取地震數(shù)據(jù)作為“未成熟的檢測(cè)器”。將兩者進(jìn)行匹配,若達(dá)到匹配閾值則認(rèn)定為無(wú)效檢測(cè)器,將其刪除。若不滿(mǎn)足匹配條件則認(rèn)定為成熟檢測(cè)器,同時(shí)計(jì)數(shù),直到生成指定個(gè)數(shù)的檢測(cè)器,則完成該階段。
圖1 檢測(cè)器生成階段
在該階段中,關(guān)鍵匹配參數(shù)自我半徑Rs需要通過(guò)分析正常地震數(shù)據(jù)后設(shè)置,在實(shí)驗(yàn)過(guò)程中人工調(diào)整,得到最好的檢測(cè)效果。
圖2 為異常檢測(cè)階段。將需要檢測(cè)的地震數(shù)據(jù)作為“待檢測(cè)數(shù)據(jù)”輸入,與上一階段產(chǎn)生的成熟檢測(cè)器進(jìn)行匹配,若結(jié)果大于匹配閾值,則認(rèn)定為nonself,標(biāo)記為地震異常數(shù)據(jù),反之則為self,標(biāo)記為地震正常數(shù)據(jù)。此處的匹配閾值為成熟檢測(cè)器對(duì)應(yīng)的半徑。由此得到self和nonself數(shù)據(jù)集。
圖2 異常檢測(cè)階段
本文是研究地震前兆觀測(cè)數(shù)據(jù)的異常檢測(cè),采用計(jì)算機(jī)免疫中的反向選擇算法檢測(cè)“AETA多分量地震系統(tǒng)”中的異常數(shù)據(jù)。該系統(tǒng)現(xiàn)已在全國(guó)各地部署了較多設(shè)備采集電磁、地聲等前兆數(shù)據(jù)。選取其中4個(gè)不同地點(diǎn)臺(tái)站的前兆觀測(cè)數(shù)據(jù)進(jìn)行分組實(shí)驗(yàn),并通過(guò)參考文獻(xiàn)[9]BP神經(jīng)網(wǎng)絡(luò)和參考文獻(xiàn)[10]支持向量機(jī)兩種方法進(jìn)行對(duì)比實(shí)驗(yàn),證明反向選擇在地震前兆數(shù)據(jù)異常檢測(cè)中的有效性。實(shí)驗(yàn)分為三部分,包括數(shù)據(jù)預(yù)處理、實(shí)驗(yàn)評(píng)估指標(biāo)以及實(shí)驗(yàn)結(jié)果分析。
實(shí)驗(yàn)選取4 個(gè)真實(shí)臺(tái)站(臺(tái)站ID 為21、46、71、136)的前兆數(shù)據(jù),共4 大組數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。本節(jié)以臺(tái)站ID-21為例進(jìn)行實(shí)驗(yàn)設(shè)計(jì),選取2017年3月17日到2017年9月4日期間采集到的2萬(wàn)多條原始數(shù)據(jù)進(jìn)行預(yù)處理。
臺(tái)站原始數(shù)據(jù)選取如表1所示,以臺(tái)站ID-21為例,僅展示部分。
表1 原始前兆數(shù)據(jù)
表1 的表頭依次為臺(tái)站ID、低頻電磁均值、低頻電磁振鈴計(jì)數(shù)、低頻電磁全局峰值頻率、全頻電磁均值、全頻電磁振鈴計(jì)數(shù)、全頻電磁全局峰值頻率、低頻地聲均值、低頻地聲振鈴計(jì)數(shù)、低頻地聲全局峰值頻率、全頻地聲均值、全頻地聲振鈴計(jì)數(shù)、全頻地聲全局峰值頻率。
原始數(shù)據(jù)每條時(shí)間間隔為10 min,本文設(shè)定待檢測(cè)數(shù)據(jù)的時(shí)間間隔為3 h一條,故選取每18條原始數(shù)據(jù)為一小組,計(jì)算列標(biāo)準(zhǔn)差得出一條實(shí)驗(yàn)數(shù)據(jù),代表該段時(shí)間的數(shù)據(jù)波動(dòng)情況,計(jì)算公式如下:
其中,σ表示計(jì)算結(jié)果;k表示原始數(shù)據(jù)條數(shù),本文中值為20;xi表示原數(shù)據(jù)值;μ表示k條原始數(shù)據(jù)平均值。
將列標(biāo)準(zhǔn)差處理后的數(shù)據(jù)通過(guò)PCA 進(jìn)行降維處理,提取關(guān)鍵數(shù)據(jù)特征。
通過(guò)預(yù)處理階段最終獲得1 385條實(shí)驗(yàn)數(shù)據(jù),如表2所示(僅展示部分)。表2表頭為降維后的4項(xiàng)主成分?jǐn)?shù)據(jù),表頭中的“c”代表是否異常,1為異常,0為正常。
表2 預(yù)處理后的數(shù)據(jù)
模型的性能和開(kāi)銷(xiāo)采用4個(gè)指標(biāo)進(jìn)行衡量:檢測(cè)概率(Probability of Detection,POD)、誤報(bào)率(False Alarm Ratio,F(xiàn)AR)、準(zhǔn)確率(Accuracy,ACC)、耗時(shí)(Time,T),其中檢測(cè)與實(shí)際結(jié)果關(guān)系比對(duì)見(jiàn)混淆矩陣,如表3。
表3 混淆矩陣
根據(jù)表3 混淆矩陣,計(jì)算出POD、ACC、FAR,計(jì)算公式如下:
其中,POD表示實(shí)際異常且檢測(cè)異常的比例,值越高表示對(duì)異常的檢測(cè)越準(zhǔn)確;FAR表示實(shí)際正常而檢測(cè)異常的比例,值越高表示對(duì)正常的檢測(cè)越不準(zhǔn)確;ACC表示檢測(cè)結(jié)果與人工標(biāo)記的結(jié)果一致的比例,值越高表示對(duì)數(shù)據(jù)的檢測(cè)率越準(zhǔn)確;T表示檢測(cè)時(shí)間,時(shí)間越短說(shuō)明開(kāi)銷(xiāo)越小。
實(shí)驗(yàn)分為4組進(jìn)行,分別為臺(tái)站ID-21、ID-46、ID-71、ID-136,針對(duì)4個(gè)不同地點(diǎn)的臺(tái)站前兆觀測(cè)數(shù)據(jù)進(jìn)行對(duì)比實(shí)驗(yàn)。每組均包括3項(xiàng)實(shí)驗(yàn),分別為本文提出的反向選擇方法、BP 神經(jīng)網(wǎng)絡(luò)、支持向量機(jī),通過(guò)對(duì)比實(shí)驗(yàn)驗(yàn)證本文方法的有效性。根據(jù)參考文獻(xiàn)[9-10]設(shè)置對(duì)比實(shí)驗(yàn)的關(guān)鍵參數(shù),BP 神經(jīng)網(wǎng)絡(luò)關(guān)鍵參數(shù)epochs 設(shè)置為1 000、lr設(shè)置為0.001、goal設(shè)置為0.000 001、show設(shè)置為200,支持向量機(jī)選擇使用帶有RBF 內(nèi)核的OCSVM 以及10折交叉驗(yàn)證。
實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)各項(xiàng)評(píng)估指標(biāo),詳見(jiàn)表4~表8。
表4 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)(臺(tái)站ID-21)
表5 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)(臺(tái)站ID-46)
表6 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)(臺(tái)站ID-71)
表7 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)(臺(tái)站ID-136)
表4、表5、表6、表7依次為ID-21、ID-46、ID-71、ID-136 對(duì)比實(shí)驗(yàn)結(jié)果,表8 為4 個(gè)臺(tái)站實(shí)驗(yàn)結(jié)果的平均結(jié)果。通過(guò)對(duì)比實(shí)驗(yàn)結(jié)果的POD、FAR、ACC和T指標(biāo),可得出每組實(shí)驗(yàn)中,反向選擇的檢測(cè)準(zhǔn)確率均高于BP神經(jīng)網(wǎng)絡(luò)和支持向量機(jī),誤報(bào)率均最低,時(shí)間開(kāi)銷(xiāo)均最小。人工神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)依賴(lài)于大量的訓(xùn)練集,但是在本文的場(chǎng)景中,數(shù)據(jù)樣本的有限性會(huì)降低異常檢測(cè)的準(zhǔn)確性。反向選擇不需要先驗(yàn)知識(shí),并且能通過(guò)有限的正常樣本更準(zhǔn)確地檢測(cè)出異常數(shù)據(jù)。實(shí)驗(yàn)結(jié)果證明,反向選擇算法在地震前兆觀測(cè)數(shù)據(jù)異常檢測(cè)上具有更好的檢測(cè)結(jié)果。
表8 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)(平均結(jié)果)
地震前兆觀測(cè)數(shù)據(jù)中,異常數(shù)據(jù)的檢測(cè)和分析是地震研究的關(guān)鍵?,F(xiàn)有的人工神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)等異常檢測(cè)方法,無(wú)法克服地震前兆觀測(cè)數(shù)據(jù)中異常樣本數(shù)據(jù)稀少的問(wèn)題。針對(duì)此問(wèn)題,本文提出基于反向選擇的異常檢測(cè)方法,該方法將地震前兆觀測(cè)數(shù)據(jù)的正常數(shù)據(jù)作為自我,異常數(shù)據(jù)作為非我,通過(guò)有限的正常樣本檢測(cè)異常數(shù)據(jù),從而克服由于異常數(shù)據(jù)少導(dǎo)致檢測(cè)準(zhǔn)確率不高的問(wèn)題。實(shí)驗(yàn)選取臺(tái)站真實(shí)的前兆數(shù)據(jù)分別與BP神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)進(jìn)行對(duì)比實(shí)驗(yàn),本文方法均取得了更好的檢測(cè)效果,從而證明了基于反向選擇的地震前兆觀測(cè)數(shù)據(jù)異常檢測(cè)方法的有效性。
本文的工作取得一定成果,但仍存在可以改進(jìn)的地方。接下來(lái)對(duì)反向選擇算法進(jìn)一步研究:高效智能選取自我集self,使self集具有更高的完備性,有效減小誤報(bào)率;算法自動(dòng)調(diào)整匹配閾值,減少人為調(diào)整的過(guò)程。通過(guò)后續(xù)研究提高地震前兆數(shù)據(jù)的異常檢測(cè)效果。