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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CNN基础知识(1)

發(fā)布時間:2024/9/20 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CNN基础知识(1) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

卷積神經(jīng)網(wǎng)絡(CNN)是一種前饋神經(jīng)網(wǎng)絡,它的神經(jīng)元可以響應一部分覆蓋范圍內(nèi)的周圍單元,因其特性被廣泛用于模式識別。由于該網(wǎng)絡避免了對圖像的復雜預處理,可以直接輸入原始圖像,因而得到了更多的應用。

CNN的基礎結(jié)構(gòu)包括兩層。
第一層為特征提取層,每個神經(jīng)元的輸入與前一層的局部接受域相連并提取該局部的特征。一旦該局部特征被提取后,它與其他特征間的位置關(guān)系也隨之確定下來。
第二層為特征映射層。網(wǎng)絡的每個計算層由多個特征映射而成,每個特征映射是一個平面,平面上的所有神經(jīng)元的權(quán)值相等。
由于一個映射面上的神經(jīng)元權(quán)值共享,因而減少了網(wǎng)絡自由參數(shù)的個數(shù)。卷積神經(jīng)網(wǎng)絡中的每一個卷積層都緊跟著一個用來求局部平均與二次提取的計算層,這種特有的兩次特征提取結(jié)構(gòu)減小了特征分辨率。

1. 圖像識別

我們知道BP神經(jīng)網(wǎng)絡是一個多層的神經(jīng)網(wǎng)絡系統(tǒng)。在這樣一個神經(jīng)網(wǎng)絡中,每層的神經(jīng)節(jié)點都是共享前一層的所有輸入項的,也即是全連接。訓練也是一次一次進行迭代調(diào)整各個w的值。當輸入項 的維度比較大時,訓練的時間都是幾何級數(shù)增長的,這就可能利用現(xiàn)在的計算資源就沒辦法訓練了,這時可以用局部感知的知識。

1.1 設計卷積層

卷積神經(jīng)網(wǎng)絡最大的作用是降低參數(shù)數(shù)目。

第一種功能:局部感知
一般認為人對外界的認識是從局部到全局的,而圖像的空間聯(lián)系也是局部的像素聯(lián)系較為緊密,而距離較遠的像素相關(guān)性較弱。因而每個神經(jīng)元并沒有必要對全局圖像進行感知,只需要對局部進行感知,然后在高層將局部的信息綜合起來就得到了全局的信息。

例如:對一個2048x1536像素的圖片處理過程中,本來需要建立一個3145728個輸入項的多節(jié)點網(wǎng)絡(每個節(jié)點也都是2048x1536個輸入項),也就是2048x1536個神經(jīng)元,每個神經(jīng)元的輸入又有參數(shù)2048x1536個。

但是做個局部處理后,就可以把節(jié)點的數(shù)目減少,同時也可以把節(jié)點的參數(shù)數(shù)量減少。這時可以設計一個節(jié)點,這個節(jié)點可以接收16x12,也就是192個參數(shù),就是說完整的像素圖中每16x12個像素點連接到一個神經(jīng)元,每個神經(jīng)元的接收范圍都和左右上下的神經(jīng)元各有一行是不同的。在這種情況下17x13個像素單位的圖片需要2x2個16x12的神經(jīng)元進行連接,以此類推,2048x1536個像素單位需要2033x1525=3100325個16x12的神經(jīng)元來進行連接。

現(xiàn)在和BP神經(jīng)網(wǎng)絡進行對比,看一下參數(shù)減少了多少?
BP是3145728個輸入項就有3145728個節(jié)點,每個節(jié)點需要3145728個權(quán)值,也就需要3145728x3145728=9895604649984個參數(shù)。而按照剛才的方法進行的話就有2033x1525=3100325個神經(jīng)元,每個神經(jīng)元連接16x12個參數(shù),也就是2033x1525x16x12=595262400個參數(shù)就解決了,可以看到減少不止一點點,理論上訓練速度至少提高了5個數(shù)量級。而這樣的神經(jīng)元層就是卷積層,而這16x12個參數(shù)被一個神經(jīng)節(jié)點進行處理和特征提取的過程操作就叫卷積操作。

第二種功能:參數(shù)共享
在卷積層設計后雖然參數(shù)減少了很多,但是參數(shù)的數(shù)量級還是很大,這時的參數(shù)共享可以對參數(shù)的數(shù)量進一步減少。
在剛才的2033x1525=3100325個神經(jīng)元,而如果每個神經(jīng)元的192個參數(shù)都是相等的,那么實際上也就是訓練192個參數(shù)就夠了。
權(quán)值共享只是減少參訓練復雜度的一種技巧,或者是方案之一,并非必要方案,是強行設置的一種權(quán)值方式。可以把這192個參數(shù)看成是特征提取的方式。該方式與圖像捕捉的位置無關(guān)。解釋為:視覺神經(jīng)在捕捉外界的信號時是不加區(qū)分的,所有的神經(jīng)元對于映射的信號(16x12)是一視同仁的(權(quán)值一樣),不同的是映射的信號對象不同。

例如:當從一個大尺寸的圖像中隨機選取一小塊,如16x12作為樣本,并且從這個小樣本學習到了一些特征,這時可以把學習到的特征作為探測器,應用到這個圖像上的任何地方。可以從16x12的樣本中學習到的特征(卷積核)與原本的大尺寸圖像做卷積,從而從這個大尺寸的圖像上的任何一位置獲得一個不同特征的激活值。激活值越大越符和條件。

1.2 設計池化層

采樣層也叫池化層,它的目的是將卷積層輸出的特征提取值進行量化。
這種層的作用是繼續(xù)對臨近的輸入點進行特征提取,算法設計也不固定,可以是求平均值,也可以是求最大值等,總之就是繼續(xù)對前面輸出的卷積層繼續(xù)進行特征化。

1.3 完整網(wǎng)絡設計

要對圖片進行識別,卷積網(wǎng)絡可以設計成如下所示:

卷積層C1:可以設計2033x1525=3100325個神經(jīng)節(jié)點進行如前所示的連接方式。
采樣層S1:可以采用不重疊的方式進行采樣,設計使用輸入?yún)?shù)為16x16的神經(jīng)節(jié)點,需要128x128=16384個節(jié)點。
卷積層C2:這里再設計一層卷積層進行卷積處理,設計使用16x16的神經(jīng)節(jié)點,需要113x113=12769個節(jié)點。
采樣層S2:可以繼續(xù)采用不重疊的方式進行采樣處理,可以嘗試采用8x8的輸入點數(shù)量,那么需要15x15個神經(jīng)元節(jié)點。
輸出層O:最后采用全連接方式。所以這一層應該是15x15個節(jié)點,每個節(jié)點有15x15。即255個參數(shù)。

1.4 訓練

一般來說,越復雜的圖形圖像訓練需要的樣本越多。

這里只是簡單的讀書筆記,后期再續(xù)。

參考:《白話大數(shù)據(jù)與機器學習》

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的CNN基础知识(1)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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