layer { name: "data" type: "Data" top: "data" top: "label" include { phase: TRAIN } transform_param { mirror: true crop_size: 32 } data_param { source: "train.lmdb" batch_size: 128 backend: LMDB } } layer { name: "data" type: "Data" top: "data" top: "label" include { phase: TEST } data_param { source: "val.lmdb" batch_size: 100 backend: LMDB } } layer { name: "Convolution1" type: "Convolution" bottom: "data" top: "Convolution1" convolution_param { num_output: 64 pad: 1 kernel_size: 3 stride: 1 weight_filler { type: "xavier" } } } layer { name: "ReLU1" type: "ReLU" bottom: "Convolution1" top: "Convolution1" } layer { name: "Convolution2" type: "Convolution" bottom: "Convolution1" top: "Convolution2" convolution_param { num_output: 128 pad: 1 kernel_size: 3 stride: 1 weight_filler { type: "xavier" } } } layer { name: "ReLU2" type: "ReLU" bottom: "Convolution2" top: "Convolution2" } layer { name: "Dropout1" type: "Dropout" bottom: "Convolution2" top: "Dropout1" dropout_param { dropout_ratio: 0.1 } } layer { name: "Pooling1" type: "Pooling" bottom: "Dropout1" top: "Pooling1" pooling_param { pool: MAX kernel_size: 5 stride: 3 } } layer { name: "Convolution3" type: "Convolution" bottom: "Pooling1" top: "Convolution3" convolution_param { num_output: 256 pad: 1 kernel_size: 3 stride: 1 weight_filler { type: "xavier" } } } layer { name: "ReLU3" type: "ReLU" bottom: "Convolution3" top: "Convolution3" } layer { name: "Dropout2" type: "Dropout" bottom: "Convolution3" top: "Dropout2" dropout_param { dropout_ratio: 0.2 } } layer { name: "Pooling2" type: "Pooling" bottom: "Dropout2" top: "Pooling2" pooling_param { pool: MAX kernel_size: 3 stride: 2 } } layer { name: "InnerProduct1" type: "InnerProduct" bottom: "Pooling2" top: "InnerProduct1" inner_product_param { num_output: 512 weight_filler { type: "xavier" } } } layer { name: "ReLU4" type: "ReLU" bottom: "InnerProduct1" top: "InnerProduct1" } layer { name: "Dropout3" type: "Dropout" bottom: "InnerProduct1" top: "Dropout3" dropout_param { dropout_ratio: 0.3 } } layer { name: "InnerProduct2" type: "InnerProduct" bottom: "Dropout3" top: "InnerProduct2" inner_product_param { num_output: 128 weight_filler { type: "xavier" } } } layer { name: "ReLU5" type: "ReLU" bottom: "InnerProduct2" top: "InnerProduct2" } layer { name: "Dropout4" type: "Dropout" bottom: "InnerProduct2" top: "Dropout4" dropout_param { dropout_ratio: 0.4 } } layer { name: "InnerProduct3" type: "InnerProduct" bottom: "Dropout4" top: "InnerProduct3" inner_product_param { num_output: 10 weight_filler { type: "xavier" } } } layer { name: "Accuracy1" type: "Accuracy" bottom: "InnerProduct3" bottom: "label" top: "Accuracy1" } layer { name: "SoftmaxWithLoss1" type: "SoftmaxWithLoss" bottom: "InnerProduct3" bottom: "label" top: "SoftmaxWithLoss1" }