乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      實(shí)戰(zhàn)卷積神經(jīng)網(wǎng)絡(luò)

       timtxu 2017-04-14

      在近些年,深度學(xué)習(xí)領(lǐng)域的卷積神經(jīng)網(wǎng)絡(luò)CNNs或ConvNets)在各行各業(yè)為我們解決了大量的實(shí)際問題。但是對于大多數(shù)人來說,CNN仿佛戴上了神秘的面紗。

      CNN是深度學(xué)習(xí)算法在圖像處理領(lǐng)域的一個(gè)應(yīng)用。主要被用來找尋圖片中的模式。這個(gè)過程主要有兩個(gè)步驟,首先要對圖片做卷積,然后找尋模式。在神經(jīng)網(wǎng)絡(luò)中,前幾層是用來尋找邊界和角,隨著層數(shù)的增加,我們就能識(shí)別更加復(fù)雜的特征。這個(gè)性質(zhì)讓CNN非常擅長識(shí)別圖片中的物體。

      學(xué)習(xí)CNN之前,我們需要對CNN和Deep Learning有一個(gè)簡單的了解。
      Deep Learning強(qiáng)大的地方就是可以利用網(wǎng)絡(luò)中間某一層的輸出當(dāng)做是數(shù)據(jù)的另一種表達(dá),從而可以將其認(rèn)為是經(jīng)過網(wǎng)絡(luò)學(xué)習(xí)到的特征?;谠撎卣?,可以進(jìn)行進(jìn)一步的相似度比較等。Deep Learning算法能夠有效的關(guān)鍵其實(shí)是大規(guī)模的數(shù)據(jù),這一點(diǎn)原因在于每個(gè)DL都有眾多的參數(shù),少量數(shù)據(jù)無法將參數(shù)訓(xùn)練充分。

      簡要介紹下神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)的每個(gè)單元如下:


      對應(yīng)的公式:

      該單元也可以被稱作是Logistic回歸模型。當(dāng)將多個(gè)單元組合起來并具有分層結(jié)構(gòu)時(shí),就形成了神經(jīng)網(wǎng)絡(luò)模型。其對于的結(jié)構(gòu)圖如下:


      其對應(yīng)的公式如下:

      神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法也同Logistic類似,不過由于其多層性,還需要利用鏈?zhǔn)角髮?dǎo)法則對隱含層的節(jié)點(diǎn)進(jìn)行求導(dǎo),即梯度下降+鏈?zhǔn)角髮?dǎo)法則,專業(yè)名稱為反向傳播。
      CNN是一種特殊的神經(jīng)網(wǎng)絡(luò),它包含卷積層、池化層和激活層。

      卷積層要想了解什么是卷積神經(jīng)網(wǎng)絡(luò),你首先要知道卷積是怎么工作的。想象你有一個(gè)5*5矩陣表示的圖片,然后你用一個(gè)3*3的矩陣在圖片中滑動(dòng)。每當(dāng)3*3矩陣經(jīng)過的點(diǎn)就用原矩陣中被覆蓋的矩陣和這個(gè)矩陣相乘。這樣一來,我們可以使用一個(gè)值來表示當(dāng)前窗口中的所有點(diǎn)。下面是一個(gè)過程的動(dòng)圖:
      播放GIF

      正如你所見的那樣,特征矩陣中的每一個(gè)項(xiàng)都和原圖中的一個(gè)區(qū)域相關(guān)。
      在圖中像窗口一樣移動(dòng)的叫做核。核一般都是方陣,對于小圖片來說,一般選用3*3的矩陣就可以了。每次窗口移動(dòng)的距離叫做步長。值得注意的是,一些圖片在邊界會(huì)被填充零,如果直接進(jìn)行卷積運(yùn)算的話會(huì)導(dǎo)致邊界處的數(shù)據(jù)變?。ó?dāng)然圖片中間的數(shù)據(jù)更重要)。
      卷積層的主要目的是濾波。當(dāng)我們在圖片上操作時(shí),我們可以很容易得檢查出那部分的模式,這是由于我們使用了濾波,我們用權(quán)重向量乘以卷積之后的輸出。當(dāng)訓(xùn)練一張圖片時(shí),這些權(quán)重會(huì)不斷改變,而且當(dāng)遇到之前見過的模式時(shí),相應(yīng)的權(quán)值會(huì)提高。來自各種濾波器的高權(quán)重的組合讓網(wǎng)絡(luò)預(yù)測圖像的內(nèi)容的能力。 這就是為什么在CNN架構(gòu)圖中,卷積步驟由一個(gè)框而不是一個(gè)矩形表示; 第三維代表濾波器。

      池化層池化層和卷積層很類似,也是用一個(gè)卷積核在圖上移動(dòng)。唯一的不同就是池化層中核和圖片窗口的操作不再是線性的。最大池化和平均池化是最常見的池化函數(shù)。最大池化選取當(dāng)前核覆蓋的圖片窗口中最大的數(shù),而平均池化則是選擇圖片窗口的均值。

      播放GIF
      激活層

      在CNN中,激活函數(shù)和其他網(wǎng)絡(luò)一樣,函數(shù)將數(shù)值壓縮在一個(gè)范圍內(nèi)。下面列出了一些常見的函數(shù)。
      在CNN中最常用的是relu(修正線性單元)。人們有許多喜歡relu的理由,但是最重要的一點(diǎn)就是它非常的易于實(shí)現(xiàn),如果數(shù)值是負(fù)數(shù)則輸出0,否則輸出本身。這種函數(shù)運(yùn)算簡單,所以訓(xùn)練網(wǎng)絡(luò)也非???。

      總結(jié)

      CNN中主要有三種層,分別是:卷積層、池化層和激活層。
      卷積層使用卷積核和圖片窗口相乘,并使用梯度下降法去優(yōu)化卷積核。
      池化層使用最大值或者均值來描述一個(gè)圖形窗口。
      激活層使用一個(gè)激活函數(shù)將輸入壓縮到一個(gè)范圍中,典型的[0,1][-1,1]。

      讓我們來看一個(gè)實(shí)例,實(shí)現(xiàn)使用keras識(shí)別貓咪。

      這張圖長400像素寬320像素,有三個(gè)通道(rgb)的顏色。那么經(jīng)過一層卷積運(yùn)算之后會(huì)變成什么樣子呢?

      這是用一個(gè)3*3的卷積核和三個(gè)濾波器處理的效果。
      我們可以看到,圖中的貓非常的模糊,因?yàn)槲覀兪褂昧艘粋€(gè)隨機(jī)的初始值,而且我們還沒有訓(xùn)練網(wǎng)絡(luò)。他們都在彼此的頂端,即使每層都有細(xì)節(jié),我們將無法看到它。但我們可以制作出與眼睛和背景相同顏色的貓的區(qū)域。如果我們將內(nèi)核大小增加到10x10,會(huì)發(fā)生什么呢?

      我們可以看到,由于內(nèi)核太大,我們失去了一些細(xì)節(jié)。還要注意,從數(shù)學(xué)角度來看,卷積核越大,圖像的形狀會(huì)變得越小。

      這張看起來好多了!現(xiàn)在我們可以看到我們的過濾器看到的一些事情??雌饋砑t色替換掉了黑色的鼻子和黑色眼睛,藍(lán)色替換掉了貓邊界的淺灰色。我們可以開始看到圖層如何捕獲照片中的一些更重要的細(xì)節(jié)。

      如果我們增加內(nèi)核大小,我們得到的細(xì)節(jié)就會(huì)越來越明顯,當(dāng)然圖像也比其他兩個(gè)都小。

      增加一個(gè)激活層

      我們通過添加一個(gè)relu,去掉了很多不是藍(lán)色的部分。

      增加一個(gè)池化層

      我們添加一個(gè)池化層(擺脫激活層最大限度地讓圖片更加更容易顯示)。

      正如預(yù)期的那樣,貓咪變成了斑駁的,而我們可以讓它更加斑駁。

      激活和最大池化

      如果我們將貓咪的圖片放到LeNet模型中做卷積和池化,那么效果會(huì)怎么樣呢?

      LeNet

      CNN是非常強(qiáng)大的,雖然這些可視化并不完美,但我希望他們能夠幫助像我這樣正在嘗試更好地理解ConvNets的人。

      博客原文:https:///@erikreppel

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多