王蓮子,李鐘曉,陳倩倩,莊曉東
(青島大學(xué) 電子信息學(xué)院,山東 青島 266071)
2006年,Donoho D L等人提出壓縮感知,為信號處理技術(shù)帶來革命性突破[1]。在理論數(shù)學(xué)、信號處理、圖像與視頻處理等方面得到廣泛應(yīng)用[2],而構(gòu)造合適字典,實(shí)現(xiàn)信號最優(yōu)稀疏表示是壓縮感知中的關(guān)鍵。構(gòu)造字典方法分為固定字典法和訓(xùn)練字典法,固定字典實(shí)現(xiàn)簡單,但原子形態(tài)單一,應(yīng)用有局限,常用的訓(xùn)練字典法有最優(yōu)方向法(method of optimal directions,MOD)[3]以及K奇異值分解(K-singular value decomposition,K-SVD)算法[4]。相比于MOD,K-SVD計(jì)算復(fù)雜度有所降低,并逐漸成為研究熱點(diǎn)。但當(dāng)前K-SVD仍存在學(xué)習(xí)時(shí)間過長的問題,并引起了許多學(xué)者的注意。文獻(xiàn)[5]在字典更新以及稀疏表示階段提出DUC(dictionary update cycle)算法和CoefROMP(coefficient reuse OMP)算法,有效減少K-SVD訓(xùn)練目標(biāo),提升訓(xùn)練效率;文獻(xiàn)[6]在稀疏表示階段采用迭代閾值算法,用TL1范數(shù)代替L0范數(shù),獲得較快稀疏編碼速度。
上述方法均對K-SVD中稀疏表示以及字典更新階段改進(jìn),卻忽略高維度訓(xùn)練樣本的問題。通過減少訓(xùn)練維度可有效提升學(xué)習(xí)效率,而字典學(xué)習(xí)本質(zhì)是信號特征針對性訓(xùn)練,在有效篩選和抽取高維信號特征時(shí),往往涉及數(shù)據(jù)降維技術(shù)。常用的降維技術(shù)包括主成分分析(principal component analysis,PCA),獨(dú)立成分分析(independent component analysis,ICA)[7],t分布隨機(jī)近鄰嵌入(t-distributed stohastic neighbor embedding,t-SNE)[8]等。文獻(xiàn)[9~11]表明,PCA與字典訓(xùn)練的有效融合可提升學(xué)習(xí)精度,但并沒有降低系統(tǒng)復(fù)雜度提高學(xué)習(xí)效率。
本文將PCA嵌入字典學(xué)習(xí),提出一種基于信號子空間低維表征的快速字典學(xué)習(xí)算法,結(jié)果表明,新算法可以較快運(yùn)行速度獲取高性能字典。
信號具有稀疏性是壓縮感知的前提及基礎(chǔ),多數(shù)信號本身不具備稀疏性,只在字典下可進(jìn)行稀疏表示。信號y∈R(n×m)的稀疏表示模型如下[12~14]
y=DC
(1)
式中 稀疏字典D=[d1d2…ds]∈R(n×s),原子矢量長度為n。C∈R(s×m)為y在D上的稀疏系數(shù),其稀疏性一般以L0或L1范數(shù)衡量。稀疏求解方法有正交匹配追蹤(orthogonal matching pursuit,OMP)算法,匹配追蹤(matching pursuit,MP)算法等,本研究選擇OMP算法作為求解方法以獲取較快收斂速度[15]。
K-SVD是一種經(jīng)典學(xué)習(xí)算法,同時(shí)也是一種迭代算法,將數(shù)據(jù)矩陣y分解為具有符合數(shù)據(jù)特性的字典D以及稀疏系數(shù)C,其分解模型如下[16~18]
(2)
然而,迭代學(xué)習(xí)中的稀疏求解及奇異值分解階段常伴隨高數(shù)據(jù)處理量,訓(xùn)練目標(biāo)維數(shù)擴(kuò)張易引發(fā)特征冗余和系統(tǒng)復(fù)雜,因此,消除冗余信息可有效提高系統(tǒng)時(shí)間及空間利用率。
PCA是一種經(jīng)典信號去相關(guān)和降維技術(shù),將原數(shù)據(jù)轉(zhuǎn)為非相關(guān)性向量,將高維特征空間映射到低維特征空間并以更小維度展示數(shù)據(jù)特性,其主要步驟如下[19~21]
3)取前t個(gè)最大特征值對應(yīng)的特征向量,標(biāo)準(zhǔn)化后組成特征矩陣W={W1,W2,…,Wt}
4)生成子空間y′∈R(t×m)
文獻(xiàn)[22]表明,通過PCA技術(shù)可壓縮原始數(shù)據(jù)生成捕捉信號特性的低維子空間,以子空間為學(xué)習(xí)對象可有效消除樣本冗余信息。
本文利用PCA篩選信號主要特征,提出一種基于信號子空間低維表征的快速字典學(xué)習(xí)算法。本方法新算法主要分為三部分:1)子空間低維表征階段;2)樣本目標(biāo)訓(xùn)練階段;3)字典特征變換階段。在子空間低維表征階段,原數(shù)據(jù)y(n×m),通過PCA設(shè)最佳閾值λ生成張成子空間y′∈R(t×m)表征原始信號
(3)
在樣本目標(biāo)訓(xùn)練階段,以y′為訓(xùn)練樣本,利用式(2)學(xué)習(xí)子空間字典Dt以及稀疏系數(shù)Ct,式(1)表明,y′可進(jìn)行稀疏表示,現(xiàn)將式(3)與式(1)結(jié)合
(4)
(5)
式中WT為單位正交矩陣,則(WT)T(WT)近似單位矩陣,式(5)近似表示為
(6)
在特征變換階段,Dt為y′的訓(xùn)練字典,本身可代表原信號重要屬性。將Ct作為臨時(shí)稀疏系數(shù),利用特征矩陣WT對Dt作變換得到符合原信號主要特性的原始字典D,利用OMP進(jìn)一步求得稀疏系數(shù)?;谛盘栕涌臻g低維表征的快速字典學(xué)習(xí)算法步驟簡化如下:
輸入:原始信號y(n×m)
1)y(n×m)進(jìn)行PCA處理,利用子空間y′∈R(t×m)表征原信號
2)y′為訓(xùn)練樣本,學(xué)習(xí)子空間字典Dt以及稀疏系數(shù)Ct
3)固定Ct,對Dt特征變換,原始字典D=(WT)TDt
4)重新獲取稀疏系數(shù)C
輸出:稀疏系數(shù)C,學(xué)習(xí)字典D
為驗(yàn)證本方法普遍性及有效性,分別對語音與圖像信號處理,并與K-SVD對比分析學(xué)習(xí)性能,以稀疏性、均方根誤差(RMSE)、運(yùn)行時(shí)間作為性能評價(jià)標(biāo)準(zhǔn),現(xiàn)對稀疏性定量處理,計(jì)算模型如下
(7)
在子空間低維表征階段,特征抽取閾值λ選取較為關(guān)鍵,λ決定子空間矢量長度t及原信息表征程度。針對不同信號,λ取值較為不同,以語音信號/a/,/i/,/h/為例,采樣頻率16 kHz,幀長128 ms,幀移32 ms,一般選取λ≥97 %。表1為語音信號在不同λ下t取值。
表1 在不同λ下語音信號子空間矢量長度
由表1看出,當(dāng)λ取值100 %,原信號不進(jìn)行子空間低維表征處理。隨著λ增大,t隨之增大同時(shí)可越精確表征原信號;經(jīng)PCA處理后,t最少為原信號1/7,以86.7 %的數(shù)據(jù)壓縮率包含原信號97 %以上信息,由此可見,子空間可以較小矢量長度持有原信號重要屬性。
本文對多個(gè)單音素測試,比較不同λ下快速字典學(xué)習(xí)算法的運(yùn)行時(shí)間,RMSE,稀疏性度量K。圖1表示/a/,/i/,/h/在不同λ下各學(xué)習(xí)性能的變化曲線。
圖1 語音音素在不同λ下各學(xué)習(xí)性能的變化曲線
由圖1可以看出,λ越大,運(yùn)行速度逐漸降低;y′表征原信號越精確,基于快速字典學(xué)習(xí)算法的RMSE逐漸減小;在稀疏性方面,K保持在相對穩(wěn)定數(shù)值,受閾值影響小。因此,為有效權(quán)衡不同λ下學(xué)習(xí)性能,對運(yùn)行時(shí)間、RMSE以及稀疏性K進(jìn)行加權(quán)比較,選取最優(yōu)閾值可使新方法基于y′低維狀態(tài)下,保證較優(yōu)性能的同時(shí)最快程度獲取訓(xùn)練字典。
本研究運(yùn)行環(huán)境Windows 7,MATLAB 2014b,語音樣本數(shù)據(jù)在安靜環(huán)境下錄制,采樣頻率16 kHz,幀長128 ms,幀移32 ms,訓(xùn)練字典Ds∈R(128×256);因語音信號結(jié)構(gòu)多樣性及時(shí)變性,將單音素與多音素信號分開處理,表2為單音素在2種算法下學(xué)習(xí)性能對比。
表2 語音音素在2種算法下性能對比
在圖像處理中,選取紋理圖像作為測試圖像,如圖2所示,圖像分塊向量化矩陣為16×16,圖像訓(xùn)練字典Di∈R(256×1 024),表3為測試圖像在兩種算法下學(xué)習(xí)性能對比。
圖2 測試紋理圖像
由表2、表3知:與K-SVD相比,快速字典學(xué)習(xí)算法的 RMSE均保持在同一數(shù)量等級,在至少包含90 %重要信息下,快速構(gòu)造出具有穩(wěn)定稀疏表示能力的原始字典,保證學(xué)習(xí)可靠性,同時(shí)極大提升訓(xùn)練效率;在語音處理方面,快速字典學(xué)習(xí)算法在運(yùn)行時(shí)間上減少近1/2;而圖像處理速度則至少提升53 %。利用新算法處理信號時(shí),以子空間為訓(xùn)練對象降低樣本特征冗余度,使得結(jié)構(gòu)更加緊湊,避免了在學(xué)習(xí)階段形成較高計(jì)算復(fù)雜度。
表3 測試圖像在兩種方法下性能對比
為進(jìn)一步證明新方法應(yīng)用價(jià)值,以語音/i/為處理對象,添加采樣頻率為16 kHz的隨機(jī)噪聲,比較兩種方法處理下的輸出信噪比(signal to noise ratio,SNR)及對數(shù)譜失真測度(logarithmic spectral distortion measure,LSD),其中輸出SNR越大,LSD越小,表明語音增強(qiáng)質(zhì)量越好。圖3表明,在不同輸入SNR情況下,快速字典學(xué)習(xí)算法的輸出信噪比高于K-SVD,其LSD也均低于原算法。
圖3 含不同輸入信噪比的語音音素/i/降噪性能對比
因?yàn)樵诮翟脒^程中,相比于純凈信號,噪聲幅度小,結(jié)構(gòu)散亂,在整體信號中占次要成分,而新算法有2次噪聲過濾階段:1)子空間生成階段:設(shè)置最優(yōu)特征抽取閾值,過濾次要成分噪聲;2)字典學(xué)習(xí)階段:放棄訓(xùn)練與噪聲相適應(yīng)原子,在信號重構(gòu)時(shí)消除。因此,與K-SVD相比,基于信號子空間低維表征的快速字典學(xué)習(xí)算法具有更好降噪質(zhì)量。
單音素語音結(jié)構(gòu)特性統(tǒng)一且能量集中,張成子空間能準(zhǔn)確代表原信息,在利用快速字典學(xué)習(xí)算法處理時(shí)效果明顯。多音素語音結(jié)構(gòu)復(fù)雜且能量變化頻繁,在篩選主要屬性時(shí)易去除某些貢獻(xiàn)率相對較小但影響發(fā)音質(zhì)量的音素。此外,多音素語音冗余成分較少,張成子空間并沒有得到大幅度壓縮,速度提升并不明顯。本文對基于信號子空間低維表征的快速字典學(xué)習(xí)算法改進(jìn),提出基于快速字典學(xué)習(xí)的小字典學(xué)習(xí)方法,其數(shù)學(xué)模型如下
Ψ(Y)=Ψ(Y1Y2…Yp)=[Ψ(Y1)Ψ(Y2)…Ψ(Yp)]
=[D1D2…Dp]=D
(8)
將多音素Y按結(jié)構(gòu)劃分P個(gè)特性統(tǒng)一分割矩陣,Y=[Y1Y2…Yp],Ψ(Y)表示對Y進(jìn)行基于信號子空間低維表征的快速字典學(xué)習(xí)算法處理,得小字典[D1D2…Dp],多個(gè)小字典按相應(yīng)分割形式組合成原信號學(xué)習(xí)字典D??紤]到在多音素中,單個(gè)音素持續(xù)時(shí)間為16~32 ms,結(jié)合多音素信號時(shí)域波形情況分析,將其按照64 ms幀長,32 ms幀移處理。以下為[Face],[Statistics],[Mathematics]的小字典學(xué)習(xí)方法與K-SVD性能對比。
由表4說明,小字典學(xué)習(xí)法利用信號結(jié)構(gòu)特性,減少音素丟失可能性;與K-SVD相比,小字典學(xué)習(xí)法在計(jì)算速度方面提升效果明顯,訓(xùn)練時(shí)間至少減少1/3;從稀疏性以及RMSE分析看出,訓(xùn)練字典稀疏表示性能優(yōu)秀可靠。由此說明,在具有復(fù)雜結(jié)構(gòu)的多音素學(xué)習(xí)中,小字典學(xué)習(xí)方法有較好處理效果,改進(jìn)后的快速字典學(xué)習(xí)算法同樣適用于結(jié)構(gòu)特性多樣,能量變化較快的多音素語音。
表4 多音素信號在兩種方法下的性能對比
針對字典學(xué)習(xí)中訓(xùn)練樣本特征冗余導(dǎo)致學(xué)習(xí)效率低的問題,提出了一種基于信號子空間低維表征的快速字典學(xué)習(xí)算法。該方法將高維信號映射到低維子空間,利用子空間捕捉原信號特征并作為訓(xùn)練樣本,通過特征變換獲取原信號字典。實(shí)驗(yàn)數(shù)據(jù)表明:與K-SVD算法相比,快速字典學(xué)習(xí)算法以提高近50 %的學(xué)習(xí)效率獲取具有優(yōu)秀稀疏表示和降噪性能的字典;針對多音素語音信號結(jié)構(gòu)特性復(fù)雜的情況,對快速字典學(xué)習(xí)算法改進(jìn),提出一種小字典學(xué)習(xí)方法,其運(yùn)行速度至少提升1/3,從研究結(jié)果的定性與定量分析中得出,基于信號子空間低維表征的快速字典學(xué)習(xí)是一種有效且擁有較強(qiáng)應(yīng)用前景的學(xué)習(xí)算法。