李麗敏,溫宗周,王 真,董勛凱
(西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048)
近年來,地下水超采導(dǎo)致水位持續(xù)下降,且恢復(fù)緩慢,所以精確有效的智能水位監(jiān)測不僅可以提高傳統(tǒng)人工水位監(jiān)測的準(zhǔn)確性,還可以有序地保存歷史數(shù)據(jù),以便分析水位變化規(guī)律和未來趨勢[1-3].
目前有諸多水位監(jiān)測設(shè)備可用,其中比較常用的有壓力式和浮球式,但一般都存在各自的問題,即在數(shù)據(jù)采集過程中,因各種因素導(dǎo)致采集的數(shù)據(jù)集中含有大量的異常值和冗余值,其中為異常值與正常數(shù)據(jù)相比偏大或偏小,與實際情況不符,異常原因可以歸結(jié)為隨機擾動和采集裝置受環(huán)境影響較大[4].
北方工業(yè)大學(xué)的游加基于普通監(jiān)測井監(jiān)測出現(xiàn)的數(shù)據(jù)冗余問題,提出一種有效去除冗余數(shù)據(jù)的算法,該算法綜合了有效帶寬法、算術(shù)平均法、時間序列分析法、權(quán)重分配等方法的優(yōu)點[5];周川辰等從水位監(jiān)測裝置本身出發(fā),開展地下水位監(jiān)測儀器質(zhì)量檢測技術(shù)研究與應(yīng)用,對地下水位監(jiān)測儀器進行實驗室檢測和模擬野外比測的測試與分析,達到掌握國內(nèi)外地下水位監(jiān)測儀器產(chǎn)品的水位測量準(zhǔn)確度、穩(wěn)定性、環(huán)境適應(yīng)性、固態(tài)存儲、數(shù)據(jù)傳輸和其他性能指標(biāo),以及野外實際應(yīng)用條件下穩(wěn)定性、可靠性的目的[6];潘博等針對目前地下水位監(jiān)測方法中利用普通監(jiān)測井監(jiān)測帶來的數(shù)據(jù)冗余問題,提出了一種新的水位監(jiān)測算法.該算法綜合了有效帶寬法、算術(shù)平均法、時間序列分析法、權(quán)重分配等方法的優(yōu)點,采用有效帶寬法和算術(shù)平均法獲得有效水位點和計算基準(zhǔn)點,運用時間序列分析法建立了小時間段數(shù)據(jù)預(yù)測模型,并在此基礎(chǔ)上修正預(yù)測模型,使用權(quán)重分配法獲得了近似水位點[7].
綜上,目前研究人員和設(shè)計人員使用的方法多為利用一段時間累積的數(shù)據(jù)的平均值來描述異常值,這些方法在一定程度上可以剔除異常值或冗余值,平滑水位曲線,但魯棒性不高,原因在于一段時間內(nèi)的數(shù)據(jù)與其他數(shù)據(jù)之間的差距較大.除此之外,上述算法都比較復(fù)雜,會增加時間復(fù)雜性,不利于實時平滑處理.因此,本文提出基于自學(xué)Pauta準(zhǔn)則的異常值檢測方法,同時采用平滑處理[8-16]方法對異常值進行校正.
為了能夠?qū)⒌叵滤粩?shù)據(jù)中的異常值進行處理,首先需要對所有數(shù)據(jù)進行奇異值檢測,符合剔除條件的進行平滑處理,不符合的保留原值.
Pauta準(zhǔn)則是為了檢驗樣本數(shù)據(jù)的異常值而被提出的,用于判斷粗差的Pauta準(zhǔn)則,以標(biāo)準(zhǔn)值的99.7%的置信概率給出,以列極限的標(biāo)準(zhǔn)偏差的三倍為基礎(chǔ),任何超過該基礎(chǔ)的誤差,判斷其不屬于隨機誤差的范疇,并認為其屬于嚴(yán)重錯誤的范疇,在這種情況下,產(chǎn)生該誤差對應(yīng)的采樣值是不可取的,應(yīng)該將其從測量數(shù)據(jù)中刪除.假設(shè)一段時間內(nèi)的樣本數(shù)據(jù)集Xi,利用Pauta準(zhǔn)則檢測異常值的過程如下:
(4) 如果i 圖 1 自學(xué)習(xí)Pauta準(zhǔn)則奇異值檢測過程Fig.1 Self-learning Pauta criterion value detection process 如圖1所示,Train變量指向需進行均值和標(biāo)準(zhǔn)差計算的樣本,在其之前的所有樣本被用于計算均值和標(biāo)準(zhǔn)差,Test指向需被檢測的樣本,每檢測到一個樣本點,Train和Test整體向后移動1次,使得拉依達準(zhǔn)則具有自學(xué)習(xí)功能,時刻將最新情況計算入均值和標(biāo)準(zhǔn)差,使檢測結(jié)果更準(zhǔn)確.具體算法過程如下: (4) 令Xi=Xi+1,如果i 在一般Pauta算法的基礎(chǔ)上,增加了自學(xué)習(xí)環(huán)節(jié),相當(dāng)于每次對一個數(shù)據(jù)檢測完之后,訓(xùn)練數(shù)據(jù)自動向后移動一位,提高了算法的可靠性. 當(dāng)采用自學(xué)習(xí)Pauta準(zhǔn)則算法檢測出異常值時,通過平滑處理算法對其進行校正.假設(shè)xi(i=1,2,…,n1)是集合X中的元素,當(dāng)xi+1被檢測為奇異值時,用式(1)進行平滑處理. 表 1 Smooth函數(shù)的調(diào)用方法Table 1 Calling method of Smooth function序號調(diào)用格式備注 1Z=Smooth(Y,SPAN)指定窗寬值法 2Z=Smooth(Y)5點滑移平均法 3Z=Smooth(Y,SPAN,METHOD)指定平滑方法 注:Z為平滑處理后的測試數(shù)據(jù);Y為測試樣本;SPAN為窗寬值;METHOD為平滑方法xi+1=xi-5+xi-3+xi-1+xi+24. (1) 當(dāng)xi+1被檢測為正常值時,用式(2)來表示. xi+1=xi+1. (2) 式(1)采用四點平滑方法處理異常值,為了方便改變平滑曲線的點數(shù),也可以通過MATLAB函數(shù)庫中的Smooth函數(shù)來實現(xiàn)[18],利用該函數(shù)可以方便的實現(xiàn)點數(shù)的設(shè)置,從而同時調(diào)試該函數(shù)實現(xiàn)不同的平滑效果.如表1所示為Smooth函數(shù)的調(diào)用方法. 圖 2 內(nèi)蒙古某地采集的地下水位數(shù)據(jù)Fig.2 Groundwater level data in a certain area of Inner Mongolia 為驗證自學(xué)習(xí)拉依達準(zhǔn)則在奇異值檢測中的作用,對其進行了仿真驗證.利用地下水位監(jiān)測裝置對內(nèi)蒙古某地的地下水位進行連續(xù)監(jiān)測,從2015年10月10日到2015年12月22日每4 h采集一次,水位隨時間變化如圖2所示. 在本文中,將Pauta準(zhǔn)則與自學(xué)習(xí)算法和平滑處理相結(jié)合用于地下水位異常值監(jiān)測.為了展示這種算法的出色性能,測試了兩種算法在準(zhǔn)確性方面的性能.測試結(jié)果如圖3和圖4所示. 從圖2可以看出,地下水的趨勢隨時間逐漸上升,在整個時間序列中,有很多異常樣本數(shù)據(jù),例如樣本點70~300的樣本數(shù)據(jù),需要將這些異常樣本數(shù)據(jù)進行平滑. 圖3為采用一般Pauta算法和平滑算法進行奇異值檢測和處理的結(jié)果,對比于圖1未處理的原始數(shù)據(jù),可以看出其中有很多奇異值已經(jīng)被平滑處理掉了,效果較好.但仍然存在部分奇異值,如圖3中被圈出部分.圖4所示為其于自學(xué)習(xí)Pauta準(zhǔn)則和平滑算法的奇異值剔除效果. 圖4的曲線比圖3更平滑,對用一般Pauta準(zhǔn)則沒有檢測到的奇異值也進行了修正,說明使用自學(xué)習(xí)Pauta準(zhǔn)則進行奇異值檢測的算法是有效的. 對70~120采樣點平滑前后數(shù)據(jù)進行對比,結(jié)果如圖5所示.從數(shù)據(jù)分布來看,第82,83個和第85,86,87個數(shù)據(jù)點采樣數(shù)據(jù)為均9.29,其明顯偏離數(shù)據(jù)的變化趨勢曲線,其數(shù)據(jù)應(yīng)該在9.40左右變化.由此說明這些數(shù)據(jù)為異常值.為了將其有效平滑,首先采用一般Pauta準(zhǔn)則對其進行檢測并用平滑算法進行數(shù)據(jù)處理,為了提升效果,應(yīng)用自學(xué)習(xí)Pauta算法進行數(shù)據(jù)處理. 圖 3 基于Pauta準(zhǔn)則的奇異值 圖 4 基于自學(xué)習(xí)Pauta準(zhǔn)則和平滑算法 剔除效果 的奇異值剔除效果 Fig.3 Singular value culling effect based Fig.4 Singular value culling effect based on self- on Pauta criterion learning Pauta crrterion and Smooth algorithin 圖 5 70~120點數(shù)據(jù)經(jīng)過一般Pauta算法和 自學(xué)習(xí)Pauta算法進行檢測效果比較Fig.5 Comparison of detection effect of 70~120 point data by general Pauta algorithm and self-learning Pauta algorithm 從圖5可以看出,采用自學(xué)習(xí)Pauta方法比一般Pauta方法更有效剔除奇異值.同年同時期該地區(qū)的地下水位的平均值為9.4 m,所以測試時以9.4 m為目標(biāo)值,以平滑前、Pauta方法檢測平滑和自學(xué)習(xí)Pauta方法檢測平滑后的數(shù)據(jù)為驗證數(shù)據(jù),利用式(3)計算其方差 (3) 平滑前,采用Pauta方法檢測平滑后以及采用自學(xué)習(xí)Pauta方法檢測平滑后的方差計算結(jié)果分別為0.004 6,7.745 1×10-4,6.254 9×10-4.可以看出,自學(xué)習(xí)方法與其他方法比較,方差最小,性能更優(yōu),有效解決了地下水位異常值的問題. 提出基于自學(xué)習(xí)Pauta準(zhǔn)則和平滑處理算法的地下水位異常值檢測和校正方法,從工程實踐中收集源數(shù)據(jù),即以內(nèi)蒙古某地監(jiān)測的水位數(shù)據(jù)作為本文的測試數(shù)據(jù)來源,對本文算法進行了性能測試,測試結(jié)果表明該算法是有效的,解決了一般Pauta算法檢測效果偏差的問題,對提升地下水水位監(jiān)測水平提供了算法的依據(jù).1.2 平滑處理算法
2 仿真驗證
3 結(jié)束語