Udacity深度學習之卷積神經網路概念解析

2021-09-08 21:42:31 字數 1748 閱讀 1115

tride

filter depth

一提到卷積神經網路,有些概念我們需要解析一下,要不然一說卷積神經網路可能會發懵。

第一次聽到patch,這是個啥?我們先看一下史丹福大學對卷積核的乙個動態介紹[1],這裡直接弄乙個圖,動態圖參考文獻[1]:

圖1 卷積核

image代表的就是的輸入,image圖中的黃色33的塊就是patch,那麼黃色裡紅色數字組成的33矩陣就是卷積核,或者叫filter

為了更清晰說明,我們以一張貓的做立體說明。

cnn 的第一步是把分成小塊。我們通過選取乙個給定寬度和高度的濾波器來實現這一步。濾波器會照在的小塊 patch (影象區塊)上。這些 patch 的大小與濾波器一樣大。

cnn用濾波器來把分割成更小的 patch,patch 的大小跟濾波器大小相同。我們可以在水平方向,或者豎直方向滑動濾波器對的不同部分進行聚焦。

tride,也叫步長,表示濾波器在上每一次向右移動的距離。假設步長設為1,圖1卷積核就會變成圖2(第一次移動乙個步長後的卷積核圖)。

圖2 移動1位後的卷積核

濾波器滑動的間隔被稱作 stride(步長)。這是你可以調節的乙個超引數。增大 stride 值後,會減少每層總 patch 數量,因此也減小了模型大小。通常這也會降低影象精度。

通常都會有多餘乙個濾波器,不同濾波器提取乙個 patch 的不同特性。例如,乙個濾波器尋找特定顏色,另乙個尋找特定物體的特定形狀。卷積層濾波器的數量被稱為濾波器深度filter depth。

上述例子中,乙個 patch 與下一層的神經元相連

每個 patch 連線多少神經元?

這取決於濾波器的深度,如果深度是 k,我們把每個 patch 與下一層的 k 個神經元相連。這樣下一層的高度就是 k,如下圖所示。實際操作中,k是乙個我們可以調節的超引數,大多數的 cnns 傾向於選擇相同的起始值。

濾波器的深度為k,與下一層的k個神經元相連。

為什麼我們把乙個 patch 與下一層的多個神經元相連呢?乙個神經元不夠好嗎?

多個神經元的作用在於,乙個 patch 可以有多個有意義的,可供提取的特點。

例如,乙個 patch 可能包括白牙,金色的須,紅舌頭的一部分。在這種情況下,我們需要乙個深度至少為3的濾波器,乙個識別牙,乙個識別須,乙個識別舌頭。

這只狗的 patch 有很多有意思的特徵需要提取。包括牙、須以及粉紅色的舌頭。

乙個 patch 連線有多個神經元可以保證我們的 cnns 學會提取任何它覺得重要的特徵。

記住,cnn 並沒有被規定尋找特定特徵。與之相反,它自我學習什麼特徵值得注意。

ref:

1、卷積核動態圖

2、udacity課程

Udacity深度學習之Dropout

droupout在深度學習中用來防止過擬合,機器學習過擬合現象究竟是什麼呢?具體可以可以周志華老師機器學習西瓜書 第二章 模型評估與選擇,同時解釋為什麼l1可以做特徵選擇,其係數為0 l2正則類似 來說。用一張圖來表示就是 dropout是乙個降低過擬合的正則化技術。它在網路中暫時的丟棄一些單元 神...

udacity上Google的深度學習筆記

udacity上deeplearning這門課是google開的,介紹了常見的幾種深度神經網路模型,同時還附帶了幾個練習,並且練習用的工具都是tensorflow,所以既可以學習一下神經網路的知識,又可以學習tensorflow。我寫的課後練習的 都放到了我的githuh上 同時也是第一次用git,...

深度學習之卷積神經網路

卷積神經網路是一種多層神經網路,擅長處理影象特別是大影象的相關機器學習問題。卷積網路通過一系列方法,成功將資料量龐大的影象識別問題不斷降維,最終使其能夠被訓練。cnn最早由yann lecun提出並應用在手寫字型識別上 minst lecun提出的網路稱為lenet,其網路結構如下 這是乙個最典型的...