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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人工智能 > pytorch >内容正文

pytorch

第六章 深度学习(上)

發(fā)布時(shí)間:2025/3/21 pytorch 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第六章 深度学习(上) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在上一章,我們學(xué)習(xí)了深度神經(jīng)網(wǎng)絡(luò)通常比淺層神經(jīng)網(wǎng)絡(luò)更加難以訓(xùn)練。我們有理由相信,若是可以訓(xùn)練深度網(wǎng)絡(luò),則能夠獲得比淺層網(wǎng)絡(luò)更加強(qiáng)大的能力,但是現(xiàn)實(shí)很殘酷。從上一章我們可以看到很多不利的消息,但是這些困難不能阻止我們使用深度神經(jīng)網(wǎng)絡(luò)。本章,我們將給出可以用來(lái)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的技術(shù),并在實(shí)戰(zhàn)中應(yīng)用它們。同樣我們也會(huì)從更加廣闊的視角來(lái)看神經(jīng)網(wǎng)絡(luò),簡(jiǎn)要地回顧近期有關(guān)深度神經(jīng)網(wǎng)絡(luò)在圖像識(shí)別、語(yǔ)音識(shí)別和其他應(yīng)用中的研究進(jìn)展。然后,還會(huì)給出一些關(guān)于未來(lái)神經(jīng)網(wǎng)絡(luò)又或人工智能的簡(jiǎn)短的推測(cè)性的看法。

這一章比較長(zhǎng)。為了更好地讓你們學(xué)習(xí),我們先粗看一下整體安排。本章的小結(jié)之間關(guān)聯(lián)并不太緊密,所以如果讀者熟悉基本的神經(jīng)網(wǎng)絡(luò)的知識(shí),那么可以任意跳到自己最感興趣的部分。

本章主要的部分是對(duì)最為流行神經(jīng)網(wǎng)絡(luò)之一的深度卷積網(wǎng)絡(luò)的介紹。我們將細(xì)致地分析一個(gè)使用卷積網(wǎng)絡(luò)來(lái)解決 MNIST 數(shù)據(jù)集的手寫(xiě)數(shù)字識(shí)別的例子(包含了代碼和講解):


MNIST 數(shù)據(jù)集樣例

我們將從淺層的神經(jīng)網(wǎng)絡(luò)開(kāi)始來(lái)解決上面的問(wèn)題。通過(guò)多次的迭代,我們會(huì)構(gòu)建越來(lái)越強(qiáng)大的網(wǎng)絡(luò)。在這個(gè)過(guò)程中,也將要探究若干強(qiáng)大技術(shù):卷積、pooling、使用GPU來(lái)更好地訓(xùn)練、訓(xùn)練數(shù)據(jù)的算法性擴(kuò)展(避免過(guò)匹配)、dropout 技術(shù)的使用(同樣為了防止過(guò)匹配現(xiàn)象)、網(wǎng)絡(luò)的 ensemble 使用 和 其他技術(shù)。最終的結(jié)果能夠接近人類的表現(xiàn)。在 10,000 幅 MNIST 測(cè)試圖像上 —— 模型從未在訓(xùn)練中接觸的圖像 —— 該系統(tǒng)最終能夠?qū)⑵渲?9,967 幅正確分類。這兒我們看看錯(cuò)分的 33 幅圖像。注意正確分類是右上的標(biāo)記;系統(tǒng)產(chǎn)生的分類在右下:


深度神經(jīng)網(wǎng)絡(luò)在 MNIST 實(shí)驗(yàn)中的性能


