Skip to content

Instantly share code, notes, and snippets.

@dudu159632
Last active June 13, 2017 12:46
Show Gist options
  • Save dudu159632/fb747800273880d273b4873da56c68b6 to your computer and use it in GitHub Desktop.
Save dudu159632/fb747800273880d273b4873da56c68b6 to your computer and use it in GitHub Desktop.
name: "Inception_Resnet2_v2"
layer {
name: "data"
type: "Data"
top: "data"
top: "label"
transform_param {
mirror: false
crop_size: 34
mean_value: 104
mean_value: 117
mean_value: 123
}
data_param {
source: "imagenet_train_lmdb"
batch_size: 64
backend: LMDB
}
}
layer {
name: "conv1"
type: "Convolution"
bottom: "data"
top: "conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 64
kernel_size: 3
stride: 1
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "conv1_bn"
type: "BatchNorm"
bottom: "conv1"
top: "conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "conv1_scale"
bottom: "conv1"
top: "conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "conv1_relu"
type: "ReLU"
bottom: "conv1"
top: "conv1"
}
layer {
name: "resx6_conv1"
type: "Convolution"
bottom: "conv1"
top: "resx6_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 128
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx6_conv1_bn"
type: "BatchNorm"
bottom: "resx6_conv1"
top: "resx6_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx6_conv1_scale"
bottom: "resx6_conv1"
top: "resx6_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx6_conv1_relu"
type: "ReLU"
bottom: "resx6_conv1"
top: "resx6_conv1"
}
layer {
name: "resx6_conv2"
type: "Convolution"
bottom: "resx6_conv1"
top: "resx6_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 128
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx6_conv2_bn"
type: "BatchNorm"
bottom: "resx6_conv2"
top: "resx6_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx6_conv2_scale"
bottom: "resx6_conv2"
top: "resx6_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx6_conv2_relu"
type: "ReLU"
bottom: "resx6_conv2"
top: "resx6_conv2"
}
layer {
name: "resx6_conv3"
type: "Convolution"
bottom: "resx6_conv2"
top: "resx6_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx6_conv3_bn"
type: "BatchNorm"
bottom: "resx6_conv3"
top: "resx6_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx6_conv3_scale"
bottom: "resx6_conv3"
top: "resx6_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx1_match_conv"
type: "Convolution"
bottom: "conv1"
top: "resx1_match_conv"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx1_match_conv_bn"
type: "BatchNorm"
bottom: "resx1_match_conv"
top: "resx1_match_conv"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx1_match_conv_scale"
bottom: "resx1_match_conv"
top: "resx1_match_conv"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx6_elewise"
type: "Eltwise"
bottom: "resx1_match_conv"
bottom: "resx6_conv3"
top: "resx6_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx6_elewise_relu"
type: "ReLU"
bottom: "resx6_elewise"
top: "resx6_elewise"
}
layer {
name: "resx8_conv1"
type: "Convolution"
bottom: "resx6_elewise"
top: "resx8_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx8_conv1_bn"
type: "BatchNorm"
bottom: "resx8_conv1"
top: "resx8_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx8_conv1_scale"
bottom: "resx8_conv1"
top: "resx8_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx8_conv1_relu"
type: "ReLU"
bottom: "resx8_conv1"
top: "resx8_conv1"
}
layer {
name: "resx8_conv2"
type: "Convolution"
bottom: "resx8_conv1"
top: "resx8_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 3
stride: 2
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx8_conv2_bn"
type: "BatchNorm"
bottom: "resx8_conv2"
top: "resx8_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx8_conv2_scale"
bottom: "resx8_conv2"
top: "resx8_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx8_conv2_relu"
type: "ReLU"
bottom: "resx8_conv2"
top: "resx8_conv2"
}
layer {
name: "resx8_conv3"
type: "Convolution"
bottom: "resx8_conv2"
top: "resx8_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx8_conv3_bn"
type: "BatchNorm"
bottom: "resx8_conv3"
top: "resx8_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx8_conv3_scale"
bottom: "resx8_conv3"
top: "resx8_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx8_match_conv"
type: "Convolution"
bottom: "resx6_elewise"
top: "resx8_match_conv"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 2
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx8_match_conv_bn"
type: "BatchNorm"
bottom: "resx8_match_conv"
top: "resx8_match_conv"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx8_match_conv_scale"
bottom: "resx8_match_conv"
top: "resx8_match_conv"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx8_elewise"
type: "Eltwise"
bottom: "resx8_conv3"
bottom: "resx8_match_conv"
top: "resx8_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx8_elewise_relu"
type: "ReLU"
bottom: "resx8_elewise"
top: "resx8_elewise"
}
layer {
name: "resx9_conv1"
type: "Convolution"
bottom: "resx8_elewise"
top: "resx9_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx9_conv1_bn"
type: "BatchNorm"
bottom: "resx9_conv1"
top: "resx9_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx9_conv1_scale"
bottom: "resx9_conv1"
top: "resx9_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx9_conv1_relu"
type: "ReLU"
bottom: "resx9_conv1"
top: "resx9_conv1"
}
layer {
name: "resx9_conv2"
type: "Convolution"
bottom: "resx9_conv1"
top: "resx9_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx9_conv2_bn"
type: "BatchNorm"
bottom: "resx9_conv2"
top: "resx9_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx9_conv2_scale"
bottom: "resx9_conv2"
top: "resx9_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx9_conv2_relu"
type: "ReLU"
bottom: "resx9_conv2"
top: "resx9_conv2"
}
layer {
name: "resx9_conv3"
type: "Convolution"
bottom: "resx9_conv2"
top: "resx9_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx9_conv3_bn"
type: "BatchNorm"
bottom: "resx9_conv3"
top: "resx9_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx9_conv3_scale"
bottom: "resx9_conv3"
top: "resx9_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx9_elewise"
type: "Eltwise"
bottom: "resx8_elewise"
bottom: "resx9_conv3"
top: "resx9_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx9_elewise_relu"
type: "ReLU"
bottom: "resx9_elewise"
top: "resx9_elewise"
}
layer {
name: "resx10_conv1"
type: "Convolution"
bottom: "resx9_elewise"
top: "resx10_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx10_conv1_bn"
type: "BatchNorm"
bottom: "resx10_conv1"
top: "resx10_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx10_conv1_scale"
bottom: "resx10_conv1"
top: "resx10_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx10_conv1_relu"
type: "ReLU"
bottom: "resx10_conv1"
top: "resx10_conv1"
}
layer {
name: "resx10_conv2"
type: "Convolution"
bottom: "resx10_conv1"
top: "resx10_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx10_conv2_bn"
type: "BatchNorm"
bottom: "resx10_conv2"
top: "resx10_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx10_conv2_scale"
bottom: "resx10_conv2"
top: "resx10_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx10_conv2_relu"
type: "ReLU"
bottom: "resx10_conv2"
top: "resx10_conv2"
}
layer {
name: "resx10_conv3"
type: "Convolution"
bottom: "resx10_conv2"
top: "resx10_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx10_conv3_bn"
type: "BatchNorm"
bottom: "resx10_conv3"
top: "resx10_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx10_conv3_scale"
bottom: "resx10_conv3"
top: "resx10_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx10_elewise"
type: "Eltwise"
bottom: "resx9_elewise"
bottom: "resx10_conv3"
top: "resx10_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx10_elewise_relu"
type: "ReLU"
bottom: "resx10_elewise"
top: "resx10_elewise"
}
layer {
name: "resx11_conv1"
type: "Convolution"
bottom: "resx10_elewise"
top: "resx11_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx11_conv1_bn"
type: "BatchNorm"
bottom: "resx11_conv1"
top: "resx11_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx11_conv1_scale"
bottom: "resx11_conv1"
top: "resx11_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx11_conv1_relu"
type: "ReLU"
bottom: "resx11_conv1"
top: "resx11_conv1"
}
layer {
name: "resx11_conv2"
type: "Convolution"
bottom: "resx11_conv1"
top: "resx11_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx11_conv2_bn"
type: "BatchNorm"
bottom: "resx11_conv2"
top: "resx11_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx11_conv2_scale"
bottom: "resx11_conv2"
top: "resx11_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx11_conv2_relu"
type: "ReLU"
bottom: "resx11_conv2"
top: "resx11_conv2"
}
layer {
name: "resx11_conv3"
type: "Convolution"
bottom: "resx11_conv2"
top: "resx11_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx11_conv3_bn"
type: "BatchNorm"
bottom: "resx11_conv3"
top: "resx11_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx11_conv3_scale"
bottom: "resx11_conv3"
top: "resx11_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx11_elewise"
type: "Eltwise"
bottom: "resx10_elewise"
bottom: "resx11_conv3"
top: "resx11_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx11_elewise_relu"
type: "ReLU"
bottom: "resx11_elewise"
top: "resx11_elewise"
}
layer {
name: "resx12_conv1"
type: "Convolution"
bottom: "resx11_elewise"
top: "resx12_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx12_conv1_bn"
type: "BatchNorm"
bottom: "resx12_conv1"
top: "resx12_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx12_conv1_scale"
bottom: "resx12_conv1"
top: "resx12_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx12_conv1_relu"
type: "ReLU"
bottom: "resx12_conv1"
top: "resx12_conv1"
}
layer {
name: "resx12_conv2"
type: "Convolution"
bottom: "resx12_conv1"
top: "resx12_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx12_conv2_bn"
type: "BatchNorm"
bottom: "resx12_conv2"
top: "resx12_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx12_conv2_scale"
bottom: "resx12_conv2"
top: "resx12_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx12_conv2_relu"
type: "ReLU"
bottom: "resx12_conv2"
top: "resx12_conv2"
}
layer {
name: "resx12_conv3"
type: "Convolution"
bottom: "resx12_conv2"
top: "resx12_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx12_conv3_bn"
type: "BatchNorm"
bottom: "resx12_conv3"
top: "resx12_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx12_conv3_scale"
bottom: "resx12_conv3"
top: "resx12_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx12_elewise"
type: "Eltwise"
bottom: "resx11_elewise"
bottom: "resx12_conv3"
top: "resx12_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx12_elewise_relu"
type: "ReLU"
bottom: "resx12_elewise"
top: "resx12_elewise"
}
layer {
name: "resx13_conv1"
type: "Convolution"
bottom: "resx12_elewise"
top: "resx13_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx13_conv1_bn"
type: "BatchNorm"
bottom: "resx13_conv1"
top: "resx13_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx13_conv1_scale"
bottom: "resx13_conv1"
top: "resx13_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx13_conv1_relu"
type: "ReLU"
bottom: "resx13_conv1"
top: "resx13_conv1"
}
layer {
name: "resx13_conv2"
type: "Convolution"
bottom: "resx13_conv1"
top: "resx13_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx13_conv2_bn"
type: "BatchNorm"
bottom: "resx13_conv2"
top: "resx13_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx13_conv2_scale"
bottom: "resx13_conv2"
top: "resx13_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx13_conv2_relu"
type: "ReLU"
bottom: "resx13_conv2"
top: "resx13_conv2"
}
layer {
name: "resx13_conv3"
type: "Convolution"
bottom: "resx13_conv2"
top: "resx13_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx13_conv3_bn"
type: "BatchNorm"
bottom: "resx13_conv3"
top: "resx13_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx13_conv3_scale"
bottom: "resx13_conv3"
top: "resx13_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx13_elewise"
type: "Eltwise"
bottom: "resx12_elewise"
bottom: "resx13_conv3"
top: "resx13_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx13_elewise_relu"
type: "ReLU"
bottom: "resx13_elewise"
top: "resx13_elewise"
}
layer {
name: "resx14_conv1"
type: "Convolution"
bottom: "resx13_elewise"
top: "resx14_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx14_conv1_bn"
type: "BatchNorm"
bottom: "resx14_conv1"
top: "resx14_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx14_conv1_scale"
bottom: "resx14_conv1"
top: "resx14_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx14_conv1_relu"
type: "ReLU"
bottom: "resx14_conv1"
top: "resx14_conv1"
}
layer {
name: "resx14_conv2"
type: "Convolution"
bottom: "resx14_conv1"
top: "resx14_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 3
stride: 2
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx14_conv2_bn"
type: "BatchNorm"
bottom: "resx14_conv2"
top: "resx14_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx14_conv2_scale"
bottom: "resx14_conv2"
top: "resx14_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx14_conv2_relu"
type: "ReLU"
bottom: "resx14_conv2"
top: "resx14_conv2"
}
layer {
name: "resx14_conv3"
type: "Convolution"
bottom: "resx14_conv2"
top: "resx14_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 1024
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx14_conv3_bn"
type: "BatchNorm"
bottom: "resx14_conv3"
top: "resx14_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx14_conv3_scale"
bottom: "resx14_conv3"
top: "resx14_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx14_match_conv"
type: "Convolution"
bottom: "resx13_elewise"
top: "resx14_match_conv"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 1024
kernel_size: 1
stride: 2
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx14_match_conv_bn"
type: "BatchNorm"
bottom: "resx14_match_conv"
top: "resx14_match_conv"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx14_match_conv_scale"
bottom: "resx14_match_conv"
top: "resx14_match_conv"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx14_elewise"
type: "Eltwise"
bottom: "resx14_match_conv"
bottom: "resx14_conv3"
top: "resx14_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx14_elewise_relu"
type: "ReLU"
bottom: "resx14_elewise"
top: "resx14_elewise"
}
layer {
name: "resx15_conv1"
type: "Convolution"
bottom: "resx14_elewise"
top: "resx15_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx15_conv1_bn"
type: "BatchNorm"
bottom: "resx15_conv1"
top: "resx15_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx15_conv1_scale"
bottom: "resx15_conv1"
top: "resx15_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx15_conv1_relu"
type: "ReLU"
bottom: "resx15_conv1"
top: "resx15_conv1"
}
layer {
name: "resx15_conv2"
type: "Convolution"
bottom: "resx15_conv1"
top: "resx15_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx15_conv2_bn"
type: "BatchNorm"
bottom: "resx15_conv2"
top: "resx15_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx15_conv2_scale"
bottom: "resx15_conv2"
top: "resx15_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx15_conv2_relu"
type: "ReLU"
bottom: "resx15_conv2"
top: "resx15_conv2"
}
layer {
name: "resx15_conv3"
type: "Convolution"
bottom: "resx15_conv2"
top: "resx15_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 1024
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx15_conv3_bn"
type: "BatchNorm"
bottom: "resx15_conv3"
top: "resx15_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx15_conv3_scale"
bottom: "resx15_conv3"
top: "resx15_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx15_elewise"
type: "Eltwise"
bottom: "resx14_elewise"
bottom: "resx15_conv3"
top: "resx15_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx15_elewise_relu"
type: "ReLU"
bottom: "resx15_elewise"
top: "resx15_elewise"
}
layer {
name: "resx16_conv1"
type: "Convolution"
bottom: "resx15_elewise"
top: "resx16_conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx16_conv1_bn"
type: "BatchNorm"
bottom: "resx16_conv1"
top: "resx16_conv1"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx16_conv1_scale"
bottom: "resx16_conv1"
top: "resx16_conv1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx16_conv1_relu"
type: "ReLU"
bottom: "resx16_conv1"
top: "resx16_conv1"
}
layer {
name: "resx16_conv2"
type: "Convolution"
bottom: "resx16_conv1"
top: "resx16_conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
kernel_size: 3
stride: 1
group: 32
pad: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx16_conv2_bn"
type: "BatchNorm"
bottom: "resx16_conv2"
top: "resx16_conv2"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx16_conv2_scale"
bottom: "resx16_conv2"
top: "resx16_conv2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx16_conv2_relu"
type: "ReLU"
bottom: "resx16_conv2"
top: "resx16_conv2"
}
layer {
name: "resx16_conv3"
type: "Convolution"
bottom: "resx16_conv2"
top: "resx16_conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 1024
kernel_size: 1
stride: 1
pad: 0
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "resx16_conv3_bn"
type: "BatchNorm"
bottom: "resx16_conv3"
top: "resx16_conv3"
batch_norm_param {
use_global_stats: false
}
}
layer {
name: "resx16_conv3_scale"
bottom: "resx16_conv3"
top: "resx16_conv3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
name: "resx16_elewise"
type: "Eltwise"
bottom: "resx15_elewise"
bottom: "resx16_conv3"
top: "resx16_elewise"
eltwise_param {
operation: SUM
}
}
layer {
name: "resx16_elewise_relu"
type: "ReLU"
bottom: "resx16_elewise"
top: "resx16_elewise"
}
layer {
name: "pool_ave"
type: "Pooling"
bottom: "resx16_elewise"
top: "pool_ave"
pooling_param {
global_pooling : true
pool: AVE
}
}
layer {
name: "classifier"
type: "InnerProduct"
bottom: "pool_ave"
top: "classifier"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
inner_product_param {
num_output: 1000
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0
}
}
}
layer {
name: "loss"
type: "SoftmaxWithLoss"
bottom: "classifier"
bottom: "label"
top: "loss"
}
layer {
name: "accuracy_top1"
type: "Accuracy"
bottom: "classifier"
bottom: "label"
top: "accuracy_top1"
include {
phase: TEST
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment