數據經過數據層進入 caffe 網絡:數據層處於網絡的最底層, 數據可以從高效率的數據庫中讀取(如: LevelDB, LMDB), 可以直接從內存中讀取, 若對讀寫效率要求不高也可以從硬盤上的 HDFT 文件或者普通的圖片文件讀取。
數據來自於數據庫:
層類型(layer type):Data
必須設置的參數:
source: 包含數據庫的目錄名稱,如examples/mnist/mnist_train_lmdb
batch_size: 每次處理的數據個數,如64
可選的參數:
rand_skip: 在開始的時候,路過某個數據的輸入。通常對異步的SGD很有用。
backend: 可以採用LevelDB,LMDB, 默認是LevelDB.
示例:
layer { name: "mnist" type: "Data" top: "data" top: "label" include { phase: TRAIN } transform_param { scale: 0.00390625 } data_param { source: "examples/mnist/mnist_train_lmdb" batch_size: 64 backend: LMDB } }
數據來自於內存:
層類型:MemoryData
必須設置的參數:
batch_size:每一次處理的數據個數,比如2
channels:通道數
height:高度
width: 寬度
示例:
layer { top: "data" top: "label" name: "memory_data" type: "MemoryData" memory_data_param{ batch_size: 2 height: 100 width: 100 channels: 1 } transform_param { scale: 0.0078125 mean_file: "mean.proto" mirror: false } }
數據來自於HDF5:
層類型:HDF5Data
必須設置的參數:
source: 讀取的文件名稱
batch_size: 每一次處理的數據個數
示例:
layer { name: "data" type: "HDF5Data" top: "data" top: "label" hdf5_data_param { source: "examples/hdf5_classification/data/train.txt" batch_size: 10 } }
數據來自於圖片:
層類型:ImageData
必須設置的參數:
source: 一個文本文件的名字,每一行給定一個圖片文件的名稱和標籤(label)
batch_size: 每一次處理的數據個數,即圖片數
可選參數:
rand_skip: 在開始的時候,路過某個數據的輸入。通常對異步的SGD很有用。
shuffle: 隨機打亂順序,默認值爲false
new_height,new_width: 如果設置,則將圖片進行resize
示例:
layer { name: "data" type: "ImageData" top: "data" top: "label" transform_param { mirror: false crop_size: 227 mean_file: "data/ilsvrc12/imagenet_mean.binaryproto" } image_data_param { source: "examples/_temp/file_list.txt" batch_size: 50 new_height: 256 new_width: 256 } }
數據來自於Windows:
層類型:WindowData
必須設置的參數:
source: 一個文本文件的名字
batch_size: 每一次處理的數據個數,即圖片數
示例:
layer { name: "data" type: "WindowData" top: "data" top: "label" include { phase: TRAIN } transform_param { mirror: true crop_size: 227 mean_file: "data/ilsvrc12/imagenet_mean.binaryproto" } window_data_param { source: "examples/finetune_pascal_detection/window_file_2007_trainval.txt" batch_size: 128 fg_threshold: 0.5 bg_threshold: 0.5 fg_fraction: 0.25 context_pad: 16 crop_mode: "warp" } }
數據來自於Dummy:
DummyData 主要用來開發和調試 。