官术网_书友最值得收藏!

4.1 卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)

先來看看計算機(jī)是如何識別圖像的。

計算機(jī)識圖與十字繡很相似。十字繡首先在樣布上用經(jīng)緯線畫出等距離的一個個小方格,在每個小方格中標(biāo)出要刺秀的絲線顏色。繡工按此要求,對每個格子繡上不同顏色的絲線,就可以繡出一幅事先設(shè)計好的圖像。計算機(jī)識別圖像的過程正是十字繡的逆過程。

如圖4-1所示,對一幅圖片,計算機(jī)首先將其劃分成若干個方格(像素點),再逐個識別每個格子上的顏色,將其用數(shù)字表示,這樣就得到了一個維數(shù)很大的數(shù)字矩陣,圖片信息也就存儲在這個數(shù)字矩陣中。

圖4-1 計算機(jī)識別圖像示意

后面會看到,為了避免對所產(chǎn)生的超大矩陣進(jìn)行計算,卷積網(wǎng)絡(luò)識圖在識別每個像素點后,會將一個完整的圖片分割成許多個小部分,把每個小部分里具有的特征提取出來(也就是識別每個小部分),再將這些小部分具有的特征匯總到一起,組成一個維數(shù)較小的矩陣來代替原始的大維數(shù)矩陣。

有了計算機(jī)識別圖像的初步印象后,還是回到卷積神經(jīng)網(wǎng)絡(luò)的發(fā)端,生物視覺神經(jīng)系統(tǒng)。

1981年諾貝爾獎獲得者Hubel和Wiesel發(fā)現(xiàn)了人的視覺系統(tǒng)的信息處理是分級的。如圖4-2所示,獼猴的視覺感知與人類相似。LGN(Lateral Geniculate Nucleus):外側(cè)膝狀體;V1:初級視覺皮層;V2:次級視覺皮層;V4:視覺區(qū);AIT和PIT:前下顳葉皮層和后下顳葉皮層;PFC:前額葉皮層;PMC:前運動皮層;MC:運動皮層。視覺系統(tǒng)首先由眼睛觀察,經(jīng)視網(wǎng)膜(Retina)觸發(fā),經(jīng)過低級的V1區(qū)提取邊緣特征,到V2區(qū)提取基本形狀或目標(biāo)的局部,再到高層的整個目標(biāo)(如判定為一張人臉),以及到更高層的PFC(前額葉皮層)進(jìn)行分類判斷等。也就是說高層的特征是低層特征的組合,從低層到高層的特征表達(dá)越來越抽象和概念化,也即越來越能表現(xiàn)語義或者意圖。

圖4-2 獼猴視覺系統(tǒng)的信息流動示意圖

(圖片來源:Simon Thorpe)

由此可見,生物的視覺識別過程是一個不斷迭代、不斷抽象的過程。如圖4-3所示,從原始信號攝入開始(瞳孔攝入像素),接著做初步處理(大腦皮層某些細(xì)胞發(fā)現(xiàn)邊緣和方向),然后抽象(大腦判定眼前物體的形狀,比如是橢圓形的),然后進(jìn)一步抽象(大腦進(jìn)一步判定該物體是張人臉),最后識別眼前的這個人。

圖4-3 視覺的分層處理結(jié)構(gòu)(圖片來源:Stanford)

根據(jù)這一發(fā)現(xiàn),1984年日本大阪大學(xué)的福島邦彥(Fukushima)提出了神經(jīng)認(rèn)知機(jī)(Neocognitron),如圖4-4所示。神經(jīng)認(rèn)知機(jī)是一種分層的神經(jīng)網(wǎng)絡(luò)模型,這種分層模型的生物依據(jù)就是Hubel和Wiesel的研究發(fā)現(xiàn),同時,分層的結(jié)構(gòu)大大簡化了全連接的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。

圖4-4 神經(jīng)認(rèn)知機(jī)的結(jié)構(gòu)

神經(jīng)認(rèn)知機(jī)的設(shè)計目標(biāo)是識別0~9的手寫數(shù)字,現(xiàn)在通常認(rèn)為是卷積神經(jīng)網(wǎng)絡(luò)的雛形,正是神經(jīng)認(rèn)知機(jī),激發(fā)了隨后的卷積神經(jīng)網(wǎng)絡(luò)的誕生。

在神經(jīng)認(rèn)知機(jī)中,由負(fù)責(zé)提取對比度的G層細(xì)胞,負(fù)責(zé)提取圖形特征的S(Simple)層細(xì)胞,和抗變形的C(Complex)層細(xì)胞交替排列組成。C細(xì)胞負(fù)責(zé)輸出識別結(jié)果。

借助S層和C層的交替排列結(jié)構(gòu),各種輸入模式的信息會在經(jīng)過S層提取特征后,通過C層對特征畸變的容錯,再反復(fù)迭代后被傳播到后一層。

經(jīng)過這樣的過程,在底層抽取的局部特征會逐漸變成全局特征。C層還可以消除輸入模式因擴(kuò)大、縮小或平移而產(chǎn)生的畸變。

楊立昆在神經(jīng)認(rèn)知機(jī)的基礎(chǔ)上,引入了誤差反向傳播算法,得到了卷積神經(jīng)網(wǎng)絡(luò)。

