李 靜,富中華
(山西大同大學(xué)物理與電子科學(xué)學(xué)院,山西大同 037009;2.山西大同大學(xué)綜合分析與測試中心,山西大同037009)
SOFM網(wǎng)絡(luò)在矢量量化的應(yīng)用
李 靜1,富中華2
(山西大同大學(xué)物理與電子科學(xué)學(xué)院,山西大同 037009;2.山西大同大學(xué)綜合分析與測試中心,山西大同037009)
矢量量化作為一種高效的數(shù)據(jù)壓縮技術(shù),在語音和圖像的編碼、傳輸中都有廣泛的應(yīng)用,其關(guān)鍵在于碼書設(shè)計(jì)。碼書的好壞直接影響語音、圖像的編碼質(zhì)量。本文針對經(jīng)典LBG算法對初始碼書敏感及整體訓(xùn)練時間較長這兩個缺陷,著重研究SOFM算法在這兩方面的性質(zhì)和特點(diǎn),結(jié)果證實(shí)SOFM算法相對于LBG算法訓(xùn)練時間較短,且利用SOFM網(wǎng)絡(luò)設(shè)計(jì)的碼書受初始碼書的影響小,具有很強(qiáng)的自適應(yīng)性,很好的改善了LBG算法在這兩方面的缺陷。
矢量量化;SOFM神經(jīng)網(wǎng)絡(luò);初始碼書;訓(xùn)練時間
矢量量化[1]作為一種高效的數(shù)據(jù)壓縮技術(shù),它能更好地去除信號的相關(guān)性,取得更好的壓縮效果,因此在語音和圖像的編碼、傳輸中都有廣泛的使用。矢量量化中的一個關(guān)鍵問題,就是碼書的設(shè)計(jì),一個好的碼書能直接提升語音和圖像的編碼質(zhì)量。矢量量化中經(jīng)典的是LBG算法,該算法以其充分的理論依據(jù),嚴(yán)謹(jǐn)?shù)耐茖?dǎo)過程,清晰的物理概念,較強(qiáng)的通用性和可實(shí)現(xiàn)性,在矢量量化初期得到了廣泛的認(rèn)可。但在應(yīng)用中也逐漸發(fā)現(xiàn)了一些缺陷[1],比如:若要從碼書中搜索最近碼字,則需要預(yù)留大量的存儲空間,搜索過程中所涉及的計(jì)算也相對比較繁瑣。其次,碼書的訓(xùn)練依賴于初始碼書的選擇,選擇的好壞直接影響碼書的收斂速度。另外,該碼書不能自適應(yīng)跟蹤信源統(tǒng)計(jì)特性,且訓(xùn)練時間比較長。為了克服這些缺陷,人們不斷研究和改進(jìn),之后開始廣泛使用神經(jīng)網(wǎng)絡(luò)的方法。
在神經(jīng)網(wǎng)絡(luò)模型中,有一種競爭學(xué)習(xí)分類網(wǎng)絡(luò),簡稱SOFM神經(jīng)網(wǎng)絡(luò),也稱Kohonen網(wǎng)絡(luò),在這個網(wǎng)絡(luò)中任意時刻只有一個神經(jīng)元處于激活狀態(tài),它是一個模仿了發(fā)生在大腦中映射的人工系統(tǒng)。SOFM神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)簡單、自組織學(xué)習(xí)能力強(qiáng)、學(xué)習(xí)速度快、受初始碼書影響小、抗信道誤碼能力強(qiáng)、生成的碼書適應(yīng)性強(qiáng),因此被廣泛應(yīng)用于碼書設(shè)計(jì)。本文通過實(shí)驗(yàn)研究SOFM算法,實(shí)驗(yàn)表明SOFM算法應(yīng)用于碼書設(shè)計(jì)中訓(xùn)練時間較短,生成的碼書受初始碼書影響小,且可以自組織地進(jìn)行學(xué)習(xí)訓(xùn)練,具有很強(qiáng)的自適應(yīng)性。
SOFM神經(jīng)網(wǎng)絡(luò)[2,4]運(yùn)行時要經(jīng)歷訓(xùn)練、工作兩個階段,整個過程是自發(fā)地一種競爭,無需外界的監(jiān)督。在訓(xùn)練階段,當(dāng)隨機(jī)輸入的訓(xùn)練集樣本確定時,在輸出層中總有一個獲勝節(jié)點(diǎn)會對某個特定模式產(chǎn)生最大響應(yīng),而在訓(xùn)練開始前,我們對該獲勝節(jié)點(diǎn)的位置并不確定,對于不同的輸入模式,獲勝節(jié)點(diǎn)所處的位置也不同。確定了獲勝節(jié)點(diǎn)之后,由于側(cè)向相互興奮的影響,導(dǎo)致其周圍的節(jié)點(diǎn)響應(yīng)也較為強(qiáng)烈,于是獲勝節(jié)點(diǎn)及其鄰域內(nèi)的所有節(jié)點(diǎn)所連接的權(quán)值向量均向輸入矢量的方向調(diào)整,調(diào)整的力度決定于鄰域內(nèi)各節(jié)點(diǎn)與獲勝節(jié)點(diǎn)之間的距離,一般情況下,距離越近,調(diào)整力度越大,反之,調(diào)整力度減弱。以上是對訓(xùn)練集中一個樣本學(xué)習(xí)的過程。在實(shí)際應(yīng)用過程中,要調(diào)整SOFM網(wǎng)絡(luò)的權(quán)值需要使用大量訓(xùn)練樣本,最后使輸出層節(jié)點(diǎn)對特定模式類敏感,相應(yīng)的權(quán)值向量也就成為該模式類的中心向量,在輸出層形成一個有序特征圖,來反映樣本的分布情況,形成一個模式分類器供工作階段使用。訓(xùn)練結(jié)束后,即可進(jìn)入工作階段,在工作階段,就是用已經(jīng)訓(xùn)練好的連接關(guān)系來做模式分類。若輸入的模式在訓(xùn)練階段未出現(xiàn)過,SOFM網(wǎng)絡(luò)會將它歸入最接近模式類。
假設(shè)輸出層采用二維平面陣的形式,網(wǎng)絡(luò)的幾個基本參數(shù)為:輸入訓(xùn)練矢量集為{X1,X2,…,Xn},矢量維數(shù)k,連接權(quán)矢量為W={W1,W2,…Wm},網(wǎng)絡(luò)有k個輸入節(jié)點(diǎn),m個輸出節(jié)點(diǎn),輸入節(jié)點(diǎn)到輸出節(jié)點(diǎn)的權(quán)值為wjl,l∈[1,k],j∈[1,m],即權(quán)矢量Wj的第l個分量。則輸入矢量Xi與權(quán)矢量Wj之間的失真測度d(Xi,Wj)常采用歐式距離的平方來表示,其表達(dá)式如下:
在如上假設(shè)基礎(chǔ)上,畫出SOFM網(wǎng)絡(luò)學(xué)習(xí)流程,如圖1所示。
圖1 SOFM算法流程圖
據(jù)此流程圖,可以將SOFM算法步驟描述如下:
第一步:權(quán)值初始化。
一般將權(quán)值向量設(shè)置為一些較小的非零隨機(jī)數(shù),通常取[0,1]區(qū)間內(nèi)的隨機(jī)值,并將其記作wjl(0),對于不同的神經(jīng)元j(j=1,2,...m),權(quán)值向量的值wjl(0)是不相等的。另外,定義學(xué)習(xí)速率初始值為η(0),鄰域初始值為Nc(0),總迭代次數(shù)為T。
第二步:輸入訓(xùn)練矢量。
將訓(xùn)練集中的矢量Xi={Xi1,Xi2,…,Xik}并行輸入到神經(jīng)元中,其中i∈[1,n]。注意每次只訓(xùn)練矢量集中的一個矢量,待第四步結(jié)束后再訓(xùn)練下一個矢量。
第三步:計(jì)算失真測度,找出獲勝神經(jīng)元。
按照式(1)計(jì)算輸入矢量與輸出節(jié)點(diǎn)矢量之間失真測度dj,選擇使dj最小的節(jié)點(diǎn)(神經(jīng)元)j*作為獲勝節(jié)點(diǎn)(神經(jīng)元)。
第四步:調(diào)整權(quán)值向量。
對節(jié)點(diǎn)j*及其鄰域內(nèi)的節(jié)點(diǎn)的連接權(quán)值按下式進(jìn)行更新:
其中,η(t)(0≤η(t)≤1)為第t次迭代的學(xué)習(xí)速率,Nc(t)為j*的一個歐式鄰域,它們均按時間單調(diào)遞減。
第五步:重復(fù)進(jìn)行第二步到第四步,依次將剩余的訓(xùn)練矢量提供給網(wǎng)絡(luò)輸入層,直至訓(xùn)練矢量集中的n個矢量全部輸入并訓(xùn)練一次之后,進(jìn)行第六步。
第六步:更新學(xué)習(xí)速率η(t)及鄰域Nc(t)。學(xué)習(xí)速率和鄰域的選擇及更新無固定的理論公式,只要兩者的形式保持一致即可。
第七步:令t=t+1,返回第二步進(jìn)行再次訓(xùn)練,直至t=T為止。
至此,自組織學(xué)習(xí)結(jié)束。
整個過程就是要尋找與輸入訓(xùn)練矢量Xi最接近的連接權(quán)矢量Wc,鄰域Nc(t)不斷減小,Wc一步步向輸入矢量Xi接近的方向調(diào)整,最終找到最合適的碼書。
本實(shí)驗(yàn)在訓(xùn)練矢量集和初始碼書不作改變的前提下選取不同步長進(jìn)行觀察實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖2~圖10所示。
圖2 輸入訓(xùn)練矢量集合
圖3 初始隨機(jī)碼書
圖4 訓(xùn)練步長20時的訓(xùn)練結(jié)果
圖5 訓(xùn)練步長180時的訓(xùn)練結(jié)果
圖6 訓(xùn)練步長340時的訓(xùn)練結(jié)果
圖8 訓(xùn)練步長1000時的訓(xùn)練結(jié)果
圖9 訓(xùn)練步長1500時的訓(xùn)練結(jié)果
圖10 訓(xùn)練步長2000時訓(xùn)練結(jié)果
這里選擇的初始碼書為一組分布在[0,0.1]之間的隨機(jī)值,與輸入訓(xùn)練樣本無關(guān)。由圖4~圖11可以看出,在訓(xùn)練20步、180步時,根本無法反映輸入模式的分布信息,甚至25個碼字都不能完全直觀地顯示在圖中;隨著訓(xùn)練步長的增大,能夠清晰顯示在圖中的碼字?jǐn)?shù)目增多,但是仍未能有效地反映輸入模式信息;到340步、500步時,碼字分布變得清楚明了,對比訓(xùn)練矢量集圖形,可以看出輸出碼書的分布與輸入矢量集的分布越來越接近;繼續(xù)增加步長數(shù)進(jìn)行訓(xùn)練,到1000步、1500步時輸出碼書分布基本能完全反映輸入模式的聚類信息了,并且不再變化。
可見,SOFM神經(jīng)網(wǎng)絡(luò)能夠通過自組織學(xué)習(xí)方式,用各神經(jīng)元之間的連接權(quán)向量分布來反映輸入矢量集的空間概率分布。通過步長的改變所體現(xiàn)的結(jié)果還可以說明,對于復(fù)雜的網(wǎng)絡(luò)及樣本,若給定較小的迭代次數(shù),則迭代往往還沒有收斂,學(xué)習(xí)就結(jié)束了,無法反映聚類信息;若給定太大的迭代次數(shù),又會造成過擬合,這樣在樣本數(shù)目龐大時,是極大的浪費(fèi),如本實(shí)驗(yàn)中的1500步、2000步等大步長訓(xùn)練結(jié)果,反映信息與1000步完全相同,卻延遲了網(wǎng)絡(luò)收斂時間;所以,應(yīng)用過程中,應(yīng)結(jié)合輸入模式樣本數(shù)目選擇合適的迭代次數(shù),在不造成浪費(fèi)的情況下,迭代次數(shù)越大,網(wǎng)絡(luò)收斂效果越好,越能體現(xiàn)輸入模式的信息。
本實(shí)驗(yàn)在輸入訓(xùn)練矢量集不變,迭代次數(shù)一定的情況下,共選取10組不同的初始碼書進(jìn)行訓(xùn)練,并記錄輸出結(jié)果,意在考察輸出碼書的性能是否受到初始碼書選取的影響,隨機(jī)抽取4組實(shí)驗(yàn)結(jié)果如圖11所示。
圖11左側(cè)是4個不同的初始碼書分布圖,右側(cè)是與它們逐一對應(yīng)的訓(xùn)練后輸出碼書分布圖。觀察發(fā)現(xiàn),左側(cè)初始碼書具有不同的數(shù)據(jù),不同的分布,而它們訓(xùn)練后得到的輸出權(quán)值矢量分布幾乎完全相同。
可見,SOFM網(wǎng)絡(luò)對初始碼書的選擇不太敏感,對同一個輸入模式,選擇確定的SOFM網(wǎng)絡(luò),無論初始碼書如何,得到的SOFM收斂性能都是相近的。所以,初始碼書的選擇對SOFM算法的收斂效果影響不大。
圖11 不同初始碼書對應(yīng)的輸出碼書分布
通過實(shí)驗(yàn)分析可以看出,SOFM算法對于不同的初始碼書能夠產(chǎn)生相同或相似的權(quán)值矢量,所以初始碼書的選取不影響SOFM網(wǎng)絡(luò)的收斂效果。另外,由于在SOFM算法中神經(jīng)元的權(quán)值是實(shí)時更新的,因而當(dāng)樣本集的尺寸和碼書的尺寸都很大時,采用SOFM算法可以加快更新的速度。所以,只要選擇適當(dāng)?shù)膶W(xué)習(xí)速率η(t)和鄰域函數(shù)Nc(t),SOFM算法生成碼書的性能優(yōu)于LBG算法,可以在語音、圖像編碼中進(jìn)行廣泛的使用。
[1]譚建豪,章兢.基于SOFM神經(jīng)網(wǎng)絡(luò)的IP電話語音壓縮編碼設(shè)計(jì)[J].計(jì)算機(jī)與現(xiàn)代化,2006(1):1-4.
[2]趙群群.基于SOFM的直接矢量量化方法在LD-CELP語音編碼算法中的應(yīng)用[D].太原理工大學(xué),2008:6.
[3]諶德榮,陶鵬,宮久路,等.一種基于SOFM神經(jīng)網(wǎng)絡(luò)的高光譜圖像快速分類方法[J].兵工學(xué)報(bào),2009(2):165-169.
[4]樊勁輝,陸薇,李爭.一種改進(jìn)的SOFM聚類算法研究[J].河北科技大學(xué)學(xué)報(bào),2012(6):514-518.
Application of the SOFM Neural Network in Vector Quantization
LI Jing1,FU Zhong-hua2
(1.School of Physics and Electronic Science,Shanxi Datong University,Datong Shanxi,037009;2.Comprehensive Analysis and Test Center,Shanxi Datong University,Datong Shanxi,037009)
Vector quantization as a highly efficient data compression technology has been widely used in voice and image compression coding and transmission.The key problem of VQ is codebook design,because codebook has direct impacts on voice and video encoding quality.There are two serious shortcomings about the classic method LBG algorithm.It is sensitive to the initial codebook and training time is long.To solve these two problems,the text mainly research SOFM algorithm property and point of these two aspects,the result confirms that the codebook designed by SOFM network suffers small impact from the initial code book,and it can self-organized proceed study discipline,and have very strong adaptability.So we can see it well improved LBG algorithm's shortcomings in these two aspects.
vector quantization;self-organizing feature maps;initial codebook;training time
TN912.3
A
1674-0874(2015)04-0029-04
2014-12-16
李靜(1986-),女,山西大同人,碩士,助教,研究方向:語音編碼。
〔責(zé)任編輯 高彩云〕