前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇卷積神經(jīng)網(wǎng)絡過程范文,相信會為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
關鍵詞關鍵詞:人臉識別;卷積神經(jīng)網(wǎng)絡;圖像識別;深度學習;模式識別
DOIDOI:10.11907/rjdk.171043
中圖分類號:TP317.4
文獻標識碼:A文章編號文章編號:16727800(2017)005018603
0引言
人臉識別是近年來模式識別、圖像處理、機器視覺、神經(jīng)網(wǎng)絡及認知科學領域的研究熱點[12]。所謂人臉識別,是指給定一個靜態(tài)人臉圖像或動態(tài)視頻,利用存儲有若干已知身份的人臉數(shù)據(jù)庫驗證單個或多個人的身份[1]。作為生物特征識別的一個重要方面,人臉識別有著廣泛的應用場景,如:檔案管理系統(tǒng)、公安系統(tǒng)的犯罪身份識別、銀行和海關的監(jiān)控、安全驗證系統(tǒng)、信用卡驗證等領域。在人臉識別巨大魅力的影響下,國內互聯(lián)網(wǎng)公司也開始了人臉識別應用的探索,如百度推出的人臉考勤系統(tǒng)、阿里支付寶的刷臉登錄等功能都是人臉識別的具體應用。目前,人臉識別的代表性方法主要有以下幾種:Turk和Pentland[3]提出的特征臉(Eigenface)方法;基于線性區(qū)別分析,Belhumeur 等[4]提出了Fisherface方法;基于統(tǒng)計理論,劍橋大學的 Samaria和Fallside[5]提出了隱馬爾科夫模型[5](HMM),Lawrence 等[6]提出的通過多級自組織映射神經(jīng)網(wǎng)絡(SOM)[6]與卷積神經(jīng)網(wǎng)絡相結合進行人臉識別。上述方法雖然獲得了良好的識別正確率,但需要人工參與特征提取,然后將提取的特征送入分類器進行識別,過程較為復雜。
卷積神經(jīng)網(wǎng)絡[79]是近年發(fā)展起來,并引起廣泛重視的一種高效深度學習識別算法,其已成為當前語音分析和圖像處理領域的研究熱點。相比傳統(tǒng)的神經(jīng)網(wǎng)絡而言,卷積神經(jīng)網(wǎng)絡具有權值共享、局部感知的優(yōu)點。局部感知的網(wǎng)絡結構使其更接近于生物神經(jīng)網(wǎng)絡,權值共享大大減少了模型學習參數(shù)的個數(shù),同時降低了神經(jīng)網(wǎng)絡結構的復雜性。在圖像處理領域,卷積神經(jīng)網(wǎng)絡的優(yōu)點體現(xiàn)得更為突出,多維的圖像數(shù)據(jù)可以直接作為網(wǎng)絡的輸入,特征提取和分類均集成在網(wǎng)絡中,避免了傳統(tǒng)識別算法中復雜的特征提取和訓練分類器過程。除此之外,卷積神經(jīng)網(wǎng)絡對圖像中的位移、比例縮放、旋轉、傾斜或其它形式的變形具有很好的魯棒性。為了解決傳統(tǒng)人臉識別算法特征提取和訓練分類器困難的問題,本文借鑒Lenet-5[10]的結構,設計一個適合ORL數(shù)據(jù)集人臉識別任務的卷積神經(jīng)網(wǎng)絡結構。
1卷積神經(jīng)網(wǎng)絡
1.1用于ORL人臉識別的CNN
本文提出的7層卷積神經(jīng)網(wǎng)絡模型由輸入層、2個卷積層、2個降采樣層、一個全連接層和一個Sigmoid輸出層組成。卷積核的大小均為5×5,降采樣層Pooling區(qū)域的大小為2×2,采用Average Pooling(相鄰小區(qū)域之間無重疊),激活函數(shù)均采用Sigmoid函數(shù)。每一個卷積層或降采樣層由多個特征圖組成,每個特征圖有多個神經(jīng)元,上層的輸出作為下一層的輸入。此外,本文實驗學習率的取值為常數(shù)1.5,該卷積神經(jīng)網(wǎng)絡結構如圖1所示。
1.2卷積層
卷積神經(jīng)網(wǎng)絡中的卷積層一般稱C層[11](特征提取層)。卷積層的輸入來源于輸入層或者采樣層。卷積層中的每一個特征圖都對應一個大小相同的卷積核,卷積層的每一個特征圖是不同的卷積核在前一層輸入的特征圖上作卷積,然后將對應元素累加后加一個偏置,最后通過激活函數(shù)得到。假設第l層榫砘層,則該層中第j個特征圖的計算表達式如式(1)。
xlj=f(∑i∈Mjxl-1iklij+blj)(1)
這里的Mj表示選擇的上一層輸出特征圖的集合。
1.3降采樣層
降采樣層是對上一層的特征圖進行下采樣處理,處理方式是在每一個特征圖內部的相鄰小區(qū)域進行聚合統(tǒng)計。常見的下采樣方式有兩種:Average Pooling和Max Pooling。其中,Average Pooling是取小區(qū)域內像素的平均值,而Max Pooling是取小區(qū)域內像素的最大值。降采樣層只是對輸入的特征圖進行降維處理,不改變特征圖的個數(shù)。假設down表示下采樣操作,βlj表示乘性偏置,blj表示加性偏置,則降采樣層中某個特征圖的計算表達式如下:
xlj=f(βljdown(xl-1j)+blj)(2)
1.4輸出層
卷積神經(jīng)網(wǎng)絡的輸出層一般為分類器層,常用的有徑向基(RBF)函數(shù)輸出單元、Sigmoid輸出單元和Softmax回歸分類器。在ORL人臉識別任務中,采用Sigmoid函數(shù)輸出單元,輸出層的編碼采用非分布編碼“one-of-c”的方式。由于采用Sigmoid函數(shù),每一個單元輸出值是0-1范圍內的一個正數(shù),代表該樣本屬于該單元對應類別的概率。數(shù)值最大的那個單元即為樣本的預測類別。假設x為全連接層的輸出,則輸出層輸出結果的計算表達式如下:
y=f(wTx+b)(3)
其中,f表示激活函數(shù),這里采用Sigmoid函數(shù),Sigmoid函數(shù)表達式如下:
f(x)=11+e-x(4)
2實驗結果與分析
實驗在Windows7 64位下的Matlab 2014a中進行,采用Matlab深度學習工具箱DeepLearnToolbox。PC的內存8G,CPU主頻為3.2GHZ。
ORL人臉數(shù)據(jù)集是在1992年至1994年之間由AT &T Cambridge實驗室拍攝的人臉圖像所構成。數(shù)據(jù)集中包含40個不同人物的臉部圖像,每個人物包含10張圖像,總共400張。每個類別中的臉部圖像在不同的時間拍攝得到,存在如下差異:①光線;②面部表情,如眼睛的閉合和睜開狀態(tài),面部是否帶有微笑的表情等;③一些面部細節(jié)上的差異,如是否佩戴眼鏡等。該數(shù)據(jù)集中所有人臉圖像均為灰度圖像,且圖像中人物面部朝向基本一致,都朝向正前方。
圖2為ORL數(shù)據(jù)集中部分人臉圖像。數(shù)據(jù)集中每個原始圖像大小為92*112像素,本文實驗中對這些圖像進行預處理,使每一幅圖像的尺寸調整為28*28,并對每一副圖像進行歸一化處理,這里采用簡單的除255的方式。隨機選取每一個類別的8張圖像作為訓練樣本,剩下的2張作為測試樣本。因此,訓練集有320個樣本,測試集有80個樣本。
2.1改變C3層卷積核個數(shù)對網(wǎng)絡的影響
卷積神經(jīng)網(wǎng)絡性能的好壞與卷積層卷積核的個數(shù)密切相關,但每一個卷積層應該設置多少個卷積濾波器,目前并沒有數(shù)學理論指導。為了研究卷積核個數(shù)對網(wǎng)絡最終識別準確率的影響,本文保持C1層卷積核個數(shù)不變,通過改變C3層卷積核的個數(shù),形成新的網(wǎng)絡結構,用訓練集訓練網(wǎng)絡,訓練迭代次數(shù)均為60次,然后用測試集對每一種網(wǎng)絡結構的性能進行測試。實驗結果如表1所示。
從表1可以看出,當C3層有10個卷積核時,網(wǎng)絡模型對測試集的識別正確率最高。卷積核的個數(shù)與識別準確率并不成正比關系,當卷積核個數(shù)過多時,網(wǎng)絡的識別準確率會下降,這是因為在卷積核個數(shù)增加的同時,需要學習的參數(shù)也隨之增加,而數(shù)據(jù)集中訓練樣本的規(guī)模較小,已不能滿足學習的要求。
2.2改變C1層卷積核個數(shù)對網(wǎng)絡的影響
由上述實驗結果可知,C3層卷積核個數(shù)為10時,網(wǎng)絡識別效果最好。因此,為了研究卷積層C1層卷積核個數(shù)對識別準確率的影響, C3層保留10個卷積核,改變C1層卷積核的個數(shù)構造新的網(wǎng)絡結構,用測試集針對不同網(wǎng)絡結構就測試集和訓練集的識別準確率進行測試。實驗結果如表2所示。
從表2的實驗結果可以得到相同結論:卷積層卷積核的個數(shù)并非越多越好,卷積核個數(shù)過多,網(wǎng)絡需要學習的參數(shù)也隨之增加,當訓練集中樣本個數(shù)無法滿足學習需要時,網(wǎng)絡識別準確率就會下降。
2.3與其它算法比較
為進一步說明本文所提卷積神經(jīng)網(wǎng)絡結構的有效性和優(yōu)越性,將該結構(C1層6個卷積核,C3層10個卷積核,學習率1.5)的實驗結果與其它識別方法在ORL數(shù)據(jù)集上的實驗結果進行對比,結果如表3所示??梢钥闯?,本文所提方法比Eigface、ICA的識別效果好,與2DPCA方法的識別準確率一樣,比FisherFace方法的識別準確率只低了0.20%,這進一步證實了本文所提網(wǎng)絡結構的有效性。
3結語
本文在理解Lenet-5結構的基礎上,提出一種適用于ORL人臉數(shù)據(jù)集的卷積神經(jīng)網(wǎng)絡結構。實驗結果表明,本文提出的卷積神經(jīng)網(wǎng)絡結構,不僅避免了復雜的顯式特征提取過程,在ORL數(shù)據(jù)集上獲得98.30%的識別正確率,而且比大多數(shù)傳統(tǒng)人臉識別算法的效果都好。此外,本文還通過大量驗就每個卷積層卷積核個數(shù)對網(wǎng)絡識別準確率的影響進行了詳細研究與分析,這對設計CNN網(wǎng)絡結構具有一定的參考意義。
參考文獻參考文獻:
[1]李武軍,王崇駿,張煒,等.人臉識別研究綜述[J].模式識別與人工智能,2006,19(1):5866.
[2]張翠平,蘇光大.人臉識別技術綜述[J].中國圖象圖形學報,2000,5(11):885894.
[3]YANG M H.Face recognition using kernel methods[J].Nips,2002(2):14571464.
[4]祝秀萍,吳學毅,劉文峰.人臉識別綜述與展望[J].計算機與信息技術,2008(4):5356.
[5]SAMARIA F,YOUNG S.HMMbased architecture for face identification[J].Image and Vision Computing,1994,12(8):537543.
[6]LAWRENCE S,GILES C L,TSOI A C.Convolutional neural networks for face recognition[C].Proceedings CVPR'96,1996 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,1996:217222.
[7]陳耀丹,王連明.基于卷積神經(jīng)網(wǎng)絡的人臉識別方法[J].東北師范大學學報:自然科學版,2016,48(2):7076.
[8]盧官明,何嘉利,閆靜杰,等.一種用于人臉表情識別的卷積神經(jīng)網(wǎng)絡[J].南京郵電大學學報:自然科學版,2016,36(1):1622.
[9]李彥冬,郝宗波,雷航.卷積神經(jīng)網(wǎng)絡研究綜述[J].計算機應用,2016,36(9):25082515.
[10]LCUN Y,BOTTOU L,BENGIO Y,et al.Gradientbased learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):22782324.
關鍵詞:模式識別卷積神經(jīng)網(wǎng)絡 google earth 應用
中圖分類號:TP39 文獻標識碼:A 文章編號:1007—3973(2012)009—087—02
隨著科技的進步,許多發(fā)明、電子產(chǎn)品使人們的生活更加方便。生活經(jīng)常見到的有:筆記本電腦的指紋鎖、數(shù)碼相機的人像識別功能、電腦手寫板、語音錄入設備、門禁中的虹膜識別技術等等,這些設備與技術中都包含了模式識別技術。這些看似抽象的技術與算法正與其他技術一起悄然的改變人們的生活。
1 什么是模式識別
人們的許多感官功能看似簡單,但用人工的辦法實現(xiàn)卻比較困難。人與人見面相互打招呼。在看見對方的面部后,人能夠很快的認定這張臉是個人臉,而且我認識他,應該和他打招呼。這個看似簡單的過程其實并不簡單,我們不僅僅要識別五官,還要掃描輪廓,而且還要判斷是否認識等等??梢?,很多看似簡單的認知過程,如果試圖用某一方法描述確實不宜。對人臉進行模式識別就可以解決這個看似簡單的問題。
模式識別(Pattern Recognition)是指通過用計算機對事物或現(xiàn)象的各種形式的(光信息,聲信息,生物信息)信息進行處理和和判讀,以對事物或現(xiàn)象進行描述、辨認、分類和解釋的過程,是人工智能的和信息捕獲的重要組成部分?,F(xiàn)在被廣泛應用于計算機視覺,自然語言處理,生物特征識別,互聯(lián)網(wǎng)搜索等領域。
2 模式識別與google earth衛(wèi)星照片
在衛(wèi)星圖片中識別特定的目標,如道路,湖泊,森林等等,往往要運用模式識別技術,現(xiàn)在較為主流的是神經(jīng)網(wǎng)絡識別。上一代的技術室根據(jù)RGB提取的,在提取森林或湖泊的時候,有很多干擾顏色,對衛(wèi)星照片精度有很高要求。根據(jù)RGB提取效果不是十分理想,而且計算量大,對硬件有一定要求。
隨著神經(jīng)網(wǎng)絡識別技術的發(fā)展,現(xiàn)在計算機可自動識別目標。不必使用特殊的衛(wèi)星波段影像,小型機計算,只要從GOOGLE EARTH獲取的普通衛(wèi)星影像就可以自動識別了。
Google Earth是Google公司開發(fā)推出的一款虛擬地球儀軟件,它把衛(wèi)星照片、航空照相布置在一個地球的三維模型上,是一款全球地圖集成軟件。Google Earth與模式識別技術的綜合運用,使其衛(wèi)星圖片在道路規(guī)劃,通信線路管理,土地勘察,遙感探測等等行業(yè)有著很大的運用。
在實際情況下對衛(wèi)星圖片進行模式識別,實現(xiàn)起來有許多困難,光線條件、大地背景、大氣云層情況影響以及由于拍攝角度或空氣密度等原因導致照片的被照物體的幾何變形等都會對識別效果有直接影響。這些都對識別算法要求很高。本文選用的神經(jīng)網(wǎng)絡識別方法,具有識別率高、對不規(guī)則物體識別效果好等優(yōu)點,被廣泛運用在許多領域。本文使用改進的卷積神經(jīng)網(wǎng)絡對google earth 衛(wèi)星圖片進行處理,幾乎不用對照片進行預處理。這大大節(jié)省了運算時間,而且避免了二次處理后對原始文件的污染,大量原始信號被最大程度地保留。
3 模式識別與卷積神經(jīng)網(wǎng)絡
卷積神經(jīng)網(wǎng)絡CNN(Convolutional Neural Networks)是近年發(fā)展起來并引起廣泛重視的一種高效識別方法。神經(jīng)網(wǎng)絡是受動物神經(jīng)系統(tǒng)啟發(fā),利用大量簡單處理單元互聯(lián)而構成的復雜系統(tǒng),以解決復雜模式識別與行為控制問題。目前,CNN已經(jīng)成為國內外科學家研究的重點方向,特別是在模式識別領域。它的優(yōu)點是不需要對圖像進行復雜的預處理,成為大家廣為使用的方法。CNN的基本結構一般包括兩層:(1)特征提取層。每個神經(jīng)元的輸入與前一層的局部接受域相連,并提取該局部的特征。一旦該局部特征被提取后,與其他特征間的位置關系也隨之確定下來。(2)特征映射層。網(wǎng)絡的每個計算層由多個特征映射組成,每個特征映射是一個平面,平面上所有神經(jīng)元的權值相等。特征映射結構采用影響函數(shù)核小的sigmoid函數(shù)作為卷積網(wǎng)絡的激活函數(shù),使得特征映射具有位移不變性。
4 卷積神經(jīng)網(wǎng)絡在衛(wèi)星圖片識別中的應用
為提高google earth衛(wèi)星照片中目標的識別率,創(chuàng)造性使用卷積神經(jīng)網(wǎng)絡進行模式識別,其主要部分基本設計結構如圖1所示。
圖1中,整個結構模仿動物的神經(jīng)結構,大量的單一識別單元被關聯(lián)成一個網(wǎng)路。 C層則是由復雜(complex)神經(jīng)元組成的神經(jīng)層,它的輸入連接是固定的,不可修改,顯示接收信心被激勵位置的近似變化。網(wǎng)絡中C層的最后一層為識別層,顯示模式識別的結果。S層為簡單(simple)神經(jīng)元組成的神經(jīng)層,完成主要信息提取,其輸入連接是不是固定的,可在訓練的過程中不斷修改。這個系統(tǒng)進過不斷的訓練,輸入照片的格式和大小會自動地被識別,大大節(jié)省了前期的工作時間,提高了識別速度。
在訓練集中同時需要常規(guī)積極樣本和消極樣本,樣本包括衛(wèi)星圖片中房屋和道路的1000個圖像目標積極訓練集。大多數(shù)基于學習方法的目標物體識別使用一個大約為10?0的最小輸入窗口,好處是可以做到不遺漏任何重要信息。為了達到穩(wěn)定的效果,對所有原有的訓練樣進行色彩轉換和對比還原轉換,得到的積極樣本訓練集有2400個目標樣本。
5 實驗結果
分兩個步驟進行試驗,第一步對衛(wèi)星圖片進行定位和裁剪等預處理,第二步選取合格衛(wèi)星圖片200個樣本圖片訓練卷積神經(jīng)網(wǎng)絡,訓練后得到各層3個主要數(shù)據(jù):閾值、權值及神經(jīng)元細胞平面數(shù),然后使用優(yōu)化后的神經(jīng)網(wǎng)絡識別機對200個測試樣本進行檢查,其正確的識別率達到97%。實驗要注意訓練的時間,系統(tǒng)過度訓練后,識別率會不斷提高,但訓練時間的不斷增加,測試失敗率到最小值后出現(xiàn)及其微細震蕩,造成識別率的小幅波動。(見圖2)
實驗表明,卷積神經(jīng)網(wǎng)絡應用于衛(wèi)星圖片目標識別是完全可行的,訓練樣本越豐富則則識別率越高。與傳統(tǒng)模式識別方法相比有更高的識別率和抗干擾性。本文采用一種改進的基于卷積神經(jīng)網(wǎng)絡的識別機制對衛(wèi)星照片中的目標物體進行識別。該識別方法通過對目標物體圖片的學習,優(yōu)化了系統(tǒng)中的關鍵參數(shù)的權值。大大提高了目標物體的識別率。
參考文獻:
[1] 高雋.智能信息處理方法導論[M].北京:機械工業(yè)出版社,2004.
[2] 高雋.人工神經(jīng)網(wǎng)絡原理及仿真實例[M].北京:機械工業(yè)出版社,2003.
[3] 邊肇祺.模式識別[M].北京:清華大學出版社,1987.
關鍵詞:
手勢識別;位運算;卷積神經(jīng)網(wǎng)絡;復雜環(huán)境;膚色似然
中圖分類號: TP391.413 文獻標志碼:A
0引言
現(xiàn)行的手勢識別方法的主要步驟是提取精確的手勢區(qū)域,然后作形狀或者輪廓識別。提取手勢區(qū)域的方法有依賴于測距設備的方法,比如Kinect[1-2]、雙目設備[3],也有依賴于單目視覺的方法[4]。前者的主要原理是人機交互中手的位置距離傳感器應該在一定的區(qū)間內,之后進行距離閾值分割。而基于視覺的方法主要是確定合理的膚色閾值,進行膚色分割和去噪,確定手勢區(qū)域或者輪廓。
這些方法雖然依賴的特征不同,但是在整體處理步驟上比較相似,都需要首先對手勢區(qū)域進行精確的分割。方法面臨的挑戰(zhàn)主要集中在復雜環(huán)境下的手勢分割。如果希望算法在距離、光照可變的環(huán)境下表現(xiàn)出良好的魯棒性,一般會將很多非手勢的區(qū)域也識別為手勢,這將增加手勢分割的難度,在復雜背景下,這一問題會更加明顯。在背景環(huán)境復雜時如果想降低手勢分割的難度,一般需要對輸入的圖像特征進行更嚴格的提取,這同時也降低了模型的魯棒性,在光照、距離等條件變化時,會出現(xiàn)丟失手勢的問題。
兩類問題相互制約,針對這一情況,研究者們把精力主要放在如何更加精準地提取特征上面。用作手勢分割的特征主要集中在膚色[4]和距離[1,3],有的學者采取了將輪廓信息結合先驗形狀來進行更加準確的分割方式來處理這一問題[5],此類方法被廣泛地用于邊緣提取領域,在針對小規(guī)模噪聲區(qū)域以及手勢類別較少的情況時能獲取不錯的效果。主要問題是對于多個先驗形狀的表達沒有特別理想的方案,在形狀增多之后,形狀項的作用明顯下降,這與形狀之間本身的沖突有關。更重要的一點是圖像分割方法一般耗時都在數(shù)秒甚至數(shù)十秒,時間復雜度上無法滿足手勢識別的需要。因為手勢分割的運用場景多為動態(tài)場景,所以運動目標檢測的方法也經(jīng)常用來輔助手勢分割。
現(xiàn)行手勢分割方法中最常用的是按照提取膚色特征、二值化、形態(tài)學濾波、運動目標特征或者距離特征協(xié)助檢測這個過程處理[3-4]。有時還需要做人臉檢測,排除人臉區(qū)域的干擾。融合了多種特征的方法在光照變化和背景擁有類似膚色的物體時仍然會出現(xiàn)不能有效分割的情形。
在手勢識別方面,Dardas等[6]提出了一種基于特征包的手勢識別方法,在識別率和計算效率上都取得了較好的結果。對于良好的手勢輪廓,Belongie等[7]提出的形狀上下文能夠得到高準確率和對非剛性畸變魯棒的結果。矩特征,指尖等手勢的幾何特征[1]也經(jīng)常被用作為手勢識別的特征。卷積神經(jīng)網(wǎng)絡能夠自動獲取特征,在處理靜態(tài)圖片時表現(xiàn)出了非常高的準確率,同時對噪聲以及各種形變魯棒。
本文提出一種新的方法來解決手勢識別中魯棒性和算法復雜性之間的矛盾。該方法第1步使用二進制運算實現(xiàn)的支持向量機(Support Vector Machine, SVM)分類器并用位運算代替滑動窗口,快速提取出多個可能的備選區(qū)域。第2步使用卷積神經(jīng)網(wǎng)絡來完成手勢的再判定與識別工作。文中算法的實現(xiàn)方式非常關鍵,直接關系模型的運算效率。第1步中使用的分類器為線性SVM模型,需要在支持64位整型機器的環(huán)境下使用二進制運算的方式實現(xiàn),在執(zhí)行效率上相對于基于滑動窗口的算法有著100倍左右的提升[8]。第2步使用的分類器為卷積神經(jīng)網(wǎng)絡,在實現(xiàn)上使用了統(tǒng)一計算設備架構(Compute Unified Device Architecture, CUDA)進行卷積運算的加速,能獲得10倍左右的加速比[9]。
1手勢區(qū)域提取
本文手勢區(qū)域提取的方法不要求精確提取手勢輪廓或者鎖定備選框。該方法核心思想是用最短的時間排除掉絕大部分的搜索區(qū)域,剩下無法判斷的區(qū)域結合其他方法進行處理。
方法本身并不依賴于特定特征,所有能夠用來排除大量備選區(qū)域的特征均可以使用,比如通過測距設備獲取的距離似然特征,使用視覺設備獲取的膚色似然特征。因為膚色似然特征對于硬件的要求更低,本文選擇膚色似然特征進行實驗。
1.1獲取膚色特征
本文使用橢圓模型提取膚色似然區(qū)域[10-11]。首先將膚色變換到YCbCr空間,橢圓膚色模型認為膚色在Cr和Cb分量組成的空間里的分布集中在一個橢圓區(qū)域內。該橢圓中心點坐標為(155.6,103),長短軸比例為1∶1.6,旋轉角度為43°。式(1)描述了Cr和Cb組成的空間中的像素點距離橢圓中心的距離,也可以理解成是膚色的概率。該值恒大于0,最大值為255,標準差系數(shù)為σ2??梢酝ㄟ^調整標準差系數(shù)σ2來控制膚色判斷的嚴格程度,不同σ2下的分割效果如圖1所示。不同的標準差系數(shù)對于膚色區(qū)域的判斷影響十分明顯。當σ2較小時提取區(qū)域判斷為膚色的區(qū)域很小,此時真實的手勢區(qū)域可能被誤檢成非手勢區(qū)域;當σ2增大時,膚色似然圖中判斷為膚色的區(qū)域會一直增加,此時膚色似然圖中被誤檢為膚色的區(qū)域也會增加。
光照變化和膚色的多樣性會影響膚色似然特征的計算。針對光照變化以及膚色變化的情況。有以下方法可以改善:
方法1使用對光照魯棒的特征,比如距離似然特征。
方法2使用較大的標準差系數(shù)σ2,后面提取區(qū)域的過程中使用較多的備選框以提高召回率。
方法3使用迭代的方法調整橢圓模型的中心坐標和標準差系數(shù),方法3一般用于光照連續(xù)變化場景,比如視頻流的處理。
1.2膚色似然特征與手勢區(qū)域檢測
獲取膚色似然圖之后,下一步需要計算似然圖中的手勢區(qū)域。手勢區(qū)域和非手勢區(qū)域在8×8膚色似然圖下有著明顯的差別,如圖2所示。這一步的思路是使用滑動窗口的方法,對膚色似然圖進行遍歷。因為最終需要處理是在遍歷的過程中將窗口中的膚色似然圖像作為手勢區(qū)域分類器的輸入,得到一個“窗口值”,用來確定是否為備選窗口。
考慮到手勢識別應用場景多為人機交互,手勢的長寬比固定,不會被人為拉伸,所以選用“正方形”滑動窗口;并且手勢區(qū)域在整幅圖像中所占比例會有所變化但變化幅度不大,所以不用設定太多不同尺度的滑動窗口。在此處設定4個不同尺度的手勢區(qū)域48×48、64×64、80×80、96×96用以檢測不同大小的手勢。
為了保證滑動窗口的大小始終為8×8,將膚色似然圖調整為不同的尺度,以尺度為360×240的膚色似然圖為例,當手勢區(qū)域大小由48×48調整為8×8時,膚色似然圖的長寬也對應變化原圖的1/6,變?yōu)?0×40。大小為的64×64、80×80、96×96的手勢區(qū)域所對應的調整后的膚色似然圖尺度分別為45×30、36×24、30×20,如圖2(d)所示。
在分類器的選擇上選用的是線性SVM分類器[12]。實驗正樣例選取的均為人工標記的手勢區(qū)域的膚色似然圖,在選取正樣例的過程中可以先使用少量樣本訓練一個線性SVM分類器,然后使用該分類器進行樣本初篩,之后再人工調整。負樣例是在正樣例以外的區(qū)域中隨機選取。正負樣本均需要進行歸一化處理,處理成為8×8的區(qū)域。“窗口值”表示SVM系數(shù)矩陣和8×8的內積?!按翱谥怠钡挠嬎氵^程如式(2)所示:
s=〈w,x〉;w∈R8×8,x∈{0,1,…,255}8×8(2)
其中:w為權值矩陣;x為膚色似然圖的像素值,如圖2(c)所示;s為滑動窗口的“窗口值”。
1.3BISL二進制膚色似然特征
為了加速滑動窗口的計算,本文借鑒了文獻[8]中一般物體識別時用到的方法,使用64位整型表示8×8的二進制矩陣,并且使用一些列的位運算操作來實現(xiàn)加速[13-14]。二進制膚色似然特征(Binary Skin LikeHood, BISL)特征,是將膚色似然特征使用多個64位整型表示之后形成的特征。
1.3.1近似參數(shù)矩陣w
線性模型矩陣w∈R8×8可以使用文獻[13]中的算法1對其進行近似可得w≈∑Nwj=1βjaj。其中:Nw代表基向量的個數(shù);aj∈{-1,1}8×8代表基向量; βj∈R代表相應基向量的系數(shù)。
算法1使用二進制方法近似w。
程序前
輸入:w,Nw。
輸出:{βj}Nwj=1,{aj}Nwj=1。
初始化殘差:ε=w
for j=1 to Nw do
aj=sign(ε)
βj=〈aj,ε〉/aj2(將殘差ε映射到aj上)
ε=ε-βjaj(更新殘差)
end for
程序后
1.3.2處理輸入矩陣x
本文截取x的高Nx位近似x(如圖3(a)),x可以由BISL特征表示成如下形式:
x=∑Nxk=128-kbk(5)
其中:x∈{0,1,…,255}8×8,bk∈{0,1}8×8。
算法2對區(qū)域獲取BISL特征。
參數(shù)含義:bx,y∈{0,1}8×8,rx,y∈{0,1}8,bx,y∈{0,1}。
程序前
輸入:膚色似然圖的二進制值bW×H。
輸出:BISL特征組成的矩陣bW×H。
初始值:bW×H=0,rW×H=0
for each position(x,y) in scanline order do
rx,y=(rx-1,y
bx,y=(bx,y-1
end for
程序后
通常來說,獲取8×8的BISL特征需要遍歷64個位置。Cheng等[8]巧妙地利用了64位整型的特點,在算法2中使用了“按位或”和“移位”操作避免了循環(huán)。首先BISL特征bx,y和它的最后一行rx,y分別使用一個INT64變量和一個byte變量存儲。然后相鄰的BISL特征有重復的部分,可以通過左移8位操作保留重復的部分并給不同的部分騰出空間,將騰出的這8位的空間與新的byte變量進行“按位與”,就獲取了新的BISL特征。相鄰的byte變量的獲取過程與之類似。
綜合式(4)和(5)可以得到由BISL特征和分類器參數(shù)計算出窗口值:
s≈∑Nwj=1βj∑Nxk=1Cj,k(6)
其中Cj,k=28-k(2〈a+j,bk,l〉-bk,l)。
將窗口值topk的窗口作為候選窗口,進行進一步的識別。k的取值由實驗環(huán)境確定,k越大,手勢檢測模型召回率越高,進一步識別的時間復雜度也會增加。
2使用卷積神經(jīng)網(wǎng)絡進行手勢識別
本章所提輸入是手勢檢測部分所得到的窗口值排名前k的候選窗口,這些窗口區(qū)域都是在上一步被判定為極有可能為手勢的區(qū)域,所以本章中需要使用更為復雜的特征和更強的分類模型來處理這個問題。卷積神經(jīng)網(wǎng)絡和一般的神經(jīng)網(wǎng)絡相比,具有權值共享、局部感知等特點[15-16],充分地利用了輸入值的空間關系信息,并且容易使用硬件加速[9]。綜合考慮模型的分類能力、魯棒性以及識別效率等因素,本文使用卷積神經(jīng)網(wǎng)絡進行手勢識別。
2.1樣本、特征以及網(wǎng)絡結構
卷積神經(jīng)網(wǎng)絡的訓練樣本是根據(jù)手勢檢測步驟中得到的窗口值topk 8×8窗口計算出來的。在確定窗口值topk 8×8窗口時,記錄下這k個窗口在對應的膚色似然圖中的坐標。根據(jù)這個坐標計算出原圖像所對應的窗口坐標。這個過程可以看作是根據(jù)圖2(c)中的8×8窗口位置來獲取圖2(a)中對應尺度的窗口圖像位置,進而獲得窗口圖像。在獲取窗口圖像后,本文將備選窗口圖像大小調整為29×29,然后計算它的膚色似然圖,得到29×29的膚色似然圖作為卷積神經(jīng)網(wǎng)絡的輸入。卷積神經(jīng)網(wǎng)絡的特征選擇可以有很多,比如窗口的灰度圖、梯度特征、局部二進制特征。選用29×29的膚色似然圖的原因是膚色似然圖在膚色檢測的過程中已經(jīng)計算過一遍,不需要再重復計算。訓練樣本一共分為10類,6個備選手勢類,4個錯誤類。這里設計4個錯誤類的原因是因為在手勢區(qū)域提取的過程中,被錯分成手勢區(qū)域的候選框是有著明顯的特點的。主要的幾類情況是識別到手勢邊緣,識別到手勢中心,識別到非手勢區(qū)域,可以參考圖2(b)的情形。在網(wǎng)絡設計的時候需要重點關注這些錯誤的情形,實驗發(fā)現(xiàn),將所有的錯誤情形視為1類的模型識別率要低于將錯誤情形分成4類的模型。將錯誤情形分為4類的卷積神經(jīng)網(wǎng)絡一共有10個輸出節(jié)點,其中6個代表6種不同的手勢,另外4個代表4類典型的錯誤。需要注意的是,在計算模型準確率的時候并不將4類錯誤加以區(qū)分。假定4類錯誤分別為錯誤1、錯誤2、錯誤3、錯誤4,將錯誤1識別成了錯誤2,仍然認為模型判斷正確。
為了使樣本具有平移和小幅度旋轉的魯棒性,對卷積神經(jīng)網(wǎng)絡的訓練樣本進行了一些平移和旋轉上的擴展。考慮到手勢與手寫字符的區(qū)別,本文并沒有進行彈性形變擴展。整個卷積網(wǎng)絡的結構如圖4所示。
本文參照文獻[15]中提到的方法來設計卷積神經(jīng)網(wǎng)絡,網(wǎng)絡包含兩個卷積層:第1層用來提取一些類似于邊緣、角點、交線的底層圖像特征;第2個卷積層以這些特征為基礎生成更加復雜的特征。兩個下采樣層均按照2×2的因子進行最大池化,卷積核的大小定為5×5,第1個卷積層有5個卷積核,第2個卷積層有10個卷積核。光柵化之后采用兩層全相連多層感知機結構,隱層單元數(shù)量設定為100個,最后針對多分類問題,使用softmax設置10個輸出節(jié)點。
2.2卷積神經(jīng)網(wǎng)絡的計算過程
本文使用的卷積神經(jīng)網(wǎng)絡主要參照文獻[17]中提到的算法實現(xiàn)。下面主要針對卷積層和下采樣層的正向計算和反向傳播計算進行討論。
2.2.1正向計算
2.2.2反向傳播
3實驗結果分析
實驗平臺為Intel Core i74702MQ 2.2GHz, 4GB RAM, NVIDIA GeForce GTX 760M。CPU支持POPCNT命令,顯卡支持CUDA平臺,操作系統(tǒng)為Windows 8 Pro 64位。
3.1手勢檢測部分
手勢檢測部分所采用的數(shù)據(jù)集是Sebastien Marcel Static Hand Posture Database數(shù)據(jù)集,數(shù)據(jù)集包含10個人的6種手勢(a,b,c,point,five,v)(A,B,C,Point(P),F(xiàn)ive(F),V),總共接近5000個樣本(如圖5)。
實驗對簡單環(huán)境和復雜環(huán)境分別取100張測試圖片進行測試(如圖6)。在實驗中發(fā)現(xiàn),在簡單環(huán)境下,直接獲取“窗口值”最大的窗口作為備選區(qū)域即可。在光照變化和背景復雜的情況下,“窗口值”大小前4的窗口已經(jīng)可以覆蓋所有的實際手勢區(qū)域,即達到100%的召回率(如表1)。
實驗對比了基于滑動窗口方法實現(xiàn)手勢檢測、多模板匹配外加人臉排除以及本文的手勢檢測方法的運算速度。在3種不同尺寸的樣本中分別取1000張測試圖片進行測試,結果如表2所示。
3.2手勢識別部分
手勢識別部分的樣本來源于手勢檢測部分的結果。數(shù)據(jù)一共分為10類,除了6個手勢類之外,還設定4個錯誤類。4類錯誤分別命名為E1、E2、E3、E4。其中:E1代表識別到手勢中心;E2代表識別到手勢邊緣;E3代表識別到非手勢干擾區(qū);E4代表除E3之外的弱干擾區(qū),如圖7所示。
因為10類的訓練樣本數(shù)量有一定的差異。其中最多的手勢Point有1395個樣本,最少的V有435個樣本。錯誤類樣本中總量為1216個,其中E1 178個,E2 81個,E3 943,E4 14個,這個具體數(shù)量與手勢檢測所設定的備選窗口數(shù)量有關以及選擇的輸入圖片有關,可以調整,本文實驗中備選窗口數(shù)量設為4,輸入圖片中背景復雜的一共有473張。在樣本不平衡的情況下所訓練出卷積神經(jīng)網(wǎng)絡模型測試準確率為93%左右。對樣本進行抽樣和擴展,擴展方法如下。
1)對于6個手勢類,在每個類的訓練集中隨機抽取350張樣本,對抽取的圖片在隨機方向上進行1到2個像素的平移得到另外350個樣本,每一類總共會得到700個樣本。
2)對于錯誤類E1,首先對訓練集進行4次隨機方向上1到2個像素的平移,每一次都會得到一個新的訓練樣本,最后進行隨機抽樣,每類選擇700個樣本。
3)對于錯誤類E2,首先對訓練集進行10次隨機方向上1到2個像素的平移,每一次都會得到一個新的訓練樣本,最后進行隨機抽樣,每類選擇700個樣本。
4)對于錯誤類E3,直接進行隨機抽樣,每類選擇700個樣本。
5)對于錯誤類E4,將樣本復制50次,獲取700個樣本。
擴展后的訓練集有6000張訓練樣本,測試集有1000個樣本。手勢識別的結果如表3所示,在手勢識別部分修正后的準確率為96.1%,空格部分代表0,4個錯誤類準確率計算方式在2.1節(jié)有說明。
圖8對比了本文算法和其他算法的性能,當訓練樣本大于100時,本文算法和特征包算法的準確率相近。算法的運行效率明顯高于特征包(Bag of Features, BoF)算法,如表4所示,平均識別時間表示的是手勢識別算法對單一“窗口”圖像的計算時間,整體計算時間包含了手勢檢測和手勢識別兩個部分以及一些預處理環(huán)節(jié),基于特征包的兩類算法對應的手勢檢測方法采用的是對模板匹配和人臉排除,本文的算法是采用位運算支持向量機和CUDA卷積神經(jīng)網(wǎng)絡。CUDA卷積神經(jīng)網(wǎng)絡處理29×29大小的圖片用時約為0.001s。手勢識別過程中,因為分割算法求得的是4個備選窗口,所以識別過程中需要識別4個窗口,對一幅輸入圖像而言手勢檢測和識別總用時約為0.013s。
實驗結果表明,本文提出的方法能夠在光照變化、背景復雜的情況下依然保持高準確率和良好的運算效率。
4結語
本文提出了一種新型的手勢識別方法,與傳統(tǒng)的手勢識別方法相比,本文方法利用位運算代替滑動窗口,在數(shù)微秒的時間內將備選窗口數(shù)量由千萬級別縮減到個位數(shù)。獲取備選區(qū)域之后使用基于CUDA的卷積神經(jīng)網(wǎng)絡對備選區(qū)域進行細分和識別。在實際的計算過程中可以通過硬件優(yōu)化得到100至1000倍的加速比。本文方法僅僅通過膚色似然特征就在Marcel數(shù)據(jù)集上得到了96%左右的準確率。本文提出的方法主要解決了魯棒性和計算復雜度的矛盾,并且方法所使用的特征可以使用其他的特征替換,這使得模型具有良好的可擴展性。
本文方法的局限性主要體現(xiàn)在對特征提取的召回率有要求,如果完全沒辦法提取到特征,本文的方法會失效。另外,卷積神經(jīng)網(wǎng)絡的訓練耗時長,網(wǎng)絡設計依賴經(jīng)驗,在更加復雜的分類上,卷積神經(jīng)網(wǎng)絡網(wǎng)絡的設計也會更加困難。
參考文獻:
[1]
談家譜,徐文勝.基于Kinect的指尖檢測與手勢識別方法[J].計算機應用,2015,35(6):1795-1800.(TAN J P, XU W S. Fingertip detection and gesture recognition method based on Kinect [J]. Journal of Computer Applications, 2015, 35(6): 1795-1800.)
[2]
NEWCOMBE R A, IZADI S, HILLIGES O, et al. KinectFusion: realtime dense surface mapping and tracking [C]// Proceedings of the 2011 IEEE International Symposium on Mixed and Augmented Reality. Washington, DC: IEEE Computer Society, 2011: 127-136.
[3]
譚同德,郭志敏.基于雙目視覺的人手定位與手勢識別系統(tǒng)研究[J].計算機工程與設計,2012,33(1):259-264.(TAN T D, GUO Z M. Research on location and gesture recognition of hand based on binocular stereovision [J]. Computer Engineering and Design, 2012 33(1): 259-264.)
[4]
WACHS J P, KLSCH M, STERN H, et al. Visionbased handgesture applications [J] Communications of the ACM, 2011, 54(2): 60-70.
[5]
SAMUEL D, RATHI Y, A. TANNENBAUM A. A framework for image segmentation using shape models and kernel space shape priors [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008, 30(8): 1385-1399.
[6]
DARDAS N H, GEORGANAS N D. Realtime hand gesture detection and recognition using bagoffeatures and support vector machine techniques [J]. IEEE Transactions on Instrumentation & Measurement, 2011, 60(11): 3592-3607.
[7]
BELONGIE S, MALIK J, PUZICHA J. Shape matching and object recognition using shape contexts [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(4): 509-522.
[8]
CHENG M M, ZHANG Z M, LIN W Y. BING: binarized normed gradients for objectness estimation at 300fps [C]// Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2014: 3286-3293.
[9]
STRIGL, KOFLER K, PODLIPNIG S. Performance and scalability of GPUbased convolutional neural networks [C]// Proceedings of the 2010 18th Euromicro Conference on Parallel, Distributed and Networkbased Processing. Piscataway, NJ: IEEE, 2010: 317-324.
[10]
BOJIC N, PANG K. Adaptive skin segmentation for head and shoulder video sequences [C]// Visual Communications and Image Processing 2000. Bellingham, WA: SPIE, 2000: 704-711.
[11]
KOVAC J, PEER P, SOLINA F. Human skin color clustering for face detection [C]// IEEE Region 8 EUROCON 2003. Computer as a Tool. Piscataway, NJ: IEEE, 2003, 2: 144-148.
[12]
FAN R E, CHANG K W, HSIEH C J, et al. Liblinear: a library for large linear classification [J]. Journal of Machine Learning Research, 2008, 9(12): 1871-1874.
[13]
HARE S, SAFFARI A, TORR P H S. Efficient online structured output learning for keypointbased object tracking [C]// Proceedings of the 2012 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2012: 1894-1901.
[14]
ZHENG S, STURGESS P, TORR P H S. Approximate structured output learning for constrained local models with application to realtime facial feature detection and tracking on lowpower devices [C]// Proceedings of the 2013 10th IEEE International Conference and Workshops on Automatic Face and Gesture Recognition. Piscataway, NJ: IEEE, 2013: 1-8.
[15]
SIMARD P Y, STEINKRAUS D, PLATT J C. Best practices for convolutional neural networks applied to visual document analysis [C]// Proceedings of the Seventh International Conference on Document Analysis and Recognition. Washington, DC: IEEE Computer Society, 2003: 958-963.
[16]
LECUN Y, BOSER B, DENKER J S, et al. Handwritten digit recognition with a backpropagation network [M]// Advances in Neural Information Processing Systems 2. San Francisco: Morgan Kaufmann, 1990: 396-404.
關鍵詞:Deep Learning;多隱含層感知;DropConnect;算法
中圖分類號:TP181
Deep Learning是機器學習研究的新領域,它掀起了機器學習領域的第二次浪潮,并受到學術界到工業(yè)界高度重視。Deep Learning概念根源于人工神經(jīng)網(wǎng)絡[3],它由Geoffrey Hinton等在Science上提出。它致力于建立模擬人腦分析學習機制的多層次神經(jīng)網(wǎng)絡,并通過這種網(wǎng)絡分析解釋數(shù)據(jù),如視頻、文本和聲音等。Deep Learning的多隱含層使得它具有優(yōu)異的特征學習能力,而且學習得到的特征對數(shù)據(jù)有更本質的刻畫,從而有利于可視化或分類。它的“逐層初始化”(layer-wise pre-training[4])可以有效克服深度神經(jīng)網(wǎng)絡在訓練上的難度。本文在對Deep Learning算法分析的基礎上,著重闡述了對Regularization of Neural Networks using DropConnect模型的改進。
1 Deep Learning算法分析
1.1 Deep Learning多隱含層感知架構
Deep Learning算法最優(yōu)秀特征是多隱含層感知器架構,這種架構通過組合低層特征來形成更加抽象的高層屬性類別或特征,并實現(xiàn)對數(shù)據(jù)分布式表示。Deep Learning的多隱含層結構是由輸入層、隱層(多層)、輸出層組成的多層網(wǎng)絡(如圖1所示),只有相鄰層神經(jīng)元之間有連接,同一層以及跨層節(jié)點之間相互無連接,每一層可以看作是一個淺層機器學習模型(如logistic regression,Support Vector Machines)。
圖1 含多個隱含層的Deep Learning模型
Deep Learning的多隱含層感知結構模擬的是人腦的大腦皮層工作。人大腦皮層計算也是分多層進行[5],例如圖像在人腦中是分多個階段處理,首先是進入大腦皮層V1區(qū)提取邊緣特征,然后進入大腦皮層V2區(qū)抽象成圖像的形狀或者部分,再到更高層,以此類推。高層的特征是由底層組合而成。使用含多隱含層感知器架構網(wǎng)絡主要優(yōu)勢在于它能以更簡潔的方式表達比淺層網(wǎng)絡大得多的函數(shù)關系(如圖2)。通過這種深層非線性網(wǎng)絡結構,Deep Learning可以實現(xiàn)復雜函數(shù)的逼近,表征輸入數(shù)據(jù)的分布式表示,并展現(xiàn)了強大的從少數(shù)樣本集中學習數(shù)據(jù)集本質特征的能力。
圖2 多層次實現(xiàn)復雜函數(shù)圖
1.2 Deep Learning訓練過程
(1)首先逐層構建單層神經(jīng)元,使得每次都是訓練一個單層網(wǎng)絡。
(2)當所有層訓練完后,使用Wake-Sleep算法[6]進行調優(yōu)。
將除最頂層的其它層間的權重是雙向的。向上的權重用于“認知”,向下的權重用于“生成”。然后使用Wake-Sleep算法調整所有的權重。讓“認知”和“生成”達成一致,也就是保證生成的最頂層表示能夠盡可能正確的復原底層的結點。
1.3 Deep Learning數(shù)據(jù)處理一般過程
Deep Learning算法通過傳感器等方式獲得數(shù)據(jù)之后,首先對數(shù)據(jù)進行預處理。在數(shù)據(jù)預處理中,標準的第一步是數(shù)據(jù)歸一化處理,第二步是數(shù)據(jù)白化處理(如PCA白化和ZCA白化)。其次特征提取和特征選擇。然后將輸出作為下層的輸入,不斷進行特征提取和特征選擇,直到學習到合符要求的最佳特征。在特征提取和特征選擇過程中,常用自動編碼、稀疏編碼、聚類算法、限制波爾茲曼機、卷積神經(jīng)網(wǎng)絡等算法進行特征提取和特征選擇。然后用反向傳播算法、隨機梯度下降算法、批量梯度下降算法等進行調優(yōu)處理,再用池化等算法避免特征過度擬合,從而得到最終提取特征。最后將學習到的最終提取特征輸入到分類器(如softmax分類器,logistic回歸分類器)進行識別、推理或預測。
2 基于Regularization of Neural Networks using DropConnect模型改進
2.1 Regularization of Neural Networks using DropConnect模型[2]
該模型的四個基本組成成分是:
(1)特征提取:v=g(x;Wg)。x是輸入層的輸入數(shù)據(jù),Wg是特征提取函數(shù)的參數(shù),v是輸出的提取特征,特征提取函數(shù)g()。其中g()為多層卷積神經(jīng)網(wǎng)絡算法函數(shù),而Wg卷積神經(jīng)網(wǎng)絡的偏值。
(2)DropConnect層:r=a(u)=a((M*W)v)如圖3。v是輸出的提取特征,W是完全連接的權重矩陣,M是二進制掩碼矩陣,該矩陣的每個元素隨機的以1-p概率設置為0或以p概率設置為1,a()是一個非線性激活函數(shù),r是輸出向量。M*W是矩陣對應元素相乘。
(3)Softmax分類器層:o=s(r;Ws)。將r映射到一個k維的輸出矩陣(k是類的個數(shù)),Ws是softmax分類函數(shù)的參數(shù)。
(4)交叉熵損失:A(y,o)=-∑yi(oi),i∈1,2,3…k。y是標簽,o是概率。
圖3 DropConnect示意圖
2.2 模型改進描述和分析
對DropConnect模型的改進主要集中在上面它的四個基本組成成分中的DropConnect層。由于該層以隨機方式讓掩碼矩陣M的每個元素Mij按1-p的概率設置為0,然后讓掩碼矩陣與層間的權重矩陣對應相乘即M*W。相對DropOut模型r=a((M*(Wv))得到的特征,r=a((M*W)v)得到的特征是比較好的特征r,同時也提高算法的泛化性。因為Dropconnect模型在權重W和v運算之前,將權重以一定的概率稀疏了,從運行結果看整體算法的錯誤率降低了。但是,由于是隨機的讓Mij按1-p的概率為0,并且這種隨機是不可以預測的,故可能會導致某些重要特征對應的權重被屏蔽掉,最終造成輸出ri的準確性降低。故就此提出了新的設計思想。
改進思想是用單層稀疏編碼層代替DropConnect層,通過稀疏編碼訓練出一組最佳稀疏的特征。具體描述:讓經(jīng)過多層卷積神經(jīng)網(wǎng)絡提取到的特征v作為稀疏編碼的輸入,經(jīng)過稀疏編碼重復訓練迭代,最終得到最佳的稀疏的特征r。因為稀疏編碼算法是一種無監(jiān)督學習方法,用它可以尋找出一組“超完備”基向量來更高效地表示輸入數(shù)據(jù)。
總之任何對Deep Learning算法的改進,都是為了提取出最佳特征,并使用優(yōu)秀的分類算法來分類、預測或推理,最終降低算法的錯誤率。而對于怎樣改進算法,以何種方式降低錯誤率,則沒有具體的限制。并且各種提取特征和特征選擇的算法之間并不是互斥的,它們之間可以有各種形式的嵌套,最終的目標都是提高算法的正確率和效率。
3 結束語
Deep Learning使得語音、圖像和文本等的智能識別和理解取得驚人進展,如Google Brain項目和微軟推同聲傳譯系統(tǒng)。它極大地推動了人工智能和人機交互快速發(fā)展。隨著從學術界到工業(yè)界的廣泛重視,Deep Learning算法的改進依然在繼續(xù),Deep Learning算法的正確率和效率仍在不斷提高。Deep Learning的發(fā)展將加快“大數(shù)據(jù)+深度模型”時代來臨。
參考文獻:
[1]Hinton G E,Salakhutdinov R R.Reducing the dimensionality of data with neural networks[J].Science,2006(5786):504-507
[2]湯姆?米切爾.機器學習[M].北京:機械工業(yè)出版社,2003:1-280.
[3]吳昌友.神經(jīng)網(wǎng)絡的研究及應用[D].哈爾濱:東北農(nóng)業(yè)大學,2007.
[4]HINTON G,OSINDERO S,TEH Y. A fast learning algorithm for deep belief nets[J].Neural Computation,2006(07):1527-1554.
[5]Hubel D H, Wiesel T N. Receptive fields,binocular interaction and functional architecture in the cat's visual cortex[J].The Journal of physiology,1962(01):106.
[6]Chuang Gao,Bin Chen,Wei Wei.Dynamic detection of wake-sleep transition with reaction time-magnitude[J].Neural Regenerattion Research,2009(07):552-560.
關鍵詞:人機大戰(zhàn);人工智能;發(fā)展前景
中圖分類號:TP391 文獻標識碼:A
0.引言
2016年3月15日,備受矚目的“人機大戰(zhàn)”終于落下帷幕,最終Google公司開發(fā)的“AlphaGo”以4∶1戰(zhàn)勝了韓國九段棋手李世h。毫無疑問,這是人工智能歷史上一個具有里程碑式的大事件。大家一致認為,人工智能已經(jīng)上升到了一個新的高度。
這次勝利與1997年IBM公司的“深藍”戰(zhàn)勝國際象棋世界冠軍卡斯帕羅不同。主要表現(xiàn)在兩個方面:
(1)AlphaGo的勝利并非僅僅依賴強悍的計算能力和龐大的棋譜數(shù)據(jù)庫取勝,而是AlphaGo已經(jīng)擁有了深度學習的能力,能夠學習已經(jīng)對弈過的棋盤,并在練習和實戰(zhàn)中不斷學習和積累經(jīng)驗。
(2)圍棋比國際象棋更加復雜,圍棋棋盤有361個點,其分支因子無窮無盡,19×19格圍棋的合法棋局數(shù)的所有可能性是冪為171的指數(shù),這樣的計算量相當巨大。英國圍棋聯(lián)盟裁判托比表示:“圍棋是世界上最為復雜的智力游戲,它簡單的規(guī)則加深了棋局的復雜性”。因此,進入圍棋領域一直被認為是目前人工智能的最大挑戰(zhàn)。
簡而言之,AlphaGo取得勝利的一個很重要的方面就是它擁有強大的“學習”能力。深度學習是源于人工神經(jīng)網(wǎng)絡的研究,得益于大數(shù)據(jù)和互聯(lián)網(wǎng)技術。本文就從人工智能的發(fā)展歷程與現(xiàn)狀入手,在此基礎上分析了人工智能的未來發(fā)展前景。
1.人工智能的發(fā)展歷程
AlphaGo的勝利表明,人工智能發(fā)展到今天,已經(jīng)取得了很多卓越的成果。但是,其發(fā)展不是一帆風順的,人工智能是一個不斷進步,并且至今仍在取得不斷突破的學科。回顧人工智能的發(fā)展歷程,可大致分為孕育、形成、暗淡、知識應用和集成發(fā)展五大時期。
孕育期:1956年以前,數(shù)學、邏輯、計算機等理論和技術方面的研究為人工智能的出現(xiàn)奠定了基礎。德國數(shù)學家和哲學家萊布尼茨把形式邏輯符號化,奠定了數(shù)理邏輯的基礎。英國數(shù)學家圖靈在1936年創(chuàng)立了自動機理論(亦稱圖靈機),1950年在其著作《計算機與智能》中首次提出“機器也能思維”,被譽為“人工智能之父”??傊@些人為人工智能的孕育和產(chǎn)生做出了巨大的貢獻。
形成期:1956年夏季,在美國達特茅斯大學舉辦了長達2個多月的研討會,熱烈地討論用機器模擬人類智能的問題。該次會議首次使用了“人工智能”這一術語。這是人類歷史上第一次人工智能研討會,標志著人工智能學科的誕生。其后的十幾年是人工智能的黃金時期。在接下來的幾年中,在眾多科學家的努力下,人工智能取得了矚目的突破,也在當時形成了廣泛的樂觀思潮。
暗淡期:20世紀70年代初,即使最杰出的AI程序也只能解決問題中最簡單的部分,發(fā)展遇到瓶頸也就是說所有的AI程序都只是“玩具”,無法解決更為復雜的問題。隨著AI遭遇批評,對AI提供資助的機構也逐漸停止了部分AI的資助。資金上的困難使得AI的研究方向縮窄,缺少了以往的自由探索。
知識應用期:在80年代,“專家系統(tǒng)”(Expect System)成為了人工智能中一個非常主流的分支。“專家系統(tǒng)”是一種程序,為計算機提供特定領域的專門知識和經(jīng)驗,計算機就能夠依據(jù)一組從專門知識中推演出的邏輯規(guī)則在某一特定領域回答或解決問題。不同領域的專家系統(tǒng)基本都是由知識庫、數(shù)據(jù)庫、推理機、解釋機制、知識獲取等部分組成。
集成發(fā)展期:得益于互聯(lián)網(wǎng)的蓬勃發(fā)展、計算機性能的突飛猛進、分布式系統(tǒng)的廣泛應用以及人工智能多分支的協(xié)同發(fā)展,人工智能在這一階段飛速發(fā)展。尤其是隨著深度學習和人工神經(jīng)網(wǎng)絡研究的不斷深入,人工智能在近幾十年中取得了長足的進步,取得了令人矚目的成就。
人工智能發(fā)展到今天,出現(xiàn)了很多令人矚目的研究成果。AlphaGo的勝利就是基于這些研究成果的一個里程碑。當前人工智能的研究熱點主要集中在自然語言處理、機器學習、人工神經(jīng)網(wǎng)絡等領域。
2.人工智能l展現(xiàn)狀與前景
人工智能當前有很多重要的研究領域和分支。目前,越來越多的AI項目依賴于分布式系統(tǒng),而當前研究的普遍熱點則集中于自然語言處理、機器學習和人工神經(jīng)網(wǎng)絡等領域。
自然語言處理:自然語言處理(Natural Language Processing,簡稱NLP),是語言學與人工智能的交叉學科,其主要功能就是實現(xiàn)讓機器明白人類的語言,這需要將人類的自然語言轉化為計算機能夠處理的機器語言。
自然語言處理主要包括詞法分析、句法分析和語義分析三大部分。詞法分析的核心就是分詞處理,即單詞的邊界處理。句法分析就是對自然語言中句子的結構、語法進行分析如辨別疑問句和感嘆句等。而語義分析則注重情感分析和整個段落的上下文分析,辨別一些字詞在不同的上下文定的語義和情感態(tài)度。
當前自然語言的處理主要有兩大方向。一種是基于句法-語義規(guī)則的理性主義理論,該理論認為需要為計算機制定一系列的規(guī)則,計算機在規(guī)則下進行推理與判斷。因此其技術路線是一系列的人為的語料建設與規(guī)則制定。第二種是基于統(tǒng)計學習的經(jīng)驗主義理論,這種理論在最近受到普遍推崇。該理論讓計算機自己通過學習并進行統(tǒng)計推斷的方式不停地從數(shù)據(jù)中“學習”語言,試圖刻畫真實世界的語言現(xiàn)象,從數(shù)據(jù)中統(tǒng)計語言的規(guī)律。
機器學習:機器學習(Machine Learning)是近20年來興起的人工智能一大重要領域。其主要是指通過讓計算機在數(shù)據(jù)中自動分析獲得規(guī)律,從而獲取“自我學習”的能力,并利用規(guī)律對未知數(shù)據(jù)進行判斷和預測的方法。
機器學致可以分為有監(jiān)督的學習和無監(jiān)督的學習。有監(jiān)督的學習是從給定的訓練數(shù)據(jù)集中練出一個函數(shù)和目標,當有新的數(shù)據(jù)到來時,可以由訓練得到函數(shù)預測目標。有監(jiān)督的學習要求訓練集同時有輸入和輸出,也就是所謂的特征和目標。而依據(jù)預測的結果是離散的還是連續(xù)的,將有監(jiān)督的學習分為兩大問題,即統(tǒng)計分類問題和回歸分析問題。統(tǒng)計分類的預測結果是離散的,如腫瘤是良性還是惡性等;而回歸分析問題目標是連續(xù)的,如天氣、股價等的預測。
無監(jiān)督學習的訓練集則沒有人為標注的結果,這就需要計算機去發(fā)現(xiàn)數(shù)據(jù)間的聯(lián)系并用來分類等。一種常見的無監(jiān)督學習是聚類分析(Cluster Analysis),它是將相似的對象通過靜態(tài)分類的方法分成不同的組別或者是特定的子集,讓同一個子集中的數(shù)據(jù)對象都有一些相似的屬性,比較常用的聚類方法是簡潔并快速的“K-均值”聚類算法。它基于K個中心并對距離這些中心最近的數(shù)據(jù)對象進行分類。
機器學習還包括如半監(jiān)督學習和增強學習等類別??偠灾?,機器學習是研究如何使用機器來模擬人類學習活動的一門學科,而其應用隨著人工智能研究領域的深入也變得越來越廣泛,如模式識別、計算機視覺、語音識別、推薦算法等領域越來越廣泛地應用到了機器學習中。
人工神經(jīng)網(wǎng)絡:在腦神經(jīng)科學領域,人們認為人類的意識及智能行為,都是通過巨大的神經(jīng)網(wǎng)絡傳遞的,每個神經(jīng)細胞通過突出與其他神經(jīng)細胞連接,當通過突觸的信號強度超過某個閾值時,神經(jīng)細胞便會進入激活狀態(tài),向所連接的神經(jīng)細胞一層層傳遞信號。于1943年提出的基于生物神經(jīng)元的M-P模型的主要思想就是將神經(jīng)元抽象為一個多輸入單輸出的信息處理單元,并通過傳遞函數(shù)f對輸入x1,x2…,xn進行處理并模擬神經(jīng)細胞的激活模式。主要的傳遞函數(shù)有階躍型、線性型和S型。
在此基礎上,對神經(jīng)網(wǎng)絡算法的研究又有諸多進展。日本的福島教授于1983年基于視覺認知模型提出了卷積神經(jīng)網(wǎng)絡計算模型。通過學習訓練獲取到卷積運算中所使用的卷積系數(shù),并通過不同層次與自由度的變化,可以得到較為優(yōu)化的計算結果。而AlphaGo也正是采用了這種深度卷積神經(jīng)網(wǎng)絡(DCNN)模型,提高了AlphaGo的視覺分類能力,也就是所謂的“棋感”,增強了其對全盤決策和把握的能力。
3.人工智能的發(fā)展前景
總體來看,人工智能的應用經(jīng)歷了博弈、感知、決策和反饋這幾個里程碑。在以上4個領域中,既是縱向發(fā)展的過程,也是橫向不斷改進的過程。
人工智能在博弈階段,主要是實現(xiàn)邏輯推理等功能,隨著計算機處理能力的進步以及深度學習等算法的改進,機器擁有了越來越強的邏輯與對弈能力。在感知領域,隨著自然語言處理的進步,機器已經(jīng)基本能對人類的語音與語言進行感知,并且能夠已經(jīng)對現(xiàn)實世界進行視覺上的感知。基于大數(shù)據(jù)的處理和機器學習的發(fā)展,機器已經(jīng)能夠對周圍的環(huán)境進行認知,例如微軟的Kinect就能夠準確的對人的肢體動作進行判斷。該領域的主要實現(xiàn)還包括蘋果的Siri,谷歌大腦以及無人駕駛汽車中的各種傳感器等。在以上兩個階段的基礎上,機器擁有了一定的決策和反饋的能力。無人駕駛汽車的蓬勃發(fā)展就是這兩個里程碑很好的例證。Google的無人駕駛汽車通過各種傳感器對周圍的環(huán)境進行感知并處理人類的語言等指令,利用所收集的信息進行最后的決策,比如操作方向盤、剎車等。
人工智能已經(jīng)滲透到生活中的各個領域。機器已經(jīng)能識別語音、人臉以及視頻內容等,從而實現(xiàn)各種人際交互的場景。在醫(yī)學領域,人工智能可以實現(xiàn)自動讀片和輔助診斷以及個性化t療和基因排序等功能。在教育領域,機器也承擔了越來越多的輔助教育,智能交互的功能。在交通領域,一方面無人車的發(fā)展表明無人駕駛是一個可以期待的未來,另一方面人工智能能夠帶來更加通暢和智能的交通。另外人工智能在安防、金融等領域也有非常廣闊的發(fā)展前景。總之,人工智能在一些具有重復性的和具備簡單決策的領域已經(jīng)是一種非常重要的工具,用來幫助人們解決問題,創(chuàng)造價值。
參考文獻
[1]阮曉東.從AlphaGo的勝利看人工智能的未來[J].新經(jīng)濟導刊,2016 (6):69-74.