赞
踩
name: "ResNet-SE-18" layer { name: "data" type: "ImageData" top: "data" top: "label" include { phase: TRAIN } transform_param { mean_value: 127.5 mean_value: 127.5 mean_value: 127.5 scale: 0.0078125 mirror: false } image_data_param { source: "/data1/Working/project/scene_judgement/exam-0/data/train.txt" batch_size: 8 new_height: 224 new_width: 224 shuffle: true } } layer { name: "data" type: "ImageData" top: "data" top: "label" include { phase: TEST } transform_param { mean_value: 127.5 mean_value: 127.5 mean_value: 127.5 scale: 0.0078125 mirror: false } image_data_param { source: "/data1/Working/project/scene_judgement/exam-0/data/test.txt" batch_size: 1 new_height: 224 new_width: 224 shuffle: true } } layer { bottom: "data" top: "conv1" name: "conv1" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "conv1" top: "conv1" name: "bn_conv1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "conv1" top: "conv1" name: "scale_conv1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "conv1" top: "conv1" name: "conv1_relu" type: "ReLU" } layer { bottom: "conv1" top: "res2a_branch1" name: "res2a_branch1" type: "Convolution" convolution_param { num_output: 32 kernel_size: 1 pad: 0 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2a_branch1" top: "res2a_branch1" name: "bn2a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2a_branch1" top: "res2a_branch1" name: "scale2a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "conv1" top: "res2a_branch2a" name: "res2a_branch2a" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2a_branch2a" top: "res2a_branch2a" name: "bn2a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2a_branch2a" top: "res2a_branch2a" name: "scale2a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2a_branch2a" top: "res2a_branch2a" name: "res2a_branch2a_relu" type: "ReLU" } layer { bottom: "res2a_branch2a" top: "res2a_branch2b" name: "res2a_branch2b" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2a_branch2b" top: "res2a_branch2b" name: "bn2a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2a_branch2b" top: "res2a_branch2b" name: "scale2a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2a_branch2b" top: "se2a_global_pool" name: "se2a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se2a_global_pool" top: "se2a_conva" name: "se2a_conva" type: "Convolution" convolution_param { num_output: 2 kernel_size: 1 stride: 1 weight_filler { type:"msra" } bias_term: true } } layer { bottom: "se2a_conva" top: "se2a_conva" name: "se2a_relu" type: "ReLU" } layer { bottom: "se2a_conva" top: "se2a_convb" name: "se2a_convb" type: "Convolution" convolution_param { num_output: 32 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se2a_convb" top: "se2a_convb" name: "se2a_prob" type: "Sigmoid" } layer { bottom: "se2a_convb" bottom: "res2a_branch2b" bottom: "res2a_branch1" top: "res2a" name: "res2a" type: "Axpy" } layer { bottom: "res2a" top: "res2a" name: "res2a_relu" type: "ReLU" } layer { bottom: "res2a" top: "res2b_branch2a" name: "res2b_branch2a" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2b_branch2a" top: "res2b_branch2a" name: "bn2b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2b_branch2a" top: "res2b_branch2a" name: "scale2b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2b_branch2a" top: "res2b_branch2a" name: "res2b_branch2a_relu" type: "ReLU" } layer { bottom: "res2b_branch2a" top: "res2b_branch2b" name: "res2b_branch2b" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2b_branch2b" top: "res2b_branch2b" name: "bn2b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2b_branch2b" top: "res2b_branch2b" name: "scale2b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2b_branch2b" top: "se2b_global_pool" name: "se2b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se2b_global_pool" top: "se2b_conva" name: "se2b_conva" type: "Convolution" convolution_param { num_output: 2 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se2b_conva" top: "se2b_conva" name: "se2b_relu" type: "ReLU" } layer { bottom: "se2b_conva" top: "se2b_convb" name: "se2b_convb" type: "Convolution" convolution_param { num_output: 32 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se2b_convb" top: "se2b_convb" name: "se2b_prob" type: "Sigmoid" } layer { bottom: "se2b_convb" bottom: "res2b_branch2b" bottom: "res2a" top: "res2b" name: "res2b" type: "Axpy" } layer { bottom: "res2b" top: "res2b" name: "res2b_relu" type: "ReLU" } layer { bottom: "res2b" top: "res3a_branch1" name: "res3a_branch1" type: "Convolution" convolution_param { num_output: 64 kernel_size: 1 pad: 0 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3a_branch1" top: "res3a_branch1" name: "bn3a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3a_branch1" top: "res3a_branch1" name: "scale3a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2b" top: "res3a_branch2a" name: "res3a_branch2a" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3a_branch2a" top: "res3a_branch2a" name: "bn3a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3a_branch2a" top: "res3a_branch2a" name: "scale3a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3a_branch2a" top: "res3a_branch2a" name: "res3a_branch2a_relu" type: "ReLU" } layer { bottom: "res3a_branch2a" top: "res3a_branch2b" name: "res3a_branch2b" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3a_branch2b" top: "res3a_branch2b" name: "bn3a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3a_branch2b" top: "res3a_branch2b" name: "scale3a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3a_branch2b" top: "se3a_global_pool" name: "se3a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se3a_global_pool" top: "se3a_conva" name: "se3a_conva" type: "Convolution" convolution_param { num_output: 4 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3a_conva" top: "se3a_conva" name: "se3a_relu" type: "ReLU" } layer { bottom: "se3a_conva" top: "se3a_convb" name: "se3a_convb" type: "Convolution" convolution_param { num_output: 64 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3a_convb" top: "se3a_convb" name: "se3a_prob" type: "Sigmoid" } layer { bottom: "se3a_convb" bottom: "res3a_branch2b" bottom: "res3a_branch1" top: "res3a" name: "res3a" type: "Axpy" } layer { bottom: "res3a" top: "res3a" name: "res3a_relu" type: "ReLU" } layer { bottom: "res3a" top: "res3b_branch2a" name: "res3b_branch2a" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3b_branch2a" top: "res3b_branch2a" name: "bn3b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3b_branch2a" top: "res3b_branch2a" name: "scale3b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3b_branch2a" top: "res3b_branch2a" name: "res3b_branch2a_relu" type: "ReLU" } layer { bottom: "res3b_branch2a" top: "res3b_branch2b" name: "res3b_branch2b" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3b_branch2b" top: "res3b_branch2b" name: "bn3b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3b_branch2b" top: "res3b_branch2b" name: "scale3b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3b_branch2b" top: "se3b_global_pool" name: "se3b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se3b_global_pool" top: "se3b_conva" name: "se3b_conva" type: "Convolution" convolution_param { num_output: 4 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3b_conva" top: "se3b_conva" name: "se3b_relu" type: "ReLU" } layer { bottom: "se3b_conva" top: "se3b_convb" name: "se3b_convb" type: "Convolution" convolution_param { num_output: 64 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3b_convb" top: "se3b_convb" name: "se3b_prob" type: "Sigmoid" } layer { bottom: "se3b_convb" bottom: "res3b_branch2b" bottom: "res3a" top: "res3b" name: "res3b" type: "Axpy" } layer { bottom: "res3b" top: "res3b" name: "res3b_relu" type: "ReLU" } layer { bottom: "res3b" top: "res4a_branch1" name: "res4a_branch1" type: "Convolution" convolution_param { num_output: 128 kernel_size: 1 pad: 0 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4a_branch1" top: "res4a_branch1" name: "bn4a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4a_branch1" top: "res4a_branch1" name: "scale4a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3b" top: "res4a_branch2a" name: "res4a_branch2a" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4a_branch2a" top: "res4a_branch2a" name: "bn4a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4a_branch2a" top: "res4a_branch2a" name: "scale4a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4a_branch2a" top: "res4a_branch2a" name: "res4a_branch2a_relu" type: "ReLU" } layer { bottom: "res4a_branch2a" top: "res4a_branch2b" name: "res4a_branch2b" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4a_branch2b" top: "res4a_branch2b" name: "bn4a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4a_branch2b" top: "res4a_branch2b" name: "scale4a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4a_branch2b" top: "se4a_global_pool" name: "se4a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se4a_global_pool" top: "se4a_conva" name: "se4a_conva" type: "Convolution" convolution_param { num_output: 8 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4a_conva" top: "se4a_conva" name: "se4a_relu" type: "ReLU" } layer { bottom: "se4a_conva" top: "se4a_convb" name: "se4a_convb" type: "Convolution" convolution_param { num_output: 128 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4a_convb" top: "se4a_convb" name: "se4a_prob" type: "Sigmoid" } layer { bottom: "se4a_convb" bottom: "res4a_branch2b" bottom: "res4a_branch1" top: "res4a" name: "res4a" type: "Axpy" } layer { bottom: "res4a" top: "res4a" name: "res4a_relu" type: "ReLU" } layer { bottom: "res4a" top: "res4b_branch2a" name: "res4b_branch2a" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4b_branch2a" top: "res4b_branch2a" name: "bn4b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4b_branch2a" top: "res4b_branch2a" name: "scale4b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4b_branch2a" top: "res4b_branch2a" name: "res4b_branch2a_relu" type: "ReLU" } layer { bottom: "res4b_branch2a" top: "res4b_branch2b" name: "res4b_branch2b" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4b_branch2b" top: "res4b_branch2b" name: "bn4b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4b_branch2b" top: "res4b_branch2b" name: "scale4b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4b_branch2b" top: "se4b_global_pool" name: "se4b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se4b_global_pool" top: "se4b_conva" name: "se4b_conva" type: "Convolution" convolution_param { num_output: 8 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4b_conva" top: "se4b_conva" name: "se4b_relu" type: "ReLU" } layer { bottom: "se4b_conva" top: "se4b_convb" name: "se4b_convb" type: "Convolution" convolution_param { num_output: 128 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4b_convb" top: "se4b_convb" name: "se4b_prob" type: "Sigmoid" } layer { bottom: "se4b_convb" bottom: "res4b_branch2b" bottom: "res4a" top: "res4b" name: "res4b" type: "Axpy" } layer { bottom: "res4b" top: "res4b" name: "res4b_relu" type: "ReLU" } layer { bottom: "res4b" top: "res5a_branch1" name: "res5a_branch1" type: "Convolution" convolution_param { num_output: 256 kernel_size: 1 pad: 0 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5a_branch1" top: "res5a_branch1" name: "bn5a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5a_branch1" top: "res5a_branch1" name: "scale5a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4b" top: "res5a_branch2a" name: "res5a_branch2a" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5a_branch2a" top: "res5a_branch2a" name: "bn5a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5a_branch2a" top: "res5a_branch2a" name: "scale5a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5a_branch2a" top: "res5a_branch2a" name: "res5a_branch2a_relu" type: "ReLU" } layer { bottom: "res5a_branch2a" top: "res5a_branch2b" name: "res5a_branch2b" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5a_branch2b" top: "res5a_branch2b" name: "bn5a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5a_branch2b" top: "res5a_branch2b" name: "scale5a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5a_branch2b" top: "se5a_global_pool" name: "se5a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se5a_global_pool" top: "se5a_conva" name: "se5a_conva" type: "Convolution" convolution_param { num_output: 16 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5a_conva" top: "se5a_conva" name: "se5a_relu" type: "ReLU" } layer { bottom: "se5a_conva" top: "se5a_convb" name: "se5a_convb" type: "Convolution" convolution_param { num_output: 256 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5a_convb" top: "se5a_convb" name: "se5a_prob" type: "Sigmoid" } layer { bottom: "se5a_convb" bottom: "res5a_branch2b" bottom: "res5a_branch1" top: "res5a" name: "res5a" type: "Axpy" } layer { bottom: "res5a" top: "res5a" name: "res5a_relu" type: "ReLU" } layer { bottom: "res5a" top: "res5b_branch2a" name: "res5b_branch2a" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5b_branch2a" top: "res5b_branch2a" name: "bn5b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5b_branch2a" top: "res5b_branch2a" name: "scale5b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5b_branch2a" top: "res5b_branch2a" name: "res5b_branch2a_relu" type: "ReLU" } layer { bottom: "res5b_branch2a" top: "res5b_branch2b" name: "res5b_branch2b" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5b_branch2b" top: "res5b_branch2b" name: "bn5b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5b_branch2b" top: "res5b_branch2b" name: "scale5b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5b_branch2b" top: "se5b_global_pool" name: "se5b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se5b_global_pool" top: "se5b_conva" name: "se5b_conva" type: "Convolution" convolution_param { num_output: 8 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5b_conva" top: "se5b_conva" name: "se5b_relu" type: "ReLU" } layer { bottom: "se5b_conva" top: "se5b_convb" name: "se5b_convb" type: "Convolution" convolution_param { num_output: 256 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5b_convb" top: "se5b_convb" name: "se5b_prob" type: "Sigmoid" } layer { bottom: "se5b_convb" bottom: "res5b_branch2b" bottom: "res5a" top: "res5b" name: "res5b" type: "Axpy" } layer { bottom: "res5b" top: "res5b" name: "res5b_relu" type: "ReLU" } layer { bottom: "res5b" top: "pool5" name: "pool5" type: "Pooling" pooling_param { global_pooling: true pool: AVE } } layer { bottom: "pool5" top: "fc7" name: "fc7" type: "InnerProduct" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 2 decay_mult: 1 } inner_product_param { num_output: 7 weight_filler { type: "xavier" } bias_filler { type: "constant" value: 0 } } } layer { bottom: "fc7" bottom: "label" name: "loss" type: "SoftmaxWithLoss" top: "loss" } layer { bottom: "fc7" bottom: "label" top: "acc/top-1" name: "acc/top-1" type: "Accuracy" include { phase: TEST } } layer { bottom: "fc7" bottom: "label" top: "acc/train" name: "acc/train" type: "Accuracy" include { phase: TRAIN } }
name: "ResNet-18_se" # input size: 224 x 224 layer { name: "data" type: "Input" top: "data" input_param { shape: { dim: 1 dim: 3 dim: 224 dim: 224 } } } layer { bottom: "data" top: "conv1" name: "conv1" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "conv1" top: "conv1" name: "bn_conv1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "conv1" top: "conv1" name: "scale_conv1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "conv1" top: "conv1" name: "conv1_relu" type: "ReLU" } layer { bottom: "conv1" top: "res2a_branch1" name: "res2a_branch1" type: "Convolution" convolution_param { num_output: 32 kernel_size: 1 pad: 0 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2a_branch1" top: "res2a_branch1" name: "bn2a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2a_branch1" top: "res2a_branch1" name: "scale2a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "conv1" top: "res2a_branch2a" name: "res2a_branch2a" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2a_branch2a" top: "res2a_branch2a" name: "bn2a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2a_branch2a" top: "res2a_branch2a" name: "scale2a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2a_branch2a" top: "res2a_branch2a" name: "res2a_branch2a_relu" type: "ReLU" } layer { bottom: "res2a_branch2a" top: "res2a_branch2b" name: "res2a_branch2b" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2a_branch2b" top: "res2a_branch2b" name: "bn2a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2a_branch2b" top: "res2a_branch2b" name: "scale2a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2a_branch2b" top: "se2a_global_pool" name: "se2a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se2a_global_pool" top: "se2a_conva" name: "se2a_conva" type: "Convolution" convolution_param { num_output: 2 kernel_size: 1 stride: 1 weight_filler { type:"msra" } bias_term: true } } layer { bottom: "se2a_conva" top: "se2a_conva" name: "se2a_relu" type: "ReLU" } layer { bottom: "se2a_conva" top: "se2a_convb" name: "se2a_convb" type: "Convolution" convolution_param { num_output: 32 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se2a_convb" top: "se2a_convb" name: "se2a_prob" type: "Sigmoid" } layer { bottom: "se2a_convb" bottom: "res2a_branch2b" bottom: "res2a_branch1" top: "res2a" name: "res2a" type: "Axpy" } layer { bottom: "res2a" top: "res2a" name: "res2a_relu" type: "ReLU" } layer { bottom: "res2a" top: "res2b_branch2a" name: "res2b_branch2a" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2b_branch2a" top: "res2b_branch2a" name: "bn2b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2b_branch2a" top: "res2b_branch2a" name: "scale2b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2b_branch2a" top: "res2b_branch2a" name: "res2b_branch2a_relu" type: "ReLU" } layer { bottom: "res2b_branch2a" top: "res2b_branch2b" name: "res2b_branch2b" type: "Convolution" convolution_param { num_output: 32 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res2b_branch2b" top: "res2b_branch2b" name: "bn2b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res2b_branch2b" top: "res2b_branch2b" name: "scale2b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2b_branch2b" top: "se2b_global_pool" name: "se2b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se2b_global_pool" top: "se2b_conva" name: "se2b_conva" type: "Convolution" convolution_param { num_output: 2 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se2b_conva" top: "se2b_conva" name: "se2b_relu" type: "ReLU" } layer { bottom: "se2b_conva" top: "se2b_convb" name: "se2b_convb" type: "Convolution" convolution_param { num_output: 32 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se2b_convb" top: "se2b_convb" name: "se2b_prob" type: "Sigmoid" } layer { bottom: "se2b_convb" bottom: "res2b_branch2b" bottom: "res2a" top: "res2b" name: "res2b" type: "Axpy" } layer { bottom: "res2b" top: "res2b" name: "res2b_relu" type: "ReLU" } layer { bottom: "res2b" top: "res3a_branch1" name: "res3a_branch1" type: "Convolution" convolution_param { num_output: 64 kernel_size: 1 pad: 0 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3a_branch1" top: "res3a_branch1" name: "bn3a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3a_branch1" top: "res3a_branch1" name: "scale3a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res2b" top: "res3a_branch2a" name: "res3a_branch2a" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3a_branch2a" top: "res3a_branch2a" name: "bn3a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3a_branch2a" top: "res3a_branch2a" name: "scale3a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3a_branch2a" top: "res3a_branch2a" name: "res3a_branch2a_relu" type: "ReLU" } layer { bottom: "res3a_branch2a" top: "res3a_branch2b" name: "res3a_branch2b" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3a_branch2b" top: "res3a_branch2b" name: "bn3a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3a_branch2b" top: "res3a_branch2b" name: "scale3a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3a_branch2b" top: "se3a_global_pool" name: "se3a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se3a_global_pool" top: "se3a_conva" name: "se3a_conva" type: "Convolution" convolution_param { num_output: 4 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3a_conva" top: "se3a_conva" name: "se3a_relu" type: "ReLU" } layer { bottom: "se3a_conva" top: "se3a_convb" name: "se3a_convb" type: "Convolution" convolution_param { num_output: 64 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3a_convb" top: "se3a_convb" name: "se3a_prob" type: "Sigmoid" } layer { bottom: "se3a_convb" bottom: "res3a_branch2b" bottom: "res3a_branch1" top: "res3a" name: "res3a" type: "Axpy" } layer { bottom: "res3a" top: "res3a" name: "res3a_relu" type: "ReLU" } layer { bottom: "res3a" top: "res3b_branch2a" name: "res3b_branch2a" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3b_branch2a" top: "res3b_branch2a" name: "bn3b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3b_branch2a" top: "res3b_branch2a" name: "scale3b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3b_branch2a" top: "res3b_branch2a" name: "res3b_branch2a_relu" type: "ReLU" } layer { bottom: "res3b_branch2a" top: "res3b_branch2b" name: "res3b_branch2b" type: "Convolution" convolution_param { num_output: 64 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res3b_branch2b" top: "res3b_branch2b" name: "bn3b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res3b_branch2b" top: "res3b_branch2b" name: "scale3b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3b_branch2b" top: "se3b_global_pool" name: "se3b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se3b_global_pool" top: "se3b_conva" name: "se3b_conva" type: "Convolution" convolution_param { num_output: 4 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3b_conva" top: "se3b_conva" name: "se3b_relu" type: "ReLU" } layer { bottom: "se3b_conva" top: "se3b_convb" name: "se3b_convb" type: "Convolution" convolution_param { num_output: 64 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se3b_convb" top: "se3b_convb" name: "se3b_prob" type: "Sigmoid" } layer { bottom: "se3b_convb" bottom: "res3b_branch2b" bottom: "res3a" top: "res3b" name: "res3b" type: "Axpy" } layer { bottom: "res3b" top: "res3b" name: "res3b_relu" type: "ReLU" } layer { bottom: "res3b" top: "res4a_branch1" name: "res4a_branch1" type: "Convolution" convolution_param { num_output: 128 kernel_size: 1 pad: 0 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4a_branch1" top: "res4a_branch1" name: "bn4a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4a_branch1" top: "res4a_branch1" name: "scale4a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res3b" top: "res4a_branch2a" name: "res4a_branch2a" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4a_branch2a" top: "res4a_branch2a" name: "bn4a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4a_branch2a" top: "res4a_branch2a" name: "scale4a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4a_branch2a" top: "res4a_branch2a" name: "res4a_branch2a_relu" type: "ReLU" } layer { bottom: "res4a_branch2a" top: "res4a_branch2b" name: "res4a_branch2b" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4a_branch2b" top: "res4a_branch2b" name: "bn4a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4a_branch2b" top: "res4a_branch2b" name: "scale4a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4a_branch2b" top: "se4a_global_pool" name: "se4a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se4a_global_pool" top: "se4a_conva" name: "se4a_conva" type: "Convolution" convolution_param { num_output: 8 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4a_conva" top: "se4a_conva" name: "se4a_relu" type: "ReLU" } layer { bottom: "se4a_conva" top: "se4a_convb" name: "se4a_convb" type: "Convolution" convolution_param { num_output: 128 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4a_convb" top: "se4a_convb" name: "se4a_prob" type: "Sigmoid" } layer { bottom: "se4a_convb" bottom: "res4a_branch2b" bottom: "res4a_branch1" top: "res4a" name: "res4a" type: "Axpy" } layer { bottom: "res4a" top: "res4a" name: "res4a_relu" type: "ReLU" } layer { bottom: "res4a" top: "res4b_branch2a" name: "res4b_branch2a" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4b_branch2a" top: "res4b_branch2a" name: "bn4b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4b_branch2a" top: "res4b_branch2a" name: "scale4b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4b_branch2a" top: "res4b_branch2a" name: "res4b_branch2a_relu" type: "ReLU" } layer { bottom: "res4b_branch2a" top: "res4b_branch2b" name: "res4b_branch2b" type: "Convolution" convolution_param { num_output: 128 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res4b_branch2b" top: "res4b_branch2b" name: "bn4b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res4b_branch2b" top: "res4b_branch2b" name: "scale4b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4b_branch2b" top: "se4b_global_pool" name: "se4b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se4b_global_pool" top: "se4b_conva" name: "se4b_conva" type: "Convolution" convolution_param { num_output: 8 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4b_conva" top: "se4b_conva" name: "se4b_relu" type: "ReLU" } layer { bottom: "se4b_conva" top: "se4b_convb" name: "se4b_convb" type: "Convolution" convolution_param { num_output: 128 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se4b_convb" top: "se4b_convb" name: "se4b_prob" type: "Sigmoid" } layer { bottom: "se4b_convb" bottom: "res4b_branch2b" bottom: "res4a" top: "res4b" name: "res4b" type: "Axpy" } layer { bottom: "res4b" top: "res4b" name: "res4b_relu" type: "ReLU" } layer { bottom: "res4b" top: "res5a_branch1" name: "res5a_branch1" type: "Convolution" convolution_param { num_output: 256 kernel_size: 1 pad: 0 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5a_branch1" top: "res5a_branch1" name: "bn5a_branch1" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5a_branch1" top: "res5a_branch1" name: "scale5a_branch1" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res4b" top: "res5a_branch2a" name: "res5a_branch2a" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 2 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5a_branch2a" top: "res5a_branch2a" name: "bn5a_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5a_branch2a" top: "res5a_branch2a" name: "scale5a_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5a_branch2a" top: "res5a_branch2a" name: "res5a_branch2a_relu" type: "ReLU" } layer { bottom: "res5a_branch2a" top: "res5a_branch2b" name: "res5a_branch2b" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5a_branch2b" top: "res5a_branch2b" name: "bn5a_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5a_branch2b" top: "res5a_branch2b" name: "scale5a_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5a_branch2b" top: "se5a_global_pool" name: "se5a_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se5a_global_pool" top: "se5a_conva" name: "se5a_conva" type: "Convolution" convolution_param { num_output: 16 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5a_conva" top: "se5a_conva" name: "se5a_relu" type: "ReLU" } layer { bottom: "se5a_conva" top: "se5a_convb" name: "se5a_convb" type: "Convolution" convolution_param { num_output: 256 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5a_convb" top: "se5a_convb" name: "se5a_prob" type: "Sigmoid" } layer { bottom: "se5a_convb" bottom: "res5a_branch2b" bottom: "res5a_branch1" top: "res5a" name: "res5a" type: "Axpy" } layer { bottom: "res5a" top: "res5a" name: "res5a_relu" type: "ReLU" } layer { bottom: "res5a" top: "res5b_branch2a" name: "res5b_branch2a" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5b_branch2a" top: "res5b_branch2a" name: "bn5b_branch2a" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5b_branch2a" top: "res5b_branch2a" name: "scale5b_branch2a" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5b_branch2a" top: "res5b_branch2a" name: "res5b_branch2a_relu" type: "ReLU" } layer { bottom: "res5b_branch2a" top: "res5b_branch2b" name: "res5b_branch2b" type: "Convolution" convolution_param { num_output: 256 kernel_size: 3 pad: 1 stride: 1 weight_filler { type: "msra" } bias_term: false } } layer { bottom: "res5b_branch2b" top: "res5b_branch2b" name: "bn5b_branch2b" type: "BatchNorm" batch_norm_param { moving_average_fraction: 0.9 } } layer { bottom: "res5b_branch2b" top: "res5b_branch2b" name: "scale5b_branch2b" type: "Scale" scale_param { bias_term: true } } layer { bottom: "res5b_branch2b" top: "se5b_global_pool" name: "se5b_global_pool" type: "Pooling" pooling_param { pool: AVE engine: CAFFE global_pooling: true } } layer { bottom: "se5b_global_pool" top: "se5b_conva" name: "se5b_conva" type: "Convolution" convolution_param { num_output: 8 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5b_conva" top: "se5b_conva" name: "se5b_relu" type: "ReLU" } layer { bottom: "se5b_conva" top: "se5b_convb" name: "se5b_convb" type: "Convolution" convolution_param { num_output: 256 kernel_size: 1 stride: 1 weight_filler { type: "msra" } bias_term: true } } layer { bottom: "se5b_convb" top: "se5b_convb" name: "se5b_prob" type: "Sigmoid" } layer { bottom: "se5b_convb" bottom: "res5b_branch2b" bottom: "res5a" top: "res5b" name: "res5b" type: "Axpy" } layer { bottom: "res5b" top: "res5b" name: "res5b_relu" type: "ReLU" } layer { bottom: "res5b" top: "pool5" name: "pool5" type: "Pooling" pooling_param { global_pooling: true pool: AVE } } layer { bottom: "pool5" top: "fc7" name: "fc7" type: "InnerProduct" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 2 decay_mult: 1 } inner_product_param { num_output: 7 weight_filler { type: "xavier" } bias_filler { type: "constant" value: 0 } } } layer { name: "prob" type: "Softmax" bottom: "fc7" top: "prob" }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。