国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于自適應深度置信網絡的圖像分類方法

2015-12-23 01:09:30楊春德
計算機工程與設計 2015年10期
關鍵詞:步長分類圖像

楊春德,張 磊

(1.重慶郵電大學 計算機科學與技術學院,重慶400065;2.重慶郵電大學 系統(tǒng)理論與應用研究中心,重慶400065)

0 引 言

現有的圖像分類方法主要采用兩種方式,即基于生成模型的圖像分類方法和基于判別模型的圖像分類方法。前者建立在圖像特征與圖像類別的聯合概率的分布基礎上,如貝葉斯分類模型、高斯混合模型 (Gaussian mixture model,GMM)和詞袋模型 (bag of words,BoW)[1]等;后者則建立在圖像特征與圖像類別的條件概率分布基礎上,如K 近鄰方法(K-nearest neighbor,KNN)、支持向量機(support vector machine,SVM)[2]、決策樹和人工神經網絡 (artificial neural networks,ANN)[3]等。這些淺層結構學習模型的局限性在于有限樣本和計算單元情況下對復雜函數的表達能力有限,針對復雜分類問題其泛化能力受到一定制約[4]。深度學習模型則模擬人類的視覺系統(tǒng)和人腦的認知過程,借助于神經網絡的多層抽象機制來實現對數據 (圖像、語音及文本等)的抽象表達,通過多層次的學習得到對于原始數據的不同抽象程度的表示,進而提高分類和預測等任務的準確性[5]。

自從Hinton等提出快速貪心逐層無監(jiān)督訓練算法在多層神經網絡中具有降維作用[6,7],以及Bengio等將該算法深入剖析泛化[8]之后,由多層約束玻爾茲曼機 (restricted Boltzmann machine,RBM)堆疊組成的深度置信網絡(deep belief network,DBN)得到了廣泛的關注并被應用于不同的研究領域諸如圖像檢索[9]、音頻分類[10]以及自然語言處理[11]等。本文基于經典的深度學習方法DBN,提出一種非監(jiān)督學習算法,稱為自適應深度置信網絡 (adaptive deep belief network,ADBN)。其基本思想就是通過一個自適應的步長大小來取代原DBN 網絡中采用的全局學習率,根據樣本的權重更新方向選擇不同的學習率,就可以有效提高網絡的收斂速度、泛化能力及穩(wěn)定性。在MNIST 手寫數據集上的實驗結果表明,ADBN 算法能夠更好地挖掘出圖像特征之間的深層相關性,較傳統(tǒng)的圖像分類算法擁有更高的精確度。

1 深度置信網絡模型

DBN 是結合了無監(jiān)督學習和有監(jiān)督學習的機器學習模型,它是由若干層RBM 和一層反向傳遞網絡 (back-propagation,BP)組成的深層神經網絡,能夠通過多層次借助組合低層特征形成更抽象的高層特征,用來提取訓練數據中深層結構的特征信息。

1.1 約束玻爾茲曼機

波爾茲曼機 (Boltzmann machine,BM)是由Hinton和Sejnowski提出的一種生成式隨機神經網絡,它具有強大的無監(jiān)督學習能力,能夠學習數據中復雜的規(guī)則,但是其訓練時間過長,概率分布也很難獲得。為了克服這一問題,Smolensky引入了RBM,該網絡由一些可見單元 (對應可見變量,visible unit)和一些隱藏單元 (對應隱藏變量,hidden unit)構成,可見單元v 和隱藏單元h 都是二元變量,亦即其狀態(tài)取0或1。整個網絡是一個二分圖,只有可見單元和隱藏單元之間才會存在邊,而可見單元之間和隱藏單元之間都不會有邊相連接,如圖1所示。

圖1 RBM 結構模型

RBM 是一種基于能量的模型,對于一組給定的狀態(tài)(v,h),其可見單元v和隱藏單元h 的聯合配置能量函數為

式中:θ={Wij,ai,bj}為RBM 的參數,Wij——可見單元v和隱藏單元h 之間的邊的權重,ai——可見單元v 的偏置(bias),bj——隱藏單元h 的偏置?;谠撃芰颗渲煤瘮?,就可以得到(v,h)的聯合概率

基于RBM 模型的對稱結構,以及其中節(jié)點的條件獨立性,當給定可見單元v 的狀態(tài)時,各隱藏單元的激活狀態(tài)hj之間是相互獨立的,則第j個隱藏單元的激活概率為

同理,當給定隱藏單元h 的狀態(tài)時,各可見單元的激活狀態(tài)vi之間也是相互獨立的,則第i個可見單元的激活概率為

由可見單元v的對數似然概率對空間權重參數Wij求偏導,可推導出RBM 的權重更新準則為

式中:ε——權重學習速率,〈vihj〉data——數據分布的期望,〈vihj〉model——RBM 模型定義的期望。但由于模型期望未知,難以直接估算其分布〈vihj〉model。對此,Hinton提出了對比散度算法 (contrastive divergence,CD)[12],利用Gibbs采樣將權值更新公式簡化為

式中:〈vihj〉recon——一步重構后模型定義的分布。同樣,RBM 的其它兩個空間參數ai和bj也可以通過類似的方式進行更新調整。

1.2 深度置信網絡結構和學習過程

DBN 是一個包含多隱層的深層神經網絡模型,由若干層RBM 和一層BP 神經網絡堆疊構成,一個典型的DBN結構如圖2所示。

圖2 DBN 結構模型

DBN 在訓練模型的學習過程中具體可分為預訓練和微調兩個階段,預訓練階段把網絡中任意相鄰兩層當作一個RBM,并以下層RBM 模型的輸出作為上層RBM 模型的輸入,最終實現逐層訓練,用來初始化網絡參數。用貪心無監(jiān)督學習方法逐層訓練后,深層架構底層的原始特征被組合成更加緊湊的高層次特征。由于每層RBM 訓練只能使該層網絡參數達到最優(yōu),而不能使整個網絡達到最優(yōu),故微調階段使用傳統(tǒng)的全局學習算法 (BP 或Wake-Sleep 算法[13])有監(jiān)督的對網絡空間的相關參數進一步優(yōu)化和調整,自頂向下微調整個模型。

2 基于自適應深度置信網絡的圖像分類方法

2.1 自適應深度置信網絡算法

DBN 網絡是在RBM 模塊上逐層訓練得到相應的空間參數并構建整個網絡層次架構,而RBM 基于CD 的快速學習算法中通常采用一個全局的學習率來對網絡進行訓練。然而,學習率若過大,將導致重構誤差急劇增加,權重也會變得異常大;學習率過小可避免上述情況出現,但收斂速度較慢,訓練時間過長。為克服這一矛盾,在傳統(tǒng)的DBN 算法基礎上,我們將自適應步長大小這一概念引入,提出了ADBN 算法,即在CD 快速算法的迭代過程中,對于每一個連接權重Wij,使用一個獨立的步長大小 (學習率)參數γij來替代原DBN 網絡中的全局學習率,而步長的具體大小則根據因子的改變做出相應的調整

當增量因子u>1時代表步長的增加,減量因子d<1時代表步長的減小。在學習過程中為了避免由于過大的步長而產生沖突,如果某一權重更新方向連續(xù)兩次相同,則步長增大,反之則步長減小。由ADBN 算法學習訓練構成的網絡架構則稱為ADBN 網絡。

基于ADBN 的圖像分類方法主要分為兩個階段:使用已知類別的圖像特征信息對整個ADBN 網絡進行學習訓練用來獲取圖像的深層次特征;利用訓練階段獲得的網絡權值參數將未知類別的圖像進行分類。

2.2 自適應深度置信網絡的圖像訓練過程

ADBN 網絡訓練的過程就是對圖像特征自適應、自學習的過程,在學習訓練的過程中,具有深層結構的ADBN網絡通過自底向上的方式逐層抽取出輸入圖像信息的深層特征,并將底層的特征信息逐步融合到更加緊湊的高層特征表達中,得到魯棒性更強的特征。ADBN 網絡使用快速貪心的無監(jiān)督學習算法對整個網絡進行逐層的構建,并進行相應的訓練,然后再利用梯度下降的優(yōu)化策略對網絡空間的權值參數進一步微調。

在多層的ADBN 網絡結構中,所有相鄰的兩層結構都可以看作是一個RBM,較低一級的隱藏層將作為與其相鄰的高一級隱藏層的輸入層,貪心逐層訓練算法則以圖像的特征向量作為輸入自底向上每次訓練一個RBM,如在訓練完有l(wèi)層的ADBN 的頂層RBM 之后,利用式 (5)~式(7)獲得更新后的第(l+1)層的權值參數,然后以此訓練并構建第(l+1)層網絡。整個過程中ADBN 均采用無監(jiān)督的方式逐層的訓練并構建整個網絡,經過多次反復訓練對層與層之間的空間參數不斷進行調整,使得網絡達到一個平衡狀態(tài)。

經過上述訓練之后可以初步確定ADBN 的空間參數{Wij,ai,bj},但還需要對ADBN 所有層之間的參數進行整體微調和優(yōu)化。然而對于不同的應用,空間參數優(yōu)化的目標也是不一樣的。一種是采用自頂向下的方式使得從輸出層反向構建輸入信息的概率達到最大化;另一種是減小隱藏層到輸出層之間的損失,使ADBN 網絡具有更好的分類性能。本文使用ADBN 網絡作為圖像分類器,因此空間參數優(yōu)化的目標是讓ADBN 網絡具有更好的區(qū)別能力,從而提高分類的準確度。而這個任務可以轉換為一個優(yōu)化問題,即尋找一組空間參數值{W′ij,a′i,b′j},使得最高隱藏層與輸出層之間的映射函數具有最小的損失值。由于指數損失函數已經被應用于boosting算法[14]中,并在實際應用數據集中表現良好,故在ADBN 中使用指數損失函數作為最高隱藏層和輸出層之間的映射函數來進行圖像的分類。在確定損失函數后,利用梯度下降方法來優(yōu)化整個深層架構的空間參數,使網絡達到一個最優(yōu)的狀態(tài)。ADBN 的具體訓練算法如下:

算法1: ADBN 的學習訓練算法輸入:用于訓練的特征向量xi,…xM ;網絡的層數N;初始化參數{Wij,ai,bj};初始學習率ε;訓練過程中迭代次數R。輸出:經過訓練后處于平衡狀態(tài)的ADBN 網絡及其空間參數{W′ij,a′i,b′j }。訓練過程:步驟1 自適應步長大小的貪心逐層可監(jiān)督訓練for n=1to N-1 do for r=1to Rdo for m =1to Mdo 計算每個RBM 的可見層和隱藏層的隨機單元狀態(tài):P(hj =1|v))和P(vi =1|h) 更新調整空間參數:利用式 (5)~式 (7)計算更新后的參數{W′ij,a′i,b′j} end end end步驟2 基于梯度下降的有監(jiān)督學習訓練計算ADBN 的梯度并利用BP算法進行參數的優(yōu)化和調整,使得最高隱藏層到輸出層間的映射損失達到最小。

2.3 自適應深度置信網絡的圖像分類過程

圖像的分類過程相對訓練過程來說要簡單,即利用ADBN 經過優(yōu)化后的權值參數將未標類別的圖像特征信息映射到相應的類別中。歸一化的圖像經過上一階段的學習訓練和優(yōu)化之后,該ADBN 網絡就可以完成圖像的特征提取過程,這時只需在頂層加上一層softmax回歸分類器模型即可完成圖像的分類任務。相對于邏輯回歸 (logistic regression,LR)只能進行線性二分類處理來講,softmax回歸對其進行了擴展并可以完成多個類別劃分,而且分類類別之間是嚴格相互排斥的,softmax回歸層的若干輸出單元則對應了不同圖像所屬的分類類別,實現了圖像的分類任務。

3 實驗結果和分析

為驗證提出方法的有效性,我們在MNIST 手寫數據集上進行了驗證測試,該數據集由手寫的數字圖像組成,它分為了60000個訓練數據和10000 個測試數據。為了便于圖像相關特征的提取,所有的圖像都做了歸一化的處理,每個圖像的大小為28×28,而且圖像的像素以常用的灰度圖 (灰度區(qū)間0~255)形式進行存儲。文中我們采用了十字交叉驗證的方式進行評測,即將數據集隨機分成10份,輪流將其中9份作為訓練數據對ADBN 網絡進行訓練,而將剩下的一份對分類的準確度進行測試。因此,需要在10種訓練數據和測試數據不同組合的基礎上進行10次獨立實驗來計算分類的準確度,而將這10次實驗結果相應準確度的平均值作為最終的分類準確度。測試環(huán)境則部署在普通的PC機上,含i3-4130雙核3.4GHz CPU,8GB DDR3內存及Windows 8.1的軟件操作系統(tǒng)。

3.1 層次結構和迭代次數對分類性能的影響

在基于ADBN 的圖像分類中,ADBN 所包含隱藏層的層數以及每個隱藏層的隨機單元數都是不確定的,一般要根據經驗或多次測試來進行設定,但可見層即輸入層的隨機單元數必須與圖像輸入特征向量的維數相同,即要包含784個隨機單元,輸出層的隨機單元數為10個,對應手寫數字的0~9這10個類別。另外,在訓練過程中迭代次數的不同也會對整個ADBN 網絡的分類性能產生重要的影響。因為迭代次數越多,越能夠使ADBN 處于平衡狀態(tài),其空間參數優(yōu)化的程度越高,從而更能捕捉到圖像特征向量之間的深層相關性,提高ADBN 的分類性能。在實驗中,對于自適應步長方法來說,每一連接權重的初始化學習率均取0.1,增量因子u和減量因子d 分別取1.2和0.8,同時為了減少非相關參數的對訓練結果的影響,每個隱藏層均選取相等的節(jié)點數,如對于含3 個隱藏層的網絡來說,ADBN 的架構為784-1500-1500-1500-10,這也是深度學習方法的經典實驗設置。改變隱藏層的層數以及改變訓練過程的迭代次數,通過它們之間的不同組合,來驗證圖像的分類效果。ADBN 使用不同的隱藏層個數和不同的迭代次數的實驗分類錯誤率如圖3所示。

圖3 不同層次結構和迭代次數的ADBN的分類錯誤率

從圖3可以看出,在有相同的隱藏層數及節(jié)點數的情況下,隨著迭代訓練次數的增加,圖像分類的準確度有所提升;在迭代訓練次數分別相同的情況下,含4個隱藏層的ADBN 得到的圖像分類結果要明顯優(yōu)于含有3個隱藏層的ADBN 分類結果,由于隱藏層層數增加到5層或迭代次數達到500次之后,分類的時間復雜度明顯增加,因此沒有對更多隱藏層或更高迭代次數進行實驗。

3.2 自適應步長大小和不同的固定學習率對分類性能的影響

為了評價自適應步長大小對ADBN 網絡訓練收斂性的影響,我們與傳統(tǒng)的DBN 網絡在取3組不同的固定學習率(ε=0.1,ε=0.4和ε=0.7)情形下對訓練收斂性的影響進行了比較。ADBN 網絡依然采用含3個隱藏層的經典深度學習網絡架構,隱藏層各層節(jié)點數均取1500。自適應步長大小方法中初始值取值與上述設置相一致,由于重構誤差能夠在一定程度上反映RBM 對訓練數據的似然度,在實踐中通常用平均重構率這一指標來評價,也反映了訓練過程中收斂速度的快慢。而傳統(tǒng)的DBN 中學習率ε的選擇至關重要,ε大收斂速度快,但過大可能引起算法不穩(wěn)定;ε小可避免不穩(wěn)定情況的出現,但收斂速度較慢。使用兩種不同的算法對訓練過程中圖像的平均重構率影響如圖4所示。

圖4 不同的學習率對平均重構率的影響

從圖4可以看出,ADBN 網絡的自適應步長大小方法明顯優(yōu)于DBN 網絡所采用的固定學習率的方法,尤其是當迭代次數增加時,網絡的收斂速度顯著加快,直至趨于穩(wěn)定,也有效的提高了ADBN 算法的穩(wěn)定性。

訓練過程中我們隨機選取了7 張圖像進行采樣實驗,使用自適應步長大小的方法和固定學習率的方法 (ε =0.1)得到的采樣圖像分別如圖5、圖6所示。

圖5 自適應步長大小下的圖像重構

圖6 固定學習率下的圖像重構

由圖5、圖6相比較可以看出,在隱藏層節(jié)點數相同的情況下,利用3層ADBN 網絡得到的圖像重構效果要優(yōu)于3層DBN 網絡得到的重構效果,得到的手寫體圖像結構信息和輪廓信息更加清晰細致,一定程度上也反映了采用自適應步長大小的方法可以獲得更好的圖像深層次的結構特征,取得較優(yōu)的圖像分類結果。

3.3 與其它分類器之間的分類準確度比較

此外,為了進一步驗證分類方法的有效性,我們將基于ADBN 的圖像分類方法與其它4種廣泛使用的分類方法即KNN、ANN、SVM 和DBN 在相同的數據集上進行了性能的比較,如圖7 所示。其中,ADBN 的層次結構包含3個隱藏層,節(jié)點數與上述相一致,迭代訓練次數設置為400次,ANN 只包含有一個隱藏層,隱含單元數同樣設置為1500,SVM 采用高斯核的方式,KNN 方法中K 取值為10,DBN 與ADBN 設置則完全保持一致。將這4種分類方法同樣采用交叉驗證的方式對分類準確度進行評測,實驗結果表明,在相同的條件下,ADBN 的分類效果要明顯優(yōu)于其它4種圖像分類方法。

圖7 使用不同分類方法的分類錯誤率比較

4 結束語

本文將自適應步長大小這一概念引入到RBM 學習訓練的CD 算法中,提出一種ADBN 算法,將該深層網絡結構學習模型應用于圖像分類任務中,給出了ADBN 的具體算法實現和圖像分類框架,在MNIST 手寫數據集上的實驗結果表明了該算法的有效性。所提算法收斂速度明顯加快,極大地減小了訓練過程的重構錯誤率,大大縮短了訓練所需的時間,在圖像的自動分類方面也取得了很好的分類效果。在今后的工作中繼續(xù)側重于將該算法應用在其它的分類領域,進一步增強其泛化能力。

[1]Gao H,Dou L,Chen W,et al.Image classification with Bagof-Words model based on improved SIFT algorithm [C]//9th Asian Control Conference,2013:1-6.

[2]Jain S.A machine learning approach:SVM for image classification in CBIR [J].International Journal of Application or Innovation in Engineering and Management,2013,2 (4):446-452.

[3]Xiong Z,Chen K,Gu C,et al.An algorithm of image classification based on BP neural network [C]//IEEE International Conference on Computer Science and Automation Engineering,2012:523-526.

[4]Bengio Y.Learning deep architectures for AI [J].Foundations and trends in Machine Learning,2009,2 (1):1-127.

[5]Bengio Y,Delalleau O.On the expressive power of deep architectures [G].LNCS 6925:Algorithmic Learning Theory,2011:18-36.

[6]Bengio Y.Deep learning of representations for unsupervised and transfer learning [C]//International Conference on Machine Learning,2012.

[7]Lee Honglak,Grosse Roger,Ranganath Rajesh,et al.Convolu-tional deep belief networks for scalable unsupervised learning of hierarchical representations[C]//Proceedings of the 26th Annual International Conference on Machine Learning.ACM,2009.

[8]Schmidhuber J.Deep learning in neural networks:An overview [J].Neural Networks,2014,10 (1):1404-1092.

[9]Hrster E,Lienhart R.Deep networks for image retrieval on large-scale databases [C]//Proceedings of the 16th International Conference on Multimedia,2008.

[10]Hamel P,Eck D.Learning features from music audio with deep belief networks[C]//Utrecht,The Netherlands,2010.

[11]Liu T.A novel text classification approach based on deep be-lief network [G].LNCS 6443:Neural Information Processing.Theory and Algorithms,2010:314-321.

[12]Hinton G.A practical guide to training restricted Boltzmann machines[J].Momentum,2010,9 (1):926-947.

[13]Charbonnier S,Zoubek L,Lesecq S,et al.Self-evaluated automatic classifier as a decision-support tool for sleep/wake staging [J].Computers in Biology and Medicine,2011,41(6):380-389.

[14]Saon G,Soltau H.Boosting systems for large vocabulary continuous speech recognition [J].Speech Communication,2012,54 (2):212-218.

猜你喜歡
步長分類圖像
改進的LapSRN遙感圖像超分辨重建
基于Armijo搜索步長的BFGS與DFP擬牛頓法的比較研究
分類算一算
有趣的圖像詩
分類討論求坐標
數據分析中的分類討論
教你一招:數的分類
基于逐維改進的自適應步長布谷鳥搜索算法
一種新型光伏系統(tǒng)MPPT變步長滯環(huán)比較P&O法
電測與儀表(2014年2期)2014-04-04 09:04:00
遙感圖像幾何糾正中GCP選取
太康县| 博白县| 曲麻莱县| 二连浩特市| 剑河县| 揭西县| 讷河市| 城口县| 阿荣旗| 石渠县| 宁德市| 温泉县| 锦州市| 常德市| 正宁县| 蓬莱市| 文昌市| 荔浦县| 镇巴县| 兴义市| 庄浪县| 涿鹿县| 隆尧县| 库伦旗| 开远市| 镇远县| 宣城市| 新竹市| 湖南省| 沧州市| 梓潼县| 德化县| 锦屏县| 土默特右旗| 玛沁县| 西充县| 沽源县| 四平市| 栾川县| 黎平县| 民勤县|