CNN組成:
1. Convolutional layer(卷積層--CONV)
作用:主要就是通過(guò)一個(gè)個(gè)的filter,不斷地提取特征,從局部的特征到總體的特征,從而進(jìn)行圖像識(shí)別等等功能。
2. Pooling layer (池化層--POOL)
作用:是為了提取一定區(qū)域的主要特征,并減少參數(shù)數(shù)量,防止模型過(guò)擬合。擴(kuò)大感受野。減少冗余,做窗口滑動(dòng)卷積的時(shí)候,卷積值就代表了整個(gè)窗口的特征。因?yàn)榛瑒?dòng)的窗口間有大量重疊區(qū)域,出來(lái)的卷積值有冗余,進(jìn)行最大pooling或者平均pooling就是減少冗余。減少冗余的同時(shí),pooling也丟掉了局部位置信息,所以局部有微小形變,結(jié)果也是一樣的。
3. Fully Connected layer(全連接層--FC)
卷積取的是局部特征,全連接就是把以前的局部特征重新通過(guò)權(quán)值矩陣組裝成完整的圖,用到了所有的局部特征
相比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(NN)的優(yōu)點(diǎn):
1. 參數(shù)共享機(jī)制(parameters sharing)
因?yàn)?,?duì)于不同的區(qū)域,我們都共享同一個(gè)filter,因此就共享這同一組參數(shù)。這也是有道理的,通過(guò)前面的講解我們知道,filter是用來(lái)檢測(cè)特征的,那一個(gè)特征一般情況下很可能在不止一個(gè)地方出現(xiàn),比如“豎直邊界”,就可能在一幅圖中多出出現(xiàn),那么 我們共享同一個(gè)filter不僅是合理的,而且是應(yīng)該這么做的。
由此可見(jiàn),參數(shù)共享機(jī)制,讓我們的網(wǎng)絡(luò)的參數(shù)數(shù)量大大地減少。這樣,我們可以用較少的參數(shù),訓(xùn)練出更加好的模型,典型的事半功倍,而且可以有效地 避免過(guò)擬合。同樣,由于filter的參數(shù)共享,即使圖片進(jìn)行了一定的平移操作,我們照樣可以識(shí)別出特征,這叫做 “平移不變性”。因此,模型就更加穩(wěn)健了。
2. 連接的稀疏性(sparsity of connections)
由卷積的操作可知,輸出圖像中的任何一個(gè)單元,只跟輸入圖像的一部分有關(guān)系。而傳統(tǒng)神經(jīng)網(wǎng)絡(luò)中,由于都是全連接,所以輸出的任何一個(gè)單元,都要受輸入的所有的單元的影響。這樣無(wú)形中會(huì)對(duì)圖像的識(shí)別效果大打折扣。比較,每一個(gè)區(qū)域都有自己的專屬特征,我們不希望它受到其他區(qū)域的影響。
正是由于上面這兩大優(yōu)勢(shì),使得CNN超越了傳統(tǒng)的NN,開啟了神經(jīng)網(wǎng)絡(luò)的新時(shí)代。
-
圖像識(shí)別
+關(guān)注
關(guān)注
9文章
520瀏覽量
38274 -
cnn
+關(guān)注
關(guān)注
3文章
352瀏覽量
22217
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論