在國民經濟中,石油天然氣管道輸送的戰略地位極為重要,漏磁檢測技術是油氣管道檢測中應用最為廣泛的檢測方法之一[1]。在管道缺陷定量識別的方法中,分
類方法具有可靠性強,準確率高,速度快,易于實現等優點,是一種管道缺陷識別的高效方法。支持向量機類似于神經網絡,具有更加完備的理論基礎,是一種基于統計學習理論的機器學習方法。采用支持向量機作為缺陷識別工具,提高了識別智能性和準確率。
1 漏磁檢測原理
漏磁檢測利用了鐵磁性材料導磁性能非常高,被檢測物體被磁化后,如果在其表面和近表面存在缺陷,則在不連續處磁場方向將發生改變,在磁感線離開工件和進入工件表面的地方產生磁極,形成漏磁場[2]。用傳感器對漏磁場進行檢測,檢
測到得漏磁信號將包含缺陷的信息。
2 支持向量機基礎理論
支持向量機(SVM)是一種新的機器學習方法,由Vapnik等人在1995年提出。支持向量機基于統計學習理論,因此具有嚴格的理論分析和堅實的數學理論基礎,具有理論完備、全局優化、推廣能力好、適應性強等優點。它具有結構風險最小化原則,在最小化經驗風險的同時,有效地保證了算法的泛化能力[3]。
假定一組樣本集(xi,yi),i=1,2,…l,xi ∈Rn,yi =±1,其中xi是n維空間中的一個樣本點,y是x相應的類別標記。由于y只能取+1或-1,因此這是一個二分類問題。這個分類問題就是要通過這些給定的訓練點構造一個決策函數(超平面),學習的目標是將所有的樣本點盡量正確的劃分類別,別且使分類間隔最大[4]。
如果能夠找到分類超平面:
(1)
其中ω為平面法向矢量,b為原點到該平面的距離。并且滿足:
(2)
(3)
超平面ωxi+b=1和ωxi+b=-1之間不存在任何樣本點,這種情況就是線性可分的。顯然這兩個超平面之間的距離為2/‖ω‖,這個距離也稱為幾何間隔。因此想要分類間隔最大就是最大化2/‖ω‖,
因此,線性可分情況下構建最優分類超平面可以歸結為式(4)的數學優化模型:
(4)
式(4)的最優解為式(5)Lagrange函數鞍點:
(5)
其中,αi≥0為Lagrange乘數[5]。
由于在鞍點出的ω和b得梯度為零,則有:
(6)
最優解還應該滿足:
(7)
由式(9)可以看出,大多數訓練點對應的αi為零,而只有非零的αi對最優解才有意義,我們把αi不等于零的訓練點稱作支持向量,支持向量機也是由此得名。
式(4)整理后的最后形式為:
(8)
實際上,大多數情況下訓練點并非線性可分,即使是線形可分也有可能由于某種原因(例如某些干擾信號等)出現一些壞點,這種情況可以看成是近似線性可分[6]。與線性可分大體相同,需要引進兩個新的變量C和ξ。近似線性可分的優化模型為:
(9)
核理論是支持向量機的核心理論。在非線性情況,核函數的引入可以把樣本點從輸入空間轉換到某一高維空間,而在此高維空間中樣本點是線性可分的。因此核函數的引進將非線形問題轉化成了線性問題來解決。非線性的最優分類超平面的模型為:
(10)
其中K(x,y)為核函數,應用最為廣泛的是高斯核函數,
稱為核半徑[7]。:
(11)
3 分類原理與過程
3.1 缺陷信號的產生與分類流程
缺陷信號的產生及處理的流程如圖3所示。
圖1 分類流程圖
從圖2數據流程圖可以看到,通過建立大量不同的缺陷模型,分別進行電磁場
仿真,得到電磁場信號數據,進行整理后作為支持向量機的輸入數據對支持向量
機進行訓練,得到訓練后的決策函數模型,應用此決策模型識別出缺陷的長、
寬、深的參數[8]。以支持向量機作為工具,找到電磁場信號與缺陷參數隱式的對應
關系,分別包括BX、BY分別與缺陷長度、寬度和深度的關系[9]。
3.2 缺陷描述與類別定義
建立漏磁模型是核心的問題是缺陷的定義問題。在漏磁檢測中檢測者最關心的參數就是缺陷的長度、寬度和高度。但是如何以這三個參數來定義缺陷模型是最關鍵的問題。管道缺陷的類型多種多樣,在此只考慮點蝕缺陷的情況。點蝕缺陷的特點是,缺陷與缺陷之間彼此孤立,缺陷表面近似光滑,因此采用半橢球體來定義一個點蝕缺陷。缺陷的長度、寬度和高度分別為橢球體X、Y、Z三個方向的軸長或半軸長。缺陷模型如圖3所示。
圖2 缺陷模型
設長度、寬度和高度的取值范圍為都在1mm~8mm之間的整數,并定義1mm的類別編號為1,2mm的類別編號為2,依此類推,共分8類,每一類都采用缺陷的數值作為此類的類別編號。
3.3 漏磁場信號采集
由漏磁檢測原理可知,磁感線在缺陷處發生改變,形成漏磁場。將傳感器放置在缺陷上方1mm~2mm處,這個高度值稱為傳感器提離值。當傳感器運動時,將掃略過缺陷上方的一條直線軌跡,每移動到一個采樣點時,采集一組漏磁場信號,包括BX、BY兩個分量。仿真中在缺陷上方設定42個采樣點,采集到42組數據,共84個數據。漏磁場信號采集的正視圖如圖5所示。
在缺陷的定義中定義的缺陷是一個三維的缺陷,僅用一個傳感器掃略缺陷上方
某一直線軌跡所采集到的漏磁信號是不充分的。因此,采用一組共11個傳感器。
這一組傳感器將掃略缺陷上方一個平面的軌跡,能夠采集到更加豐富的漏磁場信
號。在每個缺陷模型的仿真中,采集到84×11共924個數據。漏磁場信號采集的俯
視圖如圖6所示。
圖4 漏磁場號采集俯視圖
3.3 缺陷參數與漏磁信號的關系
漏磁檢測中最重要的檢測數據是磁通密度,根據漏磁檢測原理,漏磁場信號
在缺陷邊緣處發生突變,因此,缺陷長度越長,漏磁信號的跨度越大。大量實驗
結果表明,缺陷的深度與信號的幅值存在著一定關系,缺陷深度越大,信號的峰
值越大,缺陷的深度與寬度的比值越大,漏磁場越大,缺陷越容易檢測[10]。圖6和
圖7分別給出了漏磁場磁通密度BX、BY的三維分布。對于橢球型缺陷,與靠近缺
陷中心,缺陷的長度、寬度和深度越大,磁通密度值越大。反之,磁通密度值越
小。圖中XY平面為傳感器組的行進軌跡平面,Z軸為磁通密度,單位為特斯拉。
3.4電磁場仿真
ANSYS軟件是融結構、流體、電場、磁場、聲場分析于一體的大型通用有限元分析軟件ANSYS有限元典型分析大致分為3個步驟,建立有限元模型、加載和求解、結果后處理。
每一次仿真結束后,將缺陷上方區域的磁通密度BX、BY以及缺陷的大小保存在文本文件中,以此磁場信號作為下一步支持向量機的輸入數據。
3.5 支持向量機分類
3.5.1 LIBSVM支持向量機工具包
LIBSVM 是臺灣大學林智仁博士等開發設計的一個操作簡單、易于使用、快速
有效的通用SVM 軟件包,可以解決分類與回歸問題以及分布估計等問題,提
供了線性、多項式、徑向基和S形函數四種常用的核函數供選擇,可以有效地
解決多類分類問題、交叉驗證選擇參數、對不平衡樣本加權、多類問題的概率
估計等。所使用的軟件版本為LIBSVM2.88。
使用LIBSVM進行分類的步驟為:
(1)按照LIBSVM格式封裝輸入樣本;
(2)將訓練數據與預測數據同比例縮放;
(3)交叉驗證參數懲罰因子C和核半徑 ;
(4)應用最優參數對支持向量機進行訓練與預測;
LIBSVM對輸入的訓練數據有嚴格的格式要求,所以必須將輸入數據封裝成所要求的格式。LIBSVM輸入數據的格式為:
<label><index1>:<value1>…<indexn>:<valuen>
其中<label>為類別編號,對應于前面定義的缺陷類別編號。<index1>…<indexn>代表輸入向量的維數,n表示輸入向量是n維向量。在電磁場仿真中,每組共采集到924個數據,所以輸入向量是924維。<value1>…<valueN>代表每個數據的數值,對應于采集到的樓磁場信號的數值,即每個采樣點上采集到的BX、BY值。
LIBSVM中參數交叉驗證的命令格式為:
grid.py [data.txt]
data.txt就是我們按照LIBSVM格式整理的數據數據。參數交叉驗證后將得到最優的C和 。
LIBSVM數據訓練的命令格式:
svm-train –c [best c] –g [best ] –t 2 [data.txt]
其中–c和–g后的參數分別為最優C和 。-t后參數為2,表示核函數選擇為高斯核函數。訓練后將產生一個data.txt.model的模型文件。
LIBSVM預測的命令格式:
svm-predict [test.txt] [data.txt.model] [test.out]
其中test.txt為測試數據,data.txt.model為訓練后產生的模型文件,test.out為最后的預測結果。至此支持向量機預測結束。
4 預測結果與分析
長度、寬度和高度的取值范圍為都在1mm~8mm之間的整數,建立450個缺陷模型,其中選擇413作為訓練數據,選擇32組作為測試數據。支持向量機對這32組測試數據長度、寬度和深度分別進行分類預測,表1、表2和表3分別列出其中10組結果。
表1 缺陷預測結果
實際長度類別 |
預測長度類別 |
實際寬度類別 |
預測寬度類別 |
實際深度類別 |
預測寬度類別 |
1 |
2 |
1 |
1 |
3 |
5 |
1 |
1 |
3 |
3 |
2 |
2 |
1 |
1 |
6 |
7 |
6 |
6 |
2 |
2 |
6 |
6 |
4 |
3 |
3 |
4 |
2 |
2 |
3 |
4 |
4 |
4 |
1 |
2 |
2 |
4 |
5 |
5 |
5 |
5 |
2 |
2 |
6 |
5 |
7 |
7 |
7 |
7 |
8 |
8 |
4 |
5 |
3 |
2 |
8 |
7 |
4 |
4 |
5 |
7 |
實際數值與預測數值有一定誤差,誤差產生的原因主要有兩個方面。首先,支持向量機機追求的是結構風險最小化,也就是說,不可能避免所有風險,風險客觀還是存在的。因此,從支持向量機本質來說,就一定會有誤差的產生。其次,ANSYS軟件進行漏磁仿真所采用的是有限元方法,是一種數值方法,這也將會給實驗帶來影響,產生誤差。
5 結論
識別結果證明了磁場信號與缺陷的長度、寬度和高度分別存在隱含關系,隱含關系包含在支持向量機的訓練后生成的判別模型中,預測數據的準確性體現了支持向量機的良好的準確性和泛化性, 進而證明了支持向量機在漏磁檢測缺陷分類中應用的可行性。
參考文獻(References):
[1] 楊理踐,馬鳳銘,高松巍.油氣管道缺陷漏磁在線檢測定量識別技術[J].哈爾濱工業大學學報,2009,41(1):245-246.
[2] 王太勇,胡世廣,楊濤,秦旭達,趙堅.一種油管缺陷量化識別技術[J].中國機械工程,2005,16(5):1-3.
[3] Nello Cristianini, John S.支持向量機導論[M].北京:電子工業出版社,2004.
[4] CECILIO ANGULO,FRANCISCO J. RUIZ,LUIS GONZA LEZ,and JUAN ANTONIO ORTEGA.Multi- Classification by Using Tri-Class
SVM[J] ,2006(23): 90-92.
[5] 劉太安,安新軍,劉欣穎,李涵.Lagrange支持向量機算法應用研究[J].計算機工程與設計,2007,28(19):4726-4727.
[6] GARY WILLIAM FLAKE, STEVE LAWRENCE. Efficient SVM Regression Training with SMO[J], MachineLearning,2002(46),272-
273.
[7] THIERRY VI ´EVILLE AND SYLVIE CRAHAY. Using an Hebbian Learning Rule for Multi-Class SVM Classifiers[J]. Journal of Computational Neuroscience, 2004(17):272-273.
[8] SUN ChangYin, MU ChaoXu & LI XunMing. A weighted LS-SVM approach for the identification of a class of nonlinear inverse systems[J].Information Sciences,2009, 52(5):771-773.
[9] 方輝,王倩. 支持向量機的算法研究[J].長春師范學院學報,2007,26(3):90-91.
[10]汪友生,潘孟賢,何輔云.缺陷參數與漏磁信號相互關系的實驗研究[J].合肥工業大學學報,1998,21(5):1-3.
作者簡介:
楊理踐,男,沈陽工業大學信息學院 教授,主要從事檢測技術、數字信號
處理等方面的研究。
09870