<label id="jgr5k"></label>
    <legend id="jgr5k"><track id="jgr5k"></track></legend>

    <sub id="jgr5k"></sub>
  1. <u id="jgr5k"></u>
      久草国产视频,91资源总站,在线免费看AV,丁香婷婷社区,久久精品99久久久久久久久,色天使av,无码探花,香蕉av在线
      您正在使用IE低版瀏覽器,為了您的雷峰網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
      此為臨時鏈接,僅用于文章預覽,將在時失效
      人工智能開發者 正文
      發私信給AI研習社
      發送

      0

      CNN 中千奇百怪的卷積方式大匯總

      本文作者: AI研習社 編輯:賈智龍 2017-09-20 17:13
      導語:卷積方式那么多,哪一種最適合你們?

      雷鋒網按:本文原作者Xf Mao,本文原載于知乎。雷鋒網已獲得作者授權。

      推薦另一篇很好的總結:變形卷積核、可分離卷積?卷積神經網絡中十大拍案叫絕的操作。

      這篇總結很專業,并且很好的回答了評論中的疑問:

      Depthwise Separable Convolution 就是卷積加 group 吧?

      這篇文章里是這么說的:

      要注意的是,Group conv 是一種 channel 分組的方式,Depthwise +Pointwise 是卷積的方式,只是 ShuffleNet 里面把兩者應用起來了。因此 Group conv 和 Depthwise +Pointwise 并不能劃等號。

      我覺得 Depthwise +Pointwise 卷積是提供一種把 feature map 的空間信息(height&width)和通道信息(channel)拆分分別處理的方法,而 group 卷積只是單純的通道分組處理,降低復雜度。

      對于表述有誤的地方歡迎更正!另外目前僅列舉了一些比較著名且實用的卷積操作,對于沒提到的,希望大家指出與補充

      1. 原始版本

      最早的卷積方式還沒有任何騷套路,那就也沒什么好說的了。

      見下圖,原始的 conv 操作可以看做一個 2D 版本的無隱層神經網絡。

      附上一個卷積詳細流程:

      【TensorFlow】tf.nn.conv2d 是怎樣實現卷積的? - CSDN 博客

      CNN 中千奇百怪的卷積方式大匯總

      代表模型:

      LeNet:最早使用 stack 單卷積 + 單池化結構的方式,卷積層來做特征提取,池化來做空間下采樣

      AlexNet:后來發現單卷積提取到的特征不是很豐富,于是開始 stack 多卷積 + 單池化的結構

      VGG([1409.1556] Very Deep Convolutional Networks for Large-Scale Image Recognition):結構沒怎么變,只是更深了

      2. 多隱層非線性版本

      這個版本是一個較大的改進,融合了 Network In Network 的增加隱層提升非線性表達的思想,于是有了這種先用 1*1 的卷積映射到隱空間,再在隱空間做卷積的結構。同時考慮了多尺度,在單層卷積層中用多個不同大小的卷積核來卷積,再把結果 concat 起來。

      這一結構,被稱之為 “Inception”

      CNN 中千奇百怪的卷積方式大匯總

      代表模型:

      Inception-v1([1409.4842] Going Deeper with Convolutions):stack 以上這種 Inception 結構

      Inception-v2(Accelerating Deep Network Training by Reducing Internal Covariate Shift):加了 BatchNormalization 正則,去除 5*5 卷積,用兩個 3*3 代替

      Inception-v3([1512.00567] Rethinking the Inception Architecture for Computer Vision):7*7 卷積又拆成 7*1+1*7

      Inception-v4([1602.07261] Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning):加入了殘差結構

      3. 空洞卷積

      Dilation 卷積,通常譯作空洞卷積或者卷積核膨脹操作,它是解決 pixel-wise 輸出模型的一種常用的卷積方式。一種普遍的認識是,pooling 下采樣操作導致的信息丟失是不可逆的,通常的分類識別模型,只需要預測每一類的概率,所以我們不需要考慮 pooling 會導致損失圖像細節信息的問題,但是做像素級的預測時(譬如語義分割),就要考慮到這個問題了。

      所以就要有一種卷積代替 pooling 的作用(成倍的增加感受野),而空洞卷積就是為了做這個的。通過卷積核插 “0” 的方式,它可以比普通的卷積獲得更大的感受野,這個 idea 的 motivation 就介紹到這里。具體實現方法和原理可以參考如下鏈接:

      如何理解空洞卷積(dilated convolution)?

      膨脹卷積 --Multi-scale context aggregation by dilated convolutions

      我在博客里面又做了一個空洞卷積小 demo 方便大家理解

      【Tensorflow】tf.nn.atrous_conv2d 如何實現空洞卷積? - CSDN 博客

      代表模型:

      FCN([1411.4038] Fully Convolutional Networks for Semantic Segmentation):Fully convolutional networks,顧名思義,整個網絡就只有卷積組成,在語義分割的任務中,因為卷積輸出的 feature map 是有 spatial 信息的,所以最后的全連接層全部替換成了卷積層。

      Wavenet(WaveNet: A Generative Model for Raw Audio):用于語音合成。

      4. 深度可分離卷積

      Depthwise Separable Convolution,目前已被 CVPR2017 收錄,這個工作可以說是 Inception 的延續,它是 Inception 結構的極限版本。

      為了更好的解釋,讓我們重新回顧一下 Inception 結構(簡化版本):

      CNN 中千奇百怪的卷積方式大匯總

      上面的簡化版本,我們又可以看做,把一整個輸入做 1*1 卷積,然后切成三段,分別 3*3 卷積后相連,如下圖,這兩個形式是等價的,即 Inception 的簡化版本又可以用如下形式表達:

      CNN 中千奇百怪的卷積方式大匯總

      OK,現在我們想,如果不是分成三段,而是分成 5 段或者更多,那模型的表達能力是不是更強呢?于是我們就切更多段,切到不能再切了,正好是 Output channels 的數量(極限版本):

      CNN 中千奇百怪的卷積方式大匯總

      于是,就有了深度卷積(depthwise convolution),深度卷積是對輸入的每一個 channel 獨立的用對應 channel 的所有卷積核去卷積,假設卷積核的 shape 是 [filter_height, filter_width, in_channels, channel_multiplier],那么每個 in_channel 會輸出 channel_multiplier 那么多個通道,最后的 feature map 就會有 in_channels * channel_multiplier 個通道了。反觀普通的卷積,輸出的 feature map 一般就只有 channel_multiplier 那么多個通道。

      具體的過程可參見我的 demo:

      【Tensorflow】tf.nn.depthwise_conv2d 如何實現深度卷積? - CSDN 博客

      既然叫深度可分離卷積,光做 depthwise convolution 肯定是不夠的,原文在深度卷積后面又加了 pointwise convolution,這個 pointwise convolution 就是 1*1 的卷積,可以看做是對那么多分離的通道做了個融合。

      這兩個過程合起來,就稱為 Depthwise Separable Convolution 了:

      【Tensorflow】tf.nn.separable_conv2d 如何實現深度可分卷積? - CSDN 博客

      代表模型:Xception(Xception: Deep Learning with Depthwise Separable Convolutions

      5. 可變形卷積

      可形變卷積的思想很巧妙:它認為規則形狀的卷積核(比如一般用的正方形 3*3 卷積)可能會限制特征的提取,如果賦予卷積核形變的特性,讓網絡根據 label 反傳下來的誤差自動的調整卷積核的形狀,適應網絡重點關注的感興趣的區域,就可以提取更好的特征。

      如下圖:網絡會根據原位置(a),學習一個 offset 偏移量,得到新的卷積核(b)(c)(d),那么一些特殊情況就會成為這個更泛化的模型的特例,例如圖(c)表示從不同尺度物體的識別,圖(d)表示旋轉物體的識別。

      CNN 中千奇百怪的卷積方式大匯總

      這個 idea 的實現方法也很常規:

      CNN 中千奇百怪的卷積方式大匯總

      上圖中包含兩處卷積,第一處是獲取 offsets 的卷積,即我們對 input feature map 做卷積,得到一個輸出(offset field),然后再在這個輸出上取對應位置的一組值作為 offsets。假設 input feature map 的 shape 為 [batch,height,width,channels],我們指定輸出通道變成兩倍,卷積得到的 offset field 就是 [batch,height,width,2×channels],為什么指定通道變成兩倍呢?因為我們需要在這個 offset field 里面取一組卷積核的 offsets,而一個 offset 肯定不能一個值就表示的,最少也要用兩個值(x 方向上的偏移和 y 方向上的偏移)所以,如果我們的卷積核是 3*3,那意味著我們需要 3*3 個 offsets,一共需要 2*3*3 個值,取完了這些值,就可以順利使卷積核形變了。第二處就是使用變形的卷積核來卷積,這個比較常規。(這里還有一個用雙線性插值的方法獲取某一卷積形變后位置的輸入的過程)

      這里有一個介紹性的 Slide:http://prlab.tudelft.nl/sites/default/files/Deformable_CNN.pdf

      代表模型:Deformable Convolutional Networks(Deformable Convolutional Networks):暫時還沒有其他模型使用這種卷積,期待后續會有更多的工作把這個 idea 和其他視覺任務比如檢測,跟蹤相結合。

      6. 特征重標定卷積

      這是 ImageNet 2017 競賽 Image Classification 任務的冠軍模型 SENet 的核心模塊,原文叫做”Squeeze-and-Excitation“,我結合我的理解暫且把這個卷積稱作” 特征重標定卷積 “。

      和前面不同的是,這個卷積是對特征維度作改進的。一個卷積層中往往有數以千計的卷積核,而且我們知道卷積核對應了特征,于是乎那么多特征要怎么區分?這個方法就是通過學習的方式來自動獲取到每個特征通道的重要程度,然后依照計算出來的重要程度去提升有用的特征并抑制對當前任務用處不大的特征。

      CNN 中千奇百怪的卷積方式大匯總

      這個想法的實現異常的簡單,簡單到你難以置信。

      首先做普通的卷積,得到了一個的 output feature map,它的 shape 為 [C,H,W],根據 paper 的觀點,這個 feature map 的特征很混亂。然后為了獲得重要性的評價指標,直接對這個 feature map 做一個 Global Average Pooling,然后我們就得到了長度為 C 的向量。(這里還涉及到一個額外的東西,如果你了解卷積,你就會發現一旦某一特征經常被激活,那么 Global Average Pooling 計算出來的值會比較大,說明它對結果的影響也比較大,反之越小的值,對結果的影響就越小)

      然后我們對這個向量加兩個 FC 層,做非線性映射,這倆 FC 層的參數,也就是網絡需要額外學習的參數。

      最后輸出的向量,我們可以看做特征的重要性程度,然后與 feature map 對應 channel 相乘就得到特征有序的 feature map 了。

      雖然各大框架現在都還沒有擴展這個卷積的 api,但是我們實現它也就幾行代碼的事,可謂是簡單且實用了。

      另外它還可以和幾個主流網絡結構結合起來一起用,比如 Inception 和 Res:

      CNN 中千奇百怪的卷積方式大匯總CNN 中千奇百怪的卷積方式大匯總

      代表模型:Squeeze-and-Excitation Networks(Squeeze-and-Excitation Networks

      7. 比較

      我們把圖像(height,width)作為空間維度,把 channels 做為特征維度。
      CNN 中千奇百怪的卷積方式大匯總

      雷峰網版權文章,未經授權禁止轉載。詳情見轉載須知

      CNN 中千奇百怪的卷積方式大匯總

      分享:
      相關文章

      編輯

      聚焦數據科學,連接 AI 開發者。更多精彩內容,請訪問:yanxishe.com
      當月熱門文章
      最新文章
      請填寫申請人資料
      姓名
      電話
      郵箱
      微信號
      作品鏈接
      個人簡介
      為了您的賬戶安全,請驗證郵箱
      您的郵箱還未驗證,完成可獲20積分喲!
      請驗證您的郵箱
      立即驗證
      完善賬號信息
      您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
      立即設置 以后再說
      主站蜘蛛池模板: 欧美日韩综合在线精品| 国内精品久久久久影院蜜芽| 久久无码一区二区三区| 丁香综合| 成人精品一区二区三区中文字幕| 麻豆a级片| 色五月五月丁香亚洲综合网| 99噜噜噜在线播放| 亚洲中文字| 午夜福利影院不卡影院| 国产亚洲av夜间福利香蕉149| 广宗县| 免费超爽大片黄| 麻麻丰满的大屁股| 色色亚洲| 成全视频在线观看免费高清动漫| 五月综合激情婷婷六月色窝| 精品人妻少妇| 无码人妻精品中文字幕免费东京热| 国产va免费精品高清在线观看 | 国产精品久久久| 少妇精品导航| 两个人的免费视频| 国产香蕉97碰碰久久人人| 五月天成人社区| 亚洲另类色综合网站| 精品国产成人a在线观看 | 欧美日韩v| 久久精品水蜜桃av综合天堂| 邹城市| 久久久久久毛片免费播放| 000000亚洲| 成人网站免费看黄a站视频| 中文字幕熟妇人| 成人网中文字幕| 人妻久久久一区二区三区| 欧美另类潮喷| 亚洲欧洲另类| 亚洲自拍偷拍一区| 国产中文字幕在线精品| 国产地址二永久伊甸园|