本發(fā)明涉及數(shù)據(jù)處理,尤其涉及一種基于大數(shù)據(jù)分析的污水處理異常檢測與預警系統(tǒng)。
背景技術(shù):
1、目前污水處理異常檢測與預警在現(xiàn)代污水處理領(lǐng)域起著越來越重要的作用,大數(shù)據(jù)的應(yīng)用使得處理大量實時數(shù)據(jù)和歷史數(shù)據(jù)變得可能,能夠?qū)崟r監(jiān)測污水處理的各種參數(shù),如水質(zhì)、流量、溫度等,并進行復雜的數(shù)據(jù)分析、模式識別和異常檢測,一旦檢測到異常情況,能夠及時發(fā)出預警,幫助操作人員及時采取措施避免進一步問題的發(fā)生。
2、現(xiàn)有技術(shù)中,通過采集污水處理過程中的各種監(jiān)測數(shù)據(jù),并使用knn算法對各種監(jiān)測數(shù)據(jù)進行異常數(shù)據(jù)檢測,從而實現(xiàn)污水處理異常預警的目的。
3、但是,傳統(tǒng)方式下在使用knn算法進行異常數(shù)據(jù)檢測時,通常是計算每個點到其k個最近鄰點之間的距離之和或者平均距離,同時設(shè)定一個距離閾值,距離之和或者平均距離大于該距離閾值的點被認為是異常點,但實際過程中,由于污水處理中數(shù)據(jù)類型和數(shù)據(jù)量較大,所以一個數(shù)據(jù)點的k個最近鄰點中可能存在極少數(shù)最近鄰點與該數(shù)據(jù)點距離較遠,或者該點的最近鄰點中存在一個或多個點對于整體數(shù)據(jù)點分布離散程度較大,增大了數(shù)據(jù)點與k個最近鄰點的距離之和或者平均距離,且超過距離閾值,這種情況下會對數(shù)據(jù)點做出錯誤判斷,將數(shù)據(jù)點誤認為異常點,導致檢測的準確性降低。
4、因此,如何提高利用knn算法進行污水處理異常預警的準確性和魯棒性成為亟需解決的問題。
技術(shù)實現(xiàn)思路
1、有鑒于此,本發(fā)明實施例提供了一種基于大數(shù)據(jù)分析的污水處理異常檢測與預警系統(tǒng),以解決如何提高利用knn算法進行污水處理異常預警的準確性和魯棒性的問題。
2、本發(fā)明實施例中提供了一種基于大數(shù)據(jù)分析的污水處理異常檢測與預警系統(tǒng),該系統(tǒng)包括:
3、數(shù)據(jù)分析模塊,用于分別獲取預設(shè)時段內(nèi)污水處理時的至少兩種數(shù)據(jù)指標,對應(yīng)得到每種數(shù)據(jù)指標的數(shù)據(jù)序列,根據(jù)所述數(shù)據(jù)序列之間的相關(guān)性,將所有數(shù)據(jù)指標的數(shù)據(jù)序列劃分為至少一個類別;
4、數(shù)據(jù)處理模塊,用于針對任一類別,對所述類別中的所有數(shù)據(jù)指標進行歸一化處理,得到歸一化數(shù)據(jù)指標,構(gòu)建所有歸一化數(shù)據(jù)指標的散點圖,在利用knn算法對所述散點圖中的所有數(shù)據(jù)點進行分類時,獲取所述knn算法的初始k值,根據(jù)所述初始k值,獲取所述散點圖中的每個數(shù)據(jù)點的異常程度;
5、參數(shù)獲取模塊,用于根據(jù)所述散點圖中所有數(shù)據(jù)點的異常程度,獲取異常點,根據(jù)所述異常點和所述初始k值,自適應(yīng)獲取所述散點圖中的每個數(shù)據(jù)點的最佳k值;
6、異常檢測模塊,用于根據(jù)所述散點圖中每個數(shù)據(jù)點的最佳k值,利用所述knn算法對所述散點圖中的所有數(shù)據(jù)點進行分類,得到所述類別對應(yīng)的分類結(jié)果,根據(jù)每個所述類別對應(yīng)的分類結(jié)果進行污水處理的異常預警。
7、進一步的,所述數(shù)據(jù)分析模塊中根據(jù)所述數(shù)據(jù)序列之間的相關(guān)性,將所有數(shù)據(jù)指標的數(shù)據(jù)序列劃分為至少一個類別,包括:
8、針對任意兩個數(shù)據(jù)序列,計算所述兩個數(shù)據(jù)序列之間的斯皮爾曼相關(guān)系數(shù),將所述斯皮爾曼相關(guān)系數(shù)的絕對值作為所述兩個數(shù)據(jù)序列的趨勢變化特征值;
9、若所述趨勢變化特征值在預設(shè)范圍內(nèi),則將所述兩個數(shù)據(jù)序列分為同一類別,根據(jù)每兩個所述數(shù)據(jù)序列之間的趨勢變化特征值將所有數(shù)據(jù)指標的數(shù)據(jù)序列劃分為至少一個類別。
10、進一步的,所述數(shù)據(jù)處理模塊中根據(jù)所述初始k值,獲取所述散點圖中的每個數(shù)據(jù)點的異常程度,包括:
11、針對所述散點圖中的任一數(shù)據(jù)點,分別計算所述數(shù)據(jù)點與每個其他數(shù)據(jù)點之間的歐式距離,對所有歐式距離進行從小到大排序,取排序后的歐式距離中的前k個歐式距離對應(yīng)的其他數(shù)據(jù)點作為所述數(shù)據(jù)點的最近鄰數(shù)據(jù)點;
12、根據(jù)每個所述最近鄰數(shù)據(jù)點的分布特征,獲取每個所述最近鄰數(shù)據(jù)點的偏離系數(shù),利用每個所述最近鄰數(shù)據(jù)點的偏離系數(shù),對所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的歐式距離進行優(yōu)化,得到所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的特征距離;
13、根據(jù)所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的特征距離和歐式距離,獲取所述數(shù)據(jù)點的異常程度。
14、進一步的,所述數(shù)據(jù)處理模塊中根據(jù)每個所述最近鄰數(shù)據(jù)點的分布特征,獲取每個所述最近鄰數(shù)據(jù)點的偏離系數(shù),包括:
15、將所述散點圖中的所有數(shù)據(jù)點進行曲線擬合得到數(shù)據(jù)趨勢分布擬合曲線;
16、針對任一最近鄰數(shù)據(jù)點,獲取所述數(shù)據(jù)點與所述最近鄰數(shù)據(jù)點所在的直線,得到所述直線與所述數(shù)據(jù)趨勢分布擬合曲線的交點,獲取所述數(shù)據(jù)趨勢分布擬合曲線在所述交點處的切線,獲取所述切線與所述直線之間的最小角度值的正弦值,將所述正弦值與常數(shù)1相加得到所述最近鄰數(shù)據(jù)點的偏離系數(shù)。
17、進一步的,所述數(shù)據(jù)處理模塊中利用每個所述最近鄰數(shù)據(jù)點的偏離系數(shù),對所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的歐式距離進行優(yōu)化,得到所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的特征距離,包括:
18、針對所述數(shù)據(jù)點與任一最近鄰數(shù)據(jù)點之間的歐式距離,將所述歐式距離和所述最近鄰數(shù)據(jù)點的偏離系數(shù)之間的乘積作為所述數(shù)據(jù)點與所述最近鄰數(shù)據(jù)點之間的特征距離。
19、進一步的,所述數(shù)據(jù)處理模塊中根據(jù)所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的特征距離和歐式距離,獲取所述數(shù)據(jù)點的異常程度,包括:
20、獲取所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的特征距離中的最大值,將所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的特征距離進行累加得到累加結(jié)果,計算所述最大值與所述累加結(jié)果的比值作為第一變量,將所述第一變量的雙曲正切函數(shù)值作為第一函數(shù)值;
21、計算所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的歐式距離的平均值得到平均距離,計算所述數(shù)據(jù)點與每個所述最近鄰數(shù)據(jù)點之間的歐式距離的標準差,將所述標準差與所述平均距離的比值作為第二變量,將所述第二變量的雙曲正切函數(shù)值作為第二函數(shù)值;
22、將所述第一函數(shù)值和所述第二函數(shù)值進行加權(quán)求和得到所述數(shù)據(jù)點的異常程度。
23、進一步的,所述參數(shù)獲取模塊中根據(jù)所述散點圖中所有數(shù)據(jù)點的異常程度,獲取異常點,包括:
24、針對任一異常程度,若所述異常程度在預設(shè)異常程度范圍內(nèi),則將所述異常程度對應(yīng)的數(shù)據(jù)點標記為異常點。
25、進一步的,所述參數(shù)獲取模塊中根據(jù)所述異常點和所述初始k值,自適應(yīng)獲取所述散點圖中的每個數(shù)據(jù)點的最佳k值,包括:
26、針對所述散點圖中的任一異常點,利用預設(shè)的調(diào)整值對所述初始k值進行減小調(diào)整,得到調(diào)整后的k值,根據(jù)所述調(diào)整后的k值,獲取所述異常點的異常程度,若所述異常點的異常程度在所述預設(shè)異常程度范圍內(nèi),則利用所述調(diào)整值對所述調(diào)整后的k值繼續(xù)進行減小調(diào)整,得到新調(diào)整k值,將所述新調(diào)整k值作為所述調(diào)整后的k值,重復所述異常點的異常程度的獲取步驟,直至所述異常點的異常程度不在所述預設(shè)異常程度范圍內(nèi),則將對應(yīng)的調(diào)整后的k值作為所述異常點的最佳k值。
27、將所述初始k值作為所述散點圖中的每個非異常點的最佳k值。
28、本發(fā)明實施例與現(xiàn)有技術(shù)相比存在的有益效果是:
29、本發(fā)明提供了一種基于大數(shù)據(jù)分析的污水處理異常檢測與預警系統(tǒng),包括數(shù)據(jù)分析模塊,用于分別獲取預設(shè)時段內(nèi)污水處理時的至少兩種數(shù)據(jù)指標,對應(yīng)得到每種數(shù)據(jù)指標的數(shù)據(jù)序列,根據(jù)所述數(shù)據(jù)序列之間的相關(guān)性,將所有數(shù)據(jù)指標的數(shù)據(jù)序列劃分為至少一個類別;數(shù)據(jù)處理模塊,用于針對任一類別,對所述類別中的所有數(shù)據(jù)指標進行歸一化處理,得到歸一化數(shù)據(jù)指標,構(gòu)建所有歸一化數(shù)據(jù)指標的散點圖,在利用knn算法對所述散點圖中的所有數(shù)據(jù)點進行分類時,獲取所述knn算法的初始k值,根據(jù)所述初始k值,獲取所述散點圖中的每個數(shù)據(jù)點的異常程度;參數(shù)獲取模塊,用于根據(jù)所述散點圖中所有數(shù)據(jù)點的異常程度,獲取異常點,根據(jù)所述異常點和所述初始k值,自適應(yīng)獲取所述散點圖中的每個數(shù)據(jù)點的最佳k值;異常檢測模塊,用于根據(jù)所述散點圖中每個數(shù)據(jù)點的最佳k值,利用所述knn算法對所述散點圖中的所有數(shù)據(jù)點進行分類,得到所述類別對應(yīng)的分類結(jié)果,根據(jù)每個所述類別對應(yīng)的分類結(jié)果進行污水處理的異常預警。其中,由于污水處理異常檢測中包含的數(shù)據(jù)類型較多且數(shù)據(jù)量大,如果直接構(gòu)建散點圖會使得散點圖非常擁擠,難以分辨每種數(shù)據(jù)指標的分布,會掩蓋掉數(shù)據(jù)之間存在的相關(guān)性或模式,所以首先對每種數(shù)據(jù)指標的數(shù)據(jù)序列進行分類,然后根據(jù)分類結(jié)果構(gòu)建散點圖,由于污水處理異常檢測過程中包含大量的實時數(shù)據(jù)和歷史數(shù)據(jù),k個最近鄰數(shù)據(jù)點中不乏會出現(xiàn)一些與樣本點的距離較遠的數(shù)據(jù)偏離點,這些數(shù)據(jù)偏離點會在knn算法運行過程中產(chǎn)生極大的干擾,導致樣本點被誤認為異常點,所以根據(jù)散點圖中各個數(shù)據(jù)點的分布特征,獲取各個數(shù)據(jù)點的異常程度,根據(jù)異常程度自適應(yīng)獲取最佳k值,通過減小k值排除數(shù)據(jù)偏離點的干擾,在使用knn算法對污水處理異常檢測時,選取最佳k值對數(shù)據(jù)進行分析和識別,排除了數(shù)據(jù)偏離點在knn算法運行過程中產(chǎn)生的干擾,提高對數(shù)據(jù)點檢測的準確率。