name: "PR_Lightweight11LayerNet" input: 'data' input_shape { dim: 1 dim: 1 dim: 32 dim: 512 } #-----------------------------Conv1_1--------------------------------- layer { name: "conv1_1" type: "Convolution" bottom: "data" top: "conv1_1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 50 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu1_1" type: "ReLU" bottom: "conv1_1" top: "conv1_1" } #-----------------------------Conv1_2--------------------------------- layer { name: "conv1b_3x3" type: "Convolution" bottom: "conv1_1" top: "conv1b_3x3" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 48 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu1b_3x3" type: "ReLU" bottom: "conv1b_3x3" top: "conv1b_3x3" } layer { name: "conv1b_1x1" type: "Convolution" bottom: "conv1_1" top: "conv1b_1x1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 48 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_conv1b_1x1" type: "ReLU" bottom: "conv1b_1x1" top: "conv1b_1x1" } layer { name: "conv1b_concat" type: "Concat" bottom: "conv1b_3x3" bottom: "conv1b_1x1" top: "conv1_2" } #-----------------------------drop1_2--------------------------------- # layer { # name: "drop1_2" type: "Dropout" # bottom: "conv1_2" top: "conv1_2" # dropout_param { dropout_ratio: 0.1 } # } #-----------------------------Pooling1------------------------------- layer { name: "pool1" type: "Pooling" bottom: "conv1_2" top: "pool1" pooling_param { pool: MAX kernel_size: 2 stride: 2 } } #-----------------------------Conv2_1--------------------------------- layer { name: "conv2a_3x3" type: "Convolution" bottom: "pool1" top: "conv2a_3x3" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 80 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu2a_3x3" type: "ReLU" bottom: "conv2a_3x3" top: "conv2a_3x3" } layer { name: "conv2a_1x1" type: "Convolution" bottom: "pool1" top: "conv2a_1x1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 80 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_conv2a_1x1" type: "ReLU" bottom: "conv2a_1x1" top: "conv2a_1x1" } layer { name: "conv2a_concat" type: "Concat" bottom: "conv2a_3x3" bottom: "conv2a_1x1" top: "conv2_1" } #-----------------------------drop1_1--------------------------------- # layer { # name: "drop2_1" type: "Dropout" # bottom: "conv2_1" top: "conv2_1" # dropout_param { dropout_ratio: 0.1 } # } #-----------------------------Conv2_2--------------------------------- layer { name: "compress2b" type: "Convolution" bottom: "conv2_1" top: "compress2b" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 100 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_compress2b" type: "ReLU" bottom: "compress2b" top: "compress2b" } layer { name: "conv2b_3x3" type: "Convolution" bottom: "compress2b" top: "conv2b_3x3" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 96 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_conv2b_3x3" type: "ReLU" bottom: "conv2b_3x3" top: "conv2b_3x3" } layer { name: "conv2b_1x1" type: "Convolution" bottom: "compress2b" top: "conv2b_1x1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 96 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_conv2b_1x1" type: "ReLU" bottom: "conv2b_1x1" top: "conv2b_1x1" } layer { name: "conv2b_concat" type: "Concat" bottom: "conv2b_3x3" bottom: "conv2b_1x1" top: "conv2_2" } #-----------------------------drop2_2--------------------------------- # layer { # name: "drop2_2" type: "Dropout" # bottom: "conv2_2" top: "conv2_2" # dropout_param { dropout_ratio: 0.2 } # } #-----------------------------Pooling2------------------------------- layer { name: "pool2" type: "Pooling" bottom: "conv2_2" top: "pool2" pooling_param { pool: MAX kernel_size: 2 stride: 2 } } #-----------------------------Conv3_1---------------------------------- layer { name: "compress3a" type: "Convolution" bottom: "pool2" top: "compress3a" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 100 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_compress3a" type: "ReLU" bottom: "compress3a" top: "compress3a" } layer { name: "conv3_1" type: "Convolution" bottom: "compress3a" top: "conv3_1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 250 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu3_1" type: "ReLU" bottom: "conv3_1" top: "conv3_1" } #-----------------------------drop3_1--------------------------------- # layer { # name: "drop3_1" type: "Dropout" # bottom: "conv3_1" top: "conv3_1" # dropout_param { dropout_ratio: 0.2 } # } #-----------------------------Conv3_2---------------------------------- layer { name: "compress3b" type: "Convolution" bottom: "conv3_1" top: "compress3b" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 100 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_compress3b" type: "ReLU" bottom: "compress3b" top: "compress3b" } layer { name: "conv3_2" type: "Convolution" bottom: "compress3b" top: "conv3_2" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 300 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu3_2" type: "ReLU" bottom: "conv3_2" top: "conv3_2" } #-----------------------------drop3_2--------------------------------- # layer { # name: "drop3_2" type: "Dropout" # bottom: "conv3_2" top: "conv3_2" # dropout_param { dropout_ratio: 0.3 } # } #-----------------------------Pooling3------------------------------- layer { name: "pool3" type: "Pooling" bottom: "conv3_2" top: "pool3" pooling_param { pool: MAX kernel_size: 2 stride: 2 } } #-----------------------------Conv4_1---------------------------------- layer { name: "compress4a" type: "Convolution" bottom: "pool3" top: "compress4a" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 150 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_compress4a" type: "ReLU" bottom: "compress4a" top: "compress4a" } layer { name: "conv4_1" type: "Convolution" bottom: "compress4a" top: "conv4_1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 350 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu4_1" type: "ReLU" bottom: "conv4_1" top: "conv4_1" } #-----------------------------drop4_1--------------------------------- # layer { # name: "drop4_1" type: "Dropout" # bottom: "conv4_1" top: "conv4_1" # dropout_param { dropout_ratio: 0.3 } # } #-----------------------------Conv4_2---------------------------------- layer { name: "compress4b" type: "Convolution" bottom: "conv4_1" top: "compress4b" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 150 kernel_size: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu_compress4b" type: "ReLU" bottom: "compress4b" top: "compress4b" } layer { name: "conv4_2" type: "Convolution" bottom: "compress4b" top: "conv4_2" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 400 kernel_size: 3 pad: 1 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } layer { name: "relu4_2" type: "ReLU" bottom: "conv4_2" top: "conv4_2" } #-----------------------------drop4_2--------------------------------- # layer { # name: "drop4_2" type: "Dropout" # bottom: "conv4_2" top: "conv4_2" # dropout_param { dropout_ratio: 0.4 } # } #-----------------------------yao------------------------------- #-----------------------------yao------------------------------- #-----------------------------conv 4------------------------------- layer { name: "conv0_Yao" type: "Convolution" bottom: "conv4_2" top: "conv0_Yao" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 196 kernel_size: 4 pad_w : 2 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } #layer { # name: "dropYao_0" type: "Dropout" # bottom: "conv0_Yao" top: "conv0_Yao" # dropout_param { dropout_ratio: 0.1 } #} layer { name: "relu_Yao_0" type: "ReLU" bottom: "conv0_Yao" top: "conv0_Yao" } #-----------------------------yao------------------------------- #-----------------------------yao------------------------------- #-----------------------------conv 1------------------------------- layer { name: "conv_1_Yao" type: "Convolution" bottom: "conv0_Yao" top: "conv_1_Yao" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 128 kernel_size: 1 pad: 0 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } #layer { # name: "dropYao_1" type: "Dropout" # bottom: "conv_1_Yao" top: "conv_1_Yao" # dropout_param { dropout_ratio: 0.1 } #} layer { name: "relu_Yao_1" type: "ReLU" bottom: "conv_1_Yao" top: "conv_1_Yao" } #-----------------------------yao------------------------------- #-----------------------------yao------------------------------- #-----------------------------conv 1------------------------------- layer { name: "conv_end_yao_6Euro_1" type: "Convolution" bottom: "conv_1_Yao" top: "conv_end_yao_6Euro_1" param { lr_mult: 1 decay_mult: 1 } param { lr_mult: 1 decay_mult: 0 } convolution_param { num_output: 212 kernel_size: 1 pad: 0 weight_filler { type: "xavier" } bias_filler { type: "constant" } } } #------------------------------------------------------------------------ #layer { # name: "transpose" # top: "transpose" # bottom: ""conv_end_yao_6Euro_1"" # type: "Transpose" # transpose_param { # dim: 3 # dim: 2 # dim: 0 # dim: 1 # } #} #layer { # name: "transpose" # type: "Permute" # bottom: "conv_end_yao_6Euro_1" # top: "transpose" # permute_param{ order: 3 order: 2 order: 0 order:1} #} #layer { # name: "reshape" # type: "Reshape" # bottom: "transpose" # top: "cnn_end" # reshape_param { # shape { dim: -1 } # axis: 1 # num_axes: 2 # } #} #layer { # name: "permute" # type: "Permute" # bottom: "fc3_reshape" # top: "fc3_permute" # permute_param{ order: 1 order: 0 order: 2 } #}