1. 程式人生 > >CNN網絡中的不變性理解

CNN網絡中的不變性理解

ssd clear height alt process -a roc 通過 max

神經網絡中的不變性

原文:https://blog.csdn.net/voxel_grid/article/details/79275637

  個人認為cnn中conv層對應的是“等變性”(Equivariance),由於conv層的卷積核對於特定的特征才會有較大激活值,所以不論 上一層特征圖譜(feature map)中的某一特征平移到何處,卷積核都會找到該特征並在此處呈現較大的激活值。這應該就是“等變性”

技術分享圖片

  這種“等變性”是由conv層的 1局部連接 2權值共享 兩個特性得到的。


  所謂的“形變不變性”,應該指的是,若是特征有較小的形變,那麽激活值不會有太多的變化。


  個人覺得沒有“旋轉不變性”,只能通過data argumentation這種方式(人為地對樣本做 鏡像、旋轉、縮放等操作)讓CNN自己去學習旋轉不變性。
而所謂的“尺度不變性”,個人覺得應該是由類似於SSD這種對不同尺寸(分辨率)的feature map作相同的處理得到的。CNN本身並不具備尺度不變性。

  真正的“不變性”(invariation)應該對應於pooling層,以max-pooling為例,若是2x2的池化,那麽特征在2x2的區域中平移,得到的結果是一樣的。越往後的pooling層,2x2的核的感受野就越大、所允許的平移也就越大。個人感覺這種“不變性”往往是針對 分類任務而言的。(其實說白了, 檢測任務就是對局部區域的分類,分割任務就是對單個像素的分類)

技術分享圖片
  還有一篇博文對CNN 對於圖像特征的各種不變性做了比較生動的解釋:
  http://blog.csdn.net/xiaojiajia007/article/details/78396319(原文)

CNN網絡中的不變性理解