1, 排除一部分可能性
DRML作者除了他们算法DRML的prototxt以外,还提供了做实验用的AlexNet,ConvNet的prototxt文件。于是,我们直接用AlexNet.prototxt来训练(注意要打开调试开关),打印训练时的网络数据,发现训练基本趋势正常。我们猜测:作者的多标签输入层和loss层,以及我们的数据处理部分,应该基本没有问题。那么为什么采用DRML.prototxt会出错呢?
2,怎样避免网络训练过程中出现全0的情况
zjp打印出来的DRML网络训练过程的数据,有时候是conv层异常,有时候是batchnorm层异常,有时候relu层异常,有时候是fc层异常,明显的异常就是全部变成0。为了不让训练过程网络数据出现全0的情况,zjp参考了ResNet的网络结构,在DRML原本的batchnorm层和relu层之间增加了scale层,每一个卷积层后面增加了一个batchnorm、一个scale、一个relu,并且删除DRML原本的batchnorm中的学习率参数。
再进行训练时查看参数变化过程则发现不会再出现全0 的情况,模型是否合适还需要实验验证。
以下是更改后的DRML.prototxt
name: "KailirLCNNet"
layer {
name: "data"
type: "MultilabelImageData"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
mirror: true
crop_size: 170
mean_file: "/home/hqp/DRML/face_plus/disfa_plus_2017_04_20_mean.binaryproto"
}
image_data_param {
source: "/home/hqp/DRML/face_plus/train.txt"
batch_size: 64
multilabel_num: 12
}
}
layer {
name: "data"
type: "MultilabelImageData"
top: "data"
top: "label"
include {
phase: TEST
}
transform_param {
mirror: false
crop_size: 170
mean_file: "/home/hqp/DRML/face_plus/disfa_plus_2017_04_20_mean.binaryproto"
}
image_data_param {
source: "/home/hqp/DRML/face_plus/val.txt"
batch_size: 64
multilabel_num: 12
}
}
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: 32
kernel_size: 11
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 0
}
}
}
layer{
name: "clipping"
type: "Box"
bottom: "conv1"
top: "out1"
top: "out2"
top: "out3"
top: "out4"
top: "out5"
top: "out6"
top: "out7"
top: "out8"
top: "out9"
top: "out10"
top: "out11"
top: "out12"
top: "out13"
top: "out14"
top: "out15"
top: "out16"
top: "out17"
top: "out18"
top: "out19"
top: "out20"
top: "out21"
top: "out22"
top: "out23"
top: "out24"
top: "out25"
top: "out26"
top: "out27"
top: "out28"
top: "out29"
top: "out30"
top: "out31"
top: "out32"
top: "out33"
top: "out34"
top: "out35"
top: "out36"
top: "out37"
top: "out38"
top: "out39"
top: "out40"
top: "out41"
top: "out42"
top: "out43"
top: "out44"
top: "out45"
top: "out46"
top: "out47"
top: "out48"
top: "out49"
top: "out50"
top: "out51"
top: "out52"
top: "out53"
top: "out54"
top: "out55"
top: "out56"
top: "out57"
top: "out58"
top: "out59"
top: "out60"
top: "out61"
top: "out62"
top: "out63"
top: "out64"
box_param{
width: 20
height: 20
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
xcoord: 0
xcoord: 20
xcoord: 40
xcoord: 60
xcoord: 80
xcoord: 100
xcoord: 120
xcoord: 140
ycoord: 0
ycoord: 0
ycoord: 0
ycoord: 0
ycoord: 0
ycoord: 0
ycoord: 0
ycoord: 0
ycoord: 20
ycoord: 20
ycoord: 20
ycoord: 20
ycoord: 20
ycoord: 20
ycoord: 20
ycoord: 20
ycoord: 40
ycoord: 40
ycoord: 40
ycoord: 40
ycoord: 40
ycoord: 40
ycoord: 40
ycoord: 40
ycoord: 60
ycoord: 60
ycoord: 60
ycoord: 60
ycoord: 60
ycoord: 60
ycoord: 60
ycoord: 60
ycoord: 80
ycoord: 80
ycoord: 80
ycoord: 80
ycoord: 80
ycoord: 80
ycoord: 80
ycoord: 80
ycoord: 100
ycoord: 100
ycoord: 100
ycoord: 100
ycoord: 100
ycoord: 100
ycoord: 100
ycoord: 100
ycoord: 120
ycoord: 120
ycoord: 120
ycoord: 120
ycoord: 120
ycoord: 120
ycoord: 120
ycoord: 120
ycoord: 140
ycoord: 140
ycoord: 140
ycoord: 140
ycoord: 140
ycoord: 140
ycoord: 140
ycoord: 140
}
}
layer{
type: "BatchNorm"
name:"bn1_1"
bottom:"out1"
top: "bn1_1"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_2"
bottom:"out2"
top: "bn1_2"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_3"
bottom:"out3"
top: "bn1_3"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_4"
bottom:"out4"
top: "bn1_4"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_5"
bottom:"out5"
top: "bn1_5"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_6"
bottom:"out6"
top: "bn1_6"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_7"
bottom:"out7"
top: "bn1_7"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_8"
bottom:"out8"
top: "bn1_8"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_9"
bottom:"out9"
top: "bn1_9"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_10"
bottom:"out10"
top: "bn1_10"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_11"
bottom:"out11"
top: "bn1_11"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_12"
bottom:"out12"
top: "bn1_12"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_13"
bottom:"out13"
top: "bn1_13"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_14"
bottom:"out14"
top: "bn1_14"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_15"
bottom:"out15"
top: "bn1_15"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_16"
bottom:"out16"
top: "bn1_16"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_17"
bottom:"out17"
top: "bn1_17"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_18"
bottom:"out18"
top: "bn1_18"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_19"
bottom:"out19"
top: "bn1_19"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_20"
bottom:"out20"
top: "bn1_20"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_21"
bottom:"out21"
top: "bn1_21"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_22"
bottom:"out22"
top: "bn1_22"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_23"
bottom:"out23"
top: "bn1_23"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_24"
bottom:"out24"
top: "bn1_24"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_25"
bottom:"out25"
top: "bn1_25"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_26"
bottom:"out26"
top: "bn1_26"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_27"
bottom:"out27"
top: "bn1_27"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_28"
bottom:"out28"
top: "bn1_28"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_29"
bottom:"out29"
top: "bn1_29"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_30"
bottom:"out30"
top: "bn1_30"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_31"
bottom:"out31"
top: "bn1_31"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_32"
bottom:"out32"
top: "bn1_32"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_33"
bottom:"out33"
top: "bn1_33"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_34"
bottom:"out34"
top: "bn1_34"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_35"
bottom:"out35"
top: "bn1_35"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_36"
bottom:"out36"
top: "bn1_36"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_37"
bottom:"out37"
top: "bn1_37"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_38"
bottom:"out38"
top: "bn1_38"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_39"
bottom:"out39"
top: "bn1_39"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_40"
bottom:"out40"
top: "bn1_40"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_41"
bottom:"out41"
top: "bn1_41"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_42"
bottom:"out42"
top: "bn1_42"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_43"
bottom:"out43"
top: "bn1_43"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_44"
bottom:"out44"
top: "bn1_44"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_45"
bottom:"out45"
top: "bn1_45"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_46"
bottom:"out46"
top: "bn1_46"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_47"
bottom:"out47"
top: "bn1_47"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_48"
bottom:"out48"
top: "bn1_48"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_49"
bottom:"out49"
top: "bn1_49"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_50"
bottom:"out50"
top: "bn1_50"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_51"
bottom:"out51"
top: "bn1_51"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_52"
bottom:"out52"
top: "bn1_52"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_53"
bottom:"out53"
top: "bn1_53"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_54"
bottom:"out54"
top: "bn1_54"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_55"
bottom:"out55"
top: "bn1_55"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_56"
bottom:"out56"
top: "bn1_56"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_57"
bottom:"out57"
top: "bn1_57"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_58"
bottom:"out58"
top: "bn1_58"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_59"
bottom:"out59"
top: "bn1_59"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_60"
bottom:"out60"
top: "bn1_60"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_61"
bottom:"out61"
top: "bn1_61"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_62"
bottom:"out62"
top: "bn1_62"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_63"
bottom:"out63"
top: "bn1_63"
batch_norm_param {
use_global_stats: false
}
}
layer{
type: "BatchNorm"
name:"bn1_64"
bottom:"out64"
top: "bn1_64"
batch_norm_param {
use_global_stats: false
}
}
layer {
bottom: "bn1_1"
top: "bn1_1"
name: "scale_out1"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_2"
top: "bn1_2"
name: "scale_out2"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_3"
top: "bn1_3"
name: "scale_out3"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_4"
top: "bn1_4"
name: "scale_out4"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_5"
top: "bn1_5"
name: "scale_out5"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_6"
top: "bn1_6"
name: "scale_out6"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_7"
top: "bn1_7"
name: "scale_out7"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_8"
top: "bn1_8"
name: "scale_out8"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_9"
top: "bn1_9"
name: "scale_out9"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_10"
top: "bn1_10"
name: "scale_out10"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_11"
top: "bn1_11"
name: "scale_out11"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_12"
top: "bn1_12"
name: "scale_out12"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_13"
top: "bn1_13"
name: "scale_out13"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_14"
top: "bn1_14"
name: "scale_out14"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_15"
top: "bn1_15"
name: "scale_out15"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_16"
top: "bn1_16"
name: "scale_out16"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_17"
top: "bn1_17"
name: "scale_out17"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_18"
top: "bn1_18"
name: "scale_out18"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_19"
top: "bn1_19"
name: "scale_out19"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_20"
top: "bn1_20"
name: "scale_out20"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_21"
top: "bn1_21"
name: "scale_out21"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_22"
top: "bn1_22"
name: "scale_out22"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_23"
top: "bn1_23"
name: "scale_out23"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_24"
top: "bn1_24"
name: "scale_out24"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_25"
top: "bn1_25"
name: "scale_out25"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_26"
top: "bn1_26"
name: "scale_out26"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_27"
top: "bn1_27"
name: "scale_out27"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_28"
top: "bn1_28"
name: "scale_out28"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_29"
top: "bn1_29"
name: "scale_out29"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_30"
top: "bn1_30"
name: "scale_out30"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_31"
top: "bn1_31"
name: "scale_out31"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_32"
top: "bn1_32"
name: "scale_out32"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_33"
top: "bn1_33"
name: "scale_out33"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_34"
top: "bn1_34"
name: "scale_out34"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_35"
top: "bn1_35"
name: "scale_out35"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_36"
top: "bn1_36"
name: "scale_out36"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_37"
top: "bn1_37"
name: "scale_out37"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_38"
top: "bn1_38"
name: "scale_out38"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_39"
top: "bn1_39"
name: "scale_out39"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_40"
top: "bn1_40"
name: "scale_out40"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_41"
top: "bn1_41"
name: "scale_out41"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_42"
top: "bn1_42"
name: "scale_out42"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_43"
top: "bn1_43"
name: "scale_out43"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_44"
top: "bn1_44"
name: "scale_out44"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_45"
top: "bn1_45"
name: "scale_out45"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_46"
top: "bn1_46"
name: "scale_out46"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_47"
top: "bn1_47"
name: "scale_out47"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_48"
top: "bn1_48"
name: "scale_out48"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_49"
top: "bn1_49"
name: "scale_out49"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_50"
top: "bn1_50"
name: "scale_out50"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_51"
top: "bn1_51"
name: "scale_out51"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_52"
top: "bn1_52"
name: "scale_out52"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_53"
top: "bn1_53"
name: "scale_out53"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_54"
top: "bn1_54"
name: "scale_out54"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_55"
top: "bn1_55"
name: "scale_out55"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_56"
top: "bn1_56"
name: "scale_out56"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_57"
top: "bn1_57"
name: "scale_out57"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_58"
top: "bn1_58"
name: "scale_out58"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_59"
top: "bn1_59"
name: "scale_out59"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_60"
top: "bn1_60"
name: "scale_out60"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_61"
top: "bn1_61"
name: "scale_out61"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_62"
top: "bn1_62"
name: "scale_out62"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_63"
top: "bn1_63"
name: "scale_out63"
type: "Scale"
scale_param {
bias_term: true
}
}
layer {
bottom: "bn1_64"
top: "bn1_64"
name: "scale_out64"
type: "Scale"
scale_param {
bias_term: true
}
}
layer{
type: "ReLU"
name:"relu1_1"
bottom:"bn1_1"
top:"bn1_1"
}
layer{
type: "ReLU"
name:"relu1_2"
bottom:"bn1_2"
top:"bn1_2"
}
layer{
type: "ReLU"
name:"relu1_3"
bottom:"bn1_3"
top:"bn1_3"
}
layer{
type: "ReLU"
name:"relu1_4"
bottom:"bn1_4"
top:"bn1_4"
}
layer{
type: "ReLU"
name:"relu1_5"
bottom:"bn1_5"
top:"bn1_5"
}
layer{
type: "ReLU"
name:"relu1_6"
bottom:"bn1_6"
top:"bn1_6"
}
layer{
type: "ReLU"
name:"relu1_7"
bottom:"bn1_7"
top:"bn1_7"
}
layer{
type: "ReLU"
name:"relu1_8"
bottom:"bn1_8"
top:"bn1_8"
}
layer{
type: "ReLU"
name:"relu1_9"
bottom:"bn1_9"
top:"bn1_9"
}
layer{
type: "ReLU"
name:"relu1_10"
bottom:"bn1_10"
top:"bn1_10"
}
layer{
type: "ReLU"
name:"relu1_11"
bottom:"bn1_11"
top:"bn1_11"
}
layer{
type: "ReLU"
name:"relu1_12"
bottom:"bn1_12"
top:"bn1_12"
}
layer{
type: "ReLU"
name:"relu1_13"
bottom:"bn1_13"
top:"bn1_13"
}
layer{
type: "ReLU"
name:"relu1_14"
bottom:"bn1_14"
top:"bn1_14"
}
layer{
type: "ReLU"
name:"relu1_15"
bottom:"bn1_15"
top:"bn1_15"
}
layer{
type: "ReLU"
name:"relu1_16"
bottom:"bn1_16"
top:"bn1_16"
}
layer{
type: "ReLU"
name:"relu1_17"
bottom:"bn1_17"
top:"bn1_17"
}
layer{
type: "ReLU"
name:"relu1_18"
bottom:"bn1_18"
top:"bn1_18"
}
layer{
type: "ReLU"
name:"relu1_19"
bottom:"bn1_19"
top:"bn1_19"
}
layer{
type: "ReLU"
name:"relu1_20"
bottom:"bn1_20"
top:"bn1_20"
}
layer{
type: "ReLU"
name:"relu1_21"
bottom:"bn1_21"
top:"bn1_21"
}
layer{
type: "ReLU"
name:"relu1_22"
bottom:"bn1_22"
top:"bn1_22"
}
layer{
type: "ReLU"
name:"relu1_23"
bottom:"bn1_23"
top:"bn1_23"
}
layer{
type: "ReLU"
name:"relu1_24"
bottom:"bn1_24"
top:"bn1_24"
}
layer{
type: "ReLU"
name:"relu1_25"
bottom:"bn1_25"
top:"bn1_25"
}
layer{
type: "ReLU"
name:"relu1_26"
bottom:"bn1_26"
top:"bn1_26"
}
layer{
type: "ReLU"
name:"relu1_27"
bottom:"bn1_27"
top:"bn1_27"
}
layer{
type: "ReLU"
name:"relu1_28"
bottom:"bn1_28"
top:"bn1_28"
}
layer{
type: "ReLU"
name:"relu1_29"
bottom:"bn1_29"
top:"bn1_29"
}
layer{
type: "ReLU"
name:"relu1_30"
bottom:"bn1_30"
top:"bn1_30"
}
layer{
type: "ReLU"
name:"relu1_31"
bottom:"bn1_31"
top:"bn1_31"
}
layer{
type: "ReLU"
name:"relu1_32"
bottom:"bn1_32"
top:"bn1_32"
}
layer{
type: "ReLU"
name:"relu1_33"
bottom:"bn1_33"
top:"bn1_33"
}
layer{
type: "ReLU"
name:"relu1_34"
bottom:"bn1_34"
top:"bn1_34"
}
layer{
type: "ReLU"
name:"relu1_35"
bottom:"bn1_35"
top:"bn1_35"
}
layer{
type: "ReLU"
name:"relu1_36"
bottom:"bn1_36"
top:"bn1_36"
}
layer{
type: "ReLU"
name:"relu1_37"
bottom:"bn1_37"
top:"bn1_37"
}
layer{
type: "ReLU"
name:"relu1_38"
bottom:"bn1_38"
top:"bn1_38"
}
layer{
type: "ReLU"
name:"relu1_39"
bottom:"bn1_39"
top:"bn1_39"
}
layer{
type: "ReLU"
name:"relu1_40"
bottom:"bn1_40"
top:"bn1_40"
}
layer{
type: "ReLU"
name:"relu1_41"
bottom:"bn1_41"
top:"bn1_41"
}
layer{
type: "ReLU"
name:"relu1_42"
bottom:"bn1_42"
top:"bn1_42"
}
layer{
type: "ReLU"
name:"relu1_43"
bottom:"bn1_43"
top:"bn1_43"
}
layer{
type: "ReLU"
name:"relu1_44"
bottom:"bn1_44"
top:"bn1_44"
}
layer{
type: "ReLU"
name:"relu1_45"
bottom:"bn1_45"
top:"bn1_45"
}
layer{
type: "ReLU"
name:"relu1_46"
bottom:"bn1_46"
top:"bn1_46"
}
layer{
type: "ReLU"
name:"relu1_47"
bottom:"bn1_47"
top:"bn1_47"
}
layer{
type: "ReLU"
name:"relu1_48"
bottom:"bn1_48"
top:"bn1_48"
}
layer{
type: "ReLU"
name:"relu1_49"
bottom:"bn1_49"
top:"bn1_49"
}
layer{
type: "ReLU"
name:"relu1_50"
bottom:"bn1_50"
top:"bn1_50"
}
layer{
type: "ReLU"
name:"relu1_51"
bottom:"bn1_51"
top:"bn1_51"
}
layer{
type: "ReLU"
name:"relu1_52"
bottom:"bn1_52"
top:"bn1_52"
}
layer{
type: "ReLU"
name:"relu1_53"
bottom:"bn1_53"
top:"bn1_53"
}
layer{
type: "ReLU"
name:"relu1_54"
bottom:"bn1_54"
top:"bn1_54"
}
layer{
type: "ReLU"
name:"relu1_55"
bottom:"bn1_55"
top:"bn1_55"
}
layer{
type: "ReLU"
name:"relu1_56"
bottom:"bn1_56"
top:"bn1_56"
}
layer{
type: "ReLU"
name:"relu1_57"
bottom:"bn1_57"
top:"bn1_57"
}
layer{
type: "ReLU"
name:"relu1_58"
bottom:"bn1_58"
top:"bn1_58"
}
layer{
type: "ReLU"
name:"relu1_59"
bottom:"bn1_59"
top:"bn1_59"
}
layer{
type: "ReLU"
name:"relu1_60"
bottom:"bn1_60"
top:"bn1_60"
}
layer{
type: "ReLU"
name:"relu1_61"
bottom:"bn1_61"
top:"bn1_61"
}
layer{
type: "ReLU"
name:"relu1_62"
bottom:"bn1_62"
top:"bn1_62"
}
layer{
type: "ReLU"
name:"relu1_63"
bottom:"bn1_63"
top:"bn1_63"
}
layer{
type: "ReLU"
name:"relu1_64"
bottom:"bn1_64"
top:"bn1_64"
}
layer{
type: "Convolution"
name:"conv1_1"
bottom:"bn1_1"
top:"res1_1"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_2"
bottom:"bn1_2"
top:"res1_2"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_3"
bottom:"bn1_3"
top:"res1_3"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_4"
bottom:"bn1_4"
top:"res1_4"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_5"
bottom:"bn1_5"
top:"res1_5"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_6"
bottom:"bn1_6"
top:"res1_6"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_7"
bottom:"bn1_7"
top:"res1_7"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_8"
bottom:"bn1_8"
top:"res1_8"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_9"
bottom:"bn1_9"
top:"res1_9"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_10"
bottom:"bn1_10"
top:"res1_10"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_11"
bottom:"bn1_11"
top:"res1_11"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_12"
bottom:"bn1_12"
top:"res1_12"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_13"
bottom:"bn1_13"
top:"res1_13"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_14"
bottom:"bn1_14"
top:"res1_14"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_15"
bottom:"bn1_15"
top:"res1_15"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_16"
bottom:"bn1_16"
top:"res1_16"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_17"
bottom:"bn1_17"
top:"res1_17"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_18"
bottom:"bn1_18"
top:"res1_18"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_19"
bottom:"bn1_19"
top:"res1_19"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 1
}
}
}
layer{
type: "Convolution"
name:"conv1_20"
bottom:"bn1_20"
top:"res1_20"
param{
lr_mult: 1
decay_mult: 1
}
param{
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 32
kernel_size: 3
pad: 1
weight_filler {
type: "gaussian"
std: