摘 ?要: 天然氣管道會(huì)出現(xiàn)損壞現(xiàn)象導(dǎo)致天然氣泄露,因此,快速準(zhǔn)確地判斷天然氣的泄露具有重要意義。針對(duì)天然氣泄露的檢測(cè)問(wèn)題,本文提出一種基于改進(jìn)K均值聚類(lèi)的檢測(cè)方法。該方法在提取聲發(fā)射信號(hào)特征的基礎(chǔ)上,提出了基于數(shù)據(jù)點(diǎn)的鄰點(diǎn)數(shù)目來(lái)選取初始聚類(lèi)中心,并采用信息熵方法來(lái)確定聚類(lèi)類(lèi)別數(shù)目。實(shí)驗(yàn)結(jié)果表明,本文提出的方法較好了解決了原始K均值方法的問(wèn)題,從而能準(zhǔn)確地給出泄露檢測(cè)結(jié)果。
關(guān)鍵詞: K均值;鄰點(diǎn);信息熵;泄露檢測(cè)
中圖分類(lèi)號(hào): TH865 ? ?文獻(xiàn)標(biāo)識(shí)碼: A ? ?DOI:10.3969/j.issn.1003-6970.2019.05.016
本文著錄格式:李詠豪. 基于改進(jìn)K均值聚類(lèi)算法的燃?xì)庑孤稒z測(cè)研究[J]. 軟件,2019,40(5):8689
【Abstract】: The damage of natural gas pipeline will lead to natural gas leakage. Therefore, it is of great significance to quickly and accurately judge the leakage of natural gas. For the detection of natural gas leakage, a detection method based on the improved K-means clustering algorithm is proposed. We select the initial cluster centers based on the number of neighbors of the data point after the extraction features of acoustic emission signal. Forthermore, we determine the number of clusters with the method of information entropy. The experimental results show that the proposed method avoids the problem brought by original K-means and achieve the better leak detection result.
【Key words】: K-means; Neighbor point; Information entropy; Leak detection
0 ?引言
管道運(yùn)輸是天然氣的主要運(yùn)輸渠道,天然氣管道現(xiàn)在遍布全國(guó)。由于種種原因,天然氣管道會(huì)出現(xiàn)損壞現(xiàn)象導(dǎo)致天然氣泄露[1]。因此,快速準(zhǔn)確地判斷天然氣的泄露具有重要意義。當(dāng)燃?xì)獍l(fā)生泄露時(shí),天然氣管道的內(nèi)部會(huì)將管道中的部分能量以彈性波進(jìn)行釋放,即所謂的聲發(fā)射現(xiàn)象[2]。這種彈性波是一種廣義的聲發(fā)射信號(hào),可以用來(lái)進(jìn)行泄露判斷。針對(duì)復(fù)雜的聲發(fā)射信號(hào),本文引入聚類(lèi)分析方法進(jìn)行燃?xì)庑孤兜呐袛唷均值聚類(lèi)方法是一種經(jīng)典的無(wú)監(jiān)督聚類(lèi)方法[3],該方法簡(jiǎn)單方便,但也存在以下缺點(diǎn),包括聚類(lèi)數(shù)目K以及初始聚類(lèi)中心需要預(yù)先定義,一旦定義錯(cuò)誤就會(huì)給聚類(lèi)結(jié)果帶來(lái)不穩(wěn)定性。本文在提取聲發(fā)射信號(hào)特征的基礎(chǔ)上,提出了改進(jìn)K均值聚類(lèi)方法來(lái)檢測(cè)燃?xì)庑盘?hào)泄露與否,并提出利用數(shù)據(jù)點(diǎn)的鄰點(diǎn)數(shù)目選取初始聚類(lèi)中心,以及信息熵來(lái)給出聚類(lèi)數(shù)目。實(shí)驗(yàn)結(jié)果表明本文提出方法的具有一定的優(yōu)越性。
1 ?改進(jìn)的聚類(lèi)中心選取方法
在K均值方法中,首先,用戶(hù)預(yù)先輸入聚類(lèi)的數(shù)目K,并在數(shù)據(jù)集中隨機(jī)選取K個(gè)點(diǎn)作為初始聚類(lèi)中心,接著,計(jì)算各數(shù)據(jù)點(diǎn)到初始聚類(lèi)中心的歐幾里德距離[4],并將該數(shù)據(jù)點(diǎn)分配到離其距離最近的簇中,當(dāng)所有數(shù)據(jù)點(diǎn)都分配完之后,再以各簇的均值作為新的聚類(lèi)中心,重復(fù)上述過(guò)程,直到滿(mǎn)足目標(biāo)函數(shù)為止[5]。
有學(xué)者提出基于密度的初始聚類(lèi)中心選取方法[6],通過(guò)計(jì)算數(shù)據(jù)點(diǎn)周?chē)臄?shù)據(jù)量來(lái)選擇初始的聚類(lèi)中心,從而降低了K均值聚類(lèi)算法隨機(jī)選取初始聚類(lèi)中心帶來(lái)的聚類(lèi)誤差,提高了聚類(lèi)的準(zhǔn)確率,減少了運(yùn)算次數(shù)和運(yùn)算時(shí)間,但該方法只提高了初始聚類(lèi)中心的準(zhǔn)確性,仍然沒(méi)有解決孤立點(diǎn)對(duì)后續(xù)迭代過(guò)程中聚類(lèi)中心選取的影響[7],針對(duì)該問(wèn)題,本文在該方法的基礎(chǔ)上作了改進(jìn),在保證初始聚類(lèi)中心選取準(zhǔn)確的前提下消除了孤立點(diǎn)對(duì)聚類(lèi)中心選取的影響。具體做法如下:第一步:計(jì)算每一個(gè)數(shù)據(jù)點(diǎn)周?chē)泥忺c(diǎn)數(shù)目,計(jì)算完畢后將得到的數(shù)值按從大到小排列,將數(shù)值最小的幾個(gè)數(shù)據(jù)點(diǎn)直接刪除掉,這樣就可以把孤立的數(shù)據(jù)點(diǎn)從數(shù)據(jù)集合中刪除,消除了孤立點(diǎn)的影響。另外,將數(shù)值最大的點(diǎn)作為第一個(gè)類(lèi)別的聚類(lèi)中心,選取距離該點(diǎn)最遠(yuǎn)的數(shù)據(jù)點(diǎn)作為第二個(gè)類(lèi)別的聚類(lèi)中心,以此類(lèi)推,逐漸得到第三個(gè)、第四個(gè)及以后的類(lèi)別聚類(lèi)中心。
2 ?改進(jìn)的聚類(lèi)個(gè)數(shù)確定方法
信息熵可以量化表示一個(gè)數(shù)據(jù)集合的離散程度[8],在聚類(lèi)的過(guò)程中,當(dāng)數(shù)據(jù)的類(lèi)別數(shù)和數(shù)據(jù)點(diǎn)所歸屬的類(lèi)別發(fā)生變化時(shí),整個(gè)數(shù)據(jù)集的信息熵之和也會(huì)發(fā)生變化。我們可以把信息熵值的變化當(dāng)作是一個(gè)判定聚類(lèi)類(lèi)別數(shù)的判斷量。由此,我們可以把相鄰兩個(gè)類(lèi)別之間信息熵的差值變化最小看作是數(shù)據(jù)集合最穩(wěn)定之時(shí),從而可以得到數(shù)據(jù)集合最佳的聚類(lèi)類(lèi)別數(shù)。有學(xué)者將信息熵的概念引入到模糊聚類(lèi)中,通過(guò)計(jì)算隸屬度得到數(shù)據(jù)集合的信息熵[9],本文將信息熵概念引入到普通的K均值聚類(lèi)算法中,利用數(shù)據(jù)點(diǎn)與聚類(lèi)中心的距離來(lái)得到信息熵。利用前面得到的聚類(lèi)中心,定義數(shù)據(jù)點(diǎn)到聚類(lèi)中心的偏離度,根據(jù)偏離度計(jì)算聚類(lèi)后的信息熵,以此來(lái)決定聚類(lèi)的個(gè)數(shù)。算法的具體思想如下:
其中,Pij表示第(i)個(gè)數(shù)據(jù)點(diǎn)到第(j)個(gè)類(lèi)中的偏離度;S表示類(lèi)的信息熵;類(lèi)的總體信息熵即為上式,將每一個(gè)類(lèi)的信息熵求和即可得到所有類(lèi)的總體信息熵。
隨著聚類(lèi)過(guò)程的變化,會(huì)有不同的數(shù)據(jù)點(diǎn)被聚類(lèi)到不同的類(lèi)別內(nèi),每個(gè)類(lèi)別的聚類(lèi)中心也在隨之算法的進(jìn)行不斷更新,這樣一來(lái)每個(gè)數(shù)據(jù)點(diǎn)屬于各個(gè)類(lèi)的偏移度會(huì)隨之發(fā)生變化,從而導(dǎo)致了類(lèi)內(nèi)的信息熵變化以及整個(gè)數(shù)據(jù)集整體的信息熵變化。因此,我們做如下定義:
數(shù)據(jù)集合K均值聚類(lèi)分為j個(gè)類(lèi)時(shí)的狀態(tài)稱(chēng)為數(shù)據(jù)集的第j個(gè)狀態(tài),同理,數(shù)據(jù)集第j個(gè)狀態(tài)的的信息熵值為Sj。
定義數(shù)據(jù)集的信息熵跳變值如下:數(shù)據(jù)集從第j-1個(gè)狀態(tài)跳躍到第j個(gè)狀態(tài)的信息熵值的變化即 。
定義數(shù)據(jù)集的信息熵躍遷值[9]:數(shù)據(jù)集從第j-1個(gè)狀態(tài)跳躍到第j個(gè)狀態(tài)的信息熵值的變化與數(shù)據(jù)集從第j個(gè)狀態(tài)跳躍到第j+1個(gè)狀態(tài)的信息熵值的變化的差值:
3 ?實(shí)驗(yàn)數(shù)據(jù)采集與分析
3.1 ?實(shí)驗(yàn)數(shù)據(jù)采集
本文搭建了包括直管和支管的泄露檢測(cè)平臺(tái),如圖1所示。該泄露檢測(cè)平臺(tái)中,AB段和CD段分別為直管和支管,并且AB與CD構(gòu)成一條回路,實(shí)驗(yàn)管徑為DN20,利用空氣壓縮機(jī)來(lái)模擬燃?xì)庑孤叮蜷yV1用來(lái)控制管道的開(kāi)與斷,減壓閥U1的作用是將高壓氣流變換成低壓且穩(wěn)定氣流,壓力計(jì)P1與P2用來(lái)顯示氣流在該位置的壓力值。實(shí)驗(yàn)中,通過(guò)聲發(fā)射傳感器實(shí)時(shí)獲取所有的數(shù)據(jù)。
3.2 ?特征提取
當(dāng)管道中存在燃?xì)庑孤吨?,其中傳輸?shù)男盘?hào)會(huì)發(fā)生一定的變化[10]。本文提取使用的特征量[10]主要有上升數(shù)目SJ,頻域峰值PF,峰態(tài)k3,振鈴數(shù)目ZJ,偏斜度k4,方差V。泄露信號(hào)特征與非泄露信號(hào)特征對(duì)比如圖2所示,其中,柱條1和2分別表示非泄露信號(hào)和泄露信號(hào)提取的特征向量。
3.3 ?實(shí)驗(yàn)數(shù)據(jù)分析
將處理后得到的聲發(fā)射信號(hào)特征量利用本文改進(jìn)的方法進(jìn)行聚類(lèi)分析,在使用信息熵的判別準(zhǔn)則進(jìn)行確定聚類(lèi)的類(lèi)別數(shù),此時(shí)運(yùn)算得到的類(lèi)的總體信息熵躍遷值如圖3所示。從圖中我們可以發(fā)現(xiàn),在躍遷狀態(tài)從一個(gè)類(lèi)到兩個(gè)類(lèi)與從兩個(gè)類(lèi)到三個(gè)類(lèi),這兩者之間的差值是最小的,且為零,表明將信號(hào)特征分為兩個(gè)類(lèi)是最合適的,亦即沒(méi)有必要從兩個(gè)類(lèi)別增加到三個(gè)類(lèi)別或者更多的類(lèi)別。
接著,我們將使用本文改進(jìn)方法得到的聚類(lèi)結(jié)果與使用原始K均值聚類(lèi)方法聚類(lèi)結(jié)果作對(duì)比,如圖4和圖5所示。從圖4可見(jiàn),利用K均值方法將樣本數(shù)據(jù)基本分為兩類(lèi),但由于存在較多離群點(diǎn),因此,K均值方法將孤立點(diǎn)作為一類(lèi),另外兩種特征集合歸為另一類(lèi),這使得聚類(lèi)結(jié)果產(chǎn)生錯(cuò)誤,無(wú)法正確判斷燃?xì)庑孤杜c否。從圖5可見(jiàn),利用基于數(shù)據(jù)點(diǎn)鄰點(diǎn)數(shù)目的方法來(lái)選取聚類(lèi)中心,可以刪除孤立點(diǎn),這使得聚類(lèi)性能進(jìn)一步提升。再利用前面介紹的信息熵來(lái)判斷聚類(lèi)數(shù)目,得到對(duì)于所提取的燃?xì)庑盘?hào)特征可以將其分為兩類(lèi)。在圖5中,數(shù)據(jù)點(diǎn)在左下角和右上角都較為集中,左下角的數(shù)據(jù)說(shuō)明,無(wú)泄露時(shí)信號(hào)各種特征都比較平穩(wěn),變化幅度不大;對(duì)于右上角的數(shù)據(jù)點(diǎn),反映這些數(shù)據(jù)點(diǎn)的特征值的波動(dòng)幅度較大。因此,根據(jù)提取到的信號(hào)的特征,我們可以判斷是否存在燃?xì)庑孤丁?/p>
4 ?結(jié)論
根據(jù)數(shù)據(jù)點(diǎn)的鄰點(diǎn)數(shù)目來(lái)選取初始聚類(lèi)中心,可以使聚類(lèi)中心位于數(shù)據(jù)較集中的位置,并使其不受孤立點(diǎn)影響,另外,利用信息熵確定聚類(lèi)數(shù)目,較好地解決了原始K均值聚類(lèi)方法的缺點(diǎn),實(shí)驗(yàn)結(jié)果驗(yàn)證了利用上述方法,可以準(zhǔn)確判別燃?xì)庑孤┡c否。
參考文獻(xiàn)
[1] 孫立瑛, 李一博, 靳世久等. 基于小波包和HHT變換的聲發(fā)射信號(hào)分析方法[J]. 儀器儀表學(xué)報(bào), 2008, 29(8): 1577-1581.
[2] XU QingQing, ZHANG LaiBin, LIANG Wei. Acoustic detection technology for gas pipeline leaKage[J]. Process Safety and Environmental Protection, 2013, 91(4): 253-261.
[3] 孫吉貴, 劉杰, 趙連宇. 聚類(lèi)算法研究[J], 軟件學(xué)報(bào), 2008, 19(1), 48-61.
[4] 胡偉, 改進(jìn)的層次K均值聚類(lèi)算法[J]. 計(jì)算機(jī)工程與應(yīng)用, 2013, 49(22): 157-159.
[5] Bouras, C., Tsogkas, V. , Clustering User Preferences Using Kmeans[C]. 2011 Seventh International Conference on Signal-Image Technology and Internet-Based Systems (SITIS), 2011: 75-82.
[6] 李宇泊. K均值算法初始聚類(lèi)中心選取相關(guān)問(wèn)題研究[D]. 甘肅: 蘭州交通大學(xué), 2012.
[7] Qi chen Ma, Xiangfeng Luo, Yong Luo. Information Entropy Based the Stability Measure of User Behaviour Network in Microblog[C]. ?10th International Conference on Semantics, Knowledge and Grids (SKG), 2014: 67-74.
[8] Jinhua Xu, Hong Liu, Web user clustering analysis based on KMeans algorithm[C]. 2010 International Conference on Information NetworKing and Automation (ICINA), 2010: 6-9.
[9] 吳春旭, 一種基于信息熵與K均值迭代模型的模糊聚類(lèi)算法[C]. 中國(guó)管理科學(xué)學(xué)術(shù)年會(huì), 2008: 152-156.
[10] L. Y. Meng, Y. X. Li, W. C. Wang et al. Experimental study on leaK detection and location for gas pipeline based on acoustic method[J]. Journal of Loss Prevention in the Process Industries, 2012, 25(1): 90-102.