可以發(fā)現(xiàn),這里面的圖像對(duì)于正常人類來(lái)說(shuō)都是非常困難區(qū)分的。例如,在第一行的第三幅圖。我看的話,看起來(lái)更像是 “9” 而非 “8”,而 “8” 卻是給出的真實(shí)的結(jié)果。我們的網(wǎng)絡(luò)同樣能夠確定這個(gè)是 “9”。這種類型的“錯(cuò)誤” 最起碼是容易理解的,可能甚至值得我們贊許。最后用對(duì)最近使用深度(卷積)神經(jīng)網(wǎng)絡(luò)在圖像識(shí)別上的研究進(jìn)展作為關(guān)于圖像識(shí)別的討論的總結(jié)。
本章剩下的部分,我們將會(huì)從一個(gè)更加寬泛和宏觀的角度來(lái)討論深度學(xué)習(xí)。概述一些神經(jīng)網(wǎng)絡(luò)的其他模型,例如 RNN 和 LSTM 網(wǎng)絡(luò),以及這些網(wǎng)絡(luò)如何在語(yǔ)音識(shí)別、自然語(yǔ)言處理和其他領(lǐng)域中應(yīng)用的。最后會(huì)試著推測(cè)一下,神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)未來(lái)發(fā)展的方向,會(huì)從 intention-driven user interfaces 談道 深度學(xué)習(xí)在人工智能的角色。
這章內(nèi)容建立在本書(shū)前面章節(jié)的基礎(chǔ)之上,使用了前面介紹的諸如 BP,正規(guī)化、softmax 函數(shù),等等。然而,要想閱讀這一章,倒是不需要太過(guò)細(xì)致地掌握前面章節(jié)中內(nèi)容的所有的細(xì)節(jié)。當(dāng)然讀完第一章關(guān)于神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)是非常有幫助的。本章提到第二章到第五章的概念時(shí),也會(huì)在文中給出鏈接供讀者去查看這些必需的概念。
需要注意的一點(diǎn)是,本章所沒(méi)有包含的那一部分。這一章并不是關(guān)于最新和最強(qiáng)大的神經(jīng)網(wǎng)絡(luò)庫(kù)。我們也不是想訓(xùn)練數(shù)十層的神經(jīng)網(wǎng)絡(luò)來(lái)處理最前沿的問(wèn)題。而是希望能夠讓讀者理解深度神經(jīng)網(wǎng)絡(luò)背后核心的原理,并將這些原理用在一個(gè) MNIST 問(wèn)題的解決中,方便我們的理解。換句話說(shuō),本章目標(biāo)不是將最前沿的神經(jīng)網(wǎng)絡(luò)展示給你看。包括前面的章節(jié),我們都是聚焦在基礎(chǔ)上,這樣讀者就能夠做好充分的準(zhǔn)備來(lái)掌握眾多的不斷涌現(xiàn)的深度學(xué)習(xí)領(lǐng)域最新工作。
本章仍然在Beta版。期望讀者指出筆誤,bug,小錯(cuò)和主要的誤解。如果你發(fā)現(xiàn)了可疑的地方,請(qǐng)直接聯(lián)系 mn@michaelnielsen.org。

卷積網(wǎng)絡(luò)簡(jiǎn)介

在前面的章節(jié)中,我們教會(huì)了神經(jīng)網(wǎng)絡(luò)能夠較好地識(shí)別手寫(xiě)數(shù)字:


MNIST 手寫(xiě)數(shù)字


我們?cè)谏疃壬窠?jīng)網(wǎng)絡(luò)中使用全連接的鄰接關(guān)系。網(wǎng)絡(luò)中的神經(jīng)元與相鄰的層上的所有神經(jīng)元均連接:


全連接深度神經(jīng)網(wǎng)絡(luò)


特別地,對(duì)輸入圖像中的每個(gè)像素點(diǎn),我們將其光強(qiáng)度作為對(duì)應(yīng)輸入層神經(jīng)元的輸入。對(duì)于 2828 像素的圖像,這意味著我們輸入神經(jīng)元需要有 784(=28 28) 個(gè)。接著我們訓(xùn)練網(wǎng)絡(luò)的權(quán)重和偏差,使得最后網(wǎng)絡(luò)可以正確識(shí)別輸入圖像: '0', '1', '2', ..., '8', 或者 '9'。

