Skip to content

Instantly share code, notes, and snippets.

/deploy.prototxt Secret
Created Mar 16, 2018

Embed
What would you like to do?
input: "data"
input_shape {
dim: 1
dim: 3
dim: 299
dim: 299
}
layer {
name: "conv1_3x3_s2"
type: "Convolution"
bottom: "data"
top: "conv1_3x3_s2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 3
stride: 2
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv1_3x3_s2_bn"
type: "BatchNorm"
bottom: "conv1_3x3_s2"
top: "conv1_3x3_s2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv1_3x3_s2_scale"
type: "Scale"
bottom: "conv1_3x3_s2"
top: "conv1_3x3_s2"
scale_param {
bias_term: true
}
}
layer {
name: "conv1_3x3_relu"
type: "ReLU"
bottom: "conv1_3x3_s2"
top: "conv1_3x3_s2"
}
layer {
name: "conv2_3x3_s1"
type: "Convolution"
bottom: "conv1_3x3_s2"
top: "conv2_3x3_s1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv2_3x3_s1_bn"
type: "BatchNorm"
bottom: "conv2_3x3_s1"
top: "conv2_3x3_s1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv2_3x3_s1_scale"
type: "Scale"
bottom: "conv2_3x3_s1"
top: "conv2_3x3_s1"
scale_param {
bias_term: true
}
}
layer {
name: "conv2_3x3_relu"
type: "ReLU"
bottom: "conv2_3x3_s1"
top: "conv2_3x3_s1"
}
layer {
name: "conv3_3x3_s1"
type: "Convolution"
bottom: "conv2_3x3_s1"
top: "conv3_3x3_s1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv3_3x3_s1_bn"
type: "BatchNorm"
bottom: "conv3_3x3_s1"
top: "conv3_3x3_s1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv3_3x3_s1_scale"
type: "Scale"
bottom: "conv3_3x3_s1"
top: "conv3_3x3_s1"
scale_param {
bias_term: true
}
}
layer {
name: "conv3_3x3_relu"
type: "ReLU"
bottom: "conv3_3x3_s1"
top: "conv3_3x3_s1"
}
layer {
name: "pool1_3x3_s2"
type: "Pooling"
bottom: "conv3_3x3_s1"
top: "pool1_3x3_s2"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {
name: "conv4_3x3_reduce"
type: "Convolution"
bottom: "pool1_3x3_s2"
top: "conv4_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 80
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv4_3x3_reduce_bn"
type: "BatchNorm"
bottom: "conv4_3x3_reduce"
top: "conv4_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv4_3x3_reduce_scale"
type: "Scale"
bottom: "conv4_3x3_reduce"
top: "conv4_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "conv4_3x3_reduce_relu"
type: "ReLU"
bottom: "conv4_3x3_reduce"
top: "conv4_3x3_reduce"
}
layer {
name: "conv4_3x3"
type: "Convolution"
bottom: "conv4_3x3_reduce"
top: "conv4_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 192
bias_term: false
pad: 0
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv4_3x3_bn"
type: "BatchNorm"
bottom: "conv4_3x3"
top: "conv4_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv4_3x3_scale"
type: "Scale"
bottom: "conv4_3x3"
top: "conv4_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "conv4_relu_3x3"
type: "ReLU"
bottom: "conv4_3x3"
top: "conv4_3x3"
}
layer {
name: "pool2_3x3_s2"
type: "Pooling"
bottom: "conv4_3x3"
top: "pool2_3x3_s2"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {
name: "conv5_1x1"
type: "Convolution"
bottom: "pool2_3x3_s2"
top: "conv5_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 96
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_1x1_bn"
type: "BatchNorm"
bottom: "conv5_1x1"
top: "conv5_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_1x1_scale"
type: "Scale"
bottom: "conv5_1x1"
top: "conv5_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_1x1_relu"
type: "ReLU"
bottom: "conv5_1x1"
top: "conv5_1x1"
}
layer {
name: "conv5_5x5_reduce"
type: "Convolution"
bottom: "pool2_3x3_s2"
top: "conv5_5x5_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_5x5_reduce_bn"
type: "BatchNorm"
bottom: "conv5_5x5_reduce"
top: "conv5_5x5_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_5x5_reduce_scale"
type: "Scale"
bottom: "conv5_5x5_reduce"
top: "conv5_5x5_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_5x5_reduce_relu"
type: "ReLU"
bottom: "conv5_5x5_reduce"
top: "conv5_5x5_reduce"
}
layer {
name: "conv5_5x5"
type: "Convolution"
bottom: "conv5_5x5_reduce"
top: "conv5_5x5"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 2
kernel_size: 5
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_5x5_bn"
type: "BatchNorm"
bottom: "conv5_5x5"
top: "conv5_5x5"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_5x5_scale"
type: "Scale"
bottom: "conv5_5x5"
top: "conv5_5x5"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_5x5_relu"
type: "ReLU"
bottom: "conv5_5x5"
top: "conv5_5x5"
}
layer {
name: "conv5_3x3_reduce"
type: "Convolution"
bottom: "pool2_3x3_s2"
top: "conv5_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_3x3_reduce_bn"
type: "BatchNorm"
bottom: "conv5_3x3_reduce"
top: "conv5_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_3x3_reduce_scale"
type: "Scale"
bottom: "conv5_3x3_reduce"
top: "conv5_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_3x3_reduce_relu"
type: "ReLU"
bottom: "conv5_3x3_reduce"
top: "conv5_3x3_reduce"
}
layer {
name: "conv5_3x3"
type: "Convolution"
bottom: "conv5_3x3_reduce"
top: "conv5_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_3x3_bn"
type: "BatchNorm"
bottom: "conv5_3x3"
top: "conv5_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_3x3_scale"
type: "Scale"
bottom: "conv5_3x3"
top: "conv5_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_3x3_relu"
type: "ReLU"
bottom: "conv5_3x3"
top: "conv5_3x3"
}
layer {
name: "conv5_3x3_2"
type: "Convolution"
bottom: "conv5_3x3"
top: "conv5_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 96
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_3x3_2_bn"
type: "BatchNorm"
bottom: "conv5_3x3_2"
top: "conv5_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_3x3_2_scale"
type: "Scale"
bottom: "conv5_3x3_2"
top: "conv5_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_3x3_2_relu"
type: "ReLU"
bottom: "conv5_3x3_2"
top: "conv5_3x3_2"
}
layer {
name: "ave_pool"
type: "Pooling"
bottom: "pool2_3x3_s2"
top: "ave_pool"
pooling_param {
pool: AVE
kernel_size: 3
stride: 1
pad: 1
}
}
layer {
name: "conv5_1x1_ave"
type: "Convolution"
bottom: "ave_pool"
top: "conv5_1x1_ave"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "conv5_1x1_ave_bn"
type: "BatchNorm"
bottom: "conv5_1x1_ave"
top: "conv5_1x1_ave"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "conv5_1x1_ave_scale"
type: "Scale"
bottom: "conv5_1x1_ave"
top: "conv5_1x1_ave"
scale_param {
bias_term: true
}
}
layer {
name: "conv5_1x1_ave_relu"
type: "ReLU"
bottom: "conv5_1x1_ave"
top: "conv5_1x1_ave"
}
layer {
name: "stem_concat"
type: "Concat"
bottom: "conv5_1x1"
bottom: "conv5_5x5"
bottom: "conv5_3x3_2"
bottom: "conv5_1x1_ave"
top: "stem_concat"
}
layer {
name: "inception_resnet_v2_a1_1x1"
type: "Convolution"
bottom: "stem_concat"
top: "inception_resnet_v2_a1_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a1_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a1_1x1"
top: "inception_resnet_v2_a1_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a1_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a1_1x1"
top: "inception_resnet_v2_a1_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a1_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_1x1"
top: "inception_resnet_v2_a1_1x1"
}
layer {
name: "inception_resnet_v2_a1_3x3_reduce"
type: "Convolution"
bottom: "stem_concat"
top: "inception_resnet_v2_a1_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a1_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a1_3x3_reduce"
top: "inception_resnet_v2_a1_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a1_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a1_3x3_reduce"
top: "inception_resnet_v2_a1_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a1_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_3x3_reduce"
top: "inception_resnet_v2_a1_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a1_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a1_3x3_reduce"
top: "inception_resnet_v2_a1_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a1_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a1_3x3"
top: "inception_resnet_v2_a1_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a1_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a1_3x3"
top: "inception_resnet_v2_a1_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a1_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_3x3"
top: "inception_resnet_v2_a1_3x3"
}
layer {
name: "inception_resnet_v2_a1_3x3_2_reduce"
type: "Convolution"
bottom: "stem_concat"
top: "inception_resnet_v2_a1_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a1_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a1_3x3_2_reduce"
top: "inception_resnet_v2_a1_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a1_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a1_3x3_2_reduce"
top: "inception_resnet_v2_a1_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a1_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_3x3_2_reduce"
top: "inception_resnet_v2_a1_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a1_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a1_3x3_2_reduce"
top: "inception_resnet_v2_a1_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a1_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a1_3x3_2"
top: "inception_resnet_v2_a1_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a1_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a1_3x3_2"
top: "inception_resnet_v2_a1_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a1_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_3x3_2"
top: "inception_resnet_v2_a1_3x3_2"
}
layer {
name: "inception_resnet_v2_a1_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a1_3x3_2"
top: "inception_resnet_v2_a1_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a1_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a1_3x3_3"
top: "inception_resnet_v2_a1_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a1_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a1_3x3_3"
top: "inception_resnet_v2_a1_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a1_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_3x3_3"
top: "inception_resnet_v2_a1_3x3_3"
}
layer {
name: "inception_resnet_v2_a1_concat"
type: "Concat"
bottom: "inception_resnet_v2_a1_1x1"
bottom: "inception_resnet_v2_a1_3x3"
bottom: "inception_resnet_v2_a1_3x3_3"
top: "inception_resnet_v2_a1_concat"
}
layer {
name: "inception_resnet_v2_a1_up"
type: "Convolution"
bottom: "inception_resnet_v2_a1_concat"
top: "inception_resnet_v2_a1_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a1_residual_eltwise"
type: "Eltwise"
bottom: "stem_concat"
bottom: "inception_resnet_v2_a1_up"
top: "inception_resnet_v2_a1_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a1_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a1_residual_eltwise"
top: "inception_resnet_v2_a1_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a2_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a1_residual_eltwise"
top: "inception_resnet_v2_a2_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a2_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a2_1x1"
top: "inception_resnet_v2_a2_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a2_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a2_1x1"
top: "inception_resnet_v2_a2_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a2_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_1x1"
top: "inception_resnet_v2_a2_1x1"
}
layer {
name: "inception_resnet_v2_a2_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a1_residual_eltwise"
top: "inception_resnet_v2_a2_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a2_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a2_3x3_reduce"
top: "inception_resnet_v2_a2_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a2_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a2_3x3_reduce"
top: "inception_resnet_v2_a2_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a2_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_3x3_reduce"
top: "inception_resnet_v2_a2_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a2_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a2_3x3_reduce"
top: "inception_resnet_v2_a2_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a2_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a2_3x3"
top: "inception_resnet_v2_a2_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a2_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a2_3x3"
top: "inception_resnet_v2_a2_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a2_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_3x3"
top: "inception_resnet_v2_a2_3x3"
}
layer {
name: "inception_resnet_v2_a2_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a1_residual_eltwise"
top: "inception_resnet_v2_a2_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a2_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a2_3x3_2_reduce"
top: "inception_resnet_v2_a2_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a2_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a2_3x3_2_reduce"
top: "inception_resnet_v2_a2_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a2_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_3x3_2_reduce"
top: "inception_resnet_v2_a2_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a2_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a2_3x3_2_reduce"
top: "inception_resnet_v2_a2_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a2_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a2_3x3_2"
top: "inception_resnet_v2_a2_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a2_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a2_3x3_2"
top: "inception_resnet_v2_a2_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a2_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_3x3_2"
top: "inception_resnet_v2_a2_3x3_2"
}
layer {
name: "inception_resnet_v2_a2_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a2_3x3_2"
top: "inception_resnet_v2_a2_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a2_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a2_3x3_3"
top: "inception_resnet_v2_a2_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a2_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a2_3x3_3"
top: "inception_resnet_v2_a2_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a2_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_3x3_3"
top: "inception_resnet_v2_a2_3x3_3"
}
layer {
name: "inception_resnet_v2_a2_concat"
type: "Concat"
bottom: "inception_resnet_v2_a2_1x1"
bottom: "inception_resnet_v2_a2_3x3"
bottom: "inception_resnet_v2_a2_3x3_3"
top: "inception_resnet_v2_a2_concat"
}
layer {
name: "inception_resnet_v2_a2_up"
type: "Convolution"
bottom: "inception_resnet_v2_a2_concat"
top: "inception_resnet_v2_a2_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a2_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a1_residual_eltwise"
bottom: "inception_resnet_v2_a2_up"
top: "inception_resnet_v2_a2_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a2_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a2_residual_eltwise"
top: "inception_resnet_v2_a2_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a3_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a2_residual_eltwise"
top: "inception_resnet_v2_a3_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a3_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a3_1x1"
top: "inception_resnet_v2_a3_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a3_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a3_1x1"
top: "inception_resnet_v2_a3_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a3_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_1x1"
top: "inception_resnet_v2_a3_1x1"
}
layer {
name: "inception_resnet_v2_a3_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a2_residual_eltwise"
top: "inception_resnet_v2_a3_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a3_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a3_3x3_reduce"
top: "inception_resnet_v2_a3_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a3_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a3_3x3_reduce"
top: "inception_resnet_v2_a3_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a3_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_3x3_reduce"
top: "inception_resnet_v2_a3_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a3_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a3_3x3_reduce"
top: "inception_resnet_v2_a3_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a3_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a3_3x3"
top: "inception_resnet_v2_a3_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a3_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a3_3x3"
top: "inception_resnet_v2_a3_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a3_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_3x3"
top: "inception_resnet_v2_a3_3x3"
}
layer {
name: "inception_resnet_v2_a3_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a2_residual_eltwise"
top: "inception_resnet_v2_a3_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a3_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a3_3x3_2_reduce"
top: "inception_resnet_v2_a3_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a3_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a3_3x3_2_reduce"
top: "inception_resnet_v2_a3_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a3_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_3x3_2_reduce"
top: "inception_resnet_v2_a3_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a3_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a3_3x3_2_reduce"
top: "inception_resnet_v2_a3_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a3_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a3_3x3_2"
top: "inception_resnet_v2_a3_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a3_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a3_3x3_2"
top: "inception_resnet_v2_a3_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a3_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_3x3_2"
top: "inception_resnet_v2_a3_3x3_2"
}
layer {
name: "inception_resnet_v2_a3_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a3_3x3_2"
top: "inception_resnet_v2_a3_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a3_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a3_3x3_3"
top: "inception_resnet_v2_a3_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a3_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a3_3x3_3"
top: "inception_resnet_v2_a3_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a3_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_3x3_3"
top: "inception_resnet_v2_a3_3x3_3"
}
layer {
name: "inception_resnet_v2_a3_concat"
type: "Concat"
bottom: "inception_resnet_v2_a3_1x1"
bottom: "inception_resnet_v2_a3_3x3"
bottom: "inception_resnet_v2_a3_3x3_3"
top: "inception_resnet_v2_a3_concat"
}
layer {
name: "inception_resnet_v2_a3_up"
type: "Convolution"
bottom: "inception_resnet_v2_a3_concat"
top: "inception_resnet_v2_a3_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a3_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a2_residual_eltwise"
bottom: "inception_resnet_v2_a3_up"
top: "inception_resnet_v2_a3_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a3_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a3_residual_eltwise"
top: "inception_resnet_v2_a3_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a4_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a3_residual_eltwise"
top: "inception_resnet_v2_a4_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a4_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a4_1x1"
top: "inception_resnet_v2_a4_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a4_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a4_1x1"
top: "inception_resnet_v2_a4_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a4_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_1x1"
top: "inception_resnet_v2_a4_1x1"
}
layer {
name: "inception_resnet_v2_a4_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a3_residual_eltwise"
top: "inception_resnet_v2_a4_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a4_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a4_3x3_reduce"
top: "inception_resnet_v2_a4_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a4_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a4_3x3_reduce"
top: "inception_resnet_v2_a4_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a4_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_3x3_reduce"
top: "inception_resnet_v2_a4_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a4_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a4_3x3_reduce"
top: "inception_resnet_v2_a4_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a4_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a4_3x3"
top: "inception_resnet_v2_a4_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a4_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a4_3x3"
top: "inception_resnet_v2_a4_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a4_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_3x3"
top: "inception_resnet_v2_a4_3x3"
}
layer {
name: "inception_resnet_v2_a4_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a3_residual_eltwise"
top: "inception_resnet_v2_a4_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a4_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a4_3x3_2_reduce"
top: "inception_resnet_v2_a4_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a4_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a4_3x3_2_reduce"
top: "inception_resnet_v2_a4_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a4_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_3x3_2_reduce"
top: "inception_resnet_v2_a4_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a4_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a4_3x3_2_reduce"
top: "inception_resnet_v2_a4_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a4_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a4_3x3_2"
top: "inception_resnet_v2_a4_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a4_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a4_3x3_2"
top: "inception_resnet_v2_a4_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a4_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_3x3_2"
top: "inception_resnet_v2_a4_3x3_2"
}
layer {
name: "inception_resnet_v2_a4_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a4_3x3_2"
top: "inception_resnet_v2_a4_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a4_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a4_3x3_3"
top: "inception_resnet_v2_a4_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a4_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a4_3x3_3"
top: "inception_resnet_v2_a4_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a4_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_3x3_3"
top: "inception_resnet_v2_a4_3x3_3"
}
layer {
name: "inception_resnet_v2_a4_concat"
type: "Concat"
bottom: "inception_resnet_v2_a4_1x1"
bottom: "inception_resnet_v2_a4_3x3"
bottom: "inception_resnet_v2_a4_3x3_3"
top: "inception_resnet_v2_a4_concat"
}
layer {
name: "inception_resnet_v2_a4_up"
type: "Convolution"
bottom: "inception_resnet_v2_a4_concat"
top: "inception_resnet_v2_a4_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a4_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a3_residual_eltwise"
bottom: "inception_resnet_v2_a4_up"
top: "inception_resnet_v2_a4_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a4_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a4_residual_eltwise"
top: "inception_resnet_v2_a4_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a5_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a4_residual_eltwise"
top: "inception_resnet_v2_a5_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a5_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a5_1x1"
top: "inception_resnet_v2_a5_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a5_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a5_1x1"
top: "inception_resnet_v2_a5_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a5_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_1x1"
top: "inception_resnet_v2_a5_1x1"
}
layer {
name: "inception_resnet_v2_a5_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a4_residual_eltwise"
top: "inception_resnet_v2_a5_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a5_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a5_3x3_reduce"
top: "inception_resnet_v2_a5_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a5_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a5_3x3_reduce"
top: "inception_resnet_v2_a5_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a5_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_3x3_reduce"
top: "inception_resnet_v2_a5_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a5_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a5_3x3_reduce"
top: "inception_resnet_v2_a5_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a5_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a5_3x3"
top: "inception_resnet_v2_a5_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a5_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a5_3x3"
top: "inception_resnet_v2_a5_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a5_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_3x3"
top: "inception_resnet_v2_a5_3x3"
}
layer {
name: "inception_resnet_v2_a5_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a4_residual_eltwise"
top: "inception_resnet_v2_a5_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a5_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a5_3x3_2_reduce"
top: "inception_resnet_v2_a5_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a5_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a5_3x3_2_reduce"
top: "inception_resnet_v2_a5_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a5_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_3x3_2_reduce"
top: "inception_resnet_v2_a5_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a5_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a5_3x3_2_reduce"
top: "inception_resnet_v2_a5_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a5_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a5_3x3_2"
top: "inception_resnet_v2_a5_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a5_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a5_3x3_2"
top: "inception_resnet_v2_a5_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a5_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_3x3_2"
top: "inception_resnet_v2_a5_3x3_2"
}
layer {
name: "inception_resnet_v2_a5_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a5_3x3_2"
top: "inception_resnet_v2_a5_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a5_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a5_3x3_3"
top: "inception_resnet_v2_a5_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a5_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a5_3x3_3"
top: "inception_resnet_v2_a5_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a5_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_3x3_3"
top: "inception_resnet_v2_a5_3x3_3"
}
layer {
name: "inception_resnet_v2_a5_concat"
type: "Concat"
bottom: "inception_resnet_v2_a5_1x1"
bottom: "inception_resnet_v2_a5_3x3"
bottom: "inception_resnet_v2_a5_3x3_3"
top: "inception_resnet_v2_a5_concat"
}
layer {
name: "inception_resnet_v2_a5_up"
type: "Convolution"
bottom: "inception_resnet_v2_a5_concat"
top: "inception_resnet_v2_a5_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a5_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a4_residual_eltwise"
bottom: "inception_resnet_v2_a5_up"
top: "inception_resnet_v2_a5_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a5_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a5_residual_eltwise"
top: "inception_resnet_v2_a5_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a6_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a5_residual_eltwise"
top: "inception_resnet_v2_a6_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a6_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a6_1x1"
top: "inception_resnet_v2_a6_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a6_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a6_1x1"
top: "inception_resnet_v2_a6_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a6_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_1x1"
top: "inception_resnet_v2_a6_1x1"
}
layer {
name: "inception_resnet_v2_a6_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a5_residual_eltwise"
top: "inception_resnet_v2_a6_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a6_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a6_3x3_reduce"
top: "inception_resnet_v2_a6_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a6_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a6_3x3_reduce"
top: "inception_resnet_v2_a6_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a6_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_3x3_reduce"
top: "inception_resnet_v2_a6_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a6_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a6_3x3_reduce"
top: "inception_resnet_v2_a6_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a6_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a6_3x3"
top: "inception_resnet_v2_a6_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a6_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a6_3x3"
top: "inception_resnet_v2_a6_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a6_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_3x3"
top: "inception_resnet_v2_a6_3x3"
}
layer {
name: "inception_resnet_v2_a6_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a5_residual_eltwise"
top: "inception_resnet_v2_a6_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a6_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a6_3x3_2_reduce"
top: "inception_resnet_v2_a6_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a6_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a6_3x3_2_reduce"
top: "inception_resnet_v2_a6_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a6_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_3x3_2_reduce"
top: "inception_resnet_v2_a6_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a6_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a6_3x3_2_reduce"
top: "inception_resnet_v2_a6_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a6_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a6_3x3_2"
top: "inception_resnet_v2_a6_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a6_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a6_3x3_2"
top: "inception_resnet_v2_a6_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a6_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_3x3_2"
top: "inception_resnet_v2_a6_3x3_2"
}
layer {
name: "inception_resnet_v2_a6_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a6_3x3_2"
top: "inception_resnet_v2_a6_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a6_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a6_3x3_3"
top: "inception_resnet_v2_a6_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a6_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a6_3x3_3"
top: "inception_resnet_v2_a6_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a6_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_3x3_3"
top: "inception_resnet_v2_a6_3x3_3"
}
layer {
name: "inception_resnet_v2_a6_concat"
type: "Concat"
bottom: "inception_resnet_v2_a6_1x1"
bottom: "inception_resnet_v2_a6_3x3"
bottom: "inception_resnet_v2_a6_3x3_3"
top: "inception_resnet_v2_a6_concat"
}
layer {
name: "inception_resnet_v2_a6_up"
type: "Convolution"
bottom: "inception_resnet_v2_a6_concat"
top: "inception_resnet_v2_a6_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a6_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a5_residual_eltwise"
bottom: "inception_resnet_v2_a6_up"
top: "inception_resnet_v2_a6_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a6_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a6_residual_eltwise"
top: "inception_resnet_v2_a6_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a7_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a6_residual_eltwise"
top: "inception_resnet_v2_a7_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a7_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a7_1x1"
top: "inception_resnet_v2_a7_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a7_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a7_1x1"
top: "inception_resnet_v2_a7_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a7_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_1x1"
top: "inception_resnet_v2_a7_1x1"
}
layer {
name: "inception_resnet_v2_a7_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a6_residual_eltwise"
top: "inception_resnet_v2_a7_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a7_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a7_3x3_reduce"
top: "inception_resnet_v2_a7_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a7_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a7_3x3_reduce"
top: "inception_resnet_v2_a7_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a7_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_3x3_reduce"
top: "inception_resnet_v2_a7_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a7_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a7_3x3_reduce"
top: "inception_resnet_v2_a7_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a7_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a7_3x3"
top: "inception_resnet_v2_a7_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a7_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a7_3x3"
top: "inception_resnet_v2_a7_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a7_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_3x3"
top: "inception_resnet_v2_a7_3x3"
}
layer {
name: "inception_resnet_v2_a7_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a6_residual_eltwise"
top: "inception_resnet_v2_a7_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a7_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a7_3x3_2_reduce"
top: "inception_resnet_v2_a7_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a7_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a7_3x3_2_reduce"
top: "inception_resnet_v2_a7_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a7_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_3x3_2_reduce"
top: "inception_resnet_v2_a7_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a7_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a7_3x3_2_reduce"
top: "inception_resnet_v2_a7_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a7_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a7_3x3_2"
top: "inception_resnet_v2_a7_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a7_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a7_3x3_2"
top: "inception_resnet_v2_a7_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a7_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_3x3_2"
top: "inception_resnet_v2_a7_3x3_2"
}
layer {
name: "inception_resnet_v2_a7_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a7_3x3_2"
top: "inception_resnet_v2_a7_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a7_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a7_3x3_3"
top: "inception_resnet_v2_a7_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a7_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a7_3x3_3"
top: "inception_resnet_v2_a7_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a7_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_3x3_3"
top: "inception_resnet_v2_a7_3x3_3"
}
layer {
name: "inception_resnet_v2_a7_concat"
type: "Concat"
bottom: "inception_resnet_v2_a7_1x1"
bottom: "inception_resnet_v2_a7_3x3"
bottom: "inception_resnet_v2_a7_3x3_3"
top: "inception_resnet_v2_a7_concat"
}
layer {
name: "inception_resnet_v2_a7_up"
type: "Convolution"
bottom: "inception_resnet_v2_a7_concat"
top: "inception_resnet_v2_a7_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a7_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a6_residual_eltwise"
bottom: "inception_resnet_v2_a7_up"
top: "inception_resnet_v2_a7_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a7_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a7_residual_eltwise"
top: "inception_resnet_v2_a7_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a8_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a7_residual_eltwise"
top: "inception_resnet_v2_a8_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a8_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a8_1x1"
top: "inception_resnet_v2_a8_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a8_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a8_1x1"
top: "inception_resnet_v2_a8_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a8_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_1x1"
top: "inception_resnet_v2_a8_1x1"
}
layer {
name: "inception_resnet_v2_a8_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a7_residual_eltwise"
top: "inception_resnet_v2_a8_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a8_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a8_3x3_reduce"
top: "inception_resnet_v2_a8_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a8_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a8_3x3_reduce"
top: "inception_resnet_v2_a8_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a8_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_3x3_reduce"
top: "inception_resnet_v2_a8_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a8_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a8_3x3_reduce"
top: "inception_resnet_v2_a8_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a8_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a8_3x3"
top: "inception_resnet_v2_a8_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a8_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a8_3x3"
top: "inception_resnet_v2_a8_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a8_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_3x3"
top: "inception_resnet_v2_a8_3x3"
}
layer {
name: "inception_resnet_v2_a8_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a7_residual_eltwise"
top: "inception_resnet_v2_a8_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a8_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a8_3x3_2_reduce"
top: "inception_resnet_v2_a8_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a8_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a8_3x3_2_reduce"
top: "inception_resnet_v2_a8_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a8_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_3x3_2_reduce"
top: "inception_resnet_v2_a8_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a8_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a8_3x3_2_reduce"
top: "inception_resnet_v2_a8_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a8_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a8_3x3_2"
top: "inception_resnet_v2_a8_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a8_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a8_3x3_2"
top: "inception_resnet_v2_a8_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a8_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_3x3_2"
top: "inception_resnet_v2_a8_3x3_2"
}
layer {
name: "inception_resnet_v2_a8_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a8_3x3_2"
top: "inception_resnet_v2_a8_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a8_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a8_3x3_3"
top: "inception_resnet_v2_a8_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a8_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a8_3x3_3"
top: "inception_resnet_v2_a8_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a8_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_3x3_3"
top: "inception_resnet_v2_a8_3x3_3"
}
layer {
name: "inception_resnet_v2_a8_concat"
type: "Concat"
bottom: "inception_resnet_v2_a8_1x1"
bottom: "inception_resnet_v2_a8_3x3"
bottom: "inception_resnet_v2_a8_3x3_3"
top: "inception_resnet_v2_a8_concat"
}
layer {
name: "inception_resnet_v2_a8_up"
type: "Convolution"
bottom: "inception_resnet_v2_a8_concat"
top: "inception_resnet_v2_a8_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a8_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a7_residual_eltwise"
bottom: "inception_resnet_v2_a8_up"
top: "inception_resnet_v2_a8_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a8_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a8_residual_eltwise"
top: "inception_resnet_v2_a8_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a9_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a8_residual_eltwise"
top: "inception_resnet_v2_a9_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a9_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a9_1x1"
top: "inception_resnet_v2_a9_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a9_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a9_1x1"
top: "inception_resnet_v2_a9_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a9_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_1x1"
top: "inception_resnet_v2_a9_1x1"
}
layer {
name: "inception_resnet_v2_a9_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a8_residual_eltwise"
top: "inception_resnet_v2_a9_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a9_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a9_3x3_reduce"
top: "inception_resnet_v2_a9_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a9_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a9_3x3_reduce"
top: "inception_resnet_v2_a9_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a9_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_3x3_reduce"
top: "inception_resnet_v2_a9_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a9_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a9_3x3_reduce"
top: "inception_resnet_v2_a9_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a9_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a9_3x3"
top: "inception_resnet_v2_a9_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a9_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a9_3x3"
top: "inception_resnet_v2_a9_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a9_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_3x3"
top: "inception_resnet_v2_a9_3x3"
}
layer {
name: "inception_resnet_v2_a9_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a8_residual_eltwise"
top: "inception_resnet_v2_a9_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a9_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a9_3x3_2_reduce"
top: "inception_resnet_v2_a9_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a9_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a9_3x3_2_reduce"
top: "inception_resnet_v2_a9_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a9_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_3x3_2_reduce"
top: "inception_resnet_v2_a9_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a9_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a9_3x3_2_reduce"
top: "inception_resnet_v2_a9_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a9_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a9_3x3_2"
top: "inception_resnet_v2_a9_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a9_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a9_3x3_2"
top: "inception_resnet_v2_a9_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a9_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_3x3_2"
top: "inception_resnet_v2_a9_3x3_2"
}
layer {
name: "inception_resnet_v2_a9_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a9_3x3_2"
top: "inception_resnet_v2_a9_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a9_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a9_3x3_3"
top: "inception_resnet_v2_a9_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a9_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a9_3x3_3"
top: "inception_resnet_v2_a9_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a9_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_3x3_3"
top: "inception_resnet_v2_a9_3x3_3"
}
layer {
name: "inception_resnet_v2_a9_concat"
type: "Concat"
bottom: "inception_resnet_v2_a9_1x1"
bottom: "inception_resnet_v2_a9_3x3"
bottom: "inception_resnet_v2_a9_3x3_3"
top: "inception_resnet_v2_a9_concat"
}
layer {
name: "inception_resnet_v2_a9_up"
type: "Convolution"
bottom: "inception_resnet_v2_a9_concat"
top: "inception_resnet_v2_a9_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a9_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a8_residual_eltwise"
bottom: "inception_resnet_v2_a9_up"
top: "inception_resnet_v2_a9_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a9_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a9_residual_eltwise"
top: "inception_resnet_v2_a9_residual_eltwise"
}
layer {
name: "inception_resnet_v2_a10_1x1"
type: "Convolution"
bottom: "inception_resnet_v2_a9_residual_eltwise"
top: "inception_resnet_v2_a10_1x1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a10_1x1_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a10_1x1"
top: "inception_resnet_v2_a10_1x1"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a10_1x1_scale"
type: "Scale"
bottom: "inception_resnet_v2_a10_1x1"
top: "inception_resnet_v2_a10_1x1"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a10_1x1_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_1x1"
top: "inception_resnet_v2_a10_1x1"
}
layer {
name: "inception_resnet_v2_a10_3x3_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a9_residual_eltwise"
top: "inception_resnet_v2_a10_3x3_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a10_3x3_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a10_3x3_reduce"
top: "inception_resnet_v2_a10_3x3_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a10_3x3_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a10_3x3_reduce"
top: "inception_resnet_v2_a10_3x3_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a10_3x3_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_3x3_reduce"
top: "inception_resnet_v2_a10_3x3_reduce"
}
layer {
name: "inception_resnet_v2_a10_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a10_3x3_reduce"
top: "inception_resnet_v2_a10_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a10_3x3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a10_3x3"
top: "inception_resnet_v2_a10_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a10_3x3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a10_3x3"
top: "inception_resnet_v2_a10_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a10_3x3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_3x3"
top: "inception_resnet_v2_a10_3x3"
}
layer {
name: "inception_resnet_v2_a10_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a9_residual_eltwise"
top: "inception_resnet_v2_a10_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 32
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a10_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a10_3x3_2_reduce"
top: "inception_resnet_v2_a10_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a10_3x3_2_reduce_scale"
type: "Scale"
bottom: "inception_resnet_v2_a10_3x3_2_reduce"
top: "inception_resnet_v2_a10_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a10_3x3_2_reduce_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_3x3_2_reduce"
top: "inception_resnet_v2_a10_3x3_2_reduce"
}
layer {
name: "inception_resnet_v2_a10_3x3_2"
type: "Convolution"
bottom: "inception_resnet_v2_a10_3x3_2_reduce"
top: "inception_resnet_v2_a10_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 48
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a10_3x3_2_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a10_3x3_2"
top: "inception_resnet_v2_a10_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a10_3x3_2_scale"
type: "Scale"
bottom: "inception_resnet_v2_a10_3x3_2"
top: "inception_resnet_v2_a10_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a10_3x3_2_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_3x3_2"
top: "inception_resnet_v2_a10_3x3_2"
}
layer {
name: "inception_resnet_v2_a10_3x3_3"
type: "Convolution"
bottom: "inception_resnet_v2_a10_3x3_2"
top: "inception_resnet_v2_a10_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "inception_resnet_v2_a10_3x3_3_bn"
type: "BatchNorm"
bottom: "inception_resnet_v2_a10_3x3_3"
top: "inception_resnet_v2_a10_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "inception_resnet_v2_a10_3x3_3_scale"
type: "Scale"
bottom: "inception_resnet_v2_a10_3x3_3"
top: "inception_resnet_v2_a10_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "inception_resnet_v2_a10_3x3_3_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_3x3_3"
top: "inception_resnet_v2_a10_3x3_3"
}
layer {
name: "inception_resnet_v2_a10_concat"
type: "Concat"
bottom: "inception_resnet_v2_a10_1x1"
bottom: "inception_resnet_v2_a10_3x3"
bottom: "inception_resnet_v2_a10_3x3_3"
top: "inception_resnet_v2_a10_concat"
}
layer {
name: "inception_resnet_v2_a10_up"
type: "Convolution"
bottom: "inception_resnet_v2_a10_concat"
top: "inception_resnet_v2_a10_up"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 320
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
bias_filler {
type: "constant"
value: 0.2
}
}
}
layer {
name: "inception_resnet_v2_a10_residual_eltwise"
type: "Eltwise"
bottom: "inception_resnet_v2_a9_residual_eltwise"
bottom: "inception_resnet_v2_a10_up"
top: "inception_resnet_v2_a10_residual_eltwise"
eltwise_param {
operation: SUM
coeff: 1
coeff: 0.17
}
}
layer {
name: "inception_resnet_v2_a10_residual_eltwise_relu"
type: "ReLU"
bottom: "inception_resnet_v2_a10_residual_eltwise"
top: "inception_resnet_v2_a10_residual_eltwise"
}
layer {
name: "reduction_a_3x3"
type: "Convolution"
bottom: "inception_resnet_v2_a10_residual_eltwise"
top: "reduction_a_3x3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 384
bias_term: false
pad: 0
kernel_size: 3
stride: 2
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "reduction_a_3x3_bn"
type: "BatchNorm"
bottom: "reduction_a_3x3"
top: "reduction_a_3x3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "reduction_a_3x3_scale"
type: "Scale"
bottom: "reduction_a_3x3"
top: "reduction_a_3x3"
scale_param {
bias_term: true
}
}
layer {
name: "reduction_a_3x3_relu"
type: "ReLU"
bottom: "reduction_a_3x3"
top: "reduction_a_3x3"
}
layer {
name: "reduction_a_3x3_2_reduce"
type: "Convolution"
bottom: "inception_resnet_v2_a10_residual_eltwise"
top: "reduction_a_3x3_2_reduce"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 256
bias_term: false
pad: 0
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "reduction_a_3x3_2_reduce_bn"
type: "BatchNorm"
bottom: "reduction_a_3x3_2_reduce"
top: "reduction_a_3x3_2_reduce"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "reduction_a_3x3_2_reduce_scale"
type: "Scale"
bottom: "reduction_a_3x3_2_reduce"
top: "reduction_a_3x3_2_reduce"
scale_param {
bias_term: true
}
}
layer {
name: "reduction_a_3x3_2_reduce_relu"
type: "ReLU"
bottom: "reduction_a_3x3_2_reduce"
top: "reduction_a_3x3_2_reduce"
}
layer {
name: "reduction_a_3x3_2"
type: "Convolution"
bottom: "reduction_a_3x3_2_reduce"
top: "reduction_a_3x3_2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 256
bias_term: false
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "reduction_a_3x3_2_bn"
type: "BatchNorm"
bottom: "reduction_a_3x3_2"
top: "reduction_a_3x3_2"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "reduction_a_3x3_2_scale"
type: "Scale"
bottom: "reduction_a_3x3_2"
top: "reduction_a_3x3_2"
scale_param {
bias_term: true
}
}
layer {
name: "reduction_a_3x3_2_relu"
type: "ReLU"
bottom: "reduction_a_3x3_2"
top: "reduction_a_3x3_2"
}
layer {
name: "reduction_a_3x3_3"
type: "Convolution"
bottom: "reduction_a_3x3_2"
top: "reduction_a_3x3_3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 384
bias_term: false
pad: 0
kernel_size: 3
stride: 2
weight_filler {
type: "xavier"
std: 0.01
}
}
}
layer {
name: "reduction_a_3x3_3_bn"
type: "BatchNorm"
bottom: "reduction_a_3x3_3"
top: "reduction_a_3x3_3"
batch_norm_param {
use_global_stats: true
eps: 0.001
}
}
layer {
name: "reduction_a_3x3_3_scale"
type: "Scale"
bottom: "reduction_a_3x3_3"
top: "reduction_a_3x3_3"
scale_param {
bias_term: true
}
}
layer {
name: "reduction_a_3x3_3_relu"
type: "ReLU"
bottom: "reduction_a_3x3_3"
top: "reduction_a_3x3_3"
}
layer {
name: "reduction_a_pool"
type: "Pooling"
bottom: "inception_resnet_v2_a10_residual_eltwise"
top: "reduction_a_pool"
pooling_param {
pool: MAX
kernel_size: 3
stride: 2
}
}
layer {