日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > 卷积神经网络 >内容正文

卷积神经网络

卷积神经网络CNN中1×1卷积作用理解

發(fā)布時(shí)間:2023/12/8 卷积神经网络 100 豆豆
生活随笔 收集整理的這篇文章主要介紹了 卷积神经网络CNN中1×1卷积作用理解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

0.引言

研究 GoogLeNet 和 VGG 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的時(shí)候,都看見了它們?cè)谀承佑胁扇?1x1 作為卷積核,在最開始看到的AlexNet中都是出現(xiàn)了卷積核是 3x3和5×5的。那么,1x1 的卷積核有什么意義呢?

最初應(yīng)用 1x1 卷積核的神經(jīng)網(wǎng)絡(luò)是 Network In Network,然后 GoogLeNet 和 VGG 也不約而同的更正了。

他們?cè)谡撐闹薪忉?#xff0c;大概有下面 2 個(gè)意義。

1、增加網(wǎng)絡(luò)的深度,添加非線性

其一:

這個(gè)就比較好理解了,1x1 的卷積核雖小,但也是卷積核,加 1 層卷積,網(wǎng)絡(luò)深度自然會(huì)增加。

其實(shí)問題往下挖掘,應(yīng)該是增加網(wǎng)絡(luò)深度有什么好處?為什么非要用 1x1 來增加深度呢?其它的不可以嗎?

其實(shí),這涉及到感受野的問題,我們知道卷積核越大,它生成的 featuremap 上單個(gè)節(jié)點(diǎn)的感受野就越大,隨著網(wǎng)絡(luò)深度的增加,越靠后的 featuremap 上的節(jié)點(diǎn)感受野也越大。因此特征也越來越形象,也就是更能看清這個(gè)特征是個(gè)什么東西。層數(shù)越淺,就越不知道這個(gè)提取的特征到底是個(gè)什么東西。

解釋:

好比以上這個(gè)圖,當(dāng)層數(shù)越淺時(shí),我們只能看到low level parts 也就是一些細(xì)節(jié)的紋理,并不知道這個(gè)紋理是來自于車輪,車身,還是其他哪里。但是隨著網(wǎng)絡(luò)層數(shù)的加深,感受野增大,到了mid level parts時(shí),就可以看到車的一部分零件了,比如看到了車輪,車窗,但是看不完。到了層數(shù)很深后,就是high level parts了,可以看到這個(gè)物品是個(gè)完整的車子,或者是其他一個(gè)什么東西。

其二:

但有的時(shí)候,我們想在不增加感受野的情況下,讓網(wǎng)絡(luò)加深,為的就是引入更多的非線性。而 1x1 卷積核,恰巧可以辦到。

我們知道,卷積后生成圖片的尺寸受卷積核的大小和卷積核個(gè)數(shù)影響,但如果卷積核是 1x1 ,個(gè)數(shù)也是 1,那么生成后的圖像長(zhǎng)寬不變,厚度為1。

但通常一個(gè)卷積層是包含激活和池化的。也就是多了激活函數(shù),比如 Sigmoid 和 Relu。

所以,在輸入不發(fā)生尺寸的變化下,加入卷積層的同時(shí)引入了更多的非線性,這將增強(qiáng)神經(jīng)網(wǎng)絡(luò)的表達(dá)能力。

2、升維或者降維

大家可以看下面這張圖:

在這里插入圖片描述

我們可以直觀地感受到卷積過程中:卷積后的的 featuremap 通道數(shù)是與卷積核的個(gè)數(shù)相同的

所以,如果輸入圖片通道是 3,卷積核的數(shù)量是 6 ,那么生成的 feature map 通道就是 6,這就是升維,如果卷積核的數(shù)量是 1,那么生成的 feature map 只有 1 個(gè)通道,這就是降維度。

值得注意的是,所有尺寸的卷積核都可以達(dá)到這樣的目的。

3、減少網(wǎng)絡(luò)參數(shù),是成倍數(shù)減少

那為什么要用 1x1 呢?

原因就是數(shù)據(jù)量的大小,我們知道在訓(xùn)練的時(shí)候,卷積核里面的值就是要訓(xùn)練的權(quán)重。下面舉1個(gè)例子:

在RestNet中:

?

看右圖,輸入是一個(gè)3×3×256的特征,第一個(gè)步驟用64個(gè)1x1的卷積把256維channel降到64維,然后在最后通過1x1卷積恢復(fù)到256個(gè)channel,整體上用的參數(shù)數(shù)目:1x1x256x64 + 3x3x64x64 + 1x1x64x256 = 69632,而不使用1×1卷積的話參考左圖,輸入假設(shè)是3x3x256(圖中是3x3x64我們?yōu)榱藢?duì)比右圖參數(shù)個(gè)數(shù)所以改變一下),第一步經(jīng)過256個(gè)卷積核3×3×256,第二部再經(jīng)過256個(gè)卷積核3×3×256。所以參數(shù)數(shù)目: 3x3x256x256x2 = 1179648,參數(shù)個(gè)數(shù)差了16.94倍

減少參數(shù)的例子還出現(xiàn)在哪里呢?我們看VGG

