本發(fā)明涉及一種信號稀疏表示方法,尤其是一種基于仿射尺度最速下降算法的信號稀疏表示方法。
背景技術(shù):
信號稀疏表示能夠有效地提取信號最本質(zhì)的特征,在圖形處理、機器學習和計算機視覺等領(lǐng)域有著廣泛的應用。信號稀疏表示本質(zhì)上是將已知的采樣信號b∈rm用一組基向量a1,…,an來線性表示,即:
b=ax(1)
其中基向量組構(gòu)成矩陣a=(a1,…,an)∈rm×n(m<<n),稀疏向量x∈rn有k(k<<m)個非零分量。為了獲得分解向量x以稀疏表示信號b,需要求解欠定線性方程組(1),而此方程組有無限多個解,所以我們利用離散度來約束可行解,以搜索滿足條件的唯一稀疏解。實際問題中,l0、l1、lp(0<p<1)和l2,1范數(shù)被廣泛應用于離散度的測量。有文獻提出了利用如下l0最優(yōu)化問題來獲得信號稀疏表示
多種貪婪算法被應用于問題(2)的求解,例如正交匹配追蹤(omp)算法、子空間追蹤(sp)算法、壓縮采樣匹配追蹤(cosamp)算法、基于回溯的追蹤(baomp)算法和分段正交匹配追蹤(ompst)算法等。但是上述貪婪算法僅僅選擇k個合適的基來線性表示信號b,這k個基不一定是最稀疏的。有文獻指出下面的l1最優(yōu)化問題以高概率等價于l0最優(yōu)化問題
現(xiàn)有的各種求解算法,例如基追蹤(bp)算法、梯度投影稀疏重構(gòu)(gpsr)算法、快速迭代收縮閾值(fista)算法、最鄰近算法、lasso同倫算法和雙擴張拉格朗日(dalm)方法等,已廣泛用于問題(3)的求解。因為l1最優(yōu)化是全局不可導問題,所以上述算法的計算代價遠遠高于貪婪算法。l2,1最優(yōu)化雖然克服了l1最優(yōu)化中異常值的難題,但是依然存在高計算代價的問題。如果用l2范數(shù)代替問題(3)中的l1范數(shù),則可用l2最優(yōu)化問題來獲得信號b的線性表示。然而,l2范數(shù)的幾何特性決定了l2最優(yōu)化無法獲得理想的稀疏解。
根據(jù)文獻中各類范數(shù)的幾何特性可知lp范數(shù)能夠提供比l1和l2,1范數(shù)更稀疏的解,因此考慮如下lp最優(yōu)化問題以快速求解出稀疏解,獲得精確的信號稀疏表示
針對問題(4),研究者提出了全局收斂的欠定系統(tǒng)局灶(focuss)算法和仿射尺度變換(affinescalingtransformation,ast)算法。但因受限于初始點的位置,上述方法易于收斂到次優(yōu)稀疏解,且收斂速度極大依賴于矩陣a的性質(zhì)。于是如何求解更優(yōu)的稀疏解或者全局最優(yōu)稀疏解是亟待解決的問題。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是現(xiàn)有的信號稀疏表示方法難以獲得更優(yōu)的稀疏解或者全局最優(yōu)稀疏解。
為了解決上述技術(shù)問題,本發(fā)明提供了一種基于仿射尺度最速下降算法的信號稀疏表示方法,包括如下步驟:
步驟1,建立仿射尺度最速下降算法的迭代模型:
xk+1=xk-μk,minwk+1lk
式中,wk+1=diag(|xk(i)|1-p/2)為對角尺度矩陣,
步驟2,利用
步驟3,利用建立的迭代模型以初始點x0出發(fā)收斂得到最優(yōu)稀疏解,從而獲得全局最優(yōu)稀疏表示。
作為本發(fā)明的進一步限定方案,步驟1中,建立仿射尺度最速下降算法的迭代模型的具體步驟為:
步驟1.1,提出以lp范數(shù)最優(yōu)化問題來獲得信號稀疏表示,并將lp范數(shù)最優(yōu)化問題定義為:
式中,a為基矩陣,b為信號;
步驟1.2,從初始點x0=a+b出發(fā)搜索稀疏解,其中a的廣義逆矩陣為a+=(ata)-1a,考慮第k+1步迭代,定義對角尺度矩陣wk+1=diag(|xk(i)|1-p/2)和尺度向量q=(wk+1)-1x,將lp范數(shù)最優(yōu)化問題轉(zhuǎn)化為關(guān)于變量q的最優(yōu)化問題:
式中,ak+1=awk+1為尺度矩陣,可見目標函數(shù)對q的梯度提供了一個可行下降方向為:
式中,
步驟1.3,計算
xk+1=xk-μkwk+1lk
式中,μk為步長;
步驟1.4,將xk+1帶入目標函數(shù)建立關(guān)于步長μ的函數(shù)表示式為:
f(μ)=e(p)(xk-μtk)
式中,tk=wk+1lk為可行下降方向,求解目標函數(shù)的所有根,從而求解tk方向上所有可選步長為:
步驟1.5,利用步長對應f(μ)的所有極值點的特點,選擇最優(yōu)步長使得目標函數(shù)值達到最小,即:
將最優(yōu)步長μk,min替換固定步長μk,于是得到仿射尺度最速下降算法的迭代模型為:
xk+1=xk-μk,minwk+1lk。
本發(fā)明的有益效果在于:采用實時更新的最優(yōu)步長能夠幫助迭代點跳出次優(yōu)稀疏解的吸引盆,從而克服了ast易于收斂到次優(yōu)稀疏解的難題,同時assd的收斂速度遠遠快于ast,具有更好的收斂性能,通過數(shù)值算例也驗證了assd比ast有更大的機率收斂到全局最優(yōu)稀疏解,從而獲得更精確的信號稀疏表示。
附圖說明
圖1為本發(fā)明的方法流程圖;
圖2為本發(fā)明的目標函數(shù)f(μ)的函數(shù)曲線一維示意圖;
圖3為本發(fā)明的assd和ast的步長選擇的三維示意圖;
圖4為ast在三維空間的收斂路徑示意圖;
圖5為本發(fā)明的assd在三維空間的收斂路徑示意圖;
圖6為ast在二維空間的收斂路徑示意圖;
圖7為本發(fā)明的assd在二維空間的收斂路徑;
圖8為ast產(chǎn)生的解序列收斂到次優(yōu)解
圖9為ast產(chǎn)生的迭代點x1的示意圖;
圖10為ast產(chǎn)生的迭代點x21的示意圖;
圖11為本發(fā)明的assd經(jīng)過9步迭代收斂到全局最優(yōu)解
圖12為本發(fā)明的assd產(chǎn)生的迭代點x1示意圖;
圖13為本發(fā)明的assd產(chǎn)生的迭代點x9示意圖。
具體實施方式
如圖1所示,本發(fā)明公開的基于仿射尺度最速下降算法的信號稀疏表示方法,包括如下步驟:
步驟1,建立仿射尺度最速下降算法的迭代模型:
xk+1=xk-μk,minwk+1lk
式中,wk+1=diag(|xk(i)|1-p/2)為對角尺度矩陣,
步驟2,利用
步驟3,利用建立的迭代模型以初始點x0出發(fā)收斂得到最優(yōu)稀疏解,從而獲得全局最優(yōu)稀疏表示。
其中,步驟1中,建立仿射尺度最速下降算法的迭代模型的具體步驟為:
步驟1.1,提出以lp范數(shù)最優(yōu)化問題來獲得信號稀疏表示,并將lp范數(shù)最優(yōu)化問題定義為:
式中,a為基矩陣,b為信號;
步驟1.2,從初始點x0=a+b出發(fā)搜索稀疏解,其中a的廣義逆矩陣為a+=(ata)-1a,考慮第k+1步迭代,定義對角尺度矩陣wk+1=diag(|xk(i)|1-p/2)和尺度向量q=(wk+1)-1x,將lp范數(shù)最優(yōu)化問題轉(zhuǎn)化為關(guān)于變量q的最優(yōu)化問題:
式中,ak+1=awk+1為尺度矩陣,可見目標函數(shù)對q的梯度提供了一個可行下降方向為:
式中,
步驟1.3,計算
xk+1=xk-μkwk+1lk
式中,μk為步長;
步驟1.4,將xk+1帶入目標函數(shù)建立關(guān)于步長μ的函數(shù)表示式為:
f(μ)=e(p)(xk-μtk)
式中,tk=wk+1lk為可行下降方向,求解目標函數(shù)的所有根,從而求解tk方向上所有可選步長為:
步驟1.5,利用步長對應f(μ)的所有極值點的特點,選擇最優(yōu)步長使得目標函數(shù)值達到最小,即:
將最優(yōu)步長μk,min替換固定步長μk,于是得到仿射尺度最速下降算法的迭代模型為:
xk+1=xk-μk,minwk+1lk。
本發(fā)明還提供了為仿射尺度最速下降算法的具體推導過程,了便于說明,將將l0范數(shù)最優(yōu)化問題定義為:
ast從初始點x0=a+b出發(fā)搜索稀疏解,其中a的moore-penrose逆矩陣為a+=(ata)-1a。考慮第k+1步迭代,定義對角尺度矩陣wk+1=diag(|xk(i)|1-p/2)和尺度向量q=(wk+1)-1x,將公式(5)轉(zhuǎn)化為關(guān)于變量q的最優(yōu)化問題:
其中ak+1=awk+1為尺度矩陣。目標函數(shù)對q的梯度提供了一個可行下降方向:
計算
xk+1=xk-μkwk+1lk(8)
其中i∈rm×m為單位矩陣,步長μk>0,tk=wk+1lk為下降方向。選擇固定步長μk=1/p,ast的迭代過程如下:
wk+1=diag(|xk(i)|1-p/2)
xk+1=wk+1qk+1(9)
顯然,固定步長使得迭代點易于聚集在初始點所在的卦限,不易進入其它卦限以搜索更優(yōu)的稀疏解。為了選擇更合適的步長,我們將xk+1帶入目標函數(shù)建立關(guān)于μ的函數(shù)表示式,并考慮它對目標函數(shù)值的影響
f(μ)=e(p)(xk-μtk)(10)
分別求f(μ)對μ的一階和二階導數(shù)
由式(11)和(12)可知:f(μ)是分段凸函數(shù),它有多個極值點,其分段點分別對應xk+1(i)=0(i=1,…,n)的根,如圖2所示。圖2和圖3分別給出了第k+1步迭代時ast和assd選擇步長的一維和三維示例。
當選擇固定步長μk=1/p時,圖2顯示ast的目標函數(shù)值f(1/p)(標記為‘+’)在搜索方向tk上未能達到全局最小值;assd嘗試計算最優(yōu)步長(標記為‘*’)以尋找全局最小值點,而這個點一定是xk+1(i)=0(i=1,…,n)的某一個根。不失一般性,我們先計算所有的根,以求解tk方向上所有可選步長:
顯然,這些步長對應著f(μ)的所有極值點。選擇最優(yōu)步長使得目標函數(shù)值達到最小,即:
于是迭代公式(8)轉(zhuǎn)化為如下形式:
xk+1=xk-μk,minwk+1lk(15)
對應于圖2,圖3在三維空間展示了搜索方向tk上固定步長μk=1/p和最優(yōu)步長μk,min的位置。從xk出發(fā),tk與三個坐標面π1,π2,π3分別相交于三個點μk,1,μk,2,μk,3,其中這三個點分別對應著f(μ)的三個極值點且f(μk,3)<f(μk,2)<f(μk,1),因此選擇μk,min=μk,3。此時,新的迭代點xk+1落在π3上,它的第三個分量為零。比較上述兩種步長選擇方法,assd不僅比ast加快了收斂速度,而且能夠使迭代點從一個卦限跳到另一個卦限,增加了收斂到更優(yōu)稀疏解的機率,減少了初始點對算法的影響。根據(jù)以上討論,assd的迭代過程如下
wk+1=diag(|xk(i)|1-p/2)
qk=(wk+1)-1xk
xk+1=xk-μk,minwk+1lk,其中
為了驗證本發(fā)明的仿射尺度最速下降算法assd的收斂性,我們首先詳細分析ast的收斂過程。
引理1假設(shè)矩陣a∈rm×n有滿秩分解a=bc,其中b∈rm×r,c∈rr×n,b,c,bc的秩都是r,則a的廣義逆矩陣為:
a+=ct(cct)-1(btb)-1bt(17)
其中,bt,ct是b,c的轉(zhuǎn)置矩陣。
引理2假設(shè)xk,xk+1是ast的兩個迭代點,則它們有如下近似關(guān)系為:
證明:如果a有奇異值分解a=uλv=u(λ10)v,則尺度矩陣ak+1為:
ak+1=awk+1=u(λ10)vwk+1(19)
其中,λ1∈rm×m為對角矩陣,u,v均為正交矩陣,(λ10)vwk+1為行滿秩矩陣。式(19)說明ak+1存在滿秩分解,由引理1可知它的廣義逆矩陣為:
在式(20)中,對v和wk+1進行分塊來計算v(wk+1)2vt
將式(21)帶入式(20)可得
根據(jù)a的奇異值分解式,進一步計算得到
于是,式(9)中的xk+1可變形為
式(24)兩邊同時乘以(wk+1)-1得
不妨定義
因為冪等矩陣的特征值為1或0,所以存在一個正交矩陣p=(pij)n×n可將d對角化
ptdp=diag(1,…,1,0,…,0)(27)
將式(27)帶入式(25)可得
(wk+1)-1xk+1=d(wk+1)-1xk=pdiag(1,…,1,0,…,0)pt(wk+1)-1xk(28)
式(28)說明在每一步迭代,ast先用
其中,
而且每步迭代p均不相同,由此計算式(29)的數(shù)學期望
并獲得近似估計
其中ε是無窮小。聯(lián)合式(28)和式(32),兩個迭代點xk和xk+1的近似關(guān)系如下:
引理2說明受到壓縮因子1-m/n的作用,(wk+1)-1xk+1所有分量的絕對值均小于(wk+1)-1xk中對應分量的絕對值,于是xk+1所有分量的絕對值均小于xk中對應分量的絕對值。上述結(jié)論保證了ast的收斂性。下面,我們考慮它的收斂率。
定理1從任意一個初始點x0出發(fā),ast迭代生成的解序列
證明:首先,我們證明若xk含有多個零分量,則這些分量在后續(xù)迭代中保持不變。為了方便說明,不妨假設(shè)xk的前s(s<n-m)個分量是零分量,即
于是有
其中,
于是搜索方向lk滿足:
并且xk+1可以表示為:
ast選擇μk=1/p可得:
式(39)說明xk+1的前s個分量仍為零分量,即xk的前s個零分量在后續(xù)迭代中保持不變。
接著,我們證明ast的線性收斂性。當m<n-s時,實對稱矩陣
其中|αi|≤1(i=1,…,n-s)。如果將式(40)帶入式(39)可得:
于是:
當|αi|<1時有
其中c=max{|α1|,…,|αn-s|},0<c≤1。定義橢圓范數(shù)||x||o=(xtotox)1/2,式(43)可變換為:
不等式(44)說明
當m≥n-s時,矩陣
由上述討論,我們發(fā)現(xiàn):不等式(43)說明
定理1說明ast受限于初始點的位置,不易收斂到全局最優(yōu)解。我們用定理2來陳述這個結(jié)論。
定理2假設(shè)
證明如果x0和
定理2充分闡述了ast不易收斂到全局最優(yōu)稀疏解的原因。ast產(chǎn)生的解序列易于收斂到初始點附近的次優(yōu)稀疏解,是求解局部最優(yōu)解的可行方法。根據(jù)以上討論,assd的全局收斂總結(jié)如下。
定理3assd經(jīng)過有限步迭代可收斂到一個稀疏解,且迭代步數(shù)不多于n-k。
證明聯(lián)合式(15)和式(38),assd的迭代公式為
根據(jù)μk,min的計算方式,式(45)表明assd的每一步迭代至少產(chǎn)生一個零分量,因此總迭代步數(shù)不多于n-k。
比較定理1和定理3可知:在理論上,ast需要無限步才能收斂到稀疏解,而assd只需要有限步,這大大加快了收斂速度,如圖4-7顯示assd的迭代步數(shù)遠小于ast。因此,assd不僅可以搜索到更優(yōu)的稀疏解,而且收斂速度遠遠快于ast。
具體數(shù)據(jù)實例:
基于全局收斂性,本實施例用兩個數(shù)值算例來比較ast和assd的求解性能。
算例1
問題(46)存在兩個稀疏解
表1ast的部分迭代點
表2assd的部分迭代點
表1和表2分別給出ast和assd的部分迭代點,易見:ast的迭代點均聚集在x0附近,無法跳出
算例2
其中隨機矩陣a∈r70×100。問題(47)的兩個稀疏解分別顯示在圖8和圖11,其中
算例1和算例2均說明assd比ast具有更優(yōu)的全局收斂性,可以搜索到更優(yōu)的稀疏解,并且以高概率收斂到全局最優(yōu)稀疏解。
因此,本發(fā)明的提出的仿射尺度最速下降(assd)算法來搜索更優(yōu)的稀疏解,通過分析ast的計算流程,尋找算法不易收斂到全局最優(yōu)稀疏解的原因,針對ast中固定步長使得迭代點聚集在次優(yōu)稀疏解的吸引盆,不易跳出而無法搜索到更優(yōu)稀疏解的問題,assd設(shè)計了在最速下降方向上選擇最優(yōu)步長的方法,該方法不僅可以讓迭代點進入更優(yōu)稀疏解的吸引盆,而且能在每步迭代的搜索方向上達到目標函數(shù)最小,以大大加速收斂。理論證明和數(shù)值算例都說明assd是一個求解lp最優(yōu)化問題的更有效算法,它比ast具有更好的求解性能。