我們前面使用的網(wǎng)絡(luò)效果已經(jīng)不錯(cuò)了:我們使用來(lái)自MNIST handwritten digit data set訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)獲得了超過(guò) 98% 準(zhǔn)確度的分類結(jié)果。但是,仔細(xì)看看,使用全連接層來(lái)分類圖像其實(shí)是很奇怪的。因?yàn)?#xff0c;這樣的網(wǎng)絡(luò)結(jié)構(gòu)并沒(méi)有考慮圖像本身的空間結(jié)構(gòu)。例如,對(duì)輸入像素,網(wǎng)絡(luò)將離得很遠(yuǎn)和很近的像素都同等看待。這樣的空間結(jié)構(gòu)概念必須從訓(xùn)練數(shù)據(jù)中推斷出來(lái)。但是如果我們不從一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)開(kāi)始,而使用一個(gè)針對(duì)空間結(jié)構(gòu)的網(wǎng)絡(luò),效果會(huì)怎么樣?本節(jié),我們會(huì)介紹卷積神經(jīng)網(wǎng)絡(luò)。這些網(wǎng)絡(luò)使用一種特定的結(jié)構(gòu),主要適配于圖像的分類。使用這種結(jié)構(gòu)讓卷積網(wǎng)絡(luò)訓(xùn)練速度有所提升。這樣也能夠幫助我們訓(xùn)練深層的、多層的適用圖像分類的網(wǎng)絡(luò)。現(xiàn)在深度卷及網(wǎng)絡(luò)或者類似的變體在圖像識(shí)別中用得最為頻繁。

卷積神經(jīng)網(wǎng)絡(luò)的誕生要回到 1970 年代。但是建立起現(xiàn)代卷積網(wǎng)絡(luò)的開(kāi)創(chuàng)性論文出現(xiàn)在 1998 年,"Gradient-based learning applied to document recognition" 這篇由 Yann LeCun, Léon Bottou, Yoshua Bengio, 和 Patrick Haffner 合作的論文。LeCun 已經(jīng)給出了關(guān)于卷積網(wǎng)絡(luò)模型所受到的生物學(xué)上的啟發(fā):“諸如卷積網(wǎng)絡(luò)受到(生物)神經(jīng)學(xué)的啟發(fā)還是很微小的。這也是我們稱此為卷積網(wǎng)絡(luò)而不是卷積神經(jīng)網(wǎng)絡(luò)的原因,其中的節(jié)點(diǎn)我們也叫做單元(unit)而不是神經(jīng)元(neuron)。”盡管有此說(shuō)明,卷積網(wǎng)絡(luò)也使用了大量我們之前講述的神經(jīng)網(wǎng)絡(luò)中的想法:如 BP、梯度下降、正規(guī)化、非線性激活函數(shù)等等。所以我們會(huì)遵循通常的實(shí)踐,將卷積網(wǎng)絡(luò)看成是神經(jīng)網(wǎng)絡(luò)的一種類型。后面卷積網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)會(huì)交換使用。當(dāng)然 (人工)神經(jīng)元和單元 也是換著使用的。

卷積神經(jīng)網(wǎng)絡(luò)擁有三個(gè)基本特性:局部感知區(qū)、共享權(quán)重和pooling。下面詳細(xì)討論這三個(gè)概念。
局部感知區(qū):在全連接層中,輸入被看做是豎直方向的神經(jīng)元列。在卷積網(wǎng)絡(luò)中,可以將輸入看做是 28 * 28 的神經(jīng)元的正方形,其中每個(gè)神經(jīng)元對(duì)應(yīng)于輸入圖像的像素。


Paste_Image.png


正如往常那樣,我們將輸入像素連接到隱藏層上。但是我們不會(huì)將每個(gè)輸入像素連接到每個(gè)隱藏元上。而是僅僅在輸入圖像上做一個(gè)局部小規(guī)模的連接。
更加準(zhǔn)確地說(shuō),在第一隱藏層的每個(gè)神經(jīng)元將會(huì)被連接到輸入神經(jīng)元的小區(qū)域上,例如,一個(gè) 5 * 5 的局域,對(duì)應(yīng)于 25 個(gè)輸入像素。所以,對(duì)一個(gè)特定的隱藏元,我們可能會(huì)有如下的連接:


Paste_Image.png