卷積神經(jīng)網(wǎng)絡(luò)模仿生物的視覺識別過程,通過多個網(wǎng)絡(luò)層的分層合作,不斷迭代、不斷抽象地完成特征空間的構(gòu)建。第一層學(xué)習(xí)低級特征,如顏色和邊緣,第二層學(xué)習(xí)高級特征,如角、點,第三層學(xué)習(xí)小塊或紋理特征,最后完成分類或回歸任務(wù)。完整的視覺的分層處理結(jié)構(gòu)如圖4-5所示。

圖4-5 完整的視覺的分層處理結(jié)構(gòu)

在介紹卷積神經(jīng)網(wǎng)絡(luò)之前,有必要先介紹什么是卷積?

在數(shù)學(xué)上,卷積運算是2個可積函數(shù)的乘積再進(jìn)行積分或累加,生成第3個函數(shù),有連續(xù)變量和離散變量兩種形式。

連續(xù)變量形式:

離散變量形式:

數(shù)學(xué)解釋:先對變量為(τ/i)的函數(shù)g作翻轉(zhuǎn)變換(?τ/?i),這相當(dāng)于沿平面坐標(biāo)中的x軸把函數(shù)g(·)從y軸的右邊褶到左邊去,也就是卷積的“卷”的由來。然后再把函數(shù)g(·)平移(x/n)個單位,接著讓兩個函數(shù)fg相乘,最后求積分/相加,這個過程是卷積的“積”的過程。

卷積運算可以用來求兩個函數(shù)乘積的Laplace變換。

Laplace變換的定義為:

這樣一個積分變換可以將帶有初值問題的微分方程求解問題轉(zhuǎn)換成求解一個代數(shù)方程,最后再利用Laplace逆變換求出該微分方程的解。因此,Laplace變換是一個用途很廣的積分變換。可是,由于Laplace變換的線性性,使其只能完成函數(shù)加法的Laplace變換運算,無法處理函數(shù)乘積的Laplace變換運算,這需要引入卷積來處理。

卷積定理告訴我們,對兩個函數(shù)的卷積做Laplace變換,等于分別對這兩個函數(shù)做Laplace變換,然后再相乘。用數(shù)學(xué)表示就是:

當(dāng)卷積運算引入到圖像處理中,卷積運算的兩個函數(shù)f(τ)和g(x?τ)分別代表輸入圖像原始像素點的矩陣和卷積核矩陣,函數(shù)的乘積是兩個矩陣的乘積。

在實際計算時,需要將矩陣按自左向右、自上向下的順序,由二維向量轉(zhuǎn)變?yōu)橐痪S向量,其中的變量x是滑動步長,關(guān)于滑動步長的概念稍后介紹。

介紹了卷積運算概念后,下面開始介紹卷積神經(jīng)網(wǎng)絡(luò)。

先了解卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)。與前面介紹的前饋型神經(jīng)網(wǎng)絡(luò)一樣,卷積神經(jīng)網(wǎng)絡(luò)也是分層網(wǎng)絡(luò)結(jié)構(gòu),如圖4-6所示,一個卷積神經(jīng)網(wǎng)絡(luò)由輸入層(input layer)、卷積層(convolution layer)、池化層(pooling layer)、全連接層(fully connected layer)和輸出層(output layer)組成,卷積層和池化層可以多層交替得到更深層次的網(wǎng)絡(luò),最后的全連接層也可以采用多層結(jié)構(gòu),每一層的工作原理和用途稍后介紹。

圖4-6 卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)

下面先簡要說明卷積神經(jīng)網(wǎng)絡(luò)大致的工作過程。假定給卷積神經(jīng)網(wǎng)絡(luò)輸入一張照片,目的是將照片中所含的物件準(zhǔn)確歸類,接下來神經(jīng)網(wǎng)絡(luò)需要做以下幾步:

輸入層:將照片轉(zhuǎn)換成二維數(shù)字矩陣。將照片讀入系統(tǒng),根據(jù)照片中每個像素的色彩和敏感度將其轉(zhuǎn)乘一個二維數(shù)字矩陣;

卷積層:初步提取特征。用一個小的方陣,從左到右、自頂向下滑過整個照片矩陣,每次滑動停頓時,完成卷積矩陣與其當(dāng)前覆蓋照片區(qū)域的矩陣的點積運算,結(jié)果會生成一個比原始照片矩陣小一點的特征矩陣,其中記錄了照片的某些特征;

池化層:對由卷積產(chǎn)生的特征矩陣分區(qū)域(固定大小的方陣)提取統(tǒng)計特征,得到更小的特征矩陣;

全連接層:將各部分特征匯總,使用ReLU激活函數(shù)輸出特征值;

輸出層:由softmax函數(shù)根據(jù)輸出層輸出的各個特征值,根據(jù)最大似然估計,給出分類結(jié)論,完成分類識別。

主站蜘蛛池模板: 都匀市| 东阳市| 河池市| 涡阳县| 望都县| 裕民县| 曲水县| 广安市| 西城区| 浦北县| 平利县| 铜川市| 襄汾县| 全南县| 阳谷县| 砚山县| 保山市| 宁远县| 怀远县| 鄂尔多斯市| 芦溪县| 女性| 阳信县| 若羌县| 温泉县| 杨浦区| 利川市| 且末县| 商都县| 桑日县| 连山| 宝鸡市| 新巴尔虎左旗| 齐齐哈尔市| 昌黎县| 新民市| 礼泉县| 邵东县| 凌源市| 玉屏| 奉新县|