国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

卷積神經網絡

hedge_hog / 1252人閱讀

摘要:卷積神經網絡已經斷斷續續的學了大半年了,卻發現自己還是一頭霧水,連基本的概念都沒搞清楚。將卷積神經網絡的基本概念和原理理了一下,并整理出來,以供大家參考。

??卷積神經網絡已經斷斷續續的學了大半年了,卻發現自己還是一頭霧水,連基本的概念都沒搞清楚。這兩天在網上查了一些資料,看了一些教程。將卷積神經網絡的基本概念和原理理了一下,并整理出來,以供大家參考。注:本文中有些結論是本人對卷積神經網絡的理解和總結,如有不正,還請各位大蝦指正!

1.卷積神經網絡的概念

??卷積神經網絡是(Convolutional Neural Networks,CNN)是一類包含卷積計算且有深度結構的前饋型神經網絡,是深度學習的代表算法之一。卷積神經網絡是模仿生物神經網絡的行為特征,他從信息處理的角度對人腦神經元網絡進行抽象,建立某種簡單數學模型,按不同的連接方式組成不同的網絡。
??卷積神經網絡的構成:

數據輸入/input-> 卷積層(卷積/CONV->激勵/RELU->池化/POOL ... n)->全連接/fullconnection->softmax/分類/歸一化->輸出
2 數據輸入層

??數據輸入時,需要對原始數據圖像進行預處理,包括以下3各步驟:
??1.去均值;即將樣本的均值轉化為0.
??2.歸一化;即將樣本在各個維度上進行歸一化處理
??3.PCA/白化; PCA(principal components analysis),是一種降維和去除相關性的方法,它通過方差來評價特征的價值,認為方差大的特征包含信息多,應予以保留。白化是將PCA去相關性之后將每一特征的方差歸一化到1

3 卷積層/隱藏層 3.1 卷積層相關的一些概念

??在學習卷積層之前,先來了解一下卷積層相關的一些概念。
感受野(Receptive Field):
??卷積神經網絡每一層輸出的特征圖(feature map)上的像素點在輸入圖片上映射的區域大小。通俗點講就是特征圖上一個點對應輸入圖上的區域。
卷積核:
??卷積核就是圖像處理時,給定輸入圖像,在輸出圖像中每一個像素時輸入圖像中一個小區域中像素的加權平均,其中權值由一個函數定義,這個函數稱為卷積核,也就是下面說到的filter、濾波器
卷積深度:
??卷積層卷積的次數
卷積核大小:
??卷積核/濾波器做卷積時每次采樣的感受野的大小。卷積核大小可以指定為小于輸入圖像尺寸的任意值,卷積核越大,可提取的輸入特征越復雜。
步長/stride:
??定義了卷積核相鄰兩次掃過特征圖時位置的距離,卷積步長為1時,卷積核會逐個掃過特征圖的元素,步長為n時會在下一次掃描跳過n-1個像素。
填充/padding:
??對圖像做卷積時,nn的圖像每次卷積之后會生成(n-f+1)(n-f+1)特征,隨著卷積層數的增多,最終的卷積結果會一直縮小下去,最后變成0。這是因為在做卷積的時候邊緣像素使用的次數相對其它像素較少,導致卷積后邊緣特征的不斷弱化。為了解決這個問題,我們可以在圖片邊緣進行加0填充。稱為zero-padding。這樣padding操作就可以保證卷積前后寬高不變化。填充可以分為以下四種:
??1.有效填充(valid padding):即完全不使用填充,卷積核只允許訪問特征圖中包含完整感受野的位置。輸出的所有像素都是輸入中相同數量像素的函數。使用有效填充的卷積被稱為“窄卷積(narrow convolution)”,窄卷積輸出的特征圖尺寸為(L-f+1)/s。
??2.相同填充/半填充(same/half padding):只進行足夠的填充來保持輸出和輸入的特征圖尺寸相同。相同填充下特征圖的尺寸不會縮減但輸入像素中靠近邊界的部分相比于中間部分對于特征圖的影響更小,即存在邊界像素的欠表達。使用相同填充的卷積被稱為“等長卷積(equal-width convolution)”。
??3.全填充(full padding):進行足夠多的填充使得每個像素在每個方向上被訪問的次數相同。步長為1時,全填充輸出的特征圖尺寸為L+f-1,大于輸入值。使用全填充的卷積被稱為“寬卷積(wide convolution)”
??4.任意填充(arbitrary padding):介于有效填充和全填充之間,人為設定的填充,較少使用。
??卷積層參數包括卷積核大小、步長和填充,三者共同決定了卷積層輸出特征圖的尺寸,是卷積神經網絡重要的超參數(注:超參數是在開始學習過程之前設置值的參數)。

3.2 卷積

??1. 卷積的數學概念:
??卷積/convolution是通過兩個函數f和g生成第三個函數的一種數學方法,表征函數f與g經過翻轉和和平移后重疊部分的面積,因此,卷積也就是具備了翻轉和平移不變性。
??2.卷積的作用
??通過指定大小的卷積核/濾波器(感受野大小通常為奇數1,3,5,7,...), 按一定步長對逐個掃描圖像做卷積,用來提取圖像特征。
??3.卷積操作
??做卷積時,使用卷積核ffNC的矩陣,NC為輸入圖像的channel數,按固定步長s掃描輸入圖像進行卷積操作。如下圖所示,卷積核/濾波器將矩陣中的數據與掃描區域對應的數據相乘,并累加得到的結果作為卷積輸出結果(栗子中輸入圖像和濾波器channel為1)。掃描完整個輸入圖像之后可以得到該圖像的卷積矩陣RW*RH。
??RW=[(NW+2p-f)/s + 1];
??RH=[(NH+2p-f)/s + 1];

??對一幅圖像進行特征提取的結果:

??從上圖可知,同樣的圖片,使用不同的卷積核,不同的卷積核/濾波器,會導致提取的特征點不一樣。

3.3 池化

??1.池化的原理和作用
??在圖像中,相鄰位置的圖像像素具有很大的相關性。圖像在卷積之后圖像/特征的尺寸變化不大,由于圖像的相關性,導致卷積之后提取的圖像特征會有很大的相關性而導致產生很多冗余的特征。而池化則能夠對特征圖像進行壓縮,一方面可以簡化網絡復雜度,另一方面可以保留圖像的主要特征。

??2.池化主要有兩種類型:
??最大池化
??池化時取區域像素的最大值作為該區域的池化結果,是目前比較通用的池化方法。
??平均池化
??池化時取區域像素的平均值作為該區域的池化結果,目前使用不多。

??3.池化的過程
??池化時,使用濾波器對輸入圖像進行掃描,在掃描區域內取最大值(如果是平均池化則取區域內的平均值)作為池化的結果,這樣不僅能壓縮特征圖像的大小,還能保留圖像的主要特征。濾波器使用給定的跨度對輸入圖像/特征進行掃描,并輸出結果區域內的最大值作/平均值作為池化結果。如下圖所示:

??假設輸入圖像的寬是NW,高是NH,濾波器尺寸是ff,步長是s,池化輸出結果是RWRH。填充為P。那么
RW=[(NW-2p-f)/s+1];
RH=[(NH-2p-f)/s+1];

??如上圖所示,池化后圖像的特征數減少,可以有效的降低網絡的復雜度,同時保留圖像的主特征。有些類似于圖像的縮放,但有所不同的是,圖像縮放時所有的圖像特征都有有損失,但是最大池化會優先保留圖像的主特征(最大值),從而到達更好的特征提取效果。

4 激勵函數

??激勵函數在神經網絡的作用通俗上講就是將多個線性輸入轉換為非線性的關系。不使用激勵函數的話,神經網絡每層都只做線性變換,多層輸入疊加后還是線性變化。因為線性模型的表達力不夠,激勵函數可以引入非線性因素。
??常見的激勵函數:
??1.sigmoid

??如上圖所示,sigmoid函數將一個實數壓縮至0-1之間。當x非常大時,該函數無限接近1,當x為非常大的負數時,該函數無限接近0。sigmoid函數很好地解釋了神經元受到刺激后是否會激活和向后傳遞的場景(0,沒有被激活,1,被完全激活),故在早期的神經網絡中用得比較多。但是sigmoid函數容易出現梯度彌散(靠近輸出層的梯度大,參數更新快,靠近輸入層的梯度小,參數更新慢)或者梯度飽和(靠近輸出層的梯度小,參數更新慢,幾乎不再變化)。
??2.tanh

??如上圖所示,tanh(tanh(x)=sinh(x)/cosh(x))函數將輸入值壓縮至-1到1之間。tanh函數在特征相差明顯時會有很好的效果,在循環過程中會不斷擴大特征效果。該函數與sigmoid類似,也存在著梯度彌散或梯度飽和的缺點,它們的區別是,tanh函數是0均值的,因此在實際應用中會比sigmoid更好。

