劉灝霖+姚遠程+張江梅+王坤朋
摘要:提出了一種基于K-SVD的構(gòu)造稀疏分解原子庫并用于核素γ能譜特征提取的方法。針對γ能譜信號的成譜特點及峰值規(guī)律,通過K-SVD算法構(gòu)造學習型稀疏字典,將稀疏分解系數(shù)向量作為表征γ能譜的特征,實現(xiàn)特征提取,利用最近鄰分類算法、支持向量機和決策樹等機器學習分類算法實現(xiàn)核素識別。實驗部分在七種不同的分類算法上比較了提出的特征提取方法和傳統(tǒng)方法的核素識別準確率,結(jié)果表明:相較于傳統(tǒng)方法,該文方法所提取特征具有更高的分類準確率。
關(guān)鍵詞:核素識別;特征提??;KSVD;稀疏表示
中圖分類號:TP18 文獻標識碼:A 文章編號:1009-3044(2018)02-0177-03
γSpectrum Feature Extraction and Nuclide Identification by K-SVD
LIU Hao-lin, YAO Yuan-cheng ,ZHANG Jiang-mei,WANG Kun-peng
(Southwest University of Science and Technology,College of Information Engineering of Sichuan Province,Mianyang 621010,China)
Abstract: A method Based on K-SVD to construct a sparse atomic library is proposed in this paper and is used to extract features of radionuclide γ spectrum. A learning sparse dictionary is constructed by using K-SVD algorithm according to the characteristics of γ spectrum signal, and the sparse decomposition coefficient vector is used to characterize γ spectrum to realize feature extraction and nuclide identification. The experiments verify the feature extraction performance by comparing the recognition accuracy with the traditional methods using seven different classification algorithms including KNN algorithm, SVM algorithm and Decision Tree algorithm. The results show that the feature extraction by the method proposed in this paper has higher classification accuracy compared with the traditional methods.
Key words: Nuclide identification; Feature extraction; K-SVD; Sparse Representation
放射性核素的γ能譜信號是識別核素種類主要依據(jù),其原因在于,能譜信號是以能量為橫坐標,以特定時間內(nèi)所探測到的射線粒子數(shù)為縱坐標進行表征的,能夠較為直觀地反映各種不同能量粒子的相對強度與分布情況,研究者可根據(jù)占比較大的粒子能量值判別待測核素種類。但與此同時,能譜也會受到來自環(huán)境和探測器等各種來源的噪聲影響,導致有用信號被掩蓋或者淹沒。傳統(tǒng)的核素識別方法主要將研究重點放在尋峰方法的研究上,常見的尋峰方法有導數(shù)法[1]、協(xié)方差法[2]、對稱零面積變換法[3]等,但這些方法對峰的篩選極依賴專家知識,適用性不高[4]。
將核素γ能譜當作時間的函數(shù),可將字典原子看作稀疏表示的基,使用字典原子對γ能譜信號進行擬合,將傳統(tǒng)峰位信息轉(zhuǎn)化為稀疏分解系數(shù)向量。稀疏字典的構(gòu)建主要由兩類方法實現(xiàn),一是以Gabor字典、DCT字典、Haar字典為典型代表的固定字典(Pre-constructed dictionary),其優(yōu)點是使用簡單,但在稀疏表示過程中對目標的針對性不足;二是從學習角度構(gòu)建的學習字典(Learned dictionary),其優(yōu)點是對任何類型的信號都有較好的適應(yīng)性,但其構(gòu)造復(fù)雜度較高,尤其是在針對高維度信號進行學習時,所需計算量較大[5]。本文針對γ能譜信號的成譜特點及峰值規(guī)律,通過K-SVD算法構(gòu)造學習型稀疏字典,將稀疏分解系數(shù)向量作為表征γ能譜的特征,實現(xiàn)特征提取及核素識別。
1 基于K-SVD的γ能譜特征提取及核素識別方法
K-SVD可以看作K-means的一種泛化形式,K-means算法中每個信號量只能用一個原子來近似表示,而K-SVD中的每個信號是用多個原子的線性組合來表示的。通過K-SVD構(gòu)建字典來對數(shù)據(jù)進行稀疏表示,經(jīng)常用于圖像壓縮、編碼、分類等應(yīng)用中[5,6]。
通過K-SVD算法構(gòu)造學習型稀疏字典是一個迭代過程。設(shè)輸入信號為[Y=y1,y2,…,yN∈Rn×N],稀疏字典為[D=d1,d2,…,dK∈Rn×K],則有稀疏系數(shù)矩陣X[=x1,x2,…,xN∈RK×N],且滿足下式:Y = D·X。下面將描述基于K-SVD的γ能譜特征提取及核素識別方法:
(1) 對輸入信號Y中的每一類樣本隨機選取其中q個組成初始化字典D0,q值的大小對整個字典的規(guī)模影響較大,其取值取決于稀疏字典寬度K與輸入信號中樣本的類別總數(shù),并對初始化字典D0中的每一列原子分別進行標準化;endprint
(2) 使用初始字典D0和OMP算法對輸入信號Y進行稀疏表示,得到稀疏系數(shù)矩陣X0;
(3) 初始字典D0往往無法取到最優(yōu)值,從而產(chǎn)生的稀疏系數(shù)矩陣X0所表征的信號和原輸入信號會有較大誤差,需要在滿足稀疏度的條件下逐列對初始字典D0進行更新優(yōu)化;固定稀疏系數(shù)矩陣X0,逐列進行D0的更新,為了剝離D0中第k列dk的貢獻,將dk列的值置零,同時設(shè)稀疏表示系數(shù)矩陣X0中對應(yīng)的第k行為[xkT],同樣將這一行置零,則可計算當前稀疏系數(shù)矩陣X0下的誤差矩陣:
[Ek=Y-D0?X0dk=0,xkT=0=Y-i≠kdixiT] (1)
則可得誤差值為:
[E=Y-DX2F=Y-D0?X02F]
[=Y-i≠kdixiT-dkxkT2F=Ek-dkxkT2F] (2)
(4) 重復(fù)執(zhí)行步驟(3)根據(jù)稀疏系數(shù)矩陣更新字典,減小整體誤差值,直到誤差值趨于穩(wěn)定或小于一個預(yù)先設(shè)定好的閾值;
(5) 重復(fù)執(zhí)行步驟(2)—(4),直到字典D收斂,得到通過K-SVD算法構(gòu)造的學習型稀疏字典D和稀疏系數(shù)矩陣X,則稀疏系數(shù)矩陣X為輸入信號Y在稀疏字典D下的稀疏特征;
(6) 對稀疏系數(shù)矩陣X進行篩選,抽取不同類別樣本的稀疏特征系數(shù)向量xi,i=1,2,…,N,尋找絕對值最大的特征向量分量并將其在向量xi中的位置記為特征位置向量[Pos=pos1,pos2,…posJ],重復(fù)執(zhí)行步驟本步驟,直到特征位置向量Pos中的元素個數(shù)達到預(yù)先設(shè)定的特征個數(shù)J為止;
(7) 針對稀疏系數(shù)矩陣X,取其特征位置向量Pos所對應(yīng)位置的特征向量分量組成新的特征向量矩陣[ F=f1,f2,…,fN∈RJ×N];
(8) 在每一個特征向量fN尾部添加樣本標簽c(c∈標簽集合C),即[F'=f'1,f'2,…,f'N∈R(J+1)×N],其中每一個特征向量[f'N]都表征了一個樣本的特征;
(9) 以最近鄰分類算法為例對識別過程進行說明,最近鄰分類算法的主要思想是通過計算樣本特征向量[f'N]的鄰居與其的相對距離,并將不同距離的鄰居對該樣本產(chǎn)生的影響給予不同的權(quán)值,然后將鄰居的屬性與權(quán)值的乘積的最大值賦給該樣本,就可以得到該樣本的屬性。具體步驟如下:
Step1:設(shè)定s值。一般先確定一個初始值,然后根據(jù)實驗結(jié)果反復(fù)調(diào)整至最優(yōu);
Step2:計算測試樣本和每個訓練樣本的歐氏距離;
Step3:選擇距離相對較小的s個樣本作為測試樣本的s個近鄰;
Step4: 找出主要類別:設(shè)s個近鄰與樣本的距離為d1,d2,...,ds,相應(yīng)的類別標簽為c1,c2,...,cs,相應(yīng)的權(quán)重為(d1)-1,(d2)-1,...,(ds)-1,計算相應(yīng)類標簽與權(quán)重的乘積之和,則擁有最大概率的類別被標記為樣本[f'N]的主要類別。
本方法放棄了傳統(tǒng)方法中與標準核素庫進行匹配的思想,利用K-SVD算法對核素能譜稀疏分解字典進行構(gòu)造,其優(yōu)勢在于將γ能譜特征轉(zhuǎn)化為稀疏分解系數(shù)向量,是在區(qū)分性最好的維度上對核素能譜進行投影,可針對各種核素實現(xiàn)其種類的識別。
2 實驗結(jié)果與分析
本文利用Geant4軟件模擬了6種(241Am、137Cs、60Co、 152Eu、 226Ra、 131I) 不同的核素能譜,每種核素共200個數(shù)據(jù)。實驗采用10折交叉驗證來驗證算法的有效性,該方法將所有樣本隨機平均分為10份,每次拿其中的9份用于訓練,剩下的1份用于測試,并循環(huán)10次計算其平均識別率。
為了證明本文方法對于γ能譜特征提取的有效性,本實驗比較了本文方法與兩種傳統(tǒng)方法在不同分類方法上的分類結(jié)果,兩種傳統(tǒng)的特征提取方法分別是基于Savitzky-Golay平滑與導數(shù)尋峰的方法和基于梯形窗平滑與導數(shù)尋峰的方法。本實驗基于WEKA平臺,使用了七種不同的分類算法對模擬核素能譜進行分類,并對七種方法所得結(jié)果求取平均值,這七種分類算法分別是:最近鄰分類算法 (KNN)、樸素貝葉斯分類算法 (Naive Bayes)、支持向量機(SMO)、PART Decision List (PART)、C4.5決策樹分類算法 (C4.5)、CART決策樹分類算法 (CART)、RBF神經(jīng)網(wǎng)絡(luò) (RBF Network)。
如表1所示,實驗結(jié)果表明,本文提出的基于K-SVD和稀疏表示的γ能譜特征提取方法的訓練準確率和測試準確率識別率普遍高于90%,分類效果較好,且在KNN方法下識別效果最佳,為99.25%;而兩種傳統(tǒng)的特征提取方法識別率均較低,在SVM方法上甚至低至20%以下??梢哉J為K-SVD和稀疏表示的γ能譜特征提取方法能夠有效地提取到區(qū)分能力更強的能譜特征。
進一步的,為了進一步探究學習型稀疏字典寬度K與特征識別準確率的關(guān)系,本實驗令K=12,24
同時,針對不同K值情況下的字典D和稀疏分解系數(shù)X,使用公式Y(jié)' = D·X對輸入信號Y進行回復(fù)重構(gòu),得到重構(gòu)信號Y',隨機選取在K=30時的一組重構(gòu)信號與其輸入信號進行對比,如圖1(b)所示,其中,橫軸代表字典原子數(shù)K,縱軸代表原始信號與重構(gòu)信號的殘差能量值,殘差能量值隨著K值的增大而不斷減小,到K=60時下降坡度趨于平緩,到K=120時保持在穩(wěn)定水平;在圖2中繪制在不同K值情況下該組信號的殘差能量特征曲線,重構(gòu)信號在幅值上存在一定程度的誤差,但整體基本恢復(fù)了原始信號的特征,尤其是特征峰部分的恢復(fù)情況較好。
本方法放棄了傳統(tǒng)方法中與標準核素庫進行匹配的思想,利用K-SVD算法對核素能譜稀疏分解字典進行構(gòu)造,其優(yōu)勢在于將γ能譜特征轉(zhuǎn)化為稀疏分解系數(shù)向量,是在區(qū)分性最好的維度上對核素能譜進行投影,可針對各種核素實現(xiàn)其種類的識別。
3 結(jié)束語
本文針對γ能譜信號的成譜特點及峰位規(guī)律,基于K-SVD算法和稀疏表示表示思想構(gòu)造學習型稀疏字典,將稀疏分解系數(shù)向量作為表征γ能譜的特征,實現(xiàn)了核素γ能譜的特征提取及核素種類的識別。利用模擬能譜進行實驗,表明了本文方法在各種分類算法情況下與傳統(tǒng)方法相對比都具有較高的識別準確率,平均識別準確率可達94.6%,遠遠高于傳統(tǒng)方法,能夠有效地提取γ能譜特征。
參考文獻:
[1] Savitzky A, Golay M J E. Smoothing and Differentiation of Data by Simplified Least Squares Procedures [J]. Analytical Chemistry, 1964, 36(8):1627-1639.
[2] Blok H, De Lange J, Schotman J. A new peak search method for an automatic spectrum analysis program [J]. Nuclear Instruments and Methods, 1975, 128(3):545-556.
[3] Mariscotti M A. A method for automatic identification of peaks in the presence of background and its application to spectrum analysis[J]. Nuclear Instruments & Methods, 1967, 50(2):309-320.
[4] 陳亮. 核素識別算法及數(shù)字化能譜采集系統(tǒng)研究[D]. 清華大學, 2009.
[5] Michal Aharon, Michael Elad, Alfred Bruckstein. K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation[J]. IEEE transactions on signal processing, TRANSACTIONS ON SIGNAL PROCESSING, 2006,54(11):4311-4322.
[6] 彭志珍.匹配追蹤算法中稀疏度的自適應(yīng)研究[D].武漢:華中科技大學, 2011.endprint