在輸入圖像中的那個(gè)區(qū)域被稱為隱藏元的局部感知區(qū)。這是在輸入像素上的一個(gè)小窗口。每個(gè)連接學(xué)習(xí)一個(gè)權(quán)重。隱藏元同樣會(huì)學(xué)習(xí)一個(gè)整體的偏差。你可以將這種特定的隱藏元看做是在學(xué)習(xí)分析其對(duì)應(yīng)的局部感知區(qū)。

接著我們將窗口在整個(gè)輸入圖像上進(jìn)行滑動(dòng)。對(duì)每個(gè)局部感知區(qū),在第一隱藏層,存在一個(gè)不同的隱藏元。為形象地解釋這個(gè)過(guò)程,我們給出一個(gè)例子:


Paste_Image.png

以此下去,可以構(gòu)建出整個(gè)第一隱藏層。注意,如果我們有一個(gè) 28 28 的圖像作為輸入,然后局部感知區(qū)為 5 5,那么最后在隱藏層就有 24 * 24 個(gè)神經(jīng)元。這是因?yàn)槲覀冎荒芤苿?dòng)局部感知區(qū) 23 次(或者向下移動(dòng) 23 次),直到抵達(dá)最右側(cè)(或者最底部)。
我已經(jīng)展示了移動(dòng)一次局部感知區(qū)的效果。實(shí)際上,有時(shí)候會(huì)有不同的步長(zhǎng)。例如,我們可以每次移動(dòng)局部感知區(qū) 2 個(gè)像素。稱步長(zhǎng)為 2。本章幾乎所有例子都使用 1 的步長(zhǎng),但最好要知道這個(gè)值是可以進(jìn)行調(diào)整的。

正如我們?cè)谇懊嬲鹿?jié)所講的,如果我們對(duì)不同步長(zhǎng)感興趣,就可以使用驗(yàn)證數(shù)據(jù),在不同步長(zhǎng)上實(shí)驗(yàn)不同的效果,最終選擇最優(yōu)的步長(zhǎng)。可以參考這里 了解神經(jīng)網(wǎng)絡(luò)中超參數(shù)的選擇。同樣的方法也可以用來(lái)選擇局部感知區(qū)的大小上。一般來(lái)說(shuō),更大的局部感知區(qū)在輸入圖像明顯大于 28 * 28 的 MNIST 圖像時(shí)更有用。

共享權(quán)重和偏差:我已經(jīng)提到每個(gè)隱藏元有一個(gè)偏差和一個(gè)連接在其局部感知區(qū)的 5 5 的矩陣。而沒(méi)有提及的則是,我們將會(huì)使用同樣的權(quán)重和偏差對(duì)所有 2424 個(gè)隱藏元。換言之,對(duì) j,k 隱藏元,輸出是
$$\sigma(b + \sum_{l=0}^{4}\sum_{m=0}^{4} w_{l,m}a_{j+l, k+m})$$


Paste_Image.png

這里,$$\sigma$$ 是神經(jīng)元的激活函數(shù)——可能是 sigmoid 函數(shù)。$$b$$是共享的偏差。$$w_{l,m}$$ 是 5 * 5 的共享權(quán)重矩陣。最后,使用 $$a_{x,y}$$ 表示在 $$x,y$$ 處的輸入激活值。
這意味著所有第一隱藏層的神經(jīng)元檢測(cè)除了同樣的特征,只是在輸入圖像不同的位置而已。我們來(lái)看看為何這樣是合理的,假設(shè)權(quán)重和偏差可以讓神經(jīng)元能夠獲取特定的局部感知區(qū)的豎直線。這個(gè)能力同樣可以用在圖像中其他的地方。所以,應(yīng)用同樣的特征檢測(cè)器在圖像中的每個(gè)地方。用更為抽象一點(diǎn)的術(shù)語(yǔ)就是,卷積網(wǎng)絡(luò)可以適應(yīng)圖像的轉(zhuǎn)化不變性:移動(dòng)一點(diǎn)點(diǎn)貓的圖像,仍然保證得到的是貓的圖像。

實(shí)際上,對(duì) MNIST 數(shù)字分類問(wèn)題,圖像處于正中央,大小也是規(guī)范化了的。所以 MNIST 不大會(huì)有在其他圖像中發(fā)現(xiàn)的變化不變性。諸如邊和角這樣的特征可能在大部分輸入空間上都有用。

因此,我們有時(shí)候?qū)⑤斎雽拥诫[藏層的映射稱為 特征映射。我們稱定義了這個(gè)映射的權(quán)重為 共享權(quán)重。而相應(yīng)的偏差就叫做共享偏差 了。共享權(quán)重和偏差常常被稱為 (Kernel)或者 過(guò)濾器(filter)。在文獻(xiàn)中,人們使用這些術(shù)語(yǔ)會(huì)存在一些差異,所以我這里不會(huì)在細(xì)化;而是會(huì)討論一些具體的例子。

目前描述的網(wǎng)絡(luò)結(jié)構(gòu)可以檢測(cè)出一種單一的局部特征。為了進(jìn)行圖像識(shí)別,我們需要更多的特征映射。所以,完整的卷積層包含一些不同的特征映射:


Paste_Image.png

在上面的例子中,存在 3 個(gè)特征映射。每個(gè)特征映射使用一個(gè) 5 * 5 的共享權(quán)重和一個(gè)共享偏差定義。結(jié)果就得到了一個(gè)可以檢測(cè)三個(gè)不同的特征的網(wǎng)絡(luò),每個(gè)特征是在全圖范圍內(nèi)得到的。

我這里為了讓圖很簡(jiǎn)單就展示了 3 個(gè)特征映射。然而,在實(shí)際情況中,卷積網(wǎng)絡(luò)可能使用很多很多特征映射。早期的卷積網(wǎng)絡(luò),如 LeNet-5,使用了 6 個(gè)特征映射,每個(gè)關(guān)聯(lián)于 5 * 5 的局部感知區(qū),來(lái)識(shí)別 MNIST 數(shù)字。所以,上面展示的例子很接近 LeNet-5。本章后面的例子中我們會(huì)使用擁有 20 和 40 個(gè)特征映射的卷積層。讓我們看看這些例子學(xué)到的特征吧:

來(lái)自我們最終版的卷積網(wǎng)絡(luò)的特征映射,參見(jiàn)這里


Paste_Image.png

這 20 幅圖對(duì)應(yīng) 20 個(gè)不同的特征映射(過(guò)濾器或者核)。每個(gè)映射表示為 5 5 的塊圖,對(duì)應(yīng)于局部感知區(qū)中的 5 5 的權(quán)重。稍白的塊表示略小的權(quán)重,這樣特征映射更少地對(duì)相應(yīng)的輸入像素產(chǎn)生反應(yīng)。更黑的塊表示略大的權(quán)重,這樣特征映射更多地對(duì)相應(yīng)的輸入像素產(chǎn)生反應(yīng)。粗略地說(shuō),上面的圖像展示了卷積層對(duì)應(yīng)的特征類型。

所以我們從這些特征映射中能夠得到什么結(jié)論呢?很顯然,這里有一種并非是隨機(jī)的空間結(jié)構(gòu):很多特征有明顯的亮暗子區(qū)域。這表明,我們的網(wǎng)絡(luò)真的在學(xué)習(xí)與空間結(jié)構(gòu)相關(guān)的知識(shí)。不過(guò),看明白這些特征檢測(cè)器究竟在學(xué)習(xí)什么是很困難的。可以肯定的是,我們并沒(méi)有在學(xué)習(xí)(打個(gè)比方)Gabor 過(guò)濾器,這種用在很多傳統(tǒng)的圖像識(shí)別方法中的技術(shù)。實(shí)際上,現(xiàn)在有很多的努力都花費(fèi)在更好地理解卷積網(wǎng)絡(luò)學(xué)到的東西上。如果你對(duì)此感興趣,我推薦你看看 Matthew Zeiler 和 Rob Fergus 在 2013 年的這篇文章:Visualizing and Understanding Convolutional Networks。

共享權(quán)重和偏差的重要優(yōu)勢(shì)是他們大幅降低了參數(shù)的數(shù)量。對(duì)每個(gè)特征映射,我們需要 25 = 5 5 個(gè)共享變量和一個(gè)共享偏差。所以每個(gè)特征映射需要 26 個(gè)參數(shù)。如果我們有 20 個(gè)特征映射,那么對(duì)一個(gè)卷積層總共要學(xué)習(xí) 2026 = 520 個(gè)參數(shù)。假設(shè)我們第一層用一個(gè)全連接層,共 784 = 28 28 個(gè)輸入神經(jīng)元,和一個(gè)相對(duì)少量 30 個(gè)隱藏元,跟前面的例子中保持一致。那就共有 78430 個(gè)權(quán)重和 30 個(gè)偏差,總共就是 23, 550 個(gè)參數(shù)。換言之,全連接層會(huì)有超過(guò)卷積層 40 倍的參數(shù)量。

當(dāng)然我們不能真的就對(duì)參數(shù)的個(gè)數(shù)進(jìn)行直接對(duì)比,因?yàn)檫@兩個(gè)模型是本質(zhì)不同的。但是,直覺(jué)地看,看起來(lái)卷積層的變化不變性的使用相比于全連接模型達(dá)到同樣的性能會(huì)降低需要學(xué)習(xí)的參數(shù)的個(gè)數(shù)。這樣將會(huì)得到更快的訓(xùn)練的模型,最終能夠幫助我們構(gòu)建使用卷積層的深度網(wǎng)絡(luò)。