??3.ReLU

??ReLU(Rectified Linear Unit),線性整流函數,又叫修正線性單元。該函數被認為有一定的生物學原理,并且由于在實踐中通常有著比其他常用激活函數更好的效果,而被如今的深度神經網絡廣泛使用于諸如圖像識別等計算機視覺人工智能領域。對于進入神經元的輸入x,使用線性整流激活函數的神經元會輸出max(0, wTx+b)。ReLU的缺點是比較脆弱,當一個非常大的梯度經過ReLU神經元時,更新參數后,這個神經元再也不會被激活,導致所有流過這個神經元的梯度都將變成0,造成ReLu神經元的死亡。故在訓練中學習率不宜設置得太高。
??4. LReLU

??LReLU(Leaky ReLU),帶泄漏線性整流函數,是為了嘗試解決ReLU死亡問題而產生的一個變種。如上圖所示,其中ai是一個很小的常數,i表示不同通道對于不同的ai。ReLU中,當x<0時,函數值為0,而Leaky ReLU則是給出了一個很小的負數梯度值。這樣保留了一些負軸的值,使得負軸的信息不會全部丟失。
??5.ELU


emsp;?ELU(The exponential Linear unit),指數線性單元。如上圖所示,ELU融合了sigmoid和RELU,左側具有軟飽和性,讓ELU對輸入變化或噪音更魯棒。右側無飽和性,能夠緩解ELU梯隊消失。
??6.Maxout

??Maxout時ReLU的一個泛化版本,如上圖所示,當w1、b1設置為0時,便轉換為ReLU公式。因此Maxout繼承了ReLU的優點,有沒有“一不小心就死掉”的擔憂。該函數相當于在網絡中加入一個激活函數層,該函數層與其它激活函數的不同之處在于,該函數層增加了k個&神經元,并輸出k個神經元中最大的激活值。常見的隱含層輸出:
??hi(x)=sigmoid(xTW…i+bi)
??而Maxout網絡中輸出
??hi(x)=max(Zi1,Zi2,..., Zik);
??其中Zij=XTWij + bij,其中j取值范圍為[1,k]
??因此,Maxout是一個可學習的分段線性函數。實驗證明,Maxout可以擬合任何凸函數,是一個通用的函數你擬合器。如下圖所示:

;優點:
??1)、擬合能力非常強,可以擬合任意凸函數
??2)、具有ReLU的所有優點,線性,不飽和性。
??3)、不會導致神經元死亡
??缺點:
??每個神經元有兩組(W,b)參數,那么參數量就增加一倍,這就導致了整體參數的數量和運算量激增。

5. 全連接層

??全連接(Full Connection)層的每一個結點都與上一層的所有結點相連,用來把前邊提取到的特征綜合起來。它在整個卷積神經網絡中起到分類器的作用。如果說卷積層、池化層和激活函數層等操作是將原始數據映射到隱層特征空間的話,全連接層則起到將學到的“分布式特征表示”映射到樣本標記空間的作用。全連接的核心操作就是矩陣向量乘積

y=Wx

??本質就是由一個特征空間線性變換到另一個特征空間。如下圖所示:

??在CNN網絡中,經過多個卷積層和池化層后,連接著1個或1個以上的全連接層。全連接層的每個神經元與其前一層的所有神經元進行全連接。全連接層可以整合卷積層或者池化層中具有類別區分的局部信息。為了提升CNN網絡性能,全連接層每個神經元激勵函數一般采用ReLU函數,最后一層全連接層的輸出值被傳遞給一個輸出,可以采用softmax邏輯回歸(softmax regression)進行分類,該層可以稱為softmax層。對于一個具體的分類任務,選擇一個合適的損失函數是十分重要的,CNN網絡中幾種常用的損失函數并分析了它們各自的特點。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/19902.html

相關文章

  • 【DL-CV】卷積神經網絡

    摘要:神經網絡的補充前篇后篇數據預處理權重初始化經典神經網絡搞明白后,我們接下來看看他的變種,也是本系列的主角卷積神經網絡。卷積神經網絡一個普通的卷積神經網絡由各種層按順序堆疊而成,這些層主要分三類卷積層池化層和全連接層。 【DL-CV】神經網絡的補充【DL-CV】數據預處理&權重初始化 經典神經網絡搞明白后,我們接下來看看他的變種,也是本系列的主角——卷積神經網絡(Convolution...

    freewolf 評論0 收藏0

發表評論

0條評論

hedge_hog

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<