Q1: 為什么3個(gè)3x3的卷積可以代替7x7的卷積?

  • 3個(gè)3x3的卷積,在卷積層之后添加使用了3個(gè)非線性激活函數(shù),增加了非線性表達(dá)能力,使得分割平面更具有可分性。同時(shí)使得網(wǎng)絡(luò)層次加深了。
  • 減少參數(shù)個(gè)數(shù)。對(duì)于C個(gè)通道的單個(gè)卷積核,7x7含有參數(shù)7x7×C, 3個(gè)3x3的參數(shù)個(gè)數(shù)為3x3x3×C,49/27≈1.81 參數(shù)大大減少。
  • 2個(gè)3×3卷積核疊加可以當(dāng)做1個(gè)5×5卷積核,3個(gè)3×3卷積核疊加可以當(dāng)做1個(gè)7×7卷積核。但是大的卷積核拆成3×3疊加之后可以進(jìn)一步減少參數(shù)個(gè)數(shù),但是實(shí)際的感受野不會(huì)發(fā)生改變。

    下圖中 最底下是5×5的,用3×3的去卷積得到3×3的圖(也就是第二層),再用3×3的去卷積,就會(huì)得到一個(gè)數(shù),也就是下圖最頂層。

    既然,感受野的大小是一樣的,那么用 3x3 有什么好處呢?

    答案有 2,一是參數(shù)更少,二是層數(shù)加深了。

    現(xiàn)在解釋參數(shù)變少的問題。(為什么是C^2還是感覺有問題,我理解就是C)

    假設(shè)現(xiàn)在有 3 層 3x3 卷積核堆疊的卷積層,卷積核的通道是 C 個(gè),那么它的參數(shù)總數(shù)是 3x(3Cx3C) = 27C^2。同樣和它感受野大小一樣的一個(gè)卷積層,卷積核是 7x7 的尺寸,通道也是 C 個(gè),那么它的參數(shù)總數(shù)就是 49C^2。通過計(jì)算很容易得出結(jié)論,3x3 卷積方案的參數(shù)數(shù)量比 7x7 方案少了 81% 多,并且它的層級(jí)還加深了。

    4.再換一種理解方式

    當(dāng)1*1卷積出現(xiàn)時(shí),在大多數(shù)情況下它作用是升/降特征的維度,這里的維度指的是通道數(shù)(厚度),而不改變圖片的寬和高。

    舉個(gè)例子,比如某次卷積之后的結(jié)果是W*H*6的特征,現(xiàn)在需要用1*1的卷積核將其降維成W*H*5,即6個(gè)通道變成5個(gè)通道:

    如下圖就是一個(gè)W*H*6的特征,而1*1的卷積核在圖上標(biāo)出,卷積核自身的厚度也是6(圖畫的好難看!!)

    這里寫圖片描述

    通過一次卷積操作,W*H*6將變?yōu)閃*H*1,這樣的話,使用5個(gè)1*1的卷積核,顯然可以卷積出5個(gè)W*H*1,再做通道的串接操作,就實(shí)現(xiàn)了W*H*5。

    在這里先計(jì)算一下參數(shù)數(shù)量,5個(gè)卷積核,每個(gè)卷積核的尺寸是1*1*6,也就是一種有30個(gè)參數(shù)。

    我們還可以用另一種角度去理解1*1卷積,可以把它看成是一種全連接,如下圖:

    這里寫圖片描述

    第一層有6個(gè)神經(jīng)元,分別是a1—a6,通過全連接之后變成5個(gè),分別是b1—b5,第一層的六個(gè)神經(jīng)元要和后面五個(gè)實(shí)現(xiàn)全連接,本圖中只畫了a1—a6連接到b1的示意,可以看到,在全連接層b1其實(shí)是前面6個(gè)神經(jīng)元的加權(quán)和,權(quán)對(duì)應(yīng)的就是w1—w6,到這里就很清晰了:

    第一層的6個(gè)神經(jīng)元其實(shí)就相當(dāng)于輸入特征里面那個(gè)通道數(shù):6,而第二層的5個(gè)神經(jīng)元相當(dāng)于1*1卷積之后的新的特征通道數(shù):5。

    w1—w6是一個(gè)卷積核的權(quán)系數(shù),如何要計(jì)算b2—b5,顯然還需要4個(gè)同樣尺寸的核。

    最后一個(gè)問題,圖像的一層相比于神經(jīng)元還是有區(qū)別的,這在于是一個(gè)2D矩陣還是一個(gè)數(shù)字,但是即便是一個(gè)2D矩陣的話也還是只需要一個(gè)參數(shù)(1*1的核),這就是因?yàn)閰?shù)的權(quán)值共享。就是說一個(gè)卷積核的參數(shù)可以對(duì)整張圖片進(jìn)行卷積一遍。

    參考文獻(xiàn):

    https://blog.csdn.net/briblue/article/details/83151475

    https://blog.csdn.net/chaipp0607/article/details/60868689

    ?

    總結(jié)

    以上是生活随笔為你收集整理的卷积神经网络CNN中1×1卷积作用理解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。