Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert model accuracy drop about 8% #20

Open
raninbowlalala opened this issue May 16, 2019 · 1 comment
Open

Convert model accuracy drop about 8% #20

raninbowlalala opened this issue May 16, 2019 · 1 comment

Comments

@raninbowlalala
Copy link

Hi, I use your project to convert inceptionV3 from pytorch to caffe. The original pytorch model is from', the Top-1 accuracy is about 77%, after I conveted, I test the caffemodel and prototxt on Imagenet val dataset and I got Top-1 accuracy is 69%.
Can you help me?
The prototxt is as below:
`name: "inception_v3"

layer {
name: "data"
#type: "Data"
type: "ImageData"
top: "blob1"
top: "label"
transform_param {
scale: 0.0078125
mirror: false
crop_size: 299
mean_value: 128.0
mean_value: 128.0
mean_value: 128.0
}
image_data_param {
source: "~/imagenet/val.txt"
new_height: 324
new_width: 324
batch_size: 20
}
}
layer {
name: "conv1"
type: "Convolution"
bottom: "blob1"
top: "conv_blob1"
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 2
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm1"
type: "BatchNorm"
bottom: "conv_blob1"
top: "batch_norm_blob1"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale1"
type: "Scale"
bottom: "batch_norm_blob1"
top: "batch_norm_blob1"
scale_param {
bias_term: true
}
}
layer {
name: "relu1"
type: "ReLU"
bottom: "batch_norm_blob1"
top: "relu_blob1"
}
layer {
name: "conv2"
type: "Convolution"
bottom: "relu_blob1"
top: "conv_blob2"
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm2"
type: "BatchNorm"
bottom: "conv_blob2"
top: "batch_norm_blob2"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale2"
type: "Scale"
bottom: "batch_norm_blob2"
top: "batch_norm_blob2"
scale_param {
bias_term: true
}
}
layer {
name: "relu2"
type: "ReLU"
bottom: "batch_norm_blob2"
top: "relu_blob2"
}
layer {
name: "conv3"
type: "Convolution"
bottom: "relu_blob2"
top: "conv_blob3"
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm3"
type: "BatchNorm"
bottom: "conv_blob3"
top: "batch_norm_blob3"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale3"
type: "Scale"
bottom: "batch_norm_blob3"
top: "batch_norm_blob3"
scale_param {
bias_term: true
}
}
layer {
name: "relu3"
type: "ReLU"
bottom: "batch_norm_blob3"
top: "relu_blob3"
}
layer {
name: "max_pool1"
type: "Pooling"
bottom: "relu_blob3"
top: "max_pool_blob1"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {
name: "conv4"
type: "Convolution"
bottom: "max_pool_blob1"
top: "conv_blob4"
convolution_param {
num_output: 80
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm4"
type: "BatchNorm"
bottom: "conv_blob4"
top: "batch_norm_blob4"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale4"
type: "Scale"
bottom: "batch_norm_blob4"
top: "batch_norm_blob4"
scale_param {
bias_term: true
}
}
layer {
name: "relu4"
type: "ReLU"
bottom: "batch_norm_blob4"
top: "relu_blob4"
}
layer {
name: "conv5"
type: "Convolution"
bottom: "relu_blob4"
top: "conv_blob5"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm5"
type: "BatchNorm"
bottom: "conv_blob5"
top: "batch_norm_blob5"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale5"
type: "Scale"
bottom: "batch_norm_blob5"
top: "batch_norm_blob5"
scale_param {
bias_term: true
}
}
layer {
name: "relu5"
type: "ReLU"
bottom: "batch_norm_blob5"
top: "relu_blob5"
}
layer {
name: "max_pool2"
type: "Pooling"
bottom: "relu_blob5"
top: "max_pool_blob2"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {
name: "conv6"
type: "Convolution"
bottom: "max_pool_blob2"
top: "conv_blob6"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm6"
type: "BatchNorm"
bottom: "conv_blob6"
top: "batch_norm_blob6"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale6"
type: "Scale"
bottom: "batch_norm_blob6"
top: "batch_norm_blob6"
scale_param {
bias_term: true
}
}
layer {
name: "relu6"
type: "ReLU"
bottom: "batch_norm_blob6"
top: "relu_blob6"
}
layer {
name: "conv7"
type: "Convolution"
bottom: "max_pool_blob2"
top: "conv_blob7"
convolution_param {
num_output: 48
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm7"
type: "BatchNorm"
bottom: "conv_blob7"
top: "batch_norm_blob7"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale7"
type: "Scale"
bottom: "batch_norm_blob7"
top: "batch_norm_blob7"
scale_param {
bias_term: true
}
}
layer {
name: "relu7"
type: "ReLU"
bottom: "batch_norm_blob7"
top: "relu_blob7"
}
layer {
name: "conv8"
type: "Convolution"
bottom: "relu_blob7"
top: "conv_blob8"
convolution_param {
num_output: 64
bias_term: false
pad: 2
kernel_size: 5
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm8"
type: "BatchNorm"
bottom: "conv_blob8"
top: "batch_norm_blob8"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale8"
type: "Scale"
bottom: "batch_norm_blob8"
top: "batch_norm_blob8"
scale_param {
bias_term: true
}
}
layer {
name: "relu8"
type: "ReLU"
bottom: "batch_norm_blob8"
top: "relu_blob8"
}
layer {
name: "conv9"
type: "Convolution"
bottom: "max_pool_blob2"
top: "conv_blob9"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm9"
type: "BatchNorm"
bottom: "conv_blob9"
top: "batch_norm_blob9"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale9"
type: "Scale"
bottom: "batch_norm_blob9"
top: "batch_norm_blob9"
scale_param {
bias_term: true
}
}
layer {
name: "relu9"
type: "ReLU"
bottom: "batch_norm_blob9"
top: "relu_blob9"
}
layer {
name: "conv10"
type: "Convolution"
bottom: "relu_blob9"
top: "conv_blob10"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm10"
type: "BatchNorm"
bottom: "conv_blob10"
top: "batch_norm_blob10"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale10"
type: "Scale"
bottom: "batch_norm_blob10"
top: "batch_norm_blob10"
scale_param {
bias_term: true
}
}
layer {
name: "relu10"
type: "ReLU"
bottom: "batch_norm_blob10"
top: "relu_blob10"
}
layer {
name: "conv11"
type: "Convolution"
bottom: "relu_blob10"
top: "conv_blob11"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm11"
type: "BatchNorm"
bottom: "conv_blob11"
top: "batch_norm_blob11"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale11"
type: "Scale"
bottom: "batch_norm_blob11"
top: "batch_norm_blob11"
scale_param {
bias_term: true
}
}
layer {
name: "relu11"
type: "ReLU"
bottom: "batch_norm_blob11"
top: "relu_blob11"
}
layer {
name: "ave_pool1"
type: "Pooling"
bottom: "max_pool_blob2"
top: "ave_pool_blob1"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv12"
type: "Convolution"
bottom: "ave_pool_blob1"
top: "conv_blob12"
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm12"
type: "BatchNorm"
bottom: "conv_blob12"
top: "batch_norm_blob12"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale12"
type: "Scale"
bottom: "batch_norm_blob12"
top: "batch_norm_blob12"
scale_param {
bias_term: true
}
}
layer {
name: "relu12"
type: "ReLU"
bottom: "batch_norm_blob12"
top: "relu_blob12"
}
layer {
name: "cat1"
type: "Concat"
bottom: "relu_blob6"
bottom: "relu_blob8"
bottom: "relu_blob11"
bottom: "relu_blob12"
top: "cat_blob1"
concat_param {
axis: 1
}
}
layer {
name: "conv13"
type: "Convolution"
bottom: "cat_blob1"
top: "conv_blob13"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm13"
type: "BatchNorm"
bottom: "conv_blob13"
top: "batch_norm_blob13"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale13"
type: "Scale"
bottom: "batch_norm_blob13"
top: "batch_norm_blob13"
scale_param {
bias_term: true
}
}
layer {
name: "relu13"
type: "ReLU"
bottom: "batch_norm_blob13"
top: "relu_blob13"
}
layer {
name: "conv14"
type: "Convolution"
bottom: "cat_blob1"
top: "conv_blob14"
convolution_param {
num_output: 48
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm14"
type: "BatchNorm"
bottom: "conv_blob14"
top: "batch_norm_blob14"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale14"
type: "Scale"
bottom: "batch_norm_blob14"
top: "batch_norm_blob14"
scale_param {
bias_term: true
}
}
layer {
name: "relu14"
type: "ReLU"
bottom: "batch_norm_blob14"
top: "relu_blob14"
}
layer {
name: "conv15"
type: "Convolution"
bottom: "relu_blob14"
top: "conv_blob15"
convolution_param {
num_output: 64
bias_term: false
pad: 2
kernel_size: 5
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm15"
type: "BatchNorm"
bottom: "conv_blob15"
top: "batch_norm_blob15"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale15"
type: "Scale"
bottom: "batch_norm_blob15"
top: "batch_norm_blob15"
scale_param {
bias_term: true
}
}
layer {
name: "relu15"
type: "ReLU"
bottom: "batch_norm_blob15"
top: "relu_blob15"
}
layer {
name: "conv16"
type: "Convolution"
bottom: "cat_blob1"
top: "conv_blob16"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm16"
type: "BatchNorm"
bottom: "conv_blob16"
top: "batch_norm_blob16"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale16"
type: "Scale"
bottom: "batch_norm_blob16"
top: "batch_norm_blob16"
scale_param {
bias_term: true
}
}
layer {
name: "relu16"
type: "ReLU"
bottom: "batch_norm_blob16"
top: "relu_blob16"
}
layer {
name: "conv17"
type: "Convolution"
bottom: "relu_blob16"
top: "conv_blob17"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm17"
type: "BatchNorm"
bottom: "conv_blob17"
top: "batch_norm_blob17"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale17"
type: "Scale"
bottom: "batch_norm_blob17"
top: "batch_norm_blob17"
scale_param {
bias_term: true
}
}
layer {
name: "relu17"
type: "ReLU"
bottom: "batch_norm_blob17"
top: "relu_blob17"
}
layer {
name: "conv18"
type: "Convolution"
bottom: "relu_blob17"
top: "conv_blob18"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm18"
type: "BatchNorm"
bottom: "conv_blob18"
top: "batch_norm_blob18"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale18"
type: "Scale"
bottom: "batch_norm_blob18"
top: "batch_norm_blob18"
scale_param {
bias_term: true
}
}
layer {
name: "relu18"
type: "ReLU"
bottom: "batch_norm_blob18"
top: "relu_blob18"
}
layer {
name: "ave_pool2"
type: "Pooling"
bottom: "cat_blob1"
top: "ave_pool_blob2"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv19"
type: "Convolution"
bottom: "ave_pool_blob2"
top: "conv_blob19"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm19"
type: "BatchNorm"
bottom: "conv_blob19"
top: "batch_norm_blob19"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale19"
type: "Scale"
bottom: "batch_norm_blob19"
top: "batch_norm_blob19"
scale_param {
bias_term: true
}
}
layer {
name: "relu19"
type: "ReLU"
bottom: "batch_norm_blob19"
top: "relu_blob19"
}
layer {
name: "cat2"
type: "Concat"
bottom: "relu_blob13"
bottom: "relu_blob15"
bottom: "relu_blob18"
bottom: "relu_blob19"
top: "cat_blob2"
concat_param {
axis: 1
}
}
layer {
name: "conv20"
type: "Convolution"
bottom: "cat_blob2"
top: "conv_blob20"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm20"
type: "BatchNorm"
bottom: "conv_blob20"
top: "batch_norm_blob20"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale20"
type: "Scale"
bottom: "batch_norm_blob20"
top: "batch_norm_blob20"
scale_param {
bias_term: true
}
}
layer {
name: "relu20"
type: "ReLU"
bottom: "batch_norm_blob20"
top: "relu_blob20"
}
layer {
name: "conv21"
type: "Convolution"
bottom: "cat_blob2"
top: "conv_blob21"
convolution_param {
num_output: 48
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm21"
type: "BatchNorm"
bottom: "conv_blob21"
top: "batch_norm_blob21"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale21"
type: "Scale"
bottom: "batch_norm_blob21"
top: "batch_norm_blob21"
scale_param {
bias_term: true
}
}
layer {
name: "relu21"
type: "ReLU"
bottom: "batch_norm_blob21"
top: "relu_blob21"
}
layer {
name: "conv22"
type: "Convolution"
bottom: "relu_blob21"
top: "conv_blob22"
convolution_param {
num_output: 64
bias_term: false
pad: 2
kernel_size: 5
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm22"
type: "BatchNorm"
bottom: "conv_blob22"
top: "batch_norm_blob22"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale22"
type: "Scale"
bottom: "batch_norm_blob22"
top: "batch_norm_blob22"
scale_param {
bias_term: true
}
}
layer {
name: "relu22"
type: "ReLU"
bottom: "batch_norm_blob22"
top: "relu_blob22"
}
layer {
name: "conv23"
type: "Convolution"
bottom: "cat_blob2"
top: "conv_blob23"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm23"
type: "BatchNorm"
bottom: "conv_blob23"
top: "batch_norm_blob23"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale23"
type: "Scale"
bottom: "batch_norm_blob23"
top: "batch_norm_blob23"
scale_param {
bias_term: true
}
}
layer {
name: "relu23"
type: "ReLU"
bottom: "batch_norm_blob23"
top: "relu_blob23"
}
layer {
name: "conv24"
type: "Convolution"
bottom: "relu_blob23"
top: "conv_blob24"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm24"
type: "BatchNorm"
bottom: "conv_blob24"
top: "batch_norm_blob24"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale24"
type: "Scale"
bottom: "batch_norm_blob24"
top: "batch_norm_blob24"
scale_param {
bias_term: true
}
}
layer {
name: "relu24"
type: "ReLU"
bottom: "batch_norm_blob24"
top: "relu_blob24"
}
layer {
name: "conv25"
type: "Convolution"
bottom: "relu_blob24"
top: "conv_blob25"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm25"
type: "BatchNorm"
bottom: "conv_blob25"
top: "batch_norm_blob25"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale25"
type: "Scale"
bottom: "batch_norm_blob25"
top: "batch_norm_blob25"
scale_param {
bias_term: true
}
}
layer {
name: "relu25"
type: "ReLU"
bottom: "batch_norm_blob25"
top: "relu_blob25"
}
layer {
name: "ave_pool3"
type: "Pooling"
bottom: "cat_blob2"
top: "ave_pool_blob3"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv26"
type: "Convolution"
bottom: "ave_pool_blob3"
top: "conv_blob26"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm26"
type: "BatchNorm"
bottom: "conv_blob26"
top: "batch_norm_blob26"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale26"
type: "Scale"
bottom: "batch_norm_blob26"
top: "batch_norm_blob26"
scale_param {
bias_term: true
}
}
layer {
name: "relu26"
type: "ReLU"
bottom: "batch_norm_blob26"
top: "relu_blob26"
}
layer {
name: "cat3"
type: "Concat"
bottom: "relu_blob20"
bottom: "relu_blob22"
bottom: "relu_blob25"
bottom: "relu_blob26"
top: "cat_blob3"
concat_param {
axis: 1
}
}
layer {
name: "conv27"
type: "Convolution"
bottom: "cat_blob3"
top: "conv_blob27"
convolution_param {
num_output: 384
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 2
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm27"
type: "BatchNorm"
bottom: "conv_blob27"
top: "batch_norm_blob27"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale27"
type: "Scale"
bottom: "batch_norm_blob27"
top: "batch_norm_blob27"
scale_param {
bias_term: true
}
}
layer {
name: "relu27"
type: "ReLU"
bottom: "batch_norm_blob27"
top: "relu_blob27"
}
layer {
name: "conv28"
type: "Convolution"
bottom: "cat_blob3"
top: "conv_blob28"
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm28"
type: "BatchNorm"
bottom: "conv_blob28"
top: "batch_norm_blob28"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale28"
type: "Scale"
bottom: "batch_norm_blob28"
top: "batch_norm_blob28"
scale_param {
bias_term: true
}
}
layer {
name: "relu28"
type: "ReLU"
bottom: "batch_norm_blob28"
top: "relu_blob28"
}
layer {
name: "conv29"
type: "Convolution"
bottom: "relu_blob28"
top: "conv_blob29"
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm29"
type: "BatchNorm"
bottom: "conv_blob29"
top: "batch_norm_blob29"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale29"
type: "Scale"
bottom: "batch_norm_blob29"
top: "batch_norm_blob29"
scale_param {
bias_term: true
}
}
layer {
name: "relu29"
type: "ReLU"
bottom: "batch_norm_blob29"
top: "relu_blob29"
}
layer {
name: "conv30"
type: "Convolution"
bottom: "relu_blob29"
top: "conv_blob30"
convolution_param {
num_output: 96
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 2
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm30"
type: "BatchNorm"
bottom: "conv_blob30"
top: "batch_norm_blob30"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale30"
type: "Scale"
bottom: "batch_norm_blob30"
top: "batch_norm_blob30"
scale_param {
bias_term: true
}
}
layer {
name: "relu30"
type: "ReLU"
bottom: "batch_norm_blob30"
top: "relu_blob30"
}
layer {
name: "max_pool3"
type: "Pooling"
bottom: "cat_blob3"
top: "max_pool_blob3"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {
name: "cat4"
type: "Concat"
bottom: "relu_blob27"
bottom: "relu_blob30"
bottom: "max_pool_blob3"
top: "cat_blob4"
concat_param {
axis: 1
}
}
layer {
name: "conv31"
type: "Convolution"
bottom: "cat_blob4"
top: "conv_blob31"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm31"
type: "BatchNorm"
bottom: "conv_blob31"
top: "batch_norm_blob31"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale31"
type: "Scale"
bottom: "batch_norm_blob31"
top: "batch_norm_blob31"
scale_param {
bias_term: true
}
}
layer {
name: "relu31"
type: "ReLU"
bottom: "batch_norm_blob31"
top: "relu_blob31"
}
layer {
name: "conv32"
type: "Convolution"
bottom: "cat_blob4"
top: "conv_blob32"
convolution_param {
num_output: 128
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm32"
type: "BatchNorm"
bottom: "conv_blob32"
top: "batch_norm_blob32"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale32"
type: "Scale"
bottom: "batch_norm_blob32"
top: "batch_norm_blob32"
scale_param {
bias_term: true
}
}
layer {
name: "relu32"
type: "ReLU"
bottom: "batch_norm_blob32"
top: "relu_blob32"
}
layer {
name: "conv33"
type: "Convolution"
bottom: "relu_blob32"
top: "conv_blob33"
convolution_param {
num_output: 128
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm33"
type: "BatchNorm"
bottom: "conv_blob33"
top: "batch_norm_blob33"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale33"
type: "Scale"
bottom: "batch_norm_blob33"
top: "batch_norm_blob33"
scale_param {
bias_term: true
}
}
layer {
name: "relu33"
type: "ReLU"
bottom: "batch_norm_blob33"
top: "relu_blob33"
}
layer {
name: "conv34"
type: "Convolution"
bottom: "relu_blob33"
top: "conv_blob34"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm34"
type: "BatchNorm"
bottom: "conv_blob34"
top: "batch_norm_blob34"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale34"
type: "Scale"
bottom: "batch_norm_blob34"
top: "batch_norm_blob34"
scale_param {
bias_term: true
}
}
layer {
name: "relu34"
type: "ReLU"
bottom: "batch_norm_blob34"
top: "relu_blob34"
}
layer {
name: "conv35"
type: "Convolution"
bottom: "cat_blob4"
top: "conv_blob35"
convolution_param {
num_output: 128
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm35"
type: "BatchNorm"
bottom: "conv_blob35"
top: "batch_norm_blob35"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale35"
type: "Scale"
bottom: "batch_norm_blob35"
top: "batch_norm_blob35"
scale_param {
bias_term: true
}
}
layer {
name: "relu35"
type: "ReLU"
bottom: "batch_norm_blob35"
top: "relu_blob35"
}
layer {
name: "conv36"
type: "Convolution"
bottom: "relu_blob35"
top: "conv_blob36"
convolution_param {
num_output: 128
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm36"
type: "BatchNorm"
bottom: "conv_blob36"
top: "batch_norm_blob36"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale36"
type: "Scale"
bottom: "batch_norm_blob36"
top: "batch_norm_blob36"
scale_param {
bias_term: true
}
}
layer {
name: "relu36"
type: "ReLU"
bottom: "batch_norm_blob36"
top: "relu_blob36"
}
layer {
name: "conv37"
type: "Convolution"
bottom: "relu_blob36"
top: "conv_blob37"
convolution_param {
num_output: 128
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm37"
type: "BatchNorm"
bottom: "conv_blob37"
top: "batch_norm_blob37"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale37"
type: "Scale"
bottom: "batch_norm_blob37"
top: "batch_norm_blob37"
scale_param {
bias_term: true
}
}
layer {
name: "relu37"
type: "ReLU"
bottom: "batch_norm_blob37"
top: "relu_blob37"
}
layer {
name: "conv38"
type: "Convolution"
bottom: "relu_blob37"
top: "conv_blob38"
convolution_param {
num_output: 128
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm38"
type: "BatchNorm"
bottom: "conv_blob38"
top: "batch_norm_blob38"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale38"
type: "Scale"
bottom: "batch_norm_blob38"
top: "batch_norm_blob38"
scale_param {
bias_term: true
}
}
layer {
name: "relu38"
type: "ReLU"
bottom: "batch_norm_blob38"
top: "relu_blob38"
}
layer {
name: "conv39"
type: "Convolution"
bottom: "relu_blob38"
top: "conv_blob39"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm39"
type: "BatchNorm"
bottom: "conv_blob39"
top: "batch_norm_blob39"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale39"
type: "Scale"
bottom: "batch_norm_blob39"
top: "batch_norm_blob39"
scale_param {
bias_term: true
}
}
layer {
name: "relu39"
type: "ReLU"
bottom: "batch_norm_blob39"
top: "relu_blob39"
}
layer {
name: "ave_pool4"
type: "Pooling"
bottom: "cat_blob4"
top: "ave_pool_blob4"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv40"
type: "Convolution"
bottom: "ave_pool_blob4"
top: "conv_blob40"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm40"
type: "BatchNorm"
bottom: "conv_blob40"
top: "batch_norm_blob40"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale40"
type: "Scale"
bottom: "batch_norm_blob40"
top: "batch_norm_blob40"
scale_param {
bias_term: true
}
}
layer {
name: "relu40"
type: "ReLU"
bottom: "batch_norm_blob40"
top: "relu_blob40"
}
layer {
name: "cat5"
type: "Concat"
bottom: "relu_blob31"
bottom: "relu_blob34"
bottom: "relu_blob39"
bottom: "relu_blob40"
top: "cat_blob5"
concat_param {
axis: 1
}
}
layer {
name: "conv41"
type: "Convolution"
bottom: "cat_blob5"
top: "conv_blob41"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm41"
type: "BatchNorm"
bottom: "conv_blob41"
top: "batch_norm_blob41"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale41"
type: "Scale"
bottom: "batch_norm_blob41"
top: "batch_norm_blob41"
scale_param {
bias_term: true
}
}
layer {
name: "relu41"
type: "ReLU"
bottom: "batch_norm_blob41"
top: "relu_blob41"
}
layer {
name: "conv42"
type: "Convolution"
bottom: "cat_blob5"
top: "conv_blob42"
convolution_param {
num_output: 160
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm42"
type: "BatchNorm"
bottom: "conv_blob42"
top: "batch_norm_blob42"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale42"
type: "Scale"
bottom: "batch_norm_blob42"
top: "batch_norm_blob42"
scale_param {
bias_term: true
}
}
layer {
name: "relu42"
type: "ReLU"
bottom: "batch_norm_blob42"
top: "relu_blob42"
}
layer {
name: "conv43"
type: "Convolution"
bottom: "relu_blob42"
top: "conv_blob43"
convolution_param {
num_output: 160
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm43"
type: "BatchNorm"
bottom: "conv_blob43"
top: "batch_norm_blob43"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale43"
type: "Scale"
bottom: "batch_norm_blob43"
top: "batch_norm_blob43"
scale_param {
bias_term: true
}
}
layer {
name: "relu43"
type: "ReLU"
bottom: "batch_norm_blob43"
top: "relu_blob43"
}
layer {
name: "conv44"
type: "Convolution"
bottom: "relu_blob43"
top: "conv_blob44"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm44"
type: "BatchNorm"
bottom: "conv_blob44"
top: "batch_norm_blob44"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale44"
type: "Scale"
bottom: "batch_norm_blob44"
top: "batch_norm_blob44"
scale_param {
bias_term: true
}
}
layer {
name: "relu44"
type: "ReLU"
bottom: "batch_norm_blob44"
top: "relu_blob44"
}
layer {
name: "conv45"
type: "Convolution"
bottom: "cat_blob5"
top: "conv_blob45"
convolution_param {
num_output: 160
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm45"
type: "BatchNorm"
bottom: "conv_blob45"
top: "batch_norm_blob45"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale45"
type: "Scale"
bottom: "batch_norm_blob45"
top: "batch_norm_blob45"
scale_param {
bias_term: true
}
}
layer {
name: "relu45"
type: "ReLU"
bottom: "batch_norm_blob45"
top: "relu_blob45"
}
layer {
name: "conv46"
type: "Convolution"
bottom: "relu_blob45"
top: "conv_blob46"
convolution_param {
num_output: 160
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm46"
type: "BatchNorm"
bottom: "conv_blob46"
top: "batch_norm_blob46"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale46"
type: "Scale"
bottom: "batch_norm_blob46"
top: "batch_norm_blob46"
scale_param {
bias_term: true
}
}
layer {
name: "relu46"
type: "ReLU"
bottom: "batch_norm_blob46"
top: "relu_blob46"
}
layer {
name: "conv47"
type: "Convolution"
bottom: "relu_blob46"
top: "conv_blob47"
convolution_param {
num_output: 160
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm47"
type: "BatchNorm"
bottom: "conv_blob47"
top: "batch_norm_blob47"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale47"
type: "Scale"
bottom: "batch_norm_blob47"
top: "batch_norm_blob47"
scale_param {
bias_term: true
}
}
layer {
name: "relu47"
type: "ReLU"
bottom: "batch_norm_blob47"
top: "relu_blob47"
}
layer {
name: "conv48"
type: "Convolution"
bottom: "relu_blob47"
top: "conv_blob48"
convolution_param {
num_output: 160
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm48"
type: "BatchNorm"
bottom: "conv_blob48"
top: "batch_norm_blob48"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale48"
type: "Scale"
bottom: "batch_norm_blob48"
top: "batch_norm_blob48"
scale_param {
bias_term: true
}
}
layer {
name: "relu48"
type: "ReLU"
bottom: "batch_norm_blob48"
top: "relu_blob48"
}
layer {
name: "conv49"
type: "Convolution"
bottom: "relu_blob48"
top: "conv_blob49"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm49"
type: "BatchNorm"
bottom: "conv_blob49"
top: "batch_norm_blob49"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale49"
type: "Scale"
bottom: "batch_norm_blob49"
top: "batch_norm_blob49"
scale_param {
bias_term: true
}
}
layer {
name: "relu49"
type: "ReLU"
bottom: "batch_norm_blob49"
top: "relu_blob49"
}
layer {
name: "ave_pool5"
type: "Pooling"
bottom: "cat_blob5"
top: "ave_pool_blob5"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv50"
type: "Convolution"
bottom: "ave_pool_blob5"
top: "conv_blob50"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm50"
type: "BatchNorm"
bottom: "conv_blob50"
top: "batch_norm_blob50"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale50"
type: "Scale"
bottom: "batch_norm_blob50"
top: "batch_norm_blob50"
scale_param {
bias_term: true
}
}
layer {
name: "relu50"
type: "ReLU"
bottom: "batch_norm_blob50"
top: "relu_blob50"
}
layer {
name: "cat6"
type: "Concat"
bottom: "relu_blob41"
bottom: "relu_blob44"
bottom: "relu_blob49"
bottom: "relu_blob50"
top: "cat_blob6"
concat_param {
axis: 1
}
}
layer {
name: "conv51"
type: "Convolution"
bottom: "cat_blob6"
top: "conv_blob51"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm51"
type: "BatchNorm"
bottom: "conv_blob51"
top: "batch_norm_blob51"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale51"
type: "Scale"
bottom: "batch_norm_blob51"
top: "batch_norm_blob51"
scale_param {
bias_term: true
}
}
layer {
name: "relu51"
type: "ReLU"
bottom: "batch_norm_blob51"
top: "relu_blob51"
}
layer {
name: "conv52"
type: "Convolution"
bottom: "cat_blob6"
top: "conv_blob52"
convolution_param {
num_output: 160
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm52"
type: "BatchNorm"
bottom: "conv_blob52"
top: "batch_norm_blob52"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale52"
type: "Scale"
bottom: "batch_norm_blob52"
top: "batch_norm_blob52"
scale_param {
bias_term: true
}
}
layer {
name: "relu52"
type: "ReLU"
bottom: "batch_norm_blob52"
top: "relu_blob52"
}
layer {
name: "conv53"
type: "Convolution"
bottom: "relu_blob52"
top: "conv_blob53"
convolution_param {
num_output: 160
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm53"
type: "BatchNorm"
bottom: "conv_blob53"
top: "batch_norm_blob53"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale53"
type: "Scale"
bottom: "batch_norm_blob53"
top: "batch_norm_blob53"
scale_param {
bias_term: true
}
}
layer {
name: "relu53"
type: "ReLU"
bottom: "batch_norm_blob53"
top: "relu_blob53"
}
layer {
name: "conv54"
type: "Convolution"
bottom: "relu_blob53"
top: "conv_blob54"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm54"
type: "BatchNorm"
bottom: "conv_blob54"
top: "batch_norm_blob54"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale54"
type: "Scale"
bottom: "batch_norm_blob54"
top: "batch_norm_blob54"
scale_param {
bias_term: true
}
}
layer {
name: "relu54"
type: "ReLU"
bottom: "batch_norm_blob54"
top: "relu_blob54"
}
layer {
name: "conv55"
type: "Convolution"
bottom: "cat_blob6"
top: "conv_blob55"
convolution_param {
num_output: 160
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm55"
type: "BatchNorm"
bottom: "conv_blob55"
top: "batch_norm_blob55"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale55"
type: "Scale"
bottom: "batch_norm_blob55"
top: "batch_norm_blob55"
scale_param {
bias_term: true
}
}
layer {
name: "relu55"
type: "ReLU"
bottom: "batch_norm_blob55"
top: "relu_blob55"
}
layer {
name: "conv56"
type: "Convolution"
bottom: "relu_blob55"
top: "conv_blob56"
convolution_param {
num_output: 160
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm56"
type: "BatchNorm"
bottom: "conv_blob56"
top: "batch_norm_blob56"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale56"
type: "Scale"
bottom: "batch_norm_blob56"
top: "batch_norm_blob56"
scale_param {
bias_term: true
}
}
layer {
name: "relu56"
type: "ReLU"
bottom: "batch_norm_blob56"
top: "relu_blob56"
}
layer {
name: "conv57"
type: "Convolution"
bottom: "relu_blob56"
top: "conv_blob57"
convolution_param {
num_output: 160
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm57"
type: "BatchNorm"
bottom: "conv_blob57"
top: "batch_norm_blob57"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale57"
type: "Scale"
bottom: "batch_norm_blob57"
top: "batch_norm_blob57"
scale_param {
bias_term: true
}
}
layer {
name: "relu57"
type: "ReLU"
bottom: "batch_norm_blob57"
top: "relu_blob57"
}
layer {
name: "conv58"
type: "Convolution"
bottom: "relu_blob57"
top: "conv_blob58"
convolution_param {
num_output: 160
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm58"
type: "BatchNorm"
bottom: "conv_blob58"
top: "batch_norm_blob58"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale58"
type: "Scale"
bottom: "batch_norm_blob58"
top: "batch_norm_blob58"
scale_param {
bias_term: true
}
}
layer {
name: "relu58"
type: "ReLU"
bottom: "batch_norm_blob58"
top: "relu_blob58"
}
layer {
name: "conv59"
type: "Convolution"
bottom: "relu_blob58"
top: "conv_blob59"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm59"
type: "BatchNorm"
bottom: "conv_blob59"
top: "batch_norm_blob59"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale59"
type: "Scale"
bottom: "batch_norm_blob59"
top: "batch_norm_blob59"
scale_param {
bias_term: true
}
}
layer {
name: "relu59"
type: "ReLU"
bottom: "batch_norm_blob59"
top: "relu_blob59"
}
layer {
name: "ave_pool6"
type: "Pooling"
bottom: "cat_blob6"
top: "ave_pool_blob6"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv60"
type: "Convolution"
bottom: "ave_pool_blob6"
top: "conv_blob60"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm60"
type: "BatchNorm"
bottom: "conv_blob60"
top: "batch_norm_blob60"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale60"
type: "Scale"
bottom: "batch_norm_blob60"
top: "batch_norm_blob60"
scale_param {
bias_term: true
}
}
layer {
name: "relu60"
type: "ReLU"
bottom: "batch_norm_blob60"
top: "relu_blob60"
}
layer {
name: "cat7"
type: "Concat"
bottom: "relu_blob51"
bottom: "relu_blob54"
bottom: "relu_blob59"
bottom: "relu_blob60"
top: "cat_blob7"
concat_param {
axis: 1
}
}
layer {
name: "conv61"
type: "Convolution"
bottom: "cat_blob7"
top: "conv_blob61"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm61"
type: "BatchNorm"
bottom: "conv_blob61"
top: "batch_norm_blob61"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale61"
type: "Scale"
bottom: "batch_norm_blob61"
top: "batch_norm_blob61"
scale_param {
bias_term: true
}
}
layer {
name: "relu61"
type: "ReLU"
bottom: "batch_norm_blob61"
top: "relu_blob61"
}
layer {
name: "conv62"
type: "Convolution"
bottom: "cat_blob7"
top: "conv_blob62"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm62"
type: "BatchNorm"
bottom: "conv_blob62"
top: "batch_norm_blob62"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale62"
type: "Scale"
bottom: "batch_norm_blob62"
top: "batch_norm_blob62"
scale_param {
bias_term: true
}
}
layer {
name: "relu62"
type: "ReLU"
bottom: "batch_norm_blob62"
top: "relu_blob62"
}
layer {
name: "conv63"
type: "Convolution"
bottom: "relu_blob62"
top: "conv_blob63"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm63"
type: "BatchNorm"
bottom: "conv_blob63"
top: "batch_norm_blob63"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale63"
type: "Scale"
bottom: "batch_norm_blob63"
top: "batch_norm_blob63"
scale_param {
bias_term: true
}
}
layer {
name: "relu63"
type: "ReLU"
bottom: "batch_norm_blob63"
top: "relu_blob63"
}
layer {
name: "conv64"
type: "Convolution"
bottom: "relu_blob63"
top: "conv_blob64"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm64"
type: "BatchNorm"
bottom: "conv_blob64"
top: "batch_norm_blob64"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale64"
type: "Scale"
bottom: "batch_norm_blob64"
top: "batch_norm_blob64"
scale_param {
bias_term: true
}
}
layer {
name: "relu64"
type: "ReLU"
bottom: "batch_norm_blob64"
top: "relu_blob64"
}
layer {
name: "conv65"
type: "Convolution"
bottom: "cat_blob7"
top: "conv_blob65"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm65"
type: "BatchNorm"
bottom: "conv_blob65"
top: "batch_norm_blob65"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale65"
type: "Scale"
bottom: "batch_norm_blob65"
top: "batch_norm_blob65"
scale_param {
bias_term: true
}
}
layer {
name: "relu65"
type: "ReLU"
bottom: "batch_norm_blob65"
top: "relu_blob65"
}
layer {
name: "conv66"
type: "Convolution"
bottom: "relu_blob65"
top: "conv_blob66"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm66"
type: "BatchNorm"
bottom: "conv_blob66"
top: "batch_norm_blob66"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale66"
type: "Scale"
bottom: "batch_norm_blob66"
top: "batch_norm_blob66"
scale_param {
bias_term: true
}
}
layer {
name: "relu66"
type: "ReLU"
bottom: "batch_norm_blob66"
top: "relu_blob66"
}
layer {
name: "conv67"
type: "Convolution"
bottom: "relu_blob66"
top: "conv_blob67"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm67"
type: "BatchNorm"
bottom: "conv_blob67"
top: "batch_norm_blob67"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale67"
type: "Scale"
bottom: "batch_norm_blob67"
top: "batch_norm_blob67"
scale_param {
bias_term: true
}
}
layer {
name: "relu67"
type: "ReLU"
bottom: "batch_norm_blob67"
top: "relu_blob67"
}
layer {
name: "conv68"
type: "Convolution"
bottom: "relu_blob67"
top: "conv_blob68"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm68"
type: "BatchNorm"
bottom: "conv_blob68"
top: "batch_norm_blob68"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale68"
type: "Scale"
bottom: "batch_norm_blob68"
top: "batch_norm_blob68"
scale_param {
bias_term: true
}
}
layer {
name: "relu68"
type: "ReLU"
bottom: "batch_norm_blob68"
top: "relu_blob68"
}
layer {
name: "conv69"
type: "Convolution"
bottom: "relu_blob68"
top: "conv_blob69"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm69"
type: "BatchNorm"
bottom: "conv_blob69"
top: "batch_norm_blob69"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale69"
type: "Scale"
bottom: "batch_norm_blob69"
top: "batch_norm_blob69"
scale_param {
bias_term: true
}
}
layer {
name: "relu69"
type: "ReLU"
bottom: "batch_norm_blob69"
top: "relu_blob69"
}
layer {
name: "ave_pool7"
type: "Pooling"
bottom: "cat_blob7"
top: "ave_pool_blob7"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv70"
type: "Convolution"
bottom: "ave_pool_blob7"
top: "conv_blob70"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm70"
type: "BatchNorm"
bottom: "conv_blob70"
top: "batch_norm_blob70"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale70"
type: "Scale"
bottom: "batch_norm_blob70"
top: "batch_norm_blob70"
scale_param {
bias_term: true
}
}
layer {
name: "relu70"
type: "ReLU"
bottom: "batch_norm_blob70"
top: "relu_blob70"
}
layer {
name: "cat8"
type: "Concat"
bottom: "relu_blob61"
bottom: "relu_blob64"
bottom: "relu_blob69"
bottom: "relu_blob70"
top: "cat_blob8"
concat_param {
axis: 1
}
}
layer {
name: "conv71"
type: "Convolution"
bottom: "cat_blob8"
top: "conv_blob71"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm71"
type: "BatchNorm"
bottom: "conv_blob71"
top: "batch_norm_blob71"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale71"
type: "Scale"
bottom: "batch_norm_blob71"
top: "batch_norm_blob71"
scale_param {
bias_term: true
}
}
layer {
name: "relu71"
type: "ReLU"
bottom: "batch_norm_blob71"
top: "relu_blob71"
}
layer {
name: "conv72"
type: "Convolution"
bottom: "relu_blob71"
top: "conv_blob72"
convolution_param {
num_output: 320
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 2
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm72"
type: "BatchNorm"
bottom: "conv_blob72"
top: "batch_norm_blob72"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale72"
type: "Scale"
bottom: "batch_norm_blob72"
top: "batch_norm_blob72"
scale_param {
bias_term: true
}
}
layer {
name: "relu72"
type: "ReLU"
bottom: "batch_norm_blob72"
top: "relu_blob72"
}
layer {
name: "conv73"
type: "Convolution"
bottom: "cat_blob8"
top: "conv_blob73"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm73"
type: "BatchNorm"
bottom: "conv_blob73"
top: "batch_norm_blob73"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale73"
type: "Scale"
bottom: "batch_norm_blob73"
top: "batch_norm_blob73"
scale_param {
bias_term: true
}
}
layer {
name: "relu73"
type: "ReLU"
bottom: "batch_norm_blob73"
top: "relu_blob73"
}
layer {
name: "conv74"
type: "Convolution"
bottom: "relu_blob73"
top: "conv_blob74"
convolution_param {
num_output: 192
bias_term: false
pad: 0
pad: 3
kernel_size: 1
kernel_size: 7
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm74"
type: "BatchNorm"
bottom: "conv_blob74"
top: "batch_norm_blob74"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale74"
type: "Scale"
bottom: "batch_norm_blob74"
top: "batch_norm_blob74"
scale_param {
bias_term: true
}
}
layer {
name: "relu74"
type: "ReLU"
bottom: "batch_norm_blob74"
top: "relu_blob74"
}
layer {
name: "conv75"
type: "Convolution"
bottom: "relu_blob74"
top: "conv_blob75"
convolution_param {
num_output: 192
bias_term: false
pad: 3
pad: 0
kernel_size: 7
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm75"
type: "BatchNorm"
bottom: "conv_blob75"
top: "batch_norm_blob75"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale75"
type: "Scale"
bottom: "batch_norm_blob75"
top: "batch_norm_blob75"
scale_param {
bias_term: true
}
}
layer {
name: "relu75"
type: "ReLU"
bottom: "batch_norm_blob75"
top: "relu_blob75"
}
layer {
name: "conv76"
type: "Convolution"
bottom: "relu_blob75"
top: "conv_blob76"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 3
group: 1
stride: 2
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm76"
type: "BatchNorm"
bottom: "conv_blob76"
top: "batch_norm_blob76"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale76"
type: "Scale"
bottom: "batch_norm_blob76"
top: "batch_norm_blob76"
scale_param {
bias_term: true
}
}
layer {
name: "relu76"
type: "ReLU"
bottom: "batch_norm_blob76"
top: "relu_blob76"
}
layer {
name: "max_pool4"
type: "Pooling"
bottom: "cat_blob8"
top: "max_pool_blob4"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {
name: "cat9"
type: "Concat"
bottom: "relu_blob72"
bottom: "relu_blob76"
bottom: "max_pool_blob4"
top: "cat_blob9"
concat_param {
axis: 1
}
}
layer {
name: "conv77"
type: "Convolution"
bottom: "cat_blob9"
top: "conv_blob77"
convolution_param {
num_output: 320
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm77"
type: "BatchNorm"
bottom: "conv_blob77"
top: "batch_norm_blob77"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale77"
type: "Scale"
bottom: "batch_norm_blob77"
top: "batch_norm_blob77"
scale_param {
bias_term: true
}
}
layer {
name: "relu77"
type: "ReLU"
bottom: "batch_norm_blob77"
top: "relu_blob77"
}
layer {
name: "conv78"
type: "Convolution"
bottom: "cat_blob9"
top: "conv_blob78"
convolution_param {
num_output: 384
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm78"
type: "BatchNorm"
bottom: "conv_blob78"
top: "batch_norm_blob78"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale78"
type: "Scale"
bottom: "batch_norm_blob78"
top: "batch_norm_blob78"
scale_param {
bias_term: true
}
}
layer {
name: "relu78"
type: "ReLU"
bottom: "batch_norm_blob78"
top: "relu_blob78"
}
layer {
name: "conv79"
type: "Convolution"
bottom: "relu_blob78"
top: "conv_blob79"
convolution_param {
num_output: 384
bias_term: false
pad: 0
pad: 1
kernel_size: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm79"
type: "BatchNorm"
bottom: "conv_blob79"
top: "batch_norm_blob79"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale79"
type: "Scale"
bottom: "batch_norm_blob79"
top: "batch_norm_blob79"
scale_param {
bias_term: true
}
}
layer {
name: "relu79"
type: "ReLU"
bottom: "batch_norm_blob79"
top: "relu_blob79"
}
layer {
name: "conv80"
type: "Convolution"
bottom: "relu_blob78"
top: "conv_blob80"
convolution_param {
num_output: 384
bias_term: false
pad: 1
pad: 0
kernel_size: 3
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm80"
type: "BatchNorm"
bottom: "conv_blob80"
top: "batch_norm_blob80"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale80"
type: "Scale"
bottom: "batch_norm_blob80"
top: "batch_norm_blob80"
scale_param {
bias_term: true
}
}
layer {
name: "relu80"
type: "ReLU"
bottom: "batch_norm_blob80"
top: "relu_blob80"
}
layer {
name: "cat10"
type: "Concat"
bottom: "relu_blob79"
bottom: "relu_blob80"
top: "cat_blob10"
concat_param {
axis: 1
}
}
layer {
name: "conv81"
type: "Convolution"
bottom: "cat_blob9"
top: "conv_blob81"
convolution_param {
num_output: 448
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm81"
type: "BatchNorm"
bottom: "conv_blob81"
top: "batch_norm_blob81"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale81"
type: "Scale"
bottom: "batch_norm_blob81"
top: "batch_norm_blob81"
scale_param {
bias_term: true
}
}
layer {
name: "relu81"
type: "ReLU"
bottom: "batch_norm_blob81"
top: "relu_blob81"
}
layer {
name: "conv82"
type: "Convolution"
bottom: "relu_blob81"
top: "conv_blob82"
convolution_param {
num_output: 384
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm82"
type: "BatchNorm"
bottom: "conv_blob82"
top: "batch_norm_blob82"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale82"
type: "Scale"
bottom: "batch_norm_blob82"
top: "batch_norm_blob82"
scale_param {
bias_term: true
}
}
layer {
name: "relu82"
type: "ReLU"
bottom: "batch_norm_blob82"
top: "relu_blob82"
}
layer {
name: "conv83"
type: "Convolution"
bottom: "relu_blob82"
top: "conv_blob83"
convolution_param {
num_output: 384
bias_term: false
pad: 0
pad: 1
kernel_size: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm83"
type: "BatchNorm"
bottom: "conv_blob83"
top: "batch_norm_blob83"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale83"
type: "Scale"
bottom: "batch_norm_blob83"
top: "batch_norm_blob83"
scale_param {
bias_term: true
}
}
layer {
name: "relu83"
type: "ReLU"
bottom: "batch_norm_blob83"
top: "relu_blob83"
}
layer {
name: "conv84"
type: "Convolution"
bottom: "relu_blob82"
top: "conv_blob84"
convolution_param {
num_output: 384
bias_term: false
pad: 1
pad: 0
kernel_size: 3
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm84"
type: "BatchNorm"
bottom: "conv_blob84"
top: "batch_norm_blob84"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale84"
type: "Scale"
bottom: "batch_norm_blob84"
top: "batch_norm_blob84"
scale_param {
bias_term: true
}
}
layer {
name: "relu84"
type: "ReLU"
bottom: "batch_norm_blob84"
top: "relu_blob84"
}
layer {
name: "cat11"
type: "Concat"
bottom: "relu_blob83"
bottom: "relu_blob84"
top: "cat_blob11"
concat_param {
axis: 1
}
}
layer {
name: "ave_pool8"
type: "Pooling"
bottom: "cat_blob9"
top: "ave_pool_blob8"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv85"
type: "Convolution"
bottom: "ave_pool_blob8"
top: "conv_blob85"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm85"
type: "BatchNorm"
bottom: "conv_blob85"
top: "batch_norm_blob85"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale85"
type: "Scale"
bottom: "batch_norm_blob85"
top: "batch_norm_blob85"
scale_param {
bias_term: true
}
}
layer {
name: "relu85"
type: "ReLU"
bottom: "batch_norm_blob85"
top: "relu_blob85"
}
layer {
name: "cat12"
type: "Concat"
bottom: "relu_blob77"
bottom: "cat_blob10"
bottom: "cat_blob11"
bottom: "relu_blob85"
top: "cat_blob12"
concat_param {
axis: 1
}
}
layer {
name: "conv86"
type: "Convolution"
bottom: "cat_blob12"
top: "conv_blob86"
convolution_param {
num_output: 320
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm86"
type: "BatchNorm"
bottom: "conv_blob86"
top: "batch_norm_blob86"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale86"
type: "Scale"
bottom: "batch_norm_blob86"
top: "batch_norm_blob86"
scale_param {
bias_term: true
}
}
layer {
name: "relu86"
type: "ReLU"
bottom: "batch_norm_blob86"
top: "relu_blob86"
}
layer {
name: "conv87"
type: "Convolution"
bottom: "cat_blob12"
top: "conv_blob87"
convolution_param {
num_output: 384
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm87"
type: "BatchNorm"
bottom: "conv_blob87"
top: "batch_norm_blob87"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale87"
type: "Scale"
bottom: "batch_norm_blob87"
top: "batch_norm_blob87"
scale_param {
bias_term: true
}
}
layer {
name: "relu87"
type: "ReLU"
bottom: "batch_norm_blob87"
top: "relu_blob87"
}
layer {
name: "conv88"
type: "Convolution"
bottom: "relu_blob87"
top: "conv_blob88"
convolution_param {
num_output: 384
bias_term: false
pad: 0
pad: 1
kernel_size: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm88"
type: "BatchNorm"
bottom: "conv_blob88"
top: "batch_norm_blob88"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale88"
type: "Scale"
bottom: "batch_norm_blob88"
top: "batch_norm_blob88"
scale_param {
bias_term: true
}
}
layer {
name: "relu88"
type: "ReLU"
bottom: "batch_norm_blob88"
top: "relu_blob88"
}
layer {
name: "conv89"
type: "Convolution"
bottom: "relu_blob87"
top: "conv_blob89"
convolution_param {
num_output: 384
bias_term: false
pad: 1
pad: 0
kernel_size: 3
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm89"
type: "BatchNorm"
bottom: "conv_blob89"
top: "batch_norm_blob89"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale89"
type: "Scale"
bottom: "batch_norm_blob89"
top: "batch_norm_blob89"
scale_param {
bias_term: true
}
}
layer {
name: "relu89"
type: "ReLU"
bottom: "batch_norm_blob89"
top: "relu_blob89"
}
layer {
name: "cat13"
type: "Concat"
bottom: "relu_blob88"
bottom: "relu_blob89"
top: "cat_blob13"
concat_param {
axis: 1
}
}
layer {
name: "conv90"
type: "Convolution"
bottom: "cat_blob12"
top: "conv_blob90"
convolution_param {
num_output: 448
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm90"
type: "BatchNorm"
bottom: "conv_blob90"
top: "batch_norm_blob90"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale90"
type: "Scale"
bottom: "batch_norm_blob90"
top: "batch_norm_blob90"
scale_param {
bias_term: true
}
}
layer {
name: "relu90"
type: "ReLU"
bottom: "batch_norm_blob90"
top: "relu_blob90"
}
layer {
name: "conv91"
type: "Convolution"
bottom: "relu_blob90"
top: "conv_blob91"
convolution_param {
num_output: 384
bias_term: false
pad: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm91"
type: "BatchNorm"
bottom: "conv_blob91"
top: "batch_norm_blob91"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale91"
type: "Scale"
bottom: "batch_norm_blob91"
top: "batch_norm_blob91"
scale_param {
bias_term: true
}
}
layer {
name: "relu91"
type: "ReLU"
bottom: "batch_norm_blob91"
top: "relu_blob91"
}
layer {
name: "conv92"
type: "Convolution"
bottom: "relu_blob91"
top: "conv_blob92"
convolution_param {
num_output: 384
bias_term: false
pad: 0
pad: 1
kernel_size: 1
kernel_size: 3
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm92"
type: "BatchNorm"
bottom: "conv_blob92"
top: "batch_norm_blob92"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale92"
type: "Scale"
bottom: "batch_norm_blob92"
top: "batch_norm_blob92"
scale_param {
bias_term: true
}
}
layer {
name: "relu92"
type: "ReLU"
bottom: "batch_norm_blob92"
top: "relu_blob92"
}
layer {
name: "conv93"
type: "Convolution"
bottom: "relu_blob91"
top: "conv_blob93"
convolution_param {
num_output: 384
bias_term: false
pad: 1
pad: 0
kernel_size: 3
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm93"
type: "BatchNorm"
bottom: "conv_blob93"
top: "batch_norm_blob93"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale93"
type: "Scale"
bottom: "batch_norm_blob93"
top: "batch_norm_blob93"
scale_param {
bias_term: true
}
}
layer {
name: "relu93"
type: "ReLU"
bottom: "batch_norm_blob93"
top: "relu_blob93"
}
layer {
name: "cat14"
type: "Concat"
bottom: "relu_blob92"
bottom: "relu_blob93"
top: "cat_blob14"
concat_param {
axis: 1
}
}
layer {
name: "ave_pool9"
type: "Pooling"
bottom: "cat_blob12"
top: "ave_pool_blob9"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv94"
type: "Convolution"
bottom: "ave_pool_blob9"
top: "conv_blob94"
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 1
group: 1
stride: 1
weight_filler {
type: "xavier"
}
dilation: 1
}
}
layer {
name: "batch_norm94"
type: "BatchNorm"
bottom: "conv_blob94"
top: "batch_norm_blob94"
batch_norm_param {
use_global_stats: true
eps: 0.0010000000474974513
}
}
layer {
name: "bn_scale94"
type: "Scale"
bottom: "batch_norm_blob94"
top: "batch_norm_blob94"
scale_param {
bias_term: true
}
}
layer {
name: "relu94"
type: "ReLU"
bottom: "batch_norm_blob94"
top: "relu_blob94"
}
layer {
name: "cat15"
type: "Concat"
bottom: "relu_blob86"
bottom: "cat_blob13"
bottom: "cat_blob14"
bottom: "relu_blob94"
top: "cat_blob15"
concat_param {
axis: 1
}
}
layer {
name: "ave_pool10"
type: "Pooling"
bottom: "cat_blob15"
top: "ave_pool_blob10"
pooling_param {
pool: AVE
kernel_size: 8
stride: 8
}
}
layer {
name: "dropout1"
type: "Dropout"
bottom: "ave_pool_blob10"
top: "ave_pool_blob10"
include {
phase: TRAIN
}
dropout_param {
dropout_ratio: 0.5
}
}
layer {
name: "view1"
type: "Reshape"
bottom: "ave_pool_blob10"
top: "view_blob1"
reshape_param {
shape {
dim: 0
dim: -1
}
}
}
layer {
name: "fc1"
type: "InnerProduct"
bottom: "view_blob1"
top: "fc_blob1"
inner_product_param {
num_output: 1000
bias_term: true
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
}
}
}

layer {
name: "loss"
type: "SoftmaxWithLoss"
bottom: "fc_blob1"
bottom: "label"
top: "loss"
}
layer {
name: "loss/top-1"
type: "Accuracy"
bottom: "fc_blob1"
bottom: "label"
top: "loss/top-1"
include {
phase: TEST
}
}
layer {
name: "acc/top-5"
type: "Accuracy"
bottom: "fc_blob1"
bottom: "label"
top: "acc/top-5"
include {
phase: TEST
}
accuracy_param {
top_k: 5
}
}
`

@xxradon
Copy link
Owner

xxradon commented May 16, 2019

Did you checkout your model input was the same by pytorch and caffe?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants