《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業(yè)界動態(tài) > 基于SVM和sigmoid函數(shù)的字符識別自適應學習算法

基于SVM和sigmoid函數(shù)的字符識別自適應學習算法

2008-06-04
作者:朱 莉1,孫廣玲2

  摘 要: 在SVM算法和sigmoid函數(shù)的基礎上,提出了一種字符識別自適應學習算法,該算法通過自適應修正sigmoid函數(shù)的參數(shù),使sigmoid函數(shù)能夠較好地擬合自適應數(shù)據(jù)輸出距離的類別后驗概率分布,從而提高對自適應數(shù)據(jù)的識別率。
  關鍵詞: SVM sigmoid函數(shù)? 自適應學習? 梯度下降法


  手寫字符的一個突出特點就是模式具有較大的變化性,表現(xiàn)為模式空間的類內(nèi)分布過于分散,類間交疊嚴重,這使得識別模型無法“恰當”地擬合每類模式的數(shù)據(jù)分布或類別之間的判別面。在識別模型過程中,通過自適應學習就能較好地擬合特定書寫者筆跡特征向量的空間分布,從而有利于識別率的提高。當然,自適應學習的結(jié)果只是提高了對特定書寫者的識別率,但通過為不同人的筆跡特征向量提供不同的識別模型,就能夠從總體上提高系統(tǒng)的識別率。
  任何一種自適應學習算法都基于一定的識別方法。從目前已有的文獻來看,大致有以下幾種自適應學習所依據(jù)的識別方法:HMMs(Hidden Markov Models),ANNs(Artificial Neural Networks),PDNNs(Probabilistic Decision-based Neural Networks),子空間法(Local Subspace)以及模板匹配法(Template Matching)等。這些識別方法可以分為分布擬合法(HMMs,PDNNs,LS,TM)和判別決策法(ANN);前者僅學習每一類的正例,而不學習反例,而后者是同時學習正例和反例。顯然,在模型的一致性上,判別決策法要好于分布擬合法。
  根據(jù)這種思想,本文提出了一種基于SVM分類算法" title="分類算法">分類算法和sigmoid函數(shù)的自適應學習算法。SVM分類算法是一種判別決策方法,在很多識別問題中都獲得了很好的實驗結(jié)果,SVM分類算法的輸出為距離,參數(shù)化" title="參數(shù)化">參數(shù)化的sigmoid函數(shù)擬合SVM輸出距離的類別后驗概率分布,使SVM的距離輸出變換為概率輸出。本文提出的算法基于這種概率化方法,通過自適應學習,修改sigmoid參數(shù),使sigmoid函數(shù)能夠較好地擬合自適應數(shù)據(jù)輸出距離的類別后驗概率分布。由于輸出距離是基于兩類別的判別面的" title="面的">面的,因此輸出距離的類別后驗概率分布就同時學習了正例和反例。
  本文以手寫數(shù)字為實驗對象,對上文提出的自適應學習算法進行了有效性驗證。

1 SVM算法及sigmoid函數(shù)
1.1 SVM分類學習算法

  給定訓練集合D1,它包含l個訓練數(shù)據(jù)(x1,y1),(x2,y2),……(xl,yl,),xi∈Rn,yi∈{-1,1},SVM分類算法要求解下面的有約束的優(yōu)化問題:

1.2 sigmoid函數(shù)
  本文采用的方法,即利用參數(shù)化的sigmoid函數(shù)擬合SVM分類決策函數(shù)的輸出距離的類別后驗概率分布,使其距離輸出變?yōu)楦怕瘦敵?。參?shù)化的sigmoid函數(shù)為:

  

1.3 求解A,B
  為了避免求出的參數(shù)A,B值的偏移性,應利用不同于訓練集D1的數(shù)據(jù)集D2求解A,B的值。D2={(x1,y1),(x2,y2),……(xm,ym)},xi∈Rn,yi∈{-1,1},。將D2中的所有數(shù)據(jù)代入" title="代入">代入到(6)、(7)式中,求解A,B以求出(7)式的極小值問題。

  

2 基于SVM和sigmoid函數(shù)的自適應學習算法
2.1 多類別分類器" title="分類器">分類器設計方法

  本文依據(jù)所述SVM算法和one-verse-one原則設計多類別的分類器。設類別數(shù)是n,則共有n*(n-1)/2個分類器,每個分類器的參數(shù)依次是權(quán)值Wi,j,bi,j,Ai,j和Bi,j,i,j=1,2,……n,i<j。
2.2 概率輸出下的多類別決策
  概率輸出下的多類別決策規(guī)則是:設有未知類別數(shù)據(jù)x,將其代入(6)式中有:

  

  依據(jù)投票法原則,若p(x)>0.5,第i類得到1票;若p(x)<0.5,第j類得到1票;若p(x)=0.5,不投票。當依次計算完n*(n-1)/2個概率值p之后,得到票數(shù)最多的類別被判別為數(shù)據(jù)x所屬的類別。
2.3 自適應學習算法
  本文的自適應學習算法的核心在于通過自適應數(shù)據(jù)中的誤識樣本,對參數(shù)Ai,j,Bi,j進行自適應修正。

  Aold,Bold是自適應修正前的參數(shù)值,Anew,Bnew是自適應修正后的參數(shù)值。
3 實驗結(jié)果
3.1 預處理及特征提取

  本文以0~9十個數(shù)字作實驗。預處理及特征提取的步驟如下:
  (1)首先將二值圖像作非線性歸一化,歸一化的尺寸為64*64的方陣。
  (2)在非線性歸一化后的圖像上提取輪廓。
  (3)對輪廓圖像提取DEF(Directional Element Feature)特征,特征的維數(shù)是1024。
  (4)對1024維特征作K-L變換,特征維數(shù)壓縮到128維。
3.2 實驗結(jié)果
  本實驗的樣本情況為:自行收集樣本,平均每個數(shù)字145個樣本,其中90個樣本用來學習判別面的參數(shù)W和b,設C=1000,kernel設為線性,采用的軟件是LIBSVM;其余的55個樣本用來學習參數(shù)A,B。在自適應學習和測試階段,共收集了5個人的樣本,每個人平均每個數(shù)字的樣本數(shù)為35個。表1顯示了自適應學習的結(jié)果。


  本實驗只測試了線性核的識別情況。從表中的統(tǒng)計結(jié)果可以看出,概率輸出本身就能夠提高識別率;在采用了本文提出的自適應學習算法之后,識別率得到了進一步的提高,平均達到94.5%,比常規(guī)SVM方法提高了5.1%。同時,學習算法中的步長η對識別率也有一定程度的影響,步長為0.1的識別率要高于步長為0.2的識別率。
  本文基于SVM和sigmoid函數(shù),提出了一種字符識別自適應學習算法。本算法相對于基于HMMs,ANNs,PDNNs,模板匹配,子空間法等識別方法的自適應學習算法,是一種新的自適應學習算法,具有推廣能力好和模型一致性好等特點。今后的研究方向在于設計能夠更好地適應自適應學習數(shù)據(jù)的參數(shù)A、B的自適應學習算法,尋求更合適的擬合距離類別后驗概率分布的函數(shù)及判別函數(shù)本身的參數(shù)W、b的自適應學習算法。
參考文獻
1 Cortes C,Vapnic V.Support vector networks.Machine Learn-ing,1995;(20)273-297

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。