巧合的是,卷積網(wǎng)絡(luò)的命名來(lái)自方程(125)的操作,那個(gè)操作就叫做卷積。更準(zhǔn)確地說(shuō),人們有時(shí)候會(huì)把那個(gè)公式寫(xiě)成 $$a^1 = \sigma(b + wa^0)$$,其中 $$a^1$$ 表示從一個(gè)特征映射中輸出的激活值,$$$$ 表示卷積操作。我們不會(huì)再后面使用任何更難的卷積操作,所以不必?fù)?dān)心這個(gè)關(guān)聯(lián)。不過(guò)至少應(yīng)該了解這個(gè)詞的來(lái)源。

Pooling 層:在卷積網(wǎng)絡(luò)中,還包含了一個(gè)叫做 pooling 的層。Pooling 層通常會(huì)立即用在卷積層后。而 pooling 層所做的實(shí)際上就是簡(jiǎn)化從卷積層得到的輸出。

pooling 層使用卷積層的每個(gè)特征映射作為輸出,并得到一個(gè)壓縮了的特征映射。例如,pooling 層的每個(gè)單元可能會(huì)對(duì)上一層中的一個(gè)(如 22 大小) 的區(qū)域進(jìn)行總結(jié)。用具體例子,一個(gè)通常使用的 pooling 操作是 *max-pooling*。在 max-pooling 中,pooling 單元就會(huì)輸出 22 區(qū)域中最大的那個(gè)激活值,如下圖所示:


Paste_Image.png

注意,因?yàn)槲覀兊木矸e層輸出是 2424 神經(jīng)元,pooling 之后就是 12 12 個(gè)神經(jīng)元。

正如下面所述,卷積層通常包含超過(guò)一個(gè)特征映射。然后我們分別應(yīng)用 max-pooling 到每個(gè)特征映射上。所以如果有三個(gè)特征映射,組合的卷積和max-pooling 層就是這樣子:


Paste_Image.png

我們可以見(jiàn) max-pooling 看成是網(wǎng)絡(luò)確認(rèn)一個(gè)給定特征是否在圖像區(qū)域中任何地方都存在的方法。接著會(huì)丟棄準(zhǔn)確位置信息。這個(gè)直覺(jué)就是一旦特征被發(fā)現(xiàn)了,其準(zhǔn)確的位置就相對(duì)于其他特征來(lái)說(shuō)不那么重要了。最大的好處就是,這樣會(huì)產(chǎn)生更少量的pooling后的特征,降低了在后面網(wǎng)絡(luò)層的參數(shù)的數(shù)量。

