Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
567 lines (566 sloc) 7.91 KB
name: "DeepFace_set003_net"
layer {
name: "input"
type: "Input"
top: "data"
input_param {
shape {
dim: 100
dim: 1
dim: 128
dim: 128
}
}
}
layer {
name: "flip_data"
type: "Flip"
bottom: "data"
top: "flip_data"
}
layer {
name: "concat_data"
type: "Concat"
bottom: "data"
bottom: "flip_data"
top: "concat_data"
concat_param{
axis: 0
}
}
layer {
name: "conv1"
type: "Convolution"
bottom: "concat_data"
top: "conv1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 96
pad: 2
kernel_size: 5
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice1"
type: "Slice"
bottom: "conv1"
top: "slice1_1"
top: "slice1_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise1"
type: "Eltwise"
bottom: "slice1_1"
bottom: "slice1_2"
top: "eltwise1"
eltwise_param {
operation: MAX
}
}
layer {
name: "pool1"
type: "Pooling"
bottom: "eltwise1"
top: "pool1"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv2a"
type: "Convolution"
bottom: "pool1"
top: "conv2a"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 96
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice2a"
type: "Slice"
bottom: "conv2a"
top: "slice2a_1"
top: "slice2a_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise2a"
type: "Eltwise"
bottom: "slice2a_1"
bottom: "slice2a_2"
top: "eltwise2a"
eltwise_param {
operation: MAX
}
}
layer {
name: "conv2"
type: "Convolution"
bottom: "eltwise2a"
top: "conv2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 192
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice2"
type: "Slice"
bottom: "conv2"
top: "slice2_1"
top: "slice2_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise2"
type: "Eltwise"
bottom: "slice2_1"
bottom: "slice2_2"
top: "eltwise2"
eltwise_param {
operation: MAX
}
}
layer {
name: "pool2"
type: "Pooling"
bottom: "eltwise2"
top: "pool2"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv3a"
type: "Convolution"
bottom: "pool2"
top: "conv3a"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 192
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice3a"
type: "Slice"
bottom: "conv3a"
top: "slice3a_1"
top: "slice3a_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise3a"
type: "Eltwise"
bottom: "slice3a_1"
bottom: "slice3a_2"
top: "eltwise3a"
eltwise_param {
operation: MAX
}
}
layer {
name: "conv3"
type: "Convolution"
bottom: "eltwise3a"
top: "conv3"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 384
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice3"
type: "Slice"
bottom: "conv3"
top: "slice3_1"
top: "slice3_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise3"
type: "Eltwise"
bottom: "slice3_1"
bottom: "slice3_2"
top: "eltwise3"
eltwise_param {
operation: MAX
}
}
layer {
name: "pool3"
type: "Pooling"
bottom: "eltwise3"
top: "pool3"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv4a"
type: "Convolution"
bottom: "pool3"
top: "conv4a"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 384
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice4a"
type: "Slice"
bottom: "conv4a"
top: "slice4a_1"
top: "slice4a_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise4a"
type: "Eltwise"
bottom: "slice4a_1"
bottom: "slice4a_2"
top: "eltwise4a"
eltwise_param {
operation: MAX
}
}
layer {
name: "conv4"
type: "Convolution"
bottom: "eltwise4a"
top: "conv4"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice4"
type: "Slice"
bottom: "conv4"
top: "slice4_1"
top: "slice4_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise4"
type: "Eltwise"
bottom: "slice4_1"
bottom: "slice4_2"
top: "eltwise4"
eltwise_param {
operation: MAX
}
}
layer {
name: "conv5a"
type: "Convolution"
bottom: "eltwise4"
top: "conv5a"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
kernel_size: 1
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice5a"
type: "Slice"
bottom: "conv5a"
top: "slice5a_1"
top: "slice5a_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise5a"
type: "Eltwise"
bottom: "slice5a_1"
bottom: "slice5a_2"
top: "eltwise5a"
eltwise_param {
operation: MAX
}
}
layer {
name: "conv5"
type: "Convolution"
bottom: "eltwise5a"
top: "conv5"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
pad: 1
kernel_size: 3
stride: 1
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice5"
type: "Slice"
bottom: "conv5"
top: "slice5_1"
top: "slice5_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise5"
type: "Eltwise"
bottom: "slice5_1"
bottom: "slice5_2"
top: "eltwise5"
eltwise_param {
operation: MAX
}
}
layer {
name: "pool4"
type: "Pooling"
bottom: "eltwise5"
top: "pool4"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "fc1"
type: "InnerProduct"
bottom: "pool4"
top: "fc1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
inner_product_param {
num_output: 512
weight_filler {
type: "xavier"
}
bias_filler {
type: "constant"
value: 0.1
}
}
}
layer {
name: "slice_fc1"
type: "Slice"
bottom: "fc1"
top: "slice_fc1_1"
top: "slice_fc1_2"
slice_param {
slice_dim: 1
}
}
layer {
name: "etlwise_fc1"
type: "Eltwise"
bottom: "slice_fc1_1"
bottom: "slice_fc1_2"
top: "eltwise_fc1"
eltwise_param {
operation: MAX
}
}
layer {
name: "slice_eltwise_fc1"
type: "Slice"
bottom: "eltwise_fc1"
top: "eltwise_fc1_orig"
top: "eltwise_fc1_mirror"
slice_param {
axis: 0
}
}
layer {
name: "eltmax_eltwise_fc1"
type: "Eltwise"
bottom: "eltwise_fc1_orig"
bottom: "eltwise_fc1_mirror"
top: "eltmax_eltwise_fc1"
eltwise_param {
operation: MAX
}
}
#layer {
# name: "bn_eltmax_eltwise_fc1"
# type: "BatchNorm"
# bottom: "eltmax_eltwise_fc1"
# top: "eltmax_eltwise_fc1"
# batch_norm_param {
# disable_variance: false
# }
#}