針對這個圖,我們對應著卷積的api函式來說:
tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=none, name=none)
如上圖:
第一列為一張輸入影象, 大小為7*7*3, 即寬高為7*7, 通道數為3
所以inputs的維度就是: [-1, 7, 7, 3] , -1是表示batch的大小可以隨意,基於輸入決定
第二列和第三列為乙個卷積層, 對應著引數filter, 它是乙個4d的引數, 分別為卷積層的高,寬,影象通道數,卷積核數
寬高很顯然是3*3, 就是第二列或者第三列裡面的乙個紅色的矩形的寬高
影象通道數,對應著輸入影象的通道數,也就是3,也就是第二列filter w0或w1中的3*3矩形的個數, 可以看到上面第一列和第二列之間的連線,說明第一列的7*7的矩形個數和第二列的3*3的矩形個數要一致,都是影象的通道數
卷積核數,就是第二列到第三列的列數,只有兩列,所以卷積核數是2, 乙個卷積核是指整個第二列或第三列, 卷積核不是那個3*3的矩形,是整個第二列的3個3*3的矩形的組合, 所以整個第二列是乙個卷積核,第三列也是乙個卷積核
第四列是卷積後的值
輸入層和第二列的卷積核計算得到的結果為output volume的第乙個3*3的矩陣, 這個3*3矩陣的每個元素都會加上b[0],上圖是已經加後的結果
輸入層和第三列的卷積核計算得到的結果為output volume的第二個3*3的矩陣, 這個3*3矩陣的每個元素都會加上b[1],上圖是已經加後的結果
偏執b的維度及其加法規則:
偏執b是乙個一維的向量,維度與卷積核數一致,也就是2, 所以b的維度是2*1
加法規則上面已經解釋了, 因為b的維度與卷積核的維度一致,所以是輸入層和第乙個卷積核每步計算的結果要加上b[0], 輸入層和第二個卷積核每步計算的結果要加上b[1]
一維卷積神經網路的理解
設輸入的資料維度是b x s x t 一維卷積神經網路在維度s上進行卷積 如下,設定一維卷積網路的輸入通道為16維,輸出通道為33維,卷積核大小為3,步長為2 in channels 16 out channels 33 kernel size 3 m nn.conv1d 16,33,3,strid...
卷積神經網路的理解
cnn中減少引數的2兩個規則 1 區域性感知。生物學中,視覺皮層的神經元是區域性感知資訊的,只響應某些特定區域的刺激 影象的空間聯絡中,區域性的畫素聯絡較為緊密,距離較遠的畫素相關性較弱。這個對應於演算法中卷積核的大小,mnist手寫識別在28 28的畫素中取patch為5 5。上圖中 左邊是全連線...
一維卷積神經網路 卷積神經網路中的計算
卷積的基本介紹 卷積操作後張量的大小計算 卷積參數量的計算 卷積flops的計算 感受野的計算 卷積神經網路中的卷積是指定義好卷積核 kernel 並對影象 或者特徵圖,feature map 進行滑動匹配,即對應位置相乘再相加。其特點就在於能夠捕捉區域性的空間特徵。具體過程如下圖所示 圖1 二維卷...