max-pooling 不是 pooling 的唯一技術(shù)。另一個(gè)常用的方法是 L2 pooling。這里使用 2*2 區(qū)域內(nèi)神經(jīng)元的激活值的平方和的平方根。盡管細(xì)節(jié)不同,直覺(jué)上仍然和 max-pooling 相似:L2 pooling 是一種壓縮來(lái)自卷積層的信息的方法。實(shí)際應(yīng)用中,兩種方法都廣泛使用。有時(shí)候人們還會(huì)嘗試別的 pooling 操作。如果你真的想優(yōu)化性能,可能需要使用驗(yàn)證數(shù)據(jù)來(lái)比較不同的 pooling 技術(shù),選擇那些表現(xiàn)最好的。但是我們這里不會(huì)去詳細(xì)討論優(yōu)化的細(xì)節(jié)。

整合所有這些方法:我們可以將這些方法整合起來(lái)形成一個(gè)完整的卷積神經(jīng)網(wǎng)絡(luò)。類似于我們剛剛看過(guò)的那些架構(gòu),不過(guò)會(huì)增加一個(gè)有 10 個(gè)輸出神經(jīng)元的層,對(duì)應(yīng)于不同的 10 個(gè)數(shù)字:


Paste_Image.png

這個(gè)網(wǎng)絡(luò)以 28 28 輸入神經(jīng)元作為第一層,來(lái)編碼 MNIST 圖像的像素強(qiáng)度。接著跟隨一個(gè)使用 5 5 的局部感知區(qū)和 3 個(gè)特征映射的卷積層。結(jié)構(gòu)是一個(gè) 324 24 的隱藏特征神經(jīng)元層。下一步就是加入一個(gè) max-pooling 層,應(yīng)用在 22 區(qū)域上,共有 3 個(gè)特征映射。最終就是一個(gè) 312 * 12 的隱藏特征神經(jīng)元層。

最終層的連接是一個(gè)全連接方式。該層連接來(lái)自 max-pooling 層輸出到這所有 10 個(gè)神經(jīng)元上。注意這和我們之前介紹的一樣。盡管圖中只用了一根帶箭頭的線表示。這很容易想象補(bǔ)全。

這個(gè)卷積結(jié)構(gòu)完全不同于我們之前使用的架構(gòu)。不過(guò)整體的圖結(jié)構(gòu)類似:擁有多個(gè)簡(jiǎn)單輸入段元的網(wǎng)絡(luò),網(wǎng)絡(luò)的行為完全由權(quán)重及偏差確定。整體的目標(biāo)也一致:使用訓(xùn)練數(shù)據(jù)來(lái)訓(xùn)練網(wǎng)絡(luò)權(quán)重和偏差,這樣讓網(wǎng)絡(luò)能夠很好地對(duì)輸入數(shù)字圖像進(jìn)行分類。

特別地,和本書(shū)前面章節(jié)中一樣,我們會(huì)使用隨機(jī)梯度下降和 BP 來(lái)進(jìn)行訓(xùn)練。這個(gè)流程和我們前面介紹的都是一致的。然后,我們這里需要對(duì) BP 進(jìn)行一些修改。因?yàn)榍懊嬲鹿?jié)的 BP 推導(dǎo)都是在全連接的層下進(jìn)行的。幸運(yùn)的是,這里的修改是很直接的。如果你想理解這些細(xì)節(jié),我希望你能夠仔細(xì)研究一下下面的問(wèn)題。需要注意的是該問(wèn)題會(huì)花費(fèi)一些時(shí)間,除非你對(duì)之前的推導(dǎo)已經(jīng)非常熟悉了。

問(wèn)題

  • 卷積網(wǎng)絡(luò)中的 Backpropagation:在全連接網(wǎng)絡(luò)中的 BP 核心公式是 (BP1)-(BP4) (link)。那么在卷積網(wǎng)絡(luò)中,這些公式將如何修改呢?


文/Not_GOD(簡(jiǎn)書(shū)作者)
原文鏈接:http://www.jianshu.com/p/3716fa796677

總結(jié)

以上是生活随笔為你收集整理的第六章 深度学习(上)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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