caffe網路各層引數詳解

love_kf若汐發表於2018-10-16

caffe網路中主要分為 data資料層、Convolution卷積層、Pooling池化層、ReLU啟用函式層、InnerProduct全連線層、Accuracy分類準確率層、loss損失層七層。

data資料層引數資訊:
name: 這一層的名字。
type:這一層的型別。
top: 這一層所連線的上一層。注意,網路是從下往上生長的。最底層是資料層,越往上特徵越抽象。
phase: TRAIN 表示這一層是訓練時候網路的定義。
mirror:是否使用映象。
crop_size:將輸入資料裁剪為227。
mean_file:均值檔案的路徑。
source:訓練集的路徑。
batch_size:一次迭代輸入的圖片數量。
backend:資料集的格式。

Convolution卷積層引數資訊:
num_output (c_o):過濾器的個數
kernel_size (or kernel_h and kernel_w):過濾器的大小
可選引數:
weight_filler [default type: `constant` value: 0]:引數的初始化方法
bias_filler:偏置的初始化方法
bias_term [default true]:指定是否是否開啟偏置項
pad (or pad_h and pad_w) [default 0]:指定在輸入的每一邊加上多少個畫素
stride (or stride_h and stride_w) [default 1]:指定過濾器的步長
group (g) [default 1]: If g > 1, we restrict the connectivityof each filter to a subset of the input. Specifically, the input and outputchannels are separated into g groups, and the ith output group channels will beonly connected to the ith input group channels.
通過卷積後的大小變化:
輸入:n c_i h_i * w_i
輸出:n c_o h_o w_o,其中h_o = (h_i + 2 pad_h – kernel_h) /stride_h + 1,w_o通過同樣的方法計算。

Pooling池化層:
必需引數:
kernel_size (or kernel_h and kernel_w):過濾器的大小

可選引數:
pool [default MAX]:pooling的方法,目前有MAX, AVE, 和STOCHASTIC三種方法
pad (or pad_h and pad_w) [default 0]:指定在輸入的每一遍加上多少個畫素
stride (or stride_h and stride_w) [default1]:指定過濾器的步長


相關文章