卷積神經(jīng)網(wǎng)絡(luò)(CNN)基礎(chǔ)詳細(xì)說(shuō)明及其注意事項(xiàng)
本文是對(duì)卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)進(jìn)行介紹,主要內(nèi)容包括卷積神經(jīng)網(wǎng)絡(luò)概念、卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)、卷積神經(jīng)網(wǎng)絡(luò)求解、卷積神經(jīng)網(wǎng)絡(luò)LeNet-5結(jié)構(gòu)分析、卷積神經(jīng)網(wǎng)絡(luò)注意事項(xiàng)。
一、卷積神經(jīng)網(wǎng)絡(luò)概念上世紀(jì)60年代,Hubel等人通過(guò)對(duì)貓視覺(jué)皮層細(xì)胞的研究,提出了感受野這個(gè)概念,到80年代,F(xiàn)ukushima在感受野概念的基礎(chǔ)之上提出了神經(jīng)認(rèn)知機(jī)的概念,可以看作是卷積神經(jīng)網(wǎng)絡(luò)的第一個(gè)實(shí)現(xiàn)網(wǎng)絡(luò),神經(jīng)認(rèn)知機(jī)將一個(gè)視覺(jué)模式分解成許多子模式(特征),然后進(jìn)入分層遞階式相連的特征平面進(jìn)行處理,它試圖將視覺(jué)系統(tǒng)模型化,使其能夠在即使物體有位移或輕微變形的時(shí)候,也能完成識(shí)別。
卷積神經(jīng)網(wǎng)絡(luò)(ConvoluTIonal Neural Networks, CNN)是多層感知機(jī)(MLP)的變種。由生物學(xué)家休博爾和維瑟爾在早期關(guān)于貓視覺(jué)皮層的研究發(fā)展而來(lái)。視覺(jué)皮層的細(xì)胞存在一個(gè)復(fù)雜的構(gòu)造。這些細(xì)胞對(duì)視覺(jué)輸入空間的子區(qū)域非常敏感,我們稱(chēng)之為感受野,以這種方式平鋪覆蓋到整個(gè)視野區(qū)域。這些細(xì)胞可以分為兩種基本類(lèi)型,簡(jiǎn)單細(xì)胞和復(fù)雜細(xì)胞。簡(jiǎn)單細(xì)胞最大程度響應(yīng)來(lái)自感受野范圍內(nèi)的邊緣刺激模式。復(fù)雜細(xì)胞有更大的接受域,它對(duì)來(lái)自確切位置的刺激具有局部不變性。
通常神經(jīng)認(rèn)知機(jī)包含兩類(lèi)神經(jīng)元,即承擔(dān)特征提取的采樣元和抗變形的卷積元,采樣元中涉及兩個(gè)重要參數(shù),即感受野與閾值參數(shù),前者確定輸入連接的數(shù)目,后者則控制對(duì)特征子模式的反應(yīng)程度。卷積神經(jīng)網(wǎng)絡(luò)可以看作是神經(jīng)認(rèn)知機(jī)的推廣形式,神經(jīng)認(rèn)知機(jī)是卷積神經(jīng)網(wǎng)絡(luò)的一種特例。
CNN由紐約大學(xué)的Yann LeCun于1998年提出。CNN本質(zhì)上是一個(gè)多層感知機(jī),其成功的原因關(guān)鍵在于它所采用的局部連接和共享權(quán)值的方式,一方面減少了的權(quán)值的數(shù)量使得網(wǎng)絡(luò)易于優(yōu)化,另一方面降低了過(guò)擬合的風(fēng)險(xiǎn)。CNN是神經(jīng)網(wǎng)絡(luò)中的一種,它的權(quán)值共享網(wǎng)絡(luò)結(jié)構(gòu)使之更類(lèi)似于生物神經(jīng)網(wǎng)絡(luò),降低了網(wǎng)絡(luò)模型的復(fù)雜度,減少了權(quán)值的數(shù)量。該優(yōu)點(diǎn)在網(wǎng)絡(luò)的輸入是多維圖像時(shí)表現(xiàn)的更為明顯,使圖像可以直接作為網(wǎng)絡(luò)的輸入,避免了傳統(tǒng)識(shí)別算法中復(fù)雜的特征提取和數(shù)據(jù)重建過(guò)程。在二維圖像處理上有眾多優(yōu)勢(shì),如網(wǎng)絡(luò)能自行抽取圖像特征包括顏色、紋理、形狀及圖像的拓?fù)浣Y(jié)構(gòu);在處理二維圖像問(wèn)題上,特別是識(shí)別位移、縮放及其它形式扭曲不變性的應(yīng)用上具有良好的魯棒性和運(yùn)算效率等。
CNN本身可以采用不同的神經(jīng)元和學(xué)習(xí)規(guī)則的組合形式。
CNN具有一些傳統(tǒng)技術(shù)所沒(méi)有的優(yōu)點(diǎn):良好的容錯(cuò)能力、并行處理能力和自學(xué)習(xí)能力,可處理環(huán)境信息復(fù)雜,背景知識(shí)不清楚,推理規(guī)則不明確情況下的問(wèn)題,允許樣品有較大的缺損、畸變,運(yùn)行速度快,自適應(yīng)性能好,具有較高的分辨率。它是通過(guò)結(jié)構(gòu)重組和減少權(quán)值將特征抽取功能融合進(jìn)多層感知器,省略識(shí)別前復(fù)雜的圖像特征抽取過(guò)程。
CNN的泛化能力要顯著優(yōu)于其它方法,卷積神經(jīng)網(wǎng)絡(luò)已被應(yīng)用于模式分類(lèi),物體檢測(cè)和物體識(shí)別等方面。利用卷積神經(jīng)網(wǎng)絡(luò)建立模式分類(lèi)器,將卷積神經(jīng)網(wǎng)絡(luò)作為通用的模式分類(lèi)器,直接用于灰度圖像。
CNN是一個(gè)前潰式神經(jīng)網(wǎng)絡(luò),能從一個(gè)二維圖像中提取其拓?fù)浣Y(jié)構(gòu),采用反向傳播算法來(lái)優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),求解網(wǎng)絡(luò)中的未知參數(shù)。
CNN是一類(lèi)特別設(shè)計(jì)用來(lái)處理二維數(shù)據(jù)的多層神經(jīng)網(wǎng)絡(luò)。CNN被認(rèn)為是第一個(gè)真正成功的采用多層層次結(jié)構(gòu)網(wǎng)絡(luò)的具有魯棒性的深度學(xué)習(xí)方法。CNN通過(guò)挖掘數(shù)據(jù)中的空間上的相關(guān)性,來(lái)減少網(wǎng)絡(luò)中的可訓(xùn)練參數(shù)的數(shù)量,達(dá)到改進(jìn)前向傳播網(wǎng)絡(luò)的反向傳播算法效率,因?yàn)镃NN需要非常少的數(shù)據(jù)預(yù)處理工作,所以也被認(rèn)為是一種深度學(xué)習(xí)的方法。在CNN中,圖像中的小塊區(qū)域(也叫做“局部感知區(qū)域”)被當(dāng)做層次結(jié)構(gòu)中的底層的輸入數(shù)據(jù),信息通過(guò)前向傳播經(jīng)過(guò)網(wǎng)絡(luò)中的各個(gè)層,在每一層中都由過(guò)濾器構(gòu)成,以便能夠獲得觀測(cè)數(shù)據(jù)的一些顯著特征。因?yàn)榫植扛兄獏^(qū)域能夠獲得一些基礎(chǔ)的特征,比如圖像中的邊界和角落等,這種方法能夠提供一定程度對(duì)位移、拉伸和旋轉(zhuǎn)的相對(duì)不變性。
CNN中層次之間的緊密聯(lián)系和空間信息使得其特別適用于圖像的處理和理解,并且能夠自動(dòng)的從圖像抽取出豐富的相關(guān)特性。
CNN通過(guò)結(jié)合局部感知區(qū)域、共享權(quán)重、空間或者時(shí)間上的降采樣來(lái)充分利用數(shù)據(jù)本身包含的局部性等特征,優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),并且保證一定程度上的位移和變形的不變性。
CNN受視覺(jué)神經(jīng)機(jī)制的啟發(fā)而設(shè)計(jì),是為識(shí)別二維或三維信號(hào)而設(shè)計(jì)的一個(gè)多層感知器,這種網(wǎng)絡(luò)結(jié)構(gòu)對(duì)平移、縮放、傾斜等變形具有高度不變性。