魏丹丹 劉邠岑
摘要:為降低塊稀疏最小均方算法(BS-NLMS)在聲學(xué)回波消除等系統(tǒng)辨識(shí)中的計(jì)算復(fù)雜度,本文充分研究了塊稀疏系統(tǒng)特性,提出一種利用語音活動(dòng)檢測(cè)方法來降低原有算法計(jì)算復(fù)雜度的改進(jìn)型新算法。新算法首先利用基于高階統(tǒng)計(jì)量的語音活動(dòng)檢測(cè)法來區(qū)分一段語音中的有無語音段,然后采用最小歐式距離范數(shù)作為部分更新標(biāo)準(zhǔn),從而克服了傳統(tǒng)抽頭系數(shù)在每次迭代時(shí)需要全部更新而引起的較高計(jì)算復(fù)雜度的問題。本文不僅給出了算法的計(jì)算復(fù)雜度分析,系統(tǒng)辨識(shí)的仿真結(jié)果也表明本方法較之前的塊稀疏最小均方算法有更小的計(jì)算復(fù)雜度。
關(guān)鍵詞:高階統(tǒng)計(jì)量;塊稀疏;部分更新;系統(tǒng)辨識(shí)
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)13-0195-03
Improved Block-Sparse Least Mean Square Algorithm Based on Higher Order Statistics
WEI Dan-dan , LIU Bin-cen
(College of Information Engineering, Zunyi Normal University, Zunyi 563006, China)
Abstract: In order to reduce computations of block sparse system identification,a selective partial-update normalization adaptive filtering algorithm based on the BS-NLMS algorithm is proposed of block sparse system identification in acoustic echo cancellation application. the Voice activity detection (VAD) algorithm is used to distinguish the active/inactive speech periods. the selective block updating schemes of smallest Euclidean distance is chosen to update filter coefficients at each iteration. Computational complexity is analyzed in detail. Additionally, simulations results show that the proposed algorithm performance in terms of convergence rate and steady-state mean square error as compared with the BS-NLMS algorithm.
Key words: adaptive filtering algorithm; block sparse; selective partial-update; system identification
1引言
無論在計(jì)算機(jī)領(lǐng)域的多媒體信號(hào)處理還是通信領(lǐng)域的系統(tǒng)辨識(shí)和聲學(xué)回聲消除等,自適應(yīng)濾波算法都有著廣闊的前景應(yīng)用[1]。其中最為常用的是最小二乘 (Recursive Least Square, RLS) 法、最小均方(Least Mean Square, LMS)算法以及仿射投影算法(Affine Projection Algorithm, APA)等三種算法。其中,應(yīng)用最為廣泛的是具有計(jì)算量小和易于實(shí)現(xiàn)這兩個(gè)優(yōu)點(diǎn)的LMS算法。需要注意的是,僅僅是LMS算法不足以滿足很多實(shí)際的工程應(yīng)用,因?yàn)榇蟛糠治粗到y(tǒng)下的權(quán)重系數(shù)是具有顯著稀疏性的 ,以最為典型的聲學(xué)回聲信道模型為例,其沖激響應(yīng)的權(quán)重系數(shù)成百上千而大部分都是零系數(shù),該模型也稱為單聚類稀疏系統(tǒng)或者是塊稀疏信道。對(duì)于這種情況下的系統(tǒng),單一的LMS算法顯然不符合需求,我們需要將稀疏這個(gè)條件提前考慮,并將其作為先驗(yàn)知識(shí)加入算法的更新當(dāng)中,通過插入[l(2.0)]范數(shù)的方法,去提高算法的收斂速度及穩(wěn)態(tài)誤差,這里引入了一個(gè)新的名詞,即懲罰因子,其含義是把沖激響應(yīng)分成相同的長(zhǎng)度,然后取其混合2范數(shù)即可。最后就可以得到塊稀疏歸一化最小均方(Block Sparse-Normalization Least Mean Square ,BS-NLMS)算法了。該算法有一個(gè)明顯不足之處,整個(gè)算法推到都只考慮了服從高斯分布的干擾噪聲,而對(duì)于非高斯噪聲這種情況,塊稀疏最小均方濾波算法不具有抗沖擊噪聲的干擾性能。
BS-NLMS算法的快速收斂性能是以犧牲自身的計(jì)算復(fù)雜度為代價(jià)獲得的,因此,如何在保證算法收斂速度的基礎(chǔ)上同時(shí)降低算法復(fù)雜度便成了BS-NLMS算法的重要問題之一。 本論文擬通過采用部分更新技術(shù)來降低每次迭代過程中的計(jì)算復(fù)雜度。部分更新技術(shù)是自適應(yīng)濾波算法用來降低計(jì)算復(fù)雜度的一種有效方法,且可移植性高。典型算法包括預(yù)先確定更新策略而不需要額外操作來確定系數(shù)的序列NLMS算法[4],M-max NLMS算法[5],以及采取固定更新方案來更新濾波器系數(shù)的set-membership PU-NLMS算法等[6]. 本論文選取最小均方歐式距離作為最優(yōu)準(zhǔn)則來選取部分更新塊以降低計(jì)算復(fù)雜度。通常來說,選取準(zhǔn)則大致可以分為兩類,第一類是塊系數(shù)矢量更新采用均方歐式范數(shù),第二類是在參數(shù)設(shè)置時(shí)采用較大的梯度矢量成分。計(jì)算復(fù)雜度的降低是通過將抽頭系數(shù)分為較小的塊且每次只迭代一塊而不是整個(gè)濾波器系數(shù)獲得的。而在具體的塊選擇上則是得益于聲學(xué)回波消除中很重要的一種VAD技術(shù),而本文采用的是其中的高階統(tǒng)計(jì)量方法。
2 進(jìn)的 BS-NLMS自適應(yīng)濾波算法
本文基于如圖1所示系統(tǒng)辨識(shí)模型來對(duì)算法進(jìn)行分析[9],假設(shè)框圖上半部分的自適應(yīng)未知系統(tǒng)是[s(n)=[s0(n),s1(n),...,sL-1(n)]T],而自適應(yīng)濾波器的第[n]次迭代輸入信號(hào)[u(n)=[u(n),u(n-1),...,u(n-L+1)]T],抽頭長(zhǎng)度表示為L(zhǎng),濾波器的未知系統(tǒng)期望信號(hào)輸出[d(n)]表示為[d(n)=uT(n)s(n)+v(n)],環(huán)境噪聲[v(n)]服從零均值、方差為[σ2]的高斯分布。根據(jù)上述假設(shè),則第[n]次的迭代估計(jì)誤差可表示為[e(n)=d(n)-xT(n)w(n)]的形式,其中,式子中的[w(n)]表示抽頭系數(shù),含義是該自適應(yīng)濾波器對(duì)未知的目標(biāo)系統(tǒng)模型[s]的估計(jì)。
塊稀疏自適應(yīng)濾波算法的代價(jià)函數(shù)可用如下的方程式子來表示:[ξ(n)=e(n)2+λw(n)2,0],其中,參數(shù)[λ]是一個(gè)正因子,另一參數(shù)可表示為:
[w2,0=Δ w12 w22… wN2T0]
式中,[w[i]=[w(i-1)P+1,w(i-1)P+1,...,wiP]T]表示第[i]組的濾波器系數(shù),其中的[P]表示濾波器階數(shù)分了多少組數(shù),而[N]則表示濾波器階數(shù)分組的長(zhǎng)度是多少。最后利用最陡下降法,可以得到下式中的權(quán)重系數(shù)更新公式:
[w(n+1)=w(n)+μe(n)u(n)u(n)u(n)T+ε+κgw(n)]
式中的[g(w)]可進(jìn)一步寫成如下方式
[g(w)=Δ[g1w,g2w,…,gLw]T]
而[μ]是一個(gè)用于調(diào)整誤差和收斂速度的步長(zhǎng)參數(shù),小的正常數(shù)[ε]是為了避免發(fā)生除零操作而引入的,[κ=μλ/2],[α]在此處必然是一個(gè)正常數(shù)。
[gj(w)=Δ2α2wj-2αwjwj/p, 0 利用語音信號(hào)的高階統(tǒng)計(jì)量(Higher-order Statistics,HOS)作為主要語音檢測(cè)指標(biāo)的VAD算法是一種能夠有效地將目標(biāo)語音從服從高斯分布的語音噪聲中區(qū)分出來的有效方案。其中,高階統(tǒng)計(jì)量在此處的含義是指三階以及三階以上統(tǒng)計(jì)量的隨機(jī)變量或者說是隨機(jī)過程的統(tǒng)計(jì)量。對(duì)于一組隨機(jī)信號(hào)[x1,x2,…,xn],它們的[r]階聯(lián)合統(tǒng)計(jì)量可以定義為如下形式: 式中:[φ(ω1,ω2,…ωn)=Eexpj(ω1x1+ω2x2+…+ωnxn)]表示信號(hào)[x1,x2,…,xn]的聯(lián)合特征函數(shù)。而 對(duì)于[k]階矩存在的平穩(wěn)隨機(jī)過程[x(k)],其各階統(tǒng)計(jì)量在不同延遲下的定義如下所示: 一階統(tǒng)計(jì)量:[C1x=E[x(n)]] 二階統(tǒng)計(jì)量為:[C2x(τ1)=E[x(n)x(n+τ1)]] 對(duì)實(shí)信號(hào)[y(n)]而言,在均值為零,時(shí)間延遲[t1=t2=t3=0]的情況下,可分別得到如下二、三、四階統(tǒng)計(jì)量的三個(gè)特殊切片: 方差(variance):[γ2y=C2y(0)=E[y2(n)]=σ2] 斜度(skewness):[γ3y=C3y(0,0)=E[y3(n)]] 峰度(kurtosis):[γ4y=C4y(0,0,0)] [=E[y4(n)]-3γ2y=E[y4(n)]-3σ2] 3 部分更新的SPU-BS-NLMS算法 SPU-BS-NLMS算法在每次迭代中基于塊選擇準(zhǔn)則只更新一部分濾波器系數(shù)來降低BS-NLMS算法的計(jì)算復(fù)雜度。假設(shè)L能夠被P和C整除,因?yàn)椴煌谖墨I(xiàn)[7][8][9]等其他傳統(tǒng)算法,BS-NLMS算法已經(jīng)假設(shè)濾波系數(shù)被分成了相同長(zhǎng)度的組數(shù)。C表示濾波器系數(shù)塊的數(shù)目,B表示塊系數(shù)長(zhǎng)度。系數(shù)矢量以及輸入信號(hào)矢量如下所示: [u(n)=[uT1(n)uT2(n)...uTC(n)]] [w(n)=[wT1(n)wT2(n)...wTC(n)]] [w1(n)=[w1(n)...wB-1(n)]] [u1(n)=[u1(n)...uB-1(n)]] 將某個(gè)更新塊記作[i], SPU-BS-NLMS算法能夠通過最優(yōu)準(zhǔn)則獲得,即誤差矢量的最小l{2,0}范數(shù)。 [min||wi(k+1)-wi(k)||2,0] [Subject to d(n)=wT(n+1)u(n)] 通過用拉格朗日乘法器,可得如下所示代價(jià)函數(shù): [xi(n+1)=E[e(n)]-βkwi(n+1)+κgwi(n)] 其中,[β]是拉格朗日乘法系數(shù)。對(duì)代價(jià)函數(shù)求偏導(dǎo)使權(quán)重系數(shù)為零,可得權(quán)重系數(shù)更新方程。第[i]個(gè)塊是預(yù)先設(shè)定的。然后,其值是不知道,方法是通過獲取最小的歐式距離[kwi(n+1)-wi(n)],得到輸入樣本的最大幅值。因此,修改部分更新塊稀疏公式如下。[w(n+1)=w(n)+S(n)e(n)u+κgwi(n)],其中[S(n)=diag(s1(n),s2(n),...,sc(n))]Si(n)等于0,其它為0。 就計(jì)算復(fù)雜度而言,M代表整個(gè)濾波器的長(zhǎng)度,P在第二部分定義過,B代表更新塊長(zhǎng)度。每一次迭代就比較幾種運(yùn)算,加法運(yùn)算,乘法運(yùn)算,除法運(yùn)算,平方根運(yùn)算和比較運(yùn)算。其中,NLMS算法需要2M+2次乘法,2M+2次加法,1次除法, 0次平方根和0次比較。BS-NLMS算法需2M+2次乘法, 4M+2次加法,1+M/P次除法 , M/P次平方根和M/P次比較。SPU-BS-NLMS算法需要M/B+M+2次乘法,3M/B+M+2次加法,M/PB+1次除法,M/P次平方根和M/PB次比較。本文提出的新算法減少了O(2L+6M) 次的計(jì)算量。就當(dāng)前發(fā)展而言,能夠以不降低算法的跟蹤性能為代價(jià)而降低算法的計(jì)算復(fù)雜度是十分重要的。
4 結(jié)論
本文提出的部分更新塊稀疏自適應(yīng)濾波算法能夠降低算法的計(jì)算復(fù)雜度,該算法首先利用基于高階統(tǒng)計(jì)量的語音活動(dòng)檢測(cè)法區(qū)分有無語音段,然后采用最小歐式距離范數(shù)作為更新標(biāo)準(zhǔn),從而克服了傳統(tǒng)抽頭系數(shù)在每次迭代時(shí)需要全部更新而導(dǎo)致的計(jì)算復(fù)雜度的問題。文中給出了算法的計(jì)算復(fù)雜度分析。進(jìn)一步的研究方向?qū)?huì)從塊稀疏的分塊來研究,考慮如何進(jìn)行分塊的自適應(yīng),而不是固定的分配。
參考文獻(xiàn):
[1] HAYKIN S. Adaptive filter theory[M]. India:Pearson Education India, 2008: 120-180.
[2] Zhang Jian;Chen Xiaowei.Non-subsampled cont- JIANG S, GU Y T. Block-sparsity-induced adaptive filter for multi- clustering system identification [J].IEEE Transactions on Signal Processing. 2015,62(20), 5318-5330.
[3] LIU J, GRANT S L. Proportionate adaptive filtering for block-sparse system[J]. IEEE/ACM Transactions on Audio, Speech, and Languange Processing, 2016, 24(4), 623-630.
[4]S. C. Douglas, Adaptive filters employing partial updates, IEEE Transactions on Circuits and Systems II: Analog and Digital Signal Processing,44(3):209-216,1997.
[5] T. Aboulnasr, K. Mayyas, Complexity reduction of the NLMS algorithm via selective coefficient update, IEEE Transactions on Signal Processing,47(5):1421-1424,1999.
[6] S. Werner, MLR. De. Campos, and PSR. Diniz, Partial-update NLMS algorithms with data-selective updating, IEEE Transactions on Signal Processing, 52(4): 938-949, 2004.
[7] P. Loganathan, EAP. Habets, and P. A. Naylor, A proportionate adaptive algorithm with variable partitioned block length for acoustic echo cancellation, 2011 IEEE International Conference on, pp.73-76,IEEE(2011).
[8] M. Godavarti, A. O. Hero, Partial update LMS algorithms, IEEE Transactions on Signal Processing, 53(7): 2382-2399, 2005.
[9] T. Schertler. Selective block update of NLMS type algorithms, 1998 IEEE International Conference on, pp: 1717-1720, IEEE(1998).