diff --git a/.gitignore b/.gitignore index e97b923..acb4f29 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,7 @@ save/* logs/* dump/* + ckpts/* + +*.pyc diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..c8fd620 --- /dev/null +++ b/__init__.py @@ -0,0 +1,3 @@ +from .inceptionresnetv2.pytorch_load import inceptionresnetv2 +from .inceptionv4.pytorch_load import inceptionv4 +from .bninception.pytorch_load import BNInception, InceptionV3 diff --git a/bninception/__init__.py b/bninception/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/bninception/bn_inception.yaml b/bninception/bn_inception.yaml new file mode 100644 index 0000000..ca10ff1 --- /dev/null +++ b/bninception/bn_inception.yaml @@ -0,0 +1,558 @@ +inputs: [] +layers: +- attrs: {kernel_size: 7, num_output: 64, pad: 3, stride: 2} + expr: conv1_7x7_s2<=Convolution<=data + id: conv1_7x7_s2 +- attrs: {frozen: true} + expr: conv1_7x7_s2_bn<=BN<=conv1_7x7_s2 + id: conv1_7x7_s2_bn +- {expr: conv1_7x7_s2_bn<=ReLU<=conv1_7x7_s2_bn, id: conv1_relu_7x7} +- attrs: {kernel_size: 3, mode: max, stride: 2} + expr: pool1_3x3_s2<=Pooling<=conv1_7x7_s2_bn + id: pool1_3x3_s2 +- attrs: {kernel_size: 1, num_output: 64} + expr: conv2_3x3_reduce<=Convolution<=pool1_3x3_s2 + id: conv2_3x3_reduce +- attrs: {frozen: true} + expr: conv2_3x3_reduce_bn<=BN<=conv2_3x3_reduce + id: conv2_3x3_reduce_bn +- {expr: conv2_3x3_reduce_bn<=ReLU<=conv2_3x3_reduce_bn, id: conv2_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 192, pad: 1} + expr: conv2_3x3<=Convolution<=conv2_3x3_reduce_bn + id: conv2_3x3 +- attrs: {frozen: true} + expr: conv2_3x3_bn<=BN<=conv2_3x3 + id: conv2_3x3_bn +- {expr: conv2_3x3_bn<=ReLU<=conv2_3x3_bn, id: conv2_relu_3x3} +- attrs: {kernel_size: 3, mode: max, stride: 2} + expr: pool2_3x3_s2<=Pooling<=conv2_3x3_bn + id: pool2_3x3_s2 +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3a_1x1<=Convolution<=pool2_3x3_s2 + id: inception_3a_1x1 +- attrs: {frozen: true} + expr: inception_3a_1x1_bn<=BN<=inception_3a_1x1 + id: inception_3a_1x1_bn +- {expr: inception_3a_1x1_bn<=ReLU<=inception_3a_1x1_bn, id: inception_3a_relu_1x1} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3a_3x3_reduce<=Convolution<=pool2_3x3_s2 + id: inception_3a_3x3_reduce +- attrs: {frozen: true} + expr: inception_3a_3x3_reduce_bn<=BN<=inception_3a_3x3_reduce + id: inception_3a_3x3_reduce_bn +- {expr: inception_3a_3x3_reduce_bn<=ReLU<=inception_3a_3x3_reduce_bn, id: inception_3a_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 64, pad: 1} + expr: inception_3a_3x3<=Convolution<=inception_3a_3x3_reduce_bn + id: inception_3a_3x3 +- attrs: {frozen: true} + expr: inception_3a_3x3_bn<=BN<=inception_3a_3x3 + id: inception_3a_3x3_bn +- {expr: inception_3a_3x3_bn<=ReLU<=inception_3a_3x3_bn, id: inception_3a_relu_3x3} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3a_double_3x3_reduce<=Convolution<=pool2_3x3_s2 + id: inception_3a_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_3a_double_3x3_reduce_bn<=BN<=inception_3a_double_3x3_reduce + id: inception_3a_double_3x3_reduce_bn +- {expr: inception_3a_double_3x3_reduce_bn<=ReLU<=inception_3a_double_3x3_reduce_bn, + id: inception_3a_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_3a_double_3x3_1<=Convolution<=inception_3a_double_3x3_reduce_bn + id: inception_3a_double_3x3_1 +- attrs: {frozen: true} + expr: inception_3a_double_3x3_1_bn<=BN<=inception_3a_double_3x3_1 + id: inception_3a_double_3x3_1_bn +- {expr: inception_3a_double_3x3_1_bn<=ReLU<=inception_3a_double_3x3_1_bn, id: inception_3a_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_3a_double_3x3_2<=Convolution<=inception_3a_double_3x3_1_bn + id: inception_3a_double_3x3_2 +- attrs: {frozen: true} + expr: inception_3a_double_3x3_2_bn<=BN<=inception_3a_double_3x3_2 + id: inception_3a_double_3x3_2_bn +- {expr: inception_3a_double_3x3_2_bn<=ReLU<=inception_3a_double_3x3_2_bn, id: inception_3a_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_3a_pool<=Pooling<=pool2_3x3_s2 + id: inception_3a_pool +- attrs: {kernel_size: 1, num_output: 32} + expr: inception_3a_pool_proj<=Convolution<=inception_3a_pool + id: inception_3a_pool_proj +- attrs: {frozen: true} + expr: inception_3a_pool_proj_bn<=BN<=inception_3a_pool_proj + id: inception_3a_pool_proj_bn +- {expr: inception_3a_pool_proj_bn<=ReLU<=inception_3a_pool_proj_bn, id: inception_3a_relu_pool_proj} +- {expr: 'inception_3a_output<=Concat<=inception_3a_1x1_bn,inception_3a_3x3_bn,inception_3a_double_3x3_2_bn,inception_3a_pool_proj_bn', + id: inception_3a_output} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3b_1x1<=Convolution<=inception_3a_output + id: inception_3b_1x1 +- attrs: {frozen: true} + expr: inception_3b_1x1_bn<=BN<=inception_3b_1x1 + id: inception_3b_1x1_bn +- {expr: inception_3b_1x1_bn<=ReLU<=inception_3b_1x1_bn, id: inception_3b_relu_1x1} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3b_3x3_reduce<=Convolution<=inception_3a_output + id: inception_3b_3x3_reduce +- attrs: {frozen: true} + expr: inception_3b_3x3_reduce_bn<=BN<=inception_3b_3x3_reduce + id: inception_3b_3x3_reduce_bn +- {expr: inception_3b_3x3_reduce_bn<=ReLU<=inception_3b_3x3_reduce_bn, id: inception_3b_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_3b_3x3<=Convolution<=inception_3b_3x3_reduce_bn + id: inception_3b_3x3 +- attrs: {frozen: true} + expr: inception_3b_3x3_bn<=BN<=inception_3b_3x3 + id: inception_3b_3x3_bn +- {expr: inception_3b_3x3_bn<=ReLU<=inception_3b_3x3_bn, id: inception_3b_relu_3x3} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3b_double_3x3_reduce<=Convolution<=inception_3a_output + id: inception_3b_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_3b_double_3x3_reduce_bn<=BN<=inception_3b_double_3x3_reduce + id: inception_3b_double_3x3_reduce_bn +- {expr: inception_3b_double_3x3_reduce_bn<=ReLU<=inception_3b_double_3x3_reduce_bn, + id: inception_3b_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_3b_double_3x3_1<=Convolution<=inception_3b_double_3x3_reduce_bn + id: inception_3b_double_3x3_1 +- attrs: {frozen: true} + expr: inception_3b_double_3x3_1_bn<=BN<=inception_3b_double_3x3_1 + id: inception_3b_double_3x3_1_bn +- {expr: inception_3b_double_3x3_1_bn<=ReLU<=inception_3b_double_3x3_1_bn, id: inception_3b_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_3b_double_3x3_2<=Convolution<=inception_3b_double_3x3_1_bn + id: inception_3b_double_3x3_2 +- attrs: {frozen: true} + expr: inception_3b_double_3x3_2_bn<=BN<=inception_3b_double_3x3_2 + id: inception_3b_double_3x3_2_bn +- {expr: inception_3b_double_3x3_2_bn<=ReLU<=inception_3b_double_3x3_2_bn, id: inception_3b_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_3b_pool<=Pooling<=inception_3a_output + id: inception_3b_pool +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3b_pool_proj<=Convolution<=inception_3b_pool + id: inception_3b_pool_proj +- attrs: {frozen: true} + expr: inception_3b_pool_proj_bn<=BN<=inception_3b_pool_proj + id: inception_3b_pool_proj_bn +- {expr: inception_3b_pool_proj_bn<=ReLU<=inception_3b_pool_proj_bn, id: inception_3b_relu_pool_proj} +- {expr: 'inception_3b_output<=Concat<=inception_3b_1x1_bn,inception_3b_3x3_bn,inception_3b_double_3x3_2_bn,inception_3b_pool_proj_bn', + id: inception_3b_output} +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_3c_3x3_reduce<=Convolution<=inception_3b_output + id: inception_3c_3x3_reduce +- attrs: {frozen: true} + expr: inception_3c_3x3_reduce_bn<=BN<=inception_3c_3x3_reduce + id: inception_3c_3x3_reduce_bn +- {expr: inception_3c_3x3_reduce_bn<=ReLU<=inception_3c_3x3_reduce_bn, id: inception_3c_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 160, pad: 1, stride: 2} + expr: inception_3c_3x3<=Convolution<=inception_3c_3x3_reduce_bn + id: inception_3c_3x3 +- attrs: {frozen: true} + expr: inception_3c_3x3_bn<=BN<=inception_3c_3x3 + id: inception_3c_3x3_bn +- {expr: inception_3c_3x3_bn<=ReLU<=inception_3c_3x3_bn, id: inception_3c_relu_3x3} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_3c_double_3x3_reduce<=Convolution<=inception_3b_output + id: inception_3c_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_3c_double_3x3_reduce_bn<=BN<=inception_3c_double_3x3_reduce + id: inception_3c_double_3x3_reduce_bn +- {expr: inception_3c_double_3x3_reduce_bn<=ReLU<=inception_3c_double_3x3_reduce_bn, + id: inception_3c_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_3c_double_3x3_1<=Convolution<=inception_3c_double_3x3_reduce_bn + id: inception_3c_double_3x3_1 +- attrs: {frozen: true} + expr: inception_3c_double_3x3_1_bn<=BN<=inception_3c_double_3x3_1 + id: inception_3c_double_3x3_1_bn +- {expr: inception_3c_double_3x3_1_bn<=ReLU<=inception_3c_double_3x3_1_bn, id: inception_3c_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 96, pad: 1, stride: 2} + expr: inception_3c_double_3x3_2<=Convolution<=inception_3c_double_3x3_1_bn + id: inception_3c_double_3x3_2 +- attrs: {frozen: true} + expr: inception_3c_double_3x3_2_bn<=BN<=inception_3c_double_3x3_2 + id: inception_3c_double_3x3_2_bn +- {expr: inception_3c_double_3x3_2_bn<=ReLU<=inception_3c_double_3x3_2_bn, id: inception_3c_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: max, stride: 2} + expr: inception_3c_pool<=Pooling<=inception_3b_output + id: inception_3c_pool +- {expr: 'inception_3c_output<=Concat<=inception_3c_3x3_bn,inception_3c_double_3x3_2_bn,inception_3c_pool', + id: inception_3c_output} +- attrs: {kernel_size: 1, num_output: 224} + expr: inception_4a_1x1<=Convolution<=inception_3c_output + id: inception_4a_1x1 +- attrs: {frozen: true} + expr: inception_4a_1x1_bn<=BN<=inception_4a_1x1 + id: inception_4a_1x1_bn +- {expr: inception_4a_1x1_bn<=ReLU<=inception_4a_1x1_bn, id: inception_4a_relu_1x1} +- attrs: {kernel_size: 1, num_output: 64} + expr: inception_4a_3x3_reduce<=Convolution<=inception_3c_output + id: inception_4a_3x3_reduce +- attrs: {frozen: true} + expr: inception_4a_3x3_reduce_bn<=BN<=inception_4a_3x3_reduce + id: inception_4a_3x3_reduce_bn +- {expr: inception_4a_3x3_reduce_bn<=ReLU<=inception_4a_3x3_reduce_bn, id: inception_4a_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 96, pad: 1} + expr: inception_4a_3x3<=Convolution<=inception_4a_3x3_reduce_bn + id: inception_4a_3x3 +- attrs: {frozen: true} + expr: inception_4a_3x3_bn<=BN<=inception_4a_3x3 + id: inception_4a_3x3_bn +- {expr: inception_4a_3x3_bn<=ReLU<=inception_4a_3x3_bn, id: inception_4a_relu_3x3} +- attrs: {kernel_size: 1, num_output: 96} + expr: inception_4a_double_3x3_reduce<=Convolution<=inception_3c_output + id: inception_4a_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_4a_double_3x3_reduce_bn<=BN<=inception_4a_double_3x3_reduce + id: inception_4a_double_3x3_reduce_bn +- {expr: inception_4a_double_3x3_reduce_bn<=ReLU<=inception_4a_double_3x3_reduce_bn, + id: inception_4a_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 128, pad: 1} + expr: inception_4a_double_3x3_1<=Convolution<=inception_4a_double_3x3_reduce_bn + id: inception_4a_double_3x3_1 +- attrs: {frozen: true} + expr: inception_4a_double_3x3_1_bn<=BN<=inception_4a_double_3x3_1 + id: inception_4a_double_3x3_1_bn +- {expr: inception_4a_double_3x3_1_bn<=ReLU<=inception_4a_double_3x3_1_bn, id: inception_4a_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 128, pad: 1} + expr: inception_4a_double_3x3_2<=Convolution<=inception_4a_double_3x3_1_bn + id: inception_4a_double_3x3_2 +- attrs: {frozen: true} + expr: inception_4a_double_3x3_2_bn<=BN<=inception_4a_double_3x3_2 + id: inception_4a_double_3x3_2_bn +- {expr: inception_4a_double_3x3_2_bn<=ReLU<=inception_4a_double_3x3_2_bn, id: inception_4a_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_4a_pool<=Pooling<=inception_3c_output + id: inception_4a_pool +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4a_pool_proj<=Convolution<=inception_4a_pool + id: inception_4a_pool_proj +- attrs: {frozen: true} + expr: inception_4a_pool_proj_bn<=BN<=inception_4a_pool_proj + id: inception_4a_pool_proj_bn +- {expr: inception_4a_pool_proj_bn<=ReLU<=inception_4a_pool_proj_bn, id: inception_4a_relu_pool_proj} +- {expr: 'inception_4a_output<=Concat<=inception_4a_1x1_bn,inception_4a_3x3_bn,inception_4a_double_3x3_2_bn,inception_4a_pool_proj_bn', + id: inception_4a_output} +- attrs: {kernel_size: 1, num_output: 192} + expr: inception_4b_1x1<=Convolution<=inception_4a_output + id: inception_4b_1x1 +- attrs: {frozen: true} + expr: inception_4b_1x1_bn<=BN<=inception_4b_1x1 + id: inception_4b_1x1_bn +- {expr: inception_4b_1x1_bn<=ReLU<=inception_4b_1x1_bn, id: inception_4b_relu_1x1} +- attrs: {kernel_size: 1, num_output: 96} + expr: inception_4b_3x3_reduce<=Convolution<=inception_4a_output + id: inception_4b_3x3_reduce +- attrs: {frozen: true} + expr: inception_4b_3x3_reduce_bn<=BN<=inception_4b_3x3_reduce + id: inception_4b_3x3_reduce_bn +- {expr: inception_4b_3x3_reduce_bn<=ReLU<=inception_4b_3x3_reduce_bn, id: inception_4b_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 128, pad: 1} + expr: inception_4b_3x3<=Convolution<=inception_4b_3x3_reduce_bn + id: inception_4b_3x3 +- attrs: {frozen: true} + expr: inception_4b_3x3_bn<=BN<=inception_4b_3x3 + id: inception_4b_3x3_bn +- {expr: inception_4b_3x3_bn<=ReLU<=inception_4b_3x3_bn, id: inception_4b_relu_3x3} +- attrs: {kernel_size: 1, num_output: 96} + expr: inception_4b_double_3x3_reduce<=Convolution<=inception_4a_output + id: inception_4b_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_4b_double_3x3_reduce_bn<=BN<=inception_4b_double_3x3_reduce + id: inception_4b_double_3x3_reduce_bn +- {expr: inception_4b_double_3x3_reduce_bn<=ReLU<=inception_4b_double_3x3_reduce_bn, + id: inception_4b_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 128, pad: 1} + expr: inception_4b_double_3x3_1<=Convolution<=inception_4b_double_3x3_reduce_bn + id: inception_4b_double_3x3_1 +- attrs: {frozen: true} + expr: inception_4b_double_3x3_1_bn<=BN<=inception_4b_double_3x3_1 + id: inception_4b_double_3x3_1_bn +- {expr: inception_4b_double_3x3_1_bn<=ReLU<=inception_4b_double_3x3_1_bn, id: inception_4b_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 128, pad: 1} + expr: inception_4b_double_3x3_2<=Convolution<=inception_4b_double_3x3_1_bn + id: inception_4b_double_3x3_2 +- attrs: {frozen: true} + expr: inception_4b_double_3x3_2_bn<=BN<=inception_4b_double_3x3_2 + id: inception_4b_double_3x3_2_bn +- {expr: inception_4b_double_3x3_2_bn<=ReLU<=inception_4b_double_3x3_2_bn, id: inception_4b_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_4b_pool<=Pooling<=inception_4a_output + id: inception_4b_pool +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4b_pool_proj<=Convolution<=inception_4b_pool + id: inception_4b_pool_proj +- attrs: {frozen: true} + expr: inception_4b_pool_proj_bn<=BN<=inception_4b_pool_proj + id: inception_4b_pool_proj_bn +- {expr: inception_4b_pool_proj_bn<=ReLU<=inception_4b_pool_proj_bn, id: inception_4b_relu_pool_proj} +- {expr: 'inception_4b_output<=Concat<=inception_4b_1x1_bn,inception_4b_3x3_bn,inception_4b_double_3x3_2_bn,inception_4b_pool_proj_bn', + id: inception_4b_output} +- attrs: {kernel_size: 1, num_output: 160} + expr: inception_4c_1x1<=Convolution<=inception_4b_output + id: inception_4c_1x1 +- attrs: {frozen: true} + expr: inception_4c_1x1_bn<=BN<=inception_4c_1x1 + id: inception_4c_1x1_bn +- {expr: inception_4c_1x1_bn<=ReLU<=inception_4c_1x1_bn, id: inception_4c_relu_1x1} +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4c_3x3_reduce<=Convolution<=inception_4b_output + id: inception_4c_3x3_reduce +- attrs: {frozen: true} + expr: inception_4c_3x3_reduce_bn<=BN<=inception_4c_3x3_reduce + id: inception_4c_3x3_reduce_bn +- {expr: inception_4c_3x3_reduce_bn<=ReLU<=inception_4c_3x3_reduce_bn, id: inception_4c_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 160, pad: 1} + expr: inception_4c_3x3<=Convolution<=inception_4c_3x3_reduce_bn + id: inception_4c_3x3 +- attrs: {frozen: true} + expr: inception_4c_3x3_bn<=BN<=inception_4c_3x3 + id: inception_4c_3x3_bn +- {expr: inception_4c_3x3_bn<=ReLU<=inception_4c_3x3_bn, id: inception_4c_relu_3x3} +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4c_double_3x3_reduce<=Convolution<=inception_4b_output + id: inception_4c_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_4c_double_3x3_reduce_bn<=BN<=inception_4c_double_3x3_reduce + id: inception_4c_double_3x3_reduce_bn +- {expr: inception_4c_double_3x3_reduce_bn<=ReLU<=inception_4c_double_3x3_reduce_bn, + id: inception_4c_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 160, pad: 1} + expr: inception_4c_double_3x3_1<=Convolution<=inception_4c_double_3x3_reduce_bn + id: inception_4c_double_3x3_1 +- attrs: {frozen: true} + expr: inception_4c_double_3x3_1_bn<=BN<=inception_4c_double_3x3_1 + id: inception_4c_double_3x3_1_bn +- {expr: inception_4c_double_3x3_1_bn<=ReLU<=inception_4c_double_3x3_1_bn, id: inception_4c_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 160, pad: 1} + expr: inception_4c_double_3x3_2<=Convolution<=inception_4c_double_3x3_1_bn + id: inception_4c_double_3x3_2 +- attrs: {frozen: true} + expr: inception_4c_double_3x3_2_bn<=BN<=inception_4c_double_3x3_2 + id: inception_4c_double_3x3_2_bn +- {expr: inception_4c_double_3x3_2_bn<=ReLU<=inception_4c_double_3x3_2_bn, id: inception_4c_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_4c_pool<=Pooling<=inception_4b_output + id: inception_4c_pool +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4c_pool_proj<=Convolution<=inception_4c_pool + id: inception_4c_pool_proj +- attrs: {frozen: true} + expr: inception_4c_pool_proj_bn<=BN<=inception_4c_pool_proj + id: inception_4c_pool_proj_bn +- {expr: inception_4c_pool_proj_bn<=ReLU<=inception_4c_pool_proj_bn, id: inception_4c_relu_pool_proj} +- {expr: 'inception_4c_output<=Concat<=inception_4c_1x1_bn,inception_4c_3x3_bn,inception_4c_double_3x3_2_bn,inception_4c_pool_proj_bn', + id: inception_4c_output} +- attrs: {kernel_size: 1, num_output: 96} + expr: inception_4d_1x1<=Convolution<=inception_4c_output + id: inception_4d_1x1 +- attrs: {frozen: true} + expr: inception_4d_1x1_bn<=BN<=inception_4d_1x1 + id: inception_4d_1x1_bn +- {expr: inception_4d_1x1_bn<=ReLU<=inception_4d_1x1_bn, id: inception_4d_relu_1x1} +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4d_3x3_reduce<=Convolution<=inception_4c_output + id: inception_4d_3x3_reduce +- attrs: {frozen: true} + expr: inception_4d_3x3_reduce_bn<=BN<=inception_4d_3x3_reduce + id: inception_4d_3x3_reduce_bn +- {expr: inception_4d_3x3_reduce_bn<=ReLU<=inception_4d_3x3_reduce_bn, id: inception_4d_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 192, pad: 1} + expr: inception_4d_3x3<=Convolution<=inception_4d_3x3_reduce_bn + id: inception_4d_3x3 +- attrs: {frozen: true} + expr: inception_4d_3x3_bn<=BN<=inception_4d_3x3 + id: inception_4d_3x3_bn +- {expr: inception_4d_3x3_bn<=ReLU<=inception_4d_3x3_bn, id: inception_4d_relu_3x3} +- attrs: {kernel_size: 1, num_output: 160} + expr: inception_4d_double_3x3_reduce<=Convolution<=inception_4c_output + id: inception_4d_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_4d_double_3x3_reduce_bn<=BN<=inception_4d_double_3x3_reduce + id: inception_4d_double_3x3_reduce_bn +- {expr: inception_4d_double_3x3_reduce_bn<=ReLU<=inception_4d_double_3x3_reduce_bn, + id: inception_4d_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 192, pad: 1} + expr: inception_4d_double_3x3_1<=Convolution<=inception_4d_double_3x3_reduce_bn + id: inception_4d_double_3x3_1 +- attrs: {frozen: true} + expr: inception_4d_double_3x3_1_bn<=BN<=inception_4d_double_3x3_1 + id: inception_4d_double_3x3_1_bn +- {expr: inception_4d_double_3x3_1_bn<=ReLU<=inception_4d_double_3x3_1_bn, id: inception_4d_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 192, pad: 1} + expr: inception_4d_double_3x3_2<=Convolution<=inception_4d_double_3x3_1_bn + id: inception_4d_double_3x3_2 +- attrs: {frozen: true} + expr: inception_4d_double_3x3_2_bn<=BN<=inception_4d_double_3x3_2 + id: inception_4d_double_3x3_2_bn +- {expr: inception_4d_double_3x3_2_bn<=ReLU<=inception_4d_double_3x3_2_bn, id: inception_4d_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_4d_pool<=Pooling<=inception_4c_output + id: inception_4d_pool +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4d_pool_proj<=Convolution<=inception_4d_pool + id: inception_4d_pool_proj +- attrs: {frozen: true} + expr: inception_4d_pool_proj_bn<=BN<=inception_4d_pool_proj + id: inception_4d_pool_proj_bn +- {expr: inception_4d_pool_proj_bn<=ReLU<=inception_4d_pool_proj_bn, id: inception_4d_relu_pool_proj} +- {expr: 'inception_4d_output<=Concat<=inception_4d_1x1_bn,inception_4d_3x3_bn,inception_4d_double_3x3_2_bn,inception_4d_pool_proj_bn', + id: inception_4d_output} +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_4e_3x3_reduce<=Convolution<=inception_4d_output + id: inception_4e_3x3_reduce +- attrs: {frozen: true} + expr: inception_4e_3x3_reduce_bn<=BN<=inception_4e_3x3_reduce + id: inception_4e_3x3_reduce_bn +- {expr: inception_4e_3x3_reduce_bn<=ReLU<=inception_4e_3x3_reduce_bn, id: inception_4e_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 192, pad: 1, stride: 2} + expr: inception_4e_3x3<=Convolution<=inception_4e_3x3_reduce_bn + id: inception_4e_3x3 +- attrs: {frozen: true} + expr: inception_4e_3x3_bn<=BN<=inception_4e_3x3 + id: inception_4e_3x3_bn +- {expr: inception_4e_3x3_bn<=ReLU<=inception_4e_3x3_bn, id: inception_4e_relu_3x3} +- attrs: {kernel_size: 1, num_output: 192} + expr: inception_4e_double_3x3_reduce<=Convolution<=inception_4d_output + id: inception_4e_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_4e_double_3x3_reduce_bn<=BN<=inception_4e_double_3x3_reduce + id: inception_4e_double_3x3_reduce_bn +- {expr: inception_4e_double_3x3_reduce_bn<=ReLU<=inception_4e_double_3x3_reduce_bn, + id: inception_4e_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 256, pad: 1} + expr: inception_4e_double_3x3_1<=Convolution<=inception_4e_double_3x3_reduce_bn + id: inception_4e_double_3x3_1 +- attrs: {frozen: true} + expr: inception_4e_double_3x3_1_bn<=BN<=inception_4e_double_3x3_1 + id: inception_4e_double_3x3_1_bn +- {expr: inception_4e_double_3x3_1_bn<=ReLU<=inception_4e_double_3x3_1_bn, id: inception_4e_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 256, pad: 1, stride: 2} + expr: inception_4e_double_3x3_2<=Convolution<=inception_4e_double_3x3_1_bn + id: inception_4e_double_3x3_2 +- attrs: {frozen: true} + expr: inception_4e_double_3x3_2_bn<=BN<=inception_4e_double_3x3_2 + id: inception_4e_double_3x3_2_bn +- {expr: inception_4e_double_3x3_2_bn<=ReLU<=inception_4e_double_3x3_2_bn, id: inception_4e_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: max, stride: 2} + expr: inception_4e_pool<=Pooling<=inception_4d_output + id: inception_4e_pool +- {expr: 'inception_4e_output<=Concat<=inception_4e_3x3_bn,inception_4e_double_3x3_2_bn,inception_4e_pool', + id: inception_4e_output} +- attrs: {kernel_size: 1, num_output: 352} + expr: inception_5a_1x1<=Convolution<=inception_4e_output + id: inception_5a_1x1 +- attrs: {frozen: true} + expr: inception_5a_1x1_bn<=BN<=inception_5a_1x1 + id: inception_5a_1x1_bn +- {expr: inception_5a_1x1_bn<=ReLU<=inception_5a_1x1_bn, id: inception_5a_relu_1x1} +- attrs: {kernel_size: 1, num_output: 192} + expr: inception_5a_3x3_reduce<=Convolution<=inception_4e_output + id: inception_5a_3x3_reduce +- attrs: {frozen: true} + expr: inception_5a_3x3_reduce_bn<=BN<=inception_5a_3x3_reduce + id: inception_5a_3x3_reduce_bn +- {expr: inception_5a_3x3_reduce_bn<=ReLU<=inception_5a_3x3_reduce_bn, id: inception_5a_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 320, pad: 1} + expr: inception_5a_3x3<=Convolution<=inception_5a_3x3_reduce_bn + id: inception_5a_3x3 +- attrs: {frozen: true} + expr: inception_5a_3x3_bn<=BN<=inception_5a_3x3 + id: inception_5a_3x3_bn +- {expr: inception_5a_3x3_bn<=ReLU<=inception_5a_3x3_bn, id: inception_5a_relu_3x3} +- attrs: {kernel_size: 1, num_output: 160} + expr: inception_5a_double_3x3_reduce<=Convolution<=inception_4e_output + id: inception_5a_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_5a_double_3x3_reduce_bn<=BN<=inception_5a_double_3x3_reduce + id: inception_5a_double_3x3_reduce_bn +- {expr: inception_5a_double_3x3_reduce_bn<=ReLU<=inception_5a_double_3x3_reduce_bn, + id: inception_5a_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 224, pad: 1} + expr: inception_5a_double_3x3_1<=Convolution<=inception_5a_double_3x3_reduce_bn + id: inception_5a_double_3x3_1 +- attrs: {frozen: true} + expr: inception_5a_double_3x3_1_bn<=BN<=inception_5a_double_3x3_1 + id: inception_5a_double_3x3_1_bn +- {expr: inception_5a_double_3x3_1_bn<=ReLU<=inception_5a_double_3x3_1_bn, id: inception_5a_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 224, pad: 1} + expr: inception_5a_double_3x3_2<=Convolution<=inception_5a_double_3x3_1_bn + id: inception_5a_double_3x3_2 +- attrs: {frozen: true} + expr: inception_5a_double_3x3_2_bn<=BN<=inception_5a_double_3x3_2 + id: inception_5a_double_3x3_2_bn +- {expr: inception_5a_double_3x3_2_bn<=ReLU<=inception_5a_double_3x3_2_bn, id: inception_5a_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: inception_5a_pool<=Pooling<=inception_4e_output + id: inception_5a_pool +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_5a_pool_proj<=Convolution<=inception_5a_pool + id: inception_5a_pool_proj +- attrs: {frozen: true} + expr: inception_5a_pool_proj_bn<=BN<=inception_5a_pool_proj + id: inception_5a_pool_proj_bn +- {expr: inception_5a_pool_proj_bn<=ReLU<=inception_5a_pool_proj_bn, id: inception_5a_relu_pool_proj} +- {expr: 'inception_5a_output<=Concat<=inception_5a_1x1_bn,inception_5a_3x3_bn,inception_5a_double_3x3_2_bn,inception_5a_pool_proj_bn', + id: inception_5a_output} +- attrs: {kernel_size: 1, num_output: 352} + expr: inception_5b_1x1<=Convolution<=inception_5a_output + id: inception_5b_1x1 +- attrs: {frozen: true} + expr: inception_5b_1x1_bn<=BN<=inception_5b_1x1 + id: inception_5b_1x1_bn +- {expr: inception_5b_1x1_bn<=ReLU<=inception_5b_1x1_bn, id: inception_5b_relu_1x1} +- attrs: {kernel_size: 1, num_output: 192} + expr: inception_5b_3x3_reduce<=Convolution<=inception_5a_output + id: inception_5b_3x3_reduce +- attrs: {frozen: true} + expr: inception_5b_3x3_reduce_bn<=BN<=inception_5b_3x3_reduce + id: inception_5b_3x3_reduce_bn +- {expr: inception_5b_3x3_reduce_bn<=ReLU<=inception_5b_3x3_reduce_bn, id: inception_5b_relu_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 320, pad: 1} + expr: inception_5b_3x3<=Convolution<=inception_5b_3x3_reduce_bn + id: inception_5b_3x3 +- attrs: {frozen: true} + expr: inception_5b_3x3_bn<=BN<=inception_5b_3x3 + id: inception_5b_3x3_bn +- {expr: inception_5b_3x3_bn<=ReLU<=inception_5b_3x3_bn, id: inception_5b_relu_3x3} +- attrs: {kernel_size: 1, num_output: 192} + expr: inception_5b_double_3x3_reduce<=Convolution<=inception_5a_output + id: inception_5b_double_3x3_reduce +- attrs: {frozen: true} + expr: inception_5b_double_3x3_reduce_bn<=BN<=inception_5b_double_3x3_reduce + id: inception_5b_double_3x3_reduce_bn +- {expr: inception_5b_double_3x3_reduce_bn<=ReLU<=inception_5b_double_3x3_reduce_bn, + id: inception_5b_relu_double_3x3_reduce} +- attrs: {kernel_size: 3, num_output: 224, pad: 1} + expr: inception_5b_double_3x3_1<=Convolution<=inception_5b_double_3x3_reduce_bn + id: inception_5b_double_3x3_1 +- attrs: {frozen: true} + expr: inception_5b_double_3x3_1_bn<=BN<=inception_5b_double_3x3_1 + id: inception_5b_double_3x3_1_bn +- {expr: inception_5b_double_3x3_1_bn<=ReLU<=inception_5b_double_3x3_1_bn, id: inception_5b_relu_double_3x3_1} +- attrs: {kernel_size: 3, num_output: 224, pad: 1} + expr: inception_5b_double_3x3_2<=Convolution<=inception_5b_double_3x3_1_bn + id: inception_5b_double_3x3_2 +- attrs: {frozen: true} + expr: inception_5b_double_3x3_2_bn<=BN<=inception_5b_double_3x3_2 + id: inception_5b_double_3x3_2_bn +- {expr: inception_5b_double_3x3_2_bn<=ReLU<=inception_5b_double_3x3_2_bn, id: inception_5b_relu_double_3x3_2} +- attrs: {kernel_size: 3, mode: max, pad: 1, stride: 1} + expr: inception_5b_pool<=Pooling<=inception_5a_output + id: inception_5b_pool +- attrs: {kernel_size: 1, num_output: 128} + expr: inception_5b_pool_proj<=Convolution<=inception_5b_pool + id: inception_5b_pool_proj +- attrs: {frozen: true} + expr: inception_5b_pool_proj_bn<=BN<=inception_5b_pool_proj + id: inception_5b_pool_proj_bn +- {expr: inception_5b_pool_proj_bn<=ReLU<=inception_5b_pool_proj_bn, id: inception_5b_relu_pool_proj} +- {expr: 'inception_5b_output<=Concat<=inception_5b_1x1_bn,inception_5b_3x3_bn,inception_5b_double_3x3_2_bn,inception_5b_pool_proj_bn', + id: inception_5b_output} +- attrs: {kernel_size: 7, mode: ave, stride: 1} + expr: global_pool<=Pooling<=inception_5b_output + id: global_pool +- attrs: {num_output: 1000} + expr: fc_action<=InnerProduct<=global_pool + id: fc +name: BN-Inception diff --git a/bninception/caffe_pb2.py b/bninception/caffe_pb2.py new file mode 100644 index 0000000..dd96aa3 --- /dev/null +++ b/bninception/caffe_pb2.py @@ -0,0 +1,5607 @@ +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: caffe.proto + +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import descriptor_pb2 +# @@protoc_insertion_point(imports) + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='caffe.proto', + package='caffe', + serialized_pb='\n\x0b\x63\x61\x66\x66\x65.proto\x12\x05\x63\x61\x66\x66\x65\"\x1c\n\tBlobShape\x12\x0f\n\x03\x64im\x18\x01 \x03(\x03\x42\x02\x10\x01\"\x9a\x01\n\tBlobProto\x12\x1f\n\x05shape\x18\x07 \x01(\x0b\x32\x10.caffe.BlobShape\x12\x10\n\x04\x64\x61ta\x18\x05 \x03(\x02\x42\x02\x10\x01\x12\x10\n\x04\x64iff\x18\x06 \x03(\x02\x42\x02\x10\x01\x12\x0e\n\x03num\x18\x01 \x01(\x05:\x01\x30\x12\x13\n\x08\x63hannels\x18\x02 \x01(\x05:\x01\x30\x12\x11\n\x06height\x18\x03 \x01(\x05:\x01\x30\x12\x10\n\x05width\x18\x04 \x01(\x05:\x01\x30\"2\n\x0f\x42lobProtoVector\x12\x1f\n\x05\x62lobs\x18\x01 \x03(\x0b\x32\x10.caffe.BlobProto\"\x81\x01\n\x05\x44\x61tum\x12\x10\n\x08\x63hannels\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\x12\r\n\x05width\x18\x03 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\x12\r\n\x05label\x18\x05 \x01(\x05\x12\x12\n\nfloat_data\x18\x06 \x03(\x02\x12\x16\n\x07\x65ncoded\x18\x07 \x01(\x08:\x05\x66\x61lse\"\x8a\x02\n\x0f\x46illerParameter\x12\x16\n\x04type\x18\x01 \x01(\t:\x08\x63onstant\x12\x10\n\x05value\x18\x02 \x01(\x02:\x01\x30\x12\x0e\n\x03min\x18\x03 \x01(\x02:\x01\x30\x12\x0e\n\x03max\x18\x04 \x01(\x02:\x01\x31\x12\x0f\n\x04mean\x18\x05 \x01(\x02:\x01\x30\x12\x0e\n\x03std\x18\x06 \x01(\x02:\x01\x31\x12\x12\n\x06sparse\x18\x07 \x01(\x05:\x02-1\x12\x42\n\rvariance_norm\x18\x08 \x01(\x0e\x32#.caffe.FillerParameter.VarianceNorm:\x06\x46\x41N_IN\"4\n\x0cVarianceNorm\x12\n\n\x06\x46\x41N_IN\x10\x00\x12\x0b\n\x07\x46\x41N_OUT\x10\x01\x12\x0b\n\x07\x41VERAGE\x10\x02\"\xc6\x02\n\x0cNetParameter\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05input\x18\x03 \x03(\t\x12%\n\x0binput_shape\x18\x08 \x03(\x0b\x32\x10.caffe.BlobShape\x12\x11\n\tinput_dim\x18\x04 \x03(\x05\x12\x1d\n\x0e\x66orce_backward\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x05state\x18\x06 \x01(\x0b\x32\x0f.caffe.NetState\x12\x19\n\ndebug_info\x18\x07 \x01(\x08:\x05\x66\x61lse\x12$\n\x05layer\x18\x64 \x03(\x0b\x32\x15.caffe.LayerParameter\x12\x36\n\tmem_param\x18\xc8\x01 \x01(\x0b\x32\".caffe.MemoryOptimizationParameter\x12\'\n\x06layers\x18\x02 \x03(\x0b\x32\x17.caffe.V1LayerParameter\"\xe3\x08\n\x0fSolverParameter\x12\x0b\n\x03net\x18\x18 \x01(\t\x12&\n\tnet_param\x18\x19 \x01(\x0b\x32\x13.caffe.NetParameter\x12\x11\n\ttrain_net\x18\x01 \x01(\t\x12\x10\n\x08test_net\x18\x02 \x03(\t\x12,\n\x0ftrain_net_param\x18\x15 \x01(\x0b\x32\x13.caffe.NetParameter\x12+\n\x0etest_net_param\x18\x16 \x03(\x0b\x32\x13.caffe.NetParameter\x12$\n\x0btrain_state\x18\x1a \x01(\x0b\x32\x0f.caffe.NetState\x12#\n\ntest_state\x18\x1b \x03(\x0b\x32\x0f.caffe.NetState\x12\x11\n\ttest_iter\x18\x03 \x03(\x05\x12\x18\n\rtest_interval\x18\x04 \x01(\x05:\x01\x30\x12 \n\x11test_compute_loss\x18\x13 \x01(\x08:\x05\x66\x61lse\x12!\n\x13test_initialization\x18 \x01(\x08:\x04true\x12\x0f\n\x07\x62\x61se_lr\x18\x05 \x01(\x02\x12\x0f\n\x07\x64isplay\x18\x06 \x01(\x05\x12\x17\n\x0c\x61verage_loss\x18! \x01(\x05:\x01\x31\x12\x10\n\x08max_iter\x18\x07 \x01(\x05\x12\x14\n\titer_size\x18$ \x01(\x05:\x01\x31\x12\x11\n\tlr_policy\x18\x08 \x01(\t\x12\r\n\x05gamma\x18\t \x01(\x02\x12\r\n\x05power\x18\n \x01(\x02\x12\x10\n\x08momentum\x18\x0b \x01(\x02\x12\x14\n\x0cweight_decay\x18\x0c \x01(\x02\x12\x1f\n\x13regularization_type\x18\x1d \x01(\t:\x02L2\x12\x10\n\x08stepsize\x18\r \x01(\x05\x12\x11\n\tstepvalue\x18\" \x03(\x05\x12\x1a\n\x0e\x63lip_gradients\x18# \x01(\x02:\x02-1\x12\x13\n\x08snapshot\x18\x0e \x01(\x05:\x01\x30\x12\x17\n\x0fsnapshot_prefix\x18\x0f \x01(\t\x12\x1c\n\rsnapshot_diff\x18\x10 \x01(\x08:\x05\x66\x61lse\x12;\n\x0bsolver_mode\x18\x11 \x01(\x0e\x32!.caffe.SolverParameter.SolverMode:\x03GPU\x12\x11\n\tdevice_id\x18\x12 \x03(\x05\x12\x10\n\x08group_id\x18& \x03(\x05\x12\x17\n\x0brandom_seed\x18\x14 \x01(\x03:\x02-1\x12;\n\x0bsolver_type\x18\x1e \x01(\x0e\x32!.caffe.SolverParameter.SolverType:\x03SGD\x12\x14\n\x05\x64\x65lta\x18\x1f \x01(\x02:\x05\x31\x65-08\x12\x19\n\ndebug_info\x18\x17 \x01(\x08:\x05\x66\x61lse\x12\"\n\x14snapshot_after_train\x18\x1c \x01(\x08:\x04true\x12\x15\n\x08richness\x18% \x01(\x05:\x03\x33\x30\x30\"\x1e\n\nSolverMode\x12\x07\n\x03\x43PU\x10\x00\x12\x07\n\x03GPU\x10\x01\"0\n\nSolverType\x12\x07\n\x03SGD\x10\x00\x12\x0c\n\x08NESTEROV\x10\x01\x12\x0b\n\x07\x41\x44\x41GRAD\x10\x02\"l\n\x0bSolverState\x12\x0c\n\x04iter\x18\x01 \x01(\x05\x12\x13\n\x0blearned_net\x18\x02 \x01(\t\x12!\n\x07history\x18\x03 \x03(\x0b\x32\x10.caffe.BlobProto\x12\x17\n\x0c\x63urrent_step\x18\x04 \x01(\x05:\x01\x30\"N\n\x08NetState\x12!\n\x05phase\x18\x01 \x01(\x0e\x32\x0c.caffe.Phase:\x04TEST\x12\x10\n\x05level\x18\x02 \x01(\x05:\x01\x30\x12\r\n\x05stage\x18\x03 \x03(\t\"s\n\x0cNetStateRule\x12\x1b\n\x05phase\x18\x01 \x01(\x0e\x32\x0c.caffe.Phase\x12\x11\n\tmin_level\x18\x02 \x01(\x05\x12\x11\n\tmax_level\x18\x03 \x01(\x05\x12\r\n\x05stage\x18\x04 \x03(\t\x12\x11\n\tnot_stage\x18\x05 \x03(\t\"\xa3\x01\n\tParamSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x31\n\nshare_mode\x18\x02 \x01(\x0e\x32\x1d.caffe.ParamSpec.DimCheckMode\x12\x12\n\x07lr_mult\x18\x03 \x01(\x02:\x01\x31\x12\x15\n\ndecay_mult\x18\x04 \x01(\x02:\x01\x31\"*\n\x0c\x44imCheckMode\x12\n\n\x06STRICT\x10\x00\x12\x0e\n\nPERMISSIVE\x10\x01\"\x90\x13\n\x0eLayerParameter\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0e\n\x06\x62ottom\x18\x03 \x03(\t\x12\x0b\n\x03top\x18\x04 \x03(\t\x12\x1b\n\x05phase\x18\n \x01(\x0e\x32\x0c.caffe.Phase\x12\x13\n\x0bloss_weight\x18\x05 \x03(\x02\x12\x1f\n\x05param\x18\x06 \x03(\x0b\x32\x10.caffe.ParamSpec\x12\x1f\n\x05\x62lobs\x18\x07 \x03(\x0b\x32\x10.caffe.BlobProto\x12\x16\n\x0epropagate_down\x18\x0b \x03(\x08\x12$\n\x07include\x18\x08 \x03(\x0b\x32\x13.caffe.NetStateRule\x12$\n\x07\x65xclude\x18\t \x03(\x0b\x32\x13.caffe.NetStateRule\x12\x37\n\x0ftransform_param\x18\x64 \x01(\x0b\x32\x1e.caffe.TransformationParameter\x12(\n\nloss_param\x18\x65 \x01(\x0b\x32\x14.caffe.LossParameter\x12\x30\n\x0e\x61\x63\x63uracy_param\x18\x66 \x01(\x0b\x32\x18.caffe.AccuracyParameter\x12,\n\x0c\x61rgmax_param\x18g \x01(\x0b\x32\x16.caffe.ArgMaxParameter\x12%\n\x08\x62n_param\x18\x89\x01 \x01(\x0b\x32\x12.caffe.BNParameter\x12,\n\x0c\x63oncat_param\x18h \x01(\x0b\x32\x16.caffe.ConcatParameter\x12?\n\x16\x63ontrastive_loss_param\x18i \x01(\x0b\x32\x1f.caffe.ContrastiveLossParameter\x12\x36\n\x11\x63onvolution_param\x18j \x01(\x0b\x32\x1b.caffe.ConvolutionParameter\x12(\n\ndata_param\x18k \x01(\x0b\x32\x14.caffe.DataParameter\x12.\n\rdropout_param\x18l \x01(\x0b\x32\x17.caffe.DropoutParameter\x12\x33\n\x10\x64ummy_data_param\x18m \x01(\x0b\x32\x19.caffe.DummyDataParameter\x12.\n\reltwise_param\x18n \x01(\x0b\x32\x17.caffe.EltwiseParameter\x12&\n\texp_param\x18o \x01(\x0b\x32\x13.caffe.ExpParameter\x12/\n\rflatten_param\x18\x87\x01 \x01(\x0b\x32\x17.caffe.FlattenParameter\x12\x31\n\x0fhdf5_data_param\x18p \x01(\x0b\x32\x18.caffe.HDF5DataParameter\x12\x35\n\x11hdf5_output_param\x18q \x01(\x0b\x32\x1a.caffe.HDF5OutputParameter\x12\x33\n\x10hinge_loss_param\x18r \x01(\x0b\x32\x19.caffe.HingeLossParameter\x12\x33\n\x10image_data_param\x18s \x01(\x0b\x32\x19.caffe.ImageDataParameter\x12\x39\n\x13infogain_loss_param\x18t \x01(\x0b\x32\x1c.caffe.InfogainLossParameter\x12\x39\n\x13inner_product_param\x18u \x01(\x0b\x32\x1c.caffe.InnerProductParameter\x12\'\n\tlog_param\x18\x86\x01 \x01(\x0b\x32\x13.caffe.LogParameter\x12&\n\tlrn_param\x18v \x01(\x0b\x32\x13.caffe.LRNParameter\x12\x35\n\x11memory_data_param\x18w \x01(\x0b\x32\x1a.caffe.MemoryDataParameter\x12&\n\tmvn_param\x18x \x01(\x0b\x32\x13.caffe.MVNParameter\x12.\n\rpooling_param\x18y \x01(\x0b\x32\x17.caffe.PoolingParameter\x12*\n\x0bpower_param\x18z \x01(\x0b\x32\x15.caffe.PowerParameter\x12+\n\x0bprelu_param\x18\x83\x01 \x01(\x0b\x32\x15.caffe.PReLUParameter\x12-\n\x0cpython_param\x18\x82\x01 \x01(\x0b\x32\x16.caffe.PythonParameter\x12\x33\n\x0freduction_param\x18\x88\x01 \x01(\x0b\x32\x19.caffe.ReductionParameter\x12(\n\nrelu_param\x18{ \x01(\x0b\x32\x14.caffe.ReLUParameter\x12/\n\rreshape_param\x18\x85\x01 \x01(\x0b\x32\x17.caffe.ReshapeParameter\x12\x30\n\x0eseg_data_param\x18\x8d\x01 \x01(\x0b\x32\x17.caffe.SegDataParameter\x12.\n\rsigmoid_param\x18| \x01(\x0b\x32\x17.caffe.SigmoidParameter\x12.\n\rsoftmax_param\x18} \x01(\x0b\x32\x17.caffe.SoftmaxParameter\x12\'\n\tspp_param\x18\x84\x01 \x01(\x0b\x32\x13.caffe.SPPParameter\x12*\n\x0bslice_param\x18~ \x01(\x0b\x32\x15.caffe.SliceParameter\x12(\n\ntanh_param\x18\x7f \x01(\x0b\x32\x14.caffe.TanHParameter\x12\x33\n\x0fthreshold_param\x18\x80\x01 \x01(\x0b\x32\x19.caffe.ThresholdParameter\x12\x36\n\x11window_data_param\x18\x81\x01 \x01(\x0b\x32\x1a.caffe.WindowDataParameter\x12\x34\n\x10video_data_param\x18\x8c\x01 \x01(\x0b\x32\x19.caffe.VideoDataParameter\x12\x36\n\x11roi_pooling_param\x18\x96\x01 \x01(\x0b\x32\x1a.caffe.ROIPoolingParameter\x12+\n\x0bscale_param\x18\xa0\x01 \x01(\x0b\x32\x15.caffe.ScaleParameter\x12)\n\nbias_param\x18\xa1\x01 \x01(\x0b\x32\x14.caffe.BiasParameter\x12>\n\x15\x62\x61tch_reduction_param\x18\xa2\x01 \x01(\x0b\x32\x1e.caffe.BatchReductionParameter\"\xc0\x03\n\x17TransformationParameter\x12\x10\n\x05scale\x18\x01 \x01(\x02:\x01\x31\x12\x15\n\x06mirror\x18\x02 \x01(\x08:\x05\x66\x61lse\x12\x14\n\tcrop_size\x18\x03 \x01(\r:\x01\x30\x12\x11\n\tmean_file\x18\x04 \x01(\t\x12\x12\n\nmean_value\x18\x05 \x03(\x02\x12\x1a\n\x0b\x66orce_color\x18\x06 \x01(\x08:\x05\x66\x61lse\x12\x19\n\nforce_gray\x18\x07 \x01(\x08:\x05\x66\x61lse\x12\x17\n\x08\x66ix_crop\x18\n \x01(\x08:\x05\x66\x61lse\x12\x1c\n\rmore_fix_crop\x18\x0f \x01(\x08:\x05\x66\x61lse\x12\x1a\n\x0bmulti_scale\x18\x0b \x01(\x08:\x05\x66\x61lse\x12\x14\n\x0cscale_ratios\x18\x0c \x03(\x02\x12\x16\n\x0bmax_distort\x18\r \x01(\x05:\x01\x31\x12\x16\n\x07is_flow\x18\x0e \x01(\x08:\x05\x66\x61lse\x12\x1d\n\x0eoriginal_image\x18\x14 \x01(\x08:\x05\x66\x61lse\x12\x11\n\x06stride\x18\x10 \x01(\x05:\x01\x31\x12\x12\n\nupper_size\x18\x11 \x01(\x05\x12\x14\n\x0cupper_height\x18\x12 \x01(\x05\x12\x13\n\x0bupper_width\x18\x13 \x01(\x05\">\n\rLossParameter\x12\x14\n\x0cignore_label\x18\x01 \x01(\x05\x12\x17\n\tnormalize\x18\x02 \x01(\x08:\x04true\"L\n\x11\x41\x63\x63uracyParameter\x12\x10\n\x05top_k\x18\x01 \x01(\r:\x01\x31\x12\x0f\n\x04\x61xis\x18\x02 \x01(\x05:\x01\x31\x12\x14\n\x0cignore_label\x18\x03 \x01(\x05\"?\n\x0f\x41rgMaxParameter\x12\x1a\n\x0bout_max_val\x18\x01 \x01(\x08:\x05\x66\x61lse\x12\x10\n\x05top_k\x18\x02 \x01(\r:\x01\x31\"\x8b\x02\n\x0b\x42NParameter\x12,\n\x0cslope_filler\x18\x01 \x01(\x0b\x32\x16.caffe.FillerParameter\x12+\n\x0b\x62ias_filler\x18\x02 \x01(\x0b\x32\x16.caffe.FillerParameter\x12\x15\n\x08momentum\x18\x03 \x01(\x02:\x03\x30.9\x12\x12\n\x03\x65ps\x18\x04 \x01(\x02:\x05\x31\x65-05\x12\x15\n\x06\x66rozen\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x32\n\x06\x65ngine\x18\x06 \x01(\x0e\x32\x19.caffe.BNParameter.Engine:\x07\x44\x45\x46\x41ULT\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"9\n\x0f\x43oncatParameter\x12\x0f\n\x04\x61xis\x18\x02 \x01(\x05:\x01\x31\x12\x15\n\nconcat_dim\x18\x01 \x01(\r:\x01\x31\"L\n\x18\x43ontrastiveLossParameter\x12\x11\n\x06margin\x18\x01 \x01(\x02:\x01\x31\x12\x1d\n\x0elegacy_version\x18\x02 \x01(\x08:\x05\x66\x61lse\"\xfc\x03\n\x14\x43onvolutionParameter\x12\x12\n\nnum_output\x18\x01 \x01(\r\x12\x17\n\tbias_term\x18\x02 \x01(\x08:\x04true\x12\x0e\n\x03pad\x18\x03 \x01(\r:\x01\x30\x12\x10\n\x05pad_h\x18\t \x01(\r:\x01\x30\x12\x10\n\x05pad_w\x18\n \x01(\r:\x01\x30\x12\x13\n\x0bkernel_size\x18\x04 \x01(\r\x12\x10\n\x08kernel_h\x18\x0b \x01(\r\x12\x10\n\x08kernel_w\x18\x0c \x01(\r\x12\x10\n\x05group\x18\x05 \x01(\r:\x01\x31\x12\x11\n\x06stride\x18\x06 \x01(\r:\x01\x31\x12\x10\n\x08stride_h\x18\r \x01(\r\x12\x10\n\x08stride_w\x18\x0e \x01(\r\x12\x13\n\x08\x64ilation\x18\x10 \x01(\r:\x01\x31\x12\x12\n\ndilation_h\x18\x11 \x01(\r\x12\x12\n\ndilation_w\x18\x12 \x01(\r\x12-\n\rweight_filler\x18\x07 \x01(\x0b\x32\x16.caffe.FillerParameter\x12+\n\x0b\x62ias_filler\x18\x08 \x01(\x0b\x32\x16.caffe.FillerParameter\x12;\n\x06\x65ngine\x18\x0f \x01(\x0e\x32\".caffe.ConvolutionParameter.Engine:\x07\x44\x45\x46\x41ULT\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"\xa7\x02\n\rDataParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x12\n\nbatch_size\x18\x04 \x01(\r\x12\x14\n\trand_skip\x18\x07 \x01(\r:\x01\x30\x12\x31\n\x07\x62\x61\x63kend\x18\x08 \x01(\x0e\x32\x17.caffe.DataParameter.DB:\x07LEVELDB\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x11\n\tmean_file\x18\x03 \x01(\t\x12\x14\n\tcrop_size\x18\x05 \x01(\r:\x01\x30\x12\x15\n\x06mirror\x18\x06 \x01(\x08:\x05\x66\x61lse\x12\"\n\x13\x66orce_encoded_color\x18\t \x01(\x08:\x05\x66\x61lse\x12\x16\n\x07shuffle\x18\n \x01(\x08:\x05\x66\x61lse\"\x1b\n\x02\x44\x42\x12\x0b\n\x07LEVELDB\x10\x00\x12\x08\n\x04LMDB\x10\x01\".\n\x10\x44ropoutParameter\x12\x1a\n\rdropout_ratio\x18\x01 \x01(\x02:\x03\x30.5\"\xa0\x01\n\x12\x44ummyDataParameter\x12+\n\x0b\x64\x61ta_filler\x18\x01 \x03(\x0b\x32\x16.caffe.FillerParameter\x12\x1f\n\x05shape\x18\x06 \x03(\x0b\x32\x10.caffe.BlobShape\x12\x0b\n\x03num\x18\x02 \x03(\r\x12\x10\n\x08\x63hannels\x18\x03 \x03(\r\x12\x0e\n\x06height\x18\x04 \x03(\r\x12\r\n\x05width\x18\x05 \x03(\r\"\xb9\x01\n\x10\x45ltwiseParameter\x12\x39\n\toperation\x18\x01 \x01(\x0e\x32!.caffe.EltwiseParameter.EltwiseOp:\x03SUM\x12\r\n\x05\x63oeff\x18\x02 \x03(\x02\x12\x1e\n\x10stable_prod_grad\x18\x03 \x01(\x08:\x04true\";\n\tEltwiseOp\x12\x08\n\x04PROD\x10\x00\x12\x07\n\x03SUM\x10\x01\x12\x07\n\x03MAX\x10\x02\x12\x12\n\x0eSTOCHASTIC_SUM\x10\x03\"D\n\x0c\x45xpParameter\x12\x10\n\x04\x62\x61se\x18\x01 \x01(\x02:\x02-1\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x10\n\x05shift\x18\x03 \x01(\x02:\x01\x30\"9\n\x10\x46lattenParameter\x12\x0f\n\x04\x61xis\x18\x01 \x01(\x05:\x01\x31\x12\x14\n\x08\x65nd_axis\x18\x02 \x01(\x05:\x02-1\"O\n\x11HDF5DataParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x12\n\nbatch_size\x18\x02 \x01(\r\x12\x16\n\x07shuffle\x18\x03 \x01(\x08:\x05\x66\x61lse\"(\n\x13HDF5OutputParameter\x12\x11\n\tfile_name\x18\x01 \x01(\t\"^\n\x12HingeLossParameter\x12\x30\n\x04norm\x18\x01 \x01(\x0e\x32\x1e.caffe.HingeLossParameter.Norm:\x02L1\"\x16\n\x04Norm\x12\x06\n\x02L1\x10\x01\x12\x06\n\x02L2\x10\x02\"\x94\x02\n\x12ImageDataParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x12\n\nbatch_size\x18\x04 \x01(\r\x12\x14\n\trand_skip\x18\x07 \x01(\r:\x01\x30\x12\x16\n\x07shuffle\x18\x08 \x01(\x08:\x05\x66\x61lse\x12\x15\n\nnew_height\x18\t \x01(\r:\x01\x30\x12\x14\n\tnew_width\x18\n \x01(\r:\x01\x30\x12\x16\n\x08is_color\x18\x0b \x01(\x08:\x04true\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x11\n\tmean_file\x18\x03 \x01(\t\x12\x14\n\tcrop_size\x18\x05 \x01(\r:\x01\x30\x12\x15\n\x06mirror\x18\x06 \x01(\x08:\x05\x66\x61lse\x12\x15\n\x0broot_folder\x18\x0c \x01(\t:\x00\"\xb8\x03\n\x12VideoDataParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x12\n\nbatch_size\x18\x04 \x01(\r\x12\x14\n\trand_skip\x18\x07 \x01(\r:\x01\x30\x12\x16\n\x07shuffle\x18\x08 \x01(\x08:\x05\x66\x61lse\x12\x15\n\nnew_height\x18\t \x01(\r:\x01\x30\x12\x14\n\tnew_width\x18\n \x01(\r:\x01\x30\x12\x15\n\nnew_length\x18\x0b \x01(\r:\x01\x31\x12\x17\n\x0cnum_segments\x18\x0c \x01(\r:\x01\x31\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x11\n\tmean_file\x18\x03 \x01(\t\x12\x14\n\tcrop_size\x18\x05 \x01(\r:\x01\x30\x12\x15\n\x06mirror\x18\x06 \x01(\x08:\x05\x66\x61lse\x12:\n\x08modality\x18\r \x01(\x0e\x32\".caffe.VideoDataParameter.Modality:\x04\x46LOW\x12\x14\n\x0cname_pattern\x18\x0e \x01(\t\x12\x16\n\x07\x65ncoded\x18\x0f \x01(\x08:\x05\x66\x61lse\x12\x18\n\tgrayscale\x18\x10 \x01(\x08:\x05\x66\x61lse\"\x1d\n\x08Modality\x12\x07\n\x03RGB\x10\x00\x12\x08\n\x04\x46LOW\x10\x01\"\'\n\x15InfogainLossParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\"\xb1\x01\n\x15InnerProductParameter\x12\x12\n\nnum_output\x18\x01 \x01(\r\x12\x17\n\tbias_term\x18\x02 \x01(\x08:\x04true\x12-\n\rweight_filler\x18\x03 \x01(\x0b\x32\x16.caffe.FillerParameter\x12+\n\x0b\x62ias_filler\x18\x04 \x01(\x0b\x32\x16.caffe.FillerParameter\x12\x0f\n\x04\x61xis\x18\x05 \x01(\x05:\x01\x31\"D\n\x0cLogParameter\x12\x10\n\x04\x62\x61se\x18\x01 \x01(\x02:\x02-1\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x10\n\x05shift\x18\x03 \x01(\x02:\x01\x30\"\xd6\x01\n\x0cLRNParameter\x12\x15\n\nlocal_size\x18\x01 \x01(\r:\x01\x35\x12\x10\n\x05\x61lpha\x18\x02 \x01(\x02:\x01\x31\x12\x12\n\x04\x62\x65ta\x18\x03 \x01(\x02:\x04\x30.75\x12\x44\n\x0bnorm_region\x18\x04 \x01(\x0e\x32\x1e.caffe.LRNParameter.NormRegion:\x0f\x41\x43ROSS_CHANNELS\x12\x0c\n\x01k\x18\x05 \x01(\x02:\x01\x31\"5\n\nNormRegion\x12\x13\n\x0f\x41\x43ROSS_CHANNELS\x10\x00\x12\x12\n\x0eWITHIN_CHANNEL\x10\x01\"Z\n\x13MemoryDataParameter\x12\x12\n\nbatch_size\x18\x01 \x01(\r\x12\x10\n\x08\x63hannels\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\x12\r\n\x05width\x18\x04 \x01(\r\"d\n\x0cMVNParameter\x12 \n\x12normalize_variance\x18\x01 \x01(\x08:\x04true\x12\x1e\n\x0f\x61\x63ross_channels\x18\x02 \x01(\x08:\x05\x66\x61lse\x12\x12\n\x03\x65ps\x18\x03 \x01(\x02:\x05\x31\x65-09\"\xa2\x03\n\x10PoolingParameter\x12\x35\n\x04pool\x18\x01 \x01(\x0e\x32\".caffe.PoolingParameter.PoolMethod:\x03MAX\x12\x0e\n\x03pad\x18\x04 \x01(\r:\x01\x30\x12\x10\n\x05pad_h\x18\t \x01(\r:\x01\x30\x12\x10\n\x05pad_w\x18\n \x01(\r:\x01\x30\x12\x13\n\x0bkernel_size\x18\x02 \x01(\r\x12\x10\n\x08kernel_h\x18\x05 \x01(\r\x12\x10\n\x08kernel_w\x18\x06 \x01(\r\x12\x11\n\x06stride\x18\x03 \x01(\r:\x01\x31\x12\x10\n\x08stride_h\x18\x07 \x01(\r\x12\x10\n\x08stride_w\x18\x08 \x01(\r\x12\x37\n\x06\x65ngine\x18\x0b \x01(\x0e\x32\x1e.caffe.PoolingParameter.Engine:\x07\x44\x45\x46\x41ULT\x12\x1d\n\x0eglobal_pooling\x18\x0c \x01(\x08:\x05\x66\x61lse\".\n\nPoolMethod\x12\x07\n\x03MAX\x10\x00\x12\x07\n\x03\x41VE\x10\x01\x12\x0e\n\nSTOCHASTIC\x10\x02\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"F\n\x0ePowerParameter\x12\x10\n\x05power\x18\x01 \x01(\x02:\x01\x31\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x10\n\x05shift\x18\x03 \x01(\x02:\x01\x30\"C\n\x0fPythonParameter\x12\x0e\n\x06module\x18\x01 \x01(\t\x12\r\n\x05layer\x18\x02 \x01(\t\x12\x11\n\tparam_str\x18\x03 \x01(\t\"\xc5\x01\n\x12ReductionParameter\x12=\n\toperation\x18\x01 \x01(\x0e\x32%.caffe.ReductionParameter.ReductionOp:\x03SUM\x12\x0f\n\x04\x61xis\x18\x02 \x01(\x05:\x01\x30\x12\x10\n\x05\x63oeff\x18\x03 \x01(\x02:\x01\x31\x12\x0c\n\x01k\x18\x04 \x01(\x05:\x01\x31\"?\n\x0bReductionOp\x12\x07\n\x03SUM\x10\x01\x12\x08\n\x04\x41SUM\x10\x02\x12\t\n\x05SUMSQ\x10\x03\x12\x08\n\x04MEAN\x10\x04\x12\x08\n\x04TOPK\x10\x05\"\x8d\x01\n\rReLUParameter\x12\x19\n\x0enegative_slope\x18\x01 \x01(\x02:\x01\x30\x12\x34\n\x06\x65ngine\x18\x02 \x01(\x0e\x32\x1b.caffe.ReLUParameter.Engine:\x07\x44\x45\x46\x41ULT\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"Z\n\x10ReshapeParameter\x12\x1f\n\x05shape\x18\x01 \x01(\x0b\x32\x10.caffe.BlobShape\x12\x0f\n\x04\x61xis\x18\x02 \x01(\x05:\x01\x30\x12\x14\n\x08num_axes\x18\x03 \x01(\x05:\x02-1\"d\n\x10SegDataParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x10\n\x08root_dir\x18\x02 \x01(\t\x12\x16\n\x07shuffle\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x16\n\x07\x62\x61lance\x18\x04 \x01(\x08:\x05\x66\x61lse\"x\n\x10SigmoidParameter\x12\x37\n\x06\x65ngine\x18\x01 \x01(\x0e\x32\x1e.caffe.SigmoidParameter.Engine:\x07\x44\x45\x46\x41ULT\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"L\n\x0eSliceParameter\x12\x0f\n\x04\x61xis\x18\x03 \x01(\x05:\x01\x31\x12\x13\n\x0bslice_point\x18\x02 \x03(\r\x12\x14\n\tslice_dim\x18\x01 \x01(\r:\x01\x31\"\x89\x01\n\x10SoftmaxParameter\x12\x37\n\x06\x65ngine\x18\x01 \x01(\x0e\x32\x1e.caffe.SoftmaxParameter.Engine:\x07\x44\x45\x46\x41ULT\x12\x0f\n\x04\x61xis\x18\x02 \x01(\x05:\x01\x31\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"r\n\rTanHParameter\x12\x34\n\x06\x65ngine\x18\x01 \x01(\x0e\x32\x1b.caffe.TanHParameter.Engine:\x07\x44\x45\x46\x41ULT\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"*\n\x12ThresholdParameter\x12\x14\n\tthreshold\x18\x01 \x01(\x02:\x01\x30\"\xc1\x02\n\x13WindowDataParameter\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x10\n\x05scale\x18\x02 \x01(\x02:\x01\x31\x12\x11\n\tmean_file\x18\x03 \x01(\t\x12\x12\n\nbatch_size\x18\x04 \x01(\r\x12\x14\n\tcrop_size\x18\x05 \x01(\r:\x01\x30\x12\x15\n\x06mirror\x18\x06 \x01(\x08:\x05\x66\x61lse\x12\x19\n\x0c\x66g_threshold\x18\x07 \x01(\x02:\x03\x30.5\x12\x19\n\x0c\x62g_threshold\x18\x08 \x01(\x02:\x03\x30.5\x12\x19\n\x0b\x66g_fraction\x18\t \x01(\x02:\x04\x30.25\x12\x16\n\x0b\x63ontext_pad\x18\n \x01(\r:\x01\x30\x12\x17\n\tcrop_mode\x18\x0b \x01(\t:\x04warp\x12\x1b\n\x0c\x63\x61\x63he_images\x18\x0c \x01(\x08:\x05\x66\x61lse\x12\x15\n\x0broot_folder\x18\r \x01(\t:\x00\"\xeb\x01\n\x0cSPPParameter\x12\x16\n\x0epyramid_height\x18\x01 \x01(\r\x12\x31\n\x04pool\x18\x02 \x01(\x0e\x32\x1e.caffe.SPPParameter.PoolMethod:\x03MAX\x12\x33\n\x06\x65ngine\x18\x06 \x01(\x0e\x32\x1a.caffe.SPPParameter.Engine:\x07\x44\x45\x46\x41ULT\".\n\nPoolMethod\x12\x07\n\x03MAX\x10\x00\x12\x07\n\x03\x41VE\x10\x01\x12\x0e\n\nSTOCHASTIC\x10\x02\"+\n\x06\x45ngine\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\t\n\x05\x43\x41\x46\x46\x45\x10\x01\x12\t\n\x05\x43UDNN\x10\x02\"Y\n\x13ROIPoolingParameter\x12\x13\n\x08pooled_h\x18\x01 \x01(\r:\x01\x30\x12\x13\n\x08pooled_w\x18\x02 \x01(\r:\x01\x30\x12\x18\n\rspatial_scale\x18\x03 \x01(\x02:\x01\x31\"\xe0\x13\n\x10V1LayerParameter\x12\x0e\n\x06\x62ottom\x18\x02 \x03(\t\x12\x0b\n\x03top\x18\x03 \x03(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12$\n\x07include\x18 \x03(\x0b\x32\x13.caffe.NetStateRule\x12$\n\x07\x65xclude\x18! \x03(\x0b\x32\x13.caffe.NetStateRule\x12/\n\x04type\x18\x05 \x01(\x0e\x32!.caffe.V1LayerParameter.LayerType\x12\x1f\n\x05\x62lobs\x18\x06 \x03(\x0b\x32\x10.caffe.BlobProto\x12\x0e\n\x05param\x18\xe9\x07 \x03(\t\x12>\n\x0f\x62lob_share_mode\x18\xea\x07 \x03(\x0e\x32$.caffe.V1LayerParameter.DimCheckMode\x12\x10\n\x08\x62lobs_lr\x18\x07 \x03(\x02\x12\x14\n\x0cweight_decay\x18\x08 \x03(\x02\x12\x13\n\x0bloss_weight\x18# \x03(\x02\x12\x30\n\x0e\x61\x63\x63uracy_param\x18\x1b \x01(\x0b\x32\x18.caffe.AccuracyParameter\x12,\n\x0c\x61rgmax_param\x18\x17 \x01(\x0b\x32\x16.caffe.ArgMaxParameter\x12,\n\x0c\x63oncat_param\x18\t \x01(\x0b\x32\x16.caffe.ConcatParameter\x12?\n\x16\x63ontrastive_loss_param\x18( \x01(\x0b\x32\x1f.caffe.ContrastiveLossParameter\x12\x36\n\x11\x63onvolution_param\x18\n \x01(\x0b\x32\x1b.caffe.ConvolutionParameter\x12(\n\ndata_param\x18\x0b \x01(\x0b\x32\x14.caffe.DataParameter\x12.\n\rdropout_param\x18\x0c \x01(\x0b\x32\x17.caffe.DropoutParameter\x12\x33\n\x10\x64ummy_data_param\x18\x1a \x01(\x0b\x32\x19.caffe.DummyDataParameter\x12.\n\reltwise_param\x18\x18 \x01(\x0b\x32\x17.caffe.EltwiseParameter\x12&\n\texp_param\x18) \x01(\x0b\x32\x13.caffe.ExpParameter\x12\x31\n\x0fhdf5_data_param\x18\r \x01(\x0b\x32\x18.caffe.HDF5DataParameter\x12\x35\n\x11hdf5_output_param\x18\x0e \x01(\x0b\x32\x1a.caffe.HDF5OutputParameter\x12\x33\n\x10hinge_loss_param\x18\x1d \x01(\x0b\x32\x19.caffe.HingeLossParameter\x12\x33\n\x10image_data_param\x18\x0f \x01(\x0b\x32\x19.caffe.ImageDataParameter\x12\x39\n\x13infogain_loss_param\x18\x10 \x01(\x0b\x32\x1c.caffe.InfogainLossParameter\x12\x39\n\x13inner_product_param\x18\x11 \x01(\x0b\x32\x1c.caffe.InnerProductParameter\x12&\n\tlrn_param\x18\x12 \x01(\x0b\x32\x13.caffe.LRNParameter\x12\x35\n\x11memory_data_param\x18\x16 \x01(\x0b\x32\x1a.caffe.MemoryDataParameter\x12&\n\tmvn_param\x18\" \x01(\x0b\x32\x13.caffe.MVNParameter\x12.\n\rpooling_param\x18\x13 \x01(\x0b\x32\x17.caffe.PoolingParameter\x12*\n\x0bpower_param\x18\x15 \x01(\x0b\x32\x15.caffe.PowerParameter\x12(\n\nrelu_param\x18\x1e \x01(\x0b\x32\x14.caffe.ReLUParameter\x12.\n\rsigmoid_param\x18& \x01(\x0b\x32\x17.caffe.SigmoidParameter\x12.\n\rsoftmax_param\x18\' \x01(\x0b\x32\x17.caffe.SoftmaxParameter\x12*\n\x0bslice_param\x18\x1f \x01(\x0b\x32\x15.caffe.SliceParameter\x12(\n\ntanh_param\x18% \x01(\x0b\x32\x14.caffe.TanHParameter\x12\x32\n\x0fthreshold_param\x18\x19 \x01(\x0b\x32\x19.caffe.ThresholdParameter\x12\x35\n\x11window_data_param\x18\x14 \x01(\x0b\x32\x1a.caffe.WindowDataParameter\x12\x37\n\x0ftransform_param\x18$ \x01(\x0b\x32\x1e.caffe.TransformationParameter\x12(\n\nloss_param\x18* \x01(\x0b\x32\x14.caffe.LossParameter\x12&\n\x05layer\x18\x01 \x01(\x0b\x32\x17.caffe.V0LayerParameter\"\xd8\x04\n\tLayerType\x12\x08\n\x04NONE\x10\x00\x12\n\n\x06\x41\x42SVAL\x10#\x12\x0c\n\x08\x41\x43\x43URACY\x10\x01\x12\n\n\x06\x41RGMAX\x10\x1e\x12\x08\n\x04\x42NLL\x10\x02\x12\n\n\x06\x43ONCAT\x10\x03\x12\x14\n\x10\x43ONTRASTIVE_LOSS\x10%\x12\x0f\n\x0b\x43ONVOLUTION\x10\x04\x12\x08\n\x04\x44\x41TA\x10\x05\x12\x11\n\rDECONVOLUTION\x10\'\x12\x0b\n\x07\x44ROPOUT\x10\x06\x12\x0e\n\nDUMMY_DATA\x10 \x12\x12\n\x0e\x45UCLIDEAN_LOSS\x10\x07\x12\x0b\n\x07\x45LTWISE\x10\x19\x12\x07\n\x03\x45XP\x10&\x12\x0b\n\x07\x46LATTEN\x10\x08\x12\r\n\tHDF5_DATA\x10\t\x12\x0f\n\x0bHDF5_OUTPUT\x10\n\x12\x0e\n\nHINGE_LOSS\x10\x1c\x12\n\n\x06IM2COL\x10\x0b\x12\x0e\n\nIMAGE_DATA\x10\x0c\x12\x11\n\rINFOGAIN_LOSS\x10\r\x12\x11\n\rINNER_PRODUCT\x10\x0e\x12\x07\n\x03LRN\x10\x0f\x12\x0f\n\x0bMEMORY_DATA\x10\x1d\x12\x1d\n\x19MULTINOMIAL_LOGISTIC_LOSS\x10\x10\x12\x07\n\x03MVN\x10\"\x12\x0b\n\x07POOLING\x10\x11\x12\t\n\x05POWER\x10\x1a\x12\x08\n\x04RELU\x10\x12\x12\x0b\n\x07SIGMOID\x10\x13\x12\x1e\n\x1aSIGMOID_CROSS_ENTROPY_LOSS\x10\x1b\x12\x0b\n\x07SILENCE\x10$\x12\x0b\n\x07SOFTMAX\x10\x14\x12\x10\n\x0cSOFTMAX_LOSS\x10\x15\x12\t\n\x05SPLIT\x10\x16\x12\t\n\x05SLICE\x10!\x12\x08\n\x04TANH\x10\x17\x12\x0f\n\x0bWINDOW_DATA\x10\x18\x12\r\n\tTHRESHOLD\x10\x1f\"*\n\x0c\x44imCheckMode\x12\n\n\x06STRICT\x10\x00\x12\x0e\n\nPERMISSIVE\x10\x01\"\xfd\x07\n\x10V0LayerParameter\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x12\n\nnum_output\x18\x03 \x01(\r\x12\x16\n\x08\x62iasterm\x18\x04 \x01(\x08:\x04true\x12-\n\rweight_filler\x18\x05 \x01(\x0b\x32\x16.caffe.FillerParameter\x12+\n\x0b\x62ias_filler\x18\x06 \x01(\x0b\x32\x16.caffe.FillerParameter\x12\x0e\n\x03pad\x18\x07 \x01(\r:\x01\x30\x12\x12\n\nkernelsize\x18\x08 \x01(\r\x12\x10\n\x05group\x18\t \x01(\r:\x01\x31\x12\x11\n\x06stride\x18\n \x01(\r:\x01\x31\x12\x35\n\x04pool\x18\x0b \x01(\x0e\x32\".caffe.V0LayerParameter.PoolMethod:\x03MAX\x12\x1a\n\rdropout_ratio\x18\x0c \x01(\x02:\x03\x30.5\x12\x15\n\nlocal_size\x18\r \x01(\r:\x01\x35\x12\x10\n\x05\x61lpha\x18\x0e \x01(\x02:\x01\x31\x12\x12\n\x04\x62\x65ta\x18\x0f \x01(\x02:\x04\x30.75\x12\x0c\n\x01k\x18\x16 \x01(\x02:\x01\x31\x12\x0e\n\x06source\x18\x10 \x01(\t\x12\x10\n\x05scale\x18\x11 \x01(\x02:\x01\x31\x12\x10\n\x08meanfile\x18\x12 \x01(\t\x12\x11\n\tbatchsize\x18\x13 \x01(\r\x12\x13\n\x08\x63ropsize\x18\x14 \x01(\r:\x01\x30\x12\x15\n\x06mirror\x18\x15 \x01(\x08:\x05\x66\x61lse\x12\x1f\n\x05\x62lobs\x18\x32 \x03(\x0b\x32\x10.caffe.BlobProto\x12\x10\n\x08\x62lobs_lr\x18\x33 \x03(\x02\x12\x14\n\x0cweight_decay\x18\x34 \x03(\x02\x12\x14\n\trand_skip\x18\x35 \x01(\r:\x01\x30\x12\x1d\n\x10\x64\x65t_fg_threshold\x18\x36 \x01(\x02:\x03\x30.5\x12\x1d\n\x10\x64\x65t_bg_threshold\x18\x37 \x01(\x02:\x03\x30.5\x12\x1d\n\x0f\x64\x65t_fg_fraction\x18\x38 \x01(\x02:\x04\x30.25\x12\x1a\n\x0f\x64\x65t_context_pad\x18: \x01(\r:\x01\x30\x12\x1b\n\rdet_crop_mode\x18; \x01(\t:\x04warp\x12\x12\n\x07new_num\x18< \x01(\x05:\x01\x30\x12\x17\n\x0cnew_channels\x18= \x01(\x05:\x01\x30\x12\x15\n\nnew_height\x18> \x01(\x05:\x01\x30\x12\x14\n\tnew_width\x18? \x01(\x05:\x01\x30\x12\x1d\n\x0eshuffle_images\x18@ \x01(\x08:\x05\x66\x61lse\x12\x15\n\nconcat_dim\x18\x41 \x01(\r:\x01\x31\x12\x36\n\x11hdf5_output_param\x18\xe9\x07 \x01(\x0b\x32\x1a.caffe.HDF5OutputParameter\".\n\nPoolMethod\x12\x07\n\x03MAX\x10\x00\x12\x07\n\x03\x41VE\x10\x01\x12\x0e\n\nSTOCHASTIC\x10\x02\"W\n\x0ePReLUParameter\x12&\n\x06\x66iller\x18\x01 \x01(\x0b\x32\x16.caffe.FillerParameter\x12\x1d\n\x0e\x63hannel_shared\x18\x02 \x01(\x08:\x05\x66\x61lse\"\xa5\x01\n\x0eScaleParameter\x12\x0f\n\x04\x61xis\x18\x01 \x01(\x05:\x01\x31\x12\x13\n\x08num_axes\x18\x02 \x01(\x05:\x01\x31\x12&\n\x06\x66iller\x18\x03 \x01(\x0b\x32\x16.caffe.FillerParameter\x12\x18\n\tbias_term\x18\x04 \x01(\x08:\x05\x66\x61lse\x12+\n\x0b\x62ias_filler\x18\x05 \x01(\x0b\x32\x16.caffe.FillerParameter\"]\n\rBiasParameter\x12\x0f\n\x04\x61xis\x18\x01 \x01(\x05:\x01\x31\x12\x13\n\x08num_axes\x18\x02 \x01(\x05:\x01\x31\x12&\n\x06\x66iller\x18\x03 \x01(\x0b\x32\x16.caffe.FillerParameter\"p\n\x17\x42\x61tchReductionParameter\x12\r\n\x05level\x18\x01 \x03(\x05\x12\x32\n\x0freduction_param\x18\x02 \x01(\x0b\x32\x19.caffe.ReductionParameter\x12\x12\n\x03pos\x18\x03 \x01(\x08:\x05\x66\x61lse\"o\n\x1bMemoryOptimizationParameter\x12\x1c\n\x0eoptimize_train\x18\x01 \x01(\x08:\x04true\x12\x1c\n\roptimize_test\x18\x02 \x01(\x08:\x05\x66\x61lse\x12\x14\n\x0c\x65xclude_blob\x18\x03 \x03(\t*\x1c\n\x05Phase\x12\t\n\x05TRAIN\x10\x00\x12\x08\n\x04TEST\x10\x01') + +_PHASE = _descriptor.EnumDescriptor( + name='Phase', + full_name='caffe.Phase', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='TRAIN', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TEST', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=15473, + serialized_end=15501, +) + +Phase = enum_type_wrapper.EnumTypeWrapper(_PHASE) +TRAIN = 0 +TEST = 1 + + +_FILLERPARAMETER_VARIANCENORM = _descriptor.EnumDescriptor( + name='VarianceNorm', + full_name='caffe.FillerParameter.VarianceNorm', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='FAN_IN', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FAN_OUT', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AVERAGE', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=608, + serialized_end=660, +) + +_SOLVERPARAMETER_SOLVERMODE = _descriptor.EnumDescriptor( + name='SolverMode', + full_name='caffe.SolverParameter.SolverMode', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='CPU', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='GPU', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2035, + serialized_end=2065, +) + +_SOLVERPARAMETER_SOLVERTYPE = _descriptor.EnumDescriptor( + name='SolverType', + full_name='caffe.SolverParameter.SolverType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='SGD', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='NESTEROV', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ADAGRAD', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2067, + serialized_end=2115, +) + +_PARAMSPEC_DIMCHECKMODE = _descriptor.EnumDescriptor( + name='DimCheckMode', + full_name='caffe.ParamSpec.DimCheckMode', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='STRICT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PERMISSIVE', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2546, + serialized_end=2588, +) + +_BNPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.BNParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_CONVOLUTIONPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.ConvolutionParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_DATAPARAMETER_DB = _descriptor.EnumDescriptor( + name='DB', + full_name='caffe.DataParameter.DB', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='LEVELDB', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LMDB', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=6886, + serialized_end=6913, +) + +_ELTWISEPARAMETER_ELTWISEOP = _descriptor.EnumDescriptor( + name='EltwiseOp', + full_name='caffe.EltwiseParameter.EltwiseOp', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='PROD', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SUM', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MAX', index=2, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STOCHASTIC_SUM', index=3, number=3, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=7253, + serialized_end=7312, +) + +_HINGELOSSPARAMETER_NORM = _descriptor.EnumDescriptor( + name='Norm', + full_name='caffe.HingeLossParameter.Norm', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='L1', index=0, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='L2', index=1, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=7638, + serialized_end=7660, +) + +_VIDEODATAPARAMETER_MODALITY = _descriptor.EnumDescriptor( + name='Modality', + full_name='caffe.VideoDataParameter.Modality', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='RGB', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FLOW', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=8353, + serialized_end=8382, +) + +_LRNPARAMETER_NORMREGION = _descriptor.EnumDescriptor( + name='NormRegion', + full_name='caffe.LRNParameter.NormRegion', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='ACROSS_CHANNELS', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='WITHIN_CHANNEL', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=8837, + serialized_end=8890, +) + +_POOLINGPARAMETER_POOLMETHOD = _descriptor.EnumDescriptor( + name='PoolMethod', + full_name='caffe.PoolingParameter.PoolMethod', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='MAX', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AVE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STOCHASTIC', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=9414, + serialized_end=9460, +) + +_POOLINGPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.PoolingParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_REDUCTIONPARAMETER_REDUCTIONOP = _descriptor.EnumDescriptor( + name='ReductionOp', + full_name='caffe.ReductionParameter.ReductionOp', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='SUM', index=0, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ASUM', index=1, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SUMSQ', index=2, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MEAN', index=3, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TOPK', index=4, number=5, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=9783, + serialized_end=9846, +) + +_RELUPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.ReLUParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_SIGMOIDPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.SigmoidParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_SOFTMAXPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.SoftmaxParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_TANHPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.TanHParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_SPPPARAMETER_POOLMETHOD = _descriptor.EnumDescriptor( + name='PoolMethod', + full_name='caffe.SPPParameter.PoolMethod', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='MAX', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AVE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STOCHASTIC', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=9414, + serialized_end=9460, +) + +_SPPPARAMETER_ENGINE = _descriptor.EnumDescriptor( + name='Engine', + full_name='caffe.SPPParameter.Engine', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='DEFAULT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CAFFE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CUDNN', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=5924, + serialized_end=5967, +) + +_V1LAYERPARAMETER_LAYERTYPE = _descriptor.EnumDescriptor( + name='LayerType', + full_name='caffe.V1LayerParameter.LayerType', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='NONE', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ABSVAL', index=1, number=35, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ACCURACY', index=2, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ARGMAX', index=3, number=30, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='BNLL', index=4, number=2, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONCAT', index=5, number=3, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONTRASTIVE_LOSS', index=6, number=37, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='CONVOLUTION', index=7, number=4, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DATA', index=8, number=5, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DECONVOLUTION', index=9, number=39, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DROPOUT', index=10, number=6, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='DUMMY_DATA', index=11, number=32, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='EUCLIDEAN_LOSS', index=12, number=7, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='ELTWISE', index=13, number=25, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='EXP', index=14, number=38, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='FLATTEN', index=15, number=8, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='HDF5_DATA', index=16, number=9, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='HDF5_OUTPUT', index=17, number=10, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='HINGE_LOSS', index=18, number=28, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IM2COL', index=19, number=11, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='IMAGE_DATA', index=20, number=12, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INFOGAIN_LOSS', index=21, number=13, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='INNER_PRODUCT', index=22, number=14, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='LRN', index=23, number=15, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MEMORY_DATA', index=24, number=29, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MULTINOMIAL_LOGISTIC_LOSS', index=25, number=16, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='MVN', index=26, number=34, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='POOLING', index=27, number=17, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='POWER', index=28, number=26, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='RELU', index=29, number=18, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIGMOID', index=30, number=19, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SIGMOID_CROSS_ENTROPY_LOSS', index=31, number=27, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SILENCE', index=32, number=36, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SOFTMAX', index=33, number=20, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SOFTMAX_LOSS', index=34, number=21, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SPLIT', index=35, number=22, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='SLICE', index=36, number=33, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='TANH', index=37, number=23, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='WINDOW_DATA', index=38, number=24, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='THRESHOLD', index=39, number=31, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=13224, + serialized_end=13824, +) + +_V1LAYERPARAMETER_DIMCHECKMODE = _descriptor.EnumDescriptor( + name='DimCheckMode', + full_name='caffe.V1LayerParameter.DimCheckMode', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='STRICT', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='PERMISSIVE', index=1, number=1, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=2546, + serialized_end=2588, +) + +_V0LAYERPARAMETER_POOLMETHOD = _descriptor.EnumDescriptor( + name='PoolMethod', + full_name='caffe.V0LayerParameter.PoolMethod', + filename=None, + file=DESCRIPTOR, + values=[ + _descriptor.EnumValueDescriptor( + name='MAX', index=0, number=0, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='AVE', index=1, number=1, + options=None, + type=None), + _descriptor.EnumValueDescriptor( + name='STOCHASTIC', index=2, number=2, + options=None, + type=None), + ], + containing_type=None, + options=None, + serialized_start=9414, + serialized_end=9460, +) + + +_BLOBSHAPE = _descriptor.Descriptor( + name='BlobShape', + full_name='caffe.BlobShape', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='dim', full_name='caffe.BlobShape.dim', index=0, + number=1, type=3, cpp_type=2, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), '\020\001')), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=22, + serialized_end=50, +) + + +_BLOBPROTO = _descriptor.Descriptor( + name='BlobProto', + full_name='caffe.BlobProto', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='shape', full_name='caffe.BlobProto.shape', index=0, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='data', full_name='caffe.BlobProto.data', index=1, + number=5, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), '\020\001')), + _descriptor.FieldDescriptor( + name='diff', full_name='caffe.BlobProto.diff', index=2, + number=6, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), '\020\001')), + _descriptor.FieldDescriptor( + name='num', full_name='caffe.BlobProto.num', index=3, + number=1, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='channels', full_name='caffe.BlobProto.channels', index=4, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='height', full_name='caffe.BlobProto.height', index=5, + number=3, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='width', full_name='caffe.BlobProto.width', index=6, + number=4, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=53, + serialized_end=207, +) + + +_BLOBPROTOVECTOR = _descriptor.Descriptor( + name='BlobProtoVector', + full_name='caffe.BlobProtoVector', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='blobs', full_name='caffe.BlobProtoVector.blobs', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=209, + serialized_end=259, +) + + +_DATUM = _descriptor.Descriptor( + name='Datum', + full_name='caffe.Datum', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='channels', full_name='caffe.Datum.channels', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='height', full_name='caffe.Datum.height', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='width', full_name='caffe.Datum.width', index=2, + number=3, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='data', full_name='caffe.Datum.data', index=3, + number=4, type=12, cpp_type=9, label=1, + has_default_value=False, default_value="", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='label', full_name='caffe.Datum.label', index=4, + number=5, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='float_data', full_name='caffe.Datum.float_data', index=5, + number=6, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='encoded', full_name='caffe.Datum.encoded', index=6, + number=7, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=262, + serialized_end=391, +) + + +_FILLERPARAMETER = _descriptor.Descriptor( + name='FillerParameter', + full_name='caffe.FillerParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='type', full_name='caffe.FillerParameter.type', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=True, default_value=unicode("constant", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='value', full_name='caffe.FillerParameter.value', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='min', full_name='caffe.FillerParameter.min', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='max', full_name='caffe.FillerParameter.max', index=3, + number=4, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean', full_name='caffe.FillerParameter.mean', index=4, + number=5, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='std', full_name='caffe.FillerParameter.std', index=5, + number=6, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='sparse', full_name='caffe.FillerParameter.sparse', index=6, + number=7, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='variance_norm', full_name='caffe.FillerParameter.variance_norm', index=7, + number=8, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _FILLERPARAMETER_VARIANCENORM, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=394, + serialized_end=660, +) + + +_NETPARAMETER = _descriptor.Descriptor( + name='NetParameter', + full_name='caffe.NetParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='caffe.NetParameter.name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='input', full_name='caffe.NetParameter.input', index=1, + number=3, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='input_shape', full_name='caffe.NetParameter.input_shape', index=2, + number=8, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='input_dim', full_name='caffe.NetParameter.input_dim', index=3, + number=4, type=5, cpp_type=1, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='force_backward', full_name='caffe.NetParameter.force_backward', index=4, + number=5, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='state', full_name='caffe.NetParameter.state', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='debug_info', full_name='caffe.NetParameter.debug_info', index=6, + number=7, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='layer', full_name='caffe.NetParameter.layer', index=7, + number=100, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mem_param', full_name='caffe.NetParameter.mem_param', index=8, + number=200, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='layers', full_name='caffe.NetParameter.layers', index=9, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=663, + serialized_end=989, +) + + +_SOLVERPARAMETER = _descriptor.Descriptor( + name='SolverParameter', + full_name='caffe.SolverParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='net', full_name='caffe.SolverParameter.net', index=0, + number=24, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='net_param', full_name='caffe.SolverParameter.net_param', index=1, + number=25, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='train_net', full_name='caffe.SolverParameter.train_net', index=2, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_net', full_name='caffe.SolverParameter.test_net', index=3, + number=2, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='train_net_param', full_name='caffe.SolverParameter.train_net_param', index=4, + number=21, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_net_param', full_name='caffe.SolverParameter.test_net_param', index=5, + number=22, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='train_state', full_name='caffe.SolverParameter.train_state', index=6, + number=26, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_state', full_name='caffe.SolverParameter.test_state', index=7, + number=27, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_iter', full_name='caffe.SolverParameter.test_iter', index=8, + number=3, type=5, cpp_type=1, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_interval', full_name='caffe.SolverParameter.test_interval', index=9, + number=4, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_compute_loss', full_name='caffe.SolverParameter.test_compute_loss', index=10, + number=19, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='test_initialization', full_name='caffe.SolverParameter.test_initialization', index=11, + number=32, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='base_lr', full_name='caffe.SolverParameter.base_lr', index=12, + number=5, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='display', full_name='caffe.SolverParameter.display', index=13, + number=6, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='average_loss', full_name='caffe.SolverParameter.average_loss', index=14, + number=33, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='max_iter', full_name='caffe.SolverParameter.max_iter', index=15, + number=7, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='iter_size', full_name='caffe.SolverParameter.iter_size', index=16, + number=36, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='lr_policy', full_name='caffe.SolverParameter.lr_policy', index=17, + number=8, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='gamma', full_name='caffe.SolverParameter.gamma', index=18, + number=9, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='power', full_name='caffe.SolverParameter.power', index=19, + number=10, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='momentum', full_name='caffe.SolverParameter.momentum', index=20, + number=11, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='weight_decay', full_name='caffe.SolverParameter.weight_decay', index=21, + number=12, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='regularization_type', full_name='caffe.SolverParameter.regularization_type', index=22, + number=29, type=9, cpp_type=9, label=1, + has_default_value=True, default_value=unicode("L2", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stepsize', full_name='caffe.SolverParameter.stepsize', index=23, + number=13, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stepvalue', full_name='caffe.SolverParameter.stepvalue', index=24, + number=34, type=5, cpp_type=1, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='clip_gradients', full_name='caffe.SolverParameter.clip_gradients', index=25, + number=35, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='snapshot', full_name='caffe.SolverParameter.snapshot', index=26, + number=14, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='snapshot_prefix', full_name='caffe.SolverParameter.snapshot_prefix', index=27, + number=15, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='snapshot_diff', full_name='caffe.SolverParameter.snapshot_diff', index=28, + number=16, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='solver_mode', full_name='caffe.SolverParameter.solver_mode', index=29, + number=17, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='device_id', full_name='caffe.SolverParameter.device_id', index=30, + number=18, type=5, cpp_type=1, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='group_id', full_name='caffe.SolverParameter.group_id', index=31, + number=38, type=5, cpp_type=1, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='random_seed', full_name='caffe.SolverParameter.random_seed', index=32, + number=20, type=3, cpp_type=2, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='solver_type', full_name='caffe.SolverParameter.solver_type', index=33, + number=30, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='delta', full_name='caffe.SolverParameter.delta', index=34, + number=31, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1e-08, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='debug_info', full_name='caffe.SolverParameter.debug_info', index=35, + number=23, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='snapshot_after_train', full_name='caffe.SolverParameter.snapshot_after_train', index=36, + number=28, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='richness', full_name='caffe.SolverParameter.richness', index=37, + number=37, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=300, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SOLVERPARAMETER_SOLVERMODE, + _SOLVERPARAMETER_SOLVERTYPE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=992, + serialized_end=2115, +) + + +_SOLVERSTATE = _descriptor.Descriptor( + name='SolverState', + full_name='caffe.SolverState', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='iter', full_name='caffe.SolverState.iter', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='learned_net', full_name='caffe.SolverState.learned_net', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='history', full_name='caffe.SolverState.history', index=2, + number=3, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='current_step', full_name='caffe.SolverState.current_step', index=3, + number=4, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=2117, + serialized_end=2225, +) + + +_NETSTATE = _descriptor.Descriptor( + name='NetState', + full_name='caffe.NetState', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='phase', full_name='caffe.NetState.phase', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='level', full_name='caffe.NetState.level', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stage', full_name='caffe.NetState.stage', index=2, + number=3, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=2227, + serialized_end=2305, +) + + +_NETSTATERULE = _descriptor.Descriptor( + name='NetStateRule', + full_name='caffe.NetStateRule', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='phase', full_name='caffe.NetStateRule.phase', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='min_level', full_name='caffe.NetStateRule.min_level', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='max_level', full_name='caffe.NetStateRule.max_level', index=2, + number=3, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stage', full_name='caffe.NetStateRule.stage', index=3, + number=4, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='not_stage', full_name='caffe.NetStateRule.not_stage', index=4, + number=5, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=2307, + serialized_end=2422, +) + + +_PARAMSPEC = _descriptor.Descriptor( + name='ParamSpec', + full_name='caffe.ParamSpec', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='caffe.ParamSpec.name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='share_mode', full_name='caffe.ParamSpec.share_mode', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='lr_mult', full_name='caffe.ParamSpec.lr_mult', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='decay_mult', full_name='caffe.ParamSpec.decay_mult', index=3, + number=4, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _PARAMSPEC_DIMCHECKMODE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=2425, + serialized_end=2588, +) + + +_LAYERPARAMETER = _descriptor.Descriptor( + name='LayerParameter', + full_name='caffe.LayerParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='caffe.LayerParameter.name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='type', full_name='caffe.LayerParameter.type', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bottom', full_name='caffe.LayerParameter.bottom', index=2, + number=3, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='top', full_name='caffe.LayerParameter.top', index=3, + number=4, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='phase', full_name='caffe.LayerParameter.phase', index=4, + number=10, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='loss_weight', full_name='caffe.LayerParameter.loss_weight', index=5, + number=5, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='param', full_name='caffe.LayerParameter.param', index=6, + number=6, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='blobs', full_name='caffe.LayerParameter.blobs', index=7, + number=7, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='propagate_down', full_name='caffe.LayerParameter.propagate_down', index=8, + number=11, type=8, cpp_type=7, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='include', full_name='caffe.LayerParameter.include', index=9, + number=8, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='exclude', full_name='caffe.LayerParameter.exclude', index=10, + number=9, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='transform_param', full_name='caffe.LayerParameter.transform_param', index=11, + number=100, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='loss_param', full_name='caffe.LayerParameter.loss_param', index=12, + number=101, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='accuracy_param', full_name='caffe.LayerParameter.accuracy_param', index=13, + number=102, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='argmax_param', full_name='caffe.LayerParameter.argmax_param', index=14, + number=103, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bn_param', full_name='caffe.LayerParameter.bn_param', index=15, + number=137, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='concat_param', full_name='caffe.LayerParameter.concat_param', index=16, + number=104, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='contrastive_loss_param', full_name='caffe.LayerParameter.contrastive_loss_param', index=17, + number=105, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='convolution_param', full_name='caffe.LayerParameter.convolution_param', index=18, + number=106, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='data_param', full_name='caffe.LayerParameter.data_param', index=19, + number=107, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dropout_param', full_name='caffe.LayerParameter.dropout_param', index=20, + number=108, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dummy_data_param', full_name='caffe.LayerParameter.dummy_data_param', index=21, + number=109, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='eltwise_param', full_name='caffe.LayerParameter.eltwise_param', index=22, + number=110, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='exp_param', full_name='caffe.LayerParameter.exp_param', index=23, + number=111, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='flatten_param', full_name='caffe.LayerParameter.flatten_param', index=24, + number=135, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hdf5_data_param', full_name='caffe.LayerParameter.hdf5_data_param', index=25, + number=112, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hdf5_output_param', full_name='caffe.LayerParameter.hdf5_output_param', index=26, + number=113, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hinge_loss_param', full_name='caffe.LayerParameter.hinge_loss_param', index=27, + number=114, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='image_data_param', full_name='caffe.LayerParameter.image_data_param', index=28, + number=115, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='infogain_loss_param', full_name='caffe.LayerParameter.infogain_loss_param', index=29, + number=116, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='inner_product_param', full_name='caffe.LayerParameter.inner_product_param', index=30, + number=117, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='log_param', full_name='caffe.LayerParameter.log_param', index=31, + number=134, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='lrn_param', full_name='caffe.LayerParameter.lrn_param', index=32, + number=118, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='memory_data_param', full_name='caffe.LayerParameter.memory_data_param', index=33, + number=119, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mvn_param', full_name='caffe.LayerParameter.mvn_param', index=34, + number=120, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pooling_param', full_name='caffe.LayerParameter.pooling_param', index=35, + number=121, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='power_param', full_name='caffe.LayerParameter.power_param', index=36, + number=122, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='prelu_param', full_name='caffe.LayerParameter.prelu_param', index=37, + number=131, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='python_param', full_name='caffe.LayerParameter.python_param', index=38, + number=130, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='reduction_param', full_name='caffe.LayerParameter.reduction_param', index=39, + number=136, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='relu_param', full_name='caffe.LayerParameter.relu_param', index=40, + number=123, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='reshape_param', full_name='caffe.LayerParameter.reshape_param', index=41, + number=133, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='seg_data_param', full_name='caffe.LayerParameter.seg_data_param', index=42, + number=141, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='sigmoid_param', full_name='caffe.LayerParameter.sigmoid_param', index=43, + number=124, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='softmax_param', full_name='caffe.LayerParameter.softmax_param', index=44, + number=125, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='spp_param', full_name='caffe.LayerParameter.spp_param', index=45, + number=132, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='slice_param', full_name='caffe.LayerParameter.slice_param', index=46, + number=126, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='tanh_param', full_name='caffe.LayerParameter.tanh_param', index=47, + number=127, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='threshold_param', full_name='caffe.LayerParameter.threshold_param', index=48, + number=128, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='window_data_param', full_name='caffe.LayerParameter.window_data_param', index=49, + number=129, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='video_data_param', full_name='caffe.LayerParameter.video_data_param', index=50, + number=140, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='roi_pooling_param', full_name='caffe.LayerParameter.roi_pooling_param', index=51, + number=150, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale_param', full_name='caffe.LayerParameter.scale_param', index=52, + number=160, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_param', full_name='caffe.LayerParameter.bias_param', index=53, + number=161, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batch_reduction_param', full_name='caffe.LayerParameter.batch_reduction_param', index=54, + number=162, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=2591, + serialized_end=5039, +) + + +_TRANSFORMATIONPARAMETER = _descriptor.Descriptor( + name='TransformationParameter', + full_name='caffe.TransformationParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.TransformationParameter.scale', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mirror', full_name='caffe.TransformationParameter.mirror', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='crop_size', full_name='caffe.TransformationParameter.crop_size', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean_file', full_name='caffe.TransformationParameter.mean_file', index=3, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean_value', full_name='caffe.TransformationParameter.mean_value', index=4, + number=5, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='force_color', full_name='caffe.TransformationParameter.force_color', index=5, + number=6, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='force_gray', full_name='caffe.TransformationParameter.force_gray', index=6, + number=7, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='fix_crop', full_name='caffe.TransformationParameter.fix_crop', index=7, + number=10, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='more_fix_crop', full_name='caffe.TransformationParameter.more_fix_crop', index=8, + number=15, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='multi_scale', full_name='caffe.TransformationParameter.multi_scale', index=9, + number=11, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale_ratios', full_name='caffe.TransformationParameter.scale_ratios', index=10, + number=12, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='max_distort', full_name='caffe.TransformationParameter.max_distort', index=11, + number=13, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='is_flow', full_name='caffe.TransformationParameter.is_flow', index=12, + number=14, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='original_image', full_name='caffe.TransformationParameter.original_image', index=13, + number=20, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride', full_name='caffe.TransformationParameter.stride', index=14, + number=16, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='upper_size', full_name='caffe.TransformationParameter.upper_size', index=15, + number=17, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='upper_height', full_name='caffe.TransformationParameter.upper_height', index=16, + number=18, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='upper_width', full_name='caffe.TransformationParameter.upper_width', index=17, + number=19, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=5042, + serialized_end=5490, +) + + +_LOSSPARAMETER = _descriptor.Descriptor( + name='LossParameter', + full_name='caffe.LossParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='ignore_label', full_name='caffe.LossParameter.ignore_label', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='normalize', full_name='caffe.LossParameter.normalize', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=5492, + serialized_end=5554, +) + + +_ACCURACYPARAMETER = _descriptor.Descriptor( + name='AccuracyParameter', + full_name='caffe.AccuracyParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='top_k', full_name='caffe.AccuracyParameter.top_k', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.AccuracyParameter.axis', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='ignore_label', full_name='caffe.AccuracyParameter.ignore_label', index=2, + number=3, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=5556, + serialized_end=5632, +) + + +_ARGMAXPARAMETER = _descriptor.Descriptor( + name='ArgMaxParameter', + full_name='caffe.ArgMaxParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='out_max_val', full_name='caffe.ArgMaxParameter.out_max_val', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='top_k', full_name='caffe.ArgMaxParameter.top_k', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=5634, + serialized_end=5697, +) + + +_BNPARAMETER = _descriptor.Descriptor( + name='BNParameter', + full_name='caffe.BNParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='slope_filler', full_name='caffe.BNParameter.slope_filler', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_filler', full_name='caffe.BNParameter.bias_filler', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='momentum', full_name='caffe.BNParameter.momentum', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.9, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='eps', full_name='caffe.BNParameter.eps', index=3, + number=4, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1e-05, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='frozen', full_name='caffe.BNParameter.frozen', index=4, + number=5, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.BNParameter.engine', index=5, + number=6, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _BNPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=5700, + serialized_end=5967, +) + + +_CONCATPARAMETER = _descriptor.Descriptor( + name='ConcatParameter', + full_name='caffe.ConcatParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.ConcatParameter.axis', index=0, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='concat_dim', full_name='caffe.ConcatParameter.concat_dim', index=1, + number=1, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=5969, + serialized_end=6026, +) + + +_CONTRASTIVELOSSPARAMETER = _descriptor.Descriptor( + name='ContrastiveLossParameter', + full_name='caffe.ContrastiveLossParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='margin', full_name='caffe.ContrastiveLossParameter.margin', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='legacy_version', full_name='caffe.ContrastiveLossParameter.legacy_version', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=6028, + serialized_end=6104, +) + + +_CONVOLUTIONPARAMETER = _descriptor.Descriptor( + name='ConvolutionParameter', + full_name='caffe.ConvolutionParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='num_output', full_name='caffe.ConvolutionParameter.num_output', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_term', full_name='caffe.ConvolutionParameter.bias_term', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad', full_name='caffe.ConvolutionParameter.pad', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad_h', full_name='caffe.ConvolutionParameter.pad_h', index=3, + number=9, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad_w', full_name='caffe.ConvolutionParameter.pad_w', index=4, + number=10, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernel_size', full_name='caffe.ConvolutionParameter.kernel_size', index=5, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernel_h', full_name='caffe.ConvolutionParameter.kernel_h', index=6, + number=11, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernel_w', full_name='caffe.ConvolutionParameter.kernel_w', index=7, + number=12, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='group', full_name='caffe.ConvolutionParameter.group', index=8, + number=5, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride', full_name='caffe.ConvolutionParameter.stride', index=9, + number=6, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride_h', full_name='caffe.ConvolutionParameter.stride_h', index=10, + number=13, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride_w', full_name='caffe.ConvolutionParameter.stride_w', index=11, + number=14, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dilation', full_name='caffe.ConvolutionParameter.dilation', index=12, + number=16, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dilation_h', full_name='caffe.ConvolutionParameter.dilation_h', index=13, + number=17, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dilation_w', full_name='caffe.ConvolutionParameter.dilation_w', index=14, + number=18, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='weight_filler', full_name='caffe.ConvolutionParameter.weight_filler', index=15, + number=7, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_filler', full_name='caffe.ConvolutionParameter.bias_filler', index=16, + number=8, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.ConvolutionParameter.engine', index=17, + number=15, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _CONVOLUTIONPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=6107, + serialized_end=6615, +) + + +_DATAPARAMETER = _descriptor.Descriptor( + name='DataParameter', + full_name='caffe.DataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.DataParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batch_size', full_name='caffe.DataParameter.batch_size', index=1, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='rand_skip', full_name='caffe.DataParameter.rand_skip', index=2, + number=7, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='backend', full_name='caffe.DataParameter.backend', index=3, + number=8, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.DataParameter.scale', index=4, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean_file', full_name='caffe.DataParameter.mean_file', index=5, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='crop_size', full_name='caffe.DataParameter.crop_size', index=6, + number=5, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mirror', full_name='caffe.DataParameter.mirror', index=7, + number=6, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='force_encoded_color', full_name='caffe.DataParameter.force_encoded_color', index=8, + number=9, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shuffle', full_name='caffe.DataParameter.shuffle', index=9, + number=10, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _DATAPARAMETER_DB, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=6618, + serialized_end=6913, +) + + +_DROPOUTPARAMETER = _descriptor.Descriptor( + name='DropoutParameter', + full_name='caffe.DropoutParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='dropout_ratio', full_name='caffe.DropoutParameter.dropout_ratio', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=6915, + serialized_end=6961, +) + + +_DUMMYDATAPARAMETER = _descriptor.Descriptor( + name='DummyDataParameter', + full_name='caffe.DummyDataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='data_filler', full_name='caffe.DummyDataParameter.data_filler', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shape', full_name='caffe.DummyDataParameter.shape', index=1, + number=6, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='num', full_name='caffe.DummyDataParameter.num', index=2, + number=2, type=13, cpp_type=3, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='channels', full_name='caffe.DummyDataParameter.channels', index=3, + number=3, type=13, cpp_type=3, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='height', full_name='caffe.DummyDataParameter.height', index=4, + number=4, type=13, cpp_type=3, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='width', full_name='caffe.DummyDataParameter.width', index=5, + number=5, type=13, cpp_type=3, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=6964, + serialized_end=7124, +) + + +_ELTWISEPARAMETER = _descriptor.Descriptor( + name='EltwiseParameter', + full_name='caffe.EltwiseParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='operation', full_name='caffe.EltwiseParameter.operation', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='coeff', full_name='caffe.EltwiseParameter.coeff', index=1, + number=2, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stable_prod_grad', full_name='caffe.EltwiseParameter.stable_prod_grad', index=2, + number=3, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _ELTWISEPARAMETER_ELTWISEOP, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7127, + serialized_end=7312, +) + + +_EXPPARAMETER = _descriptor.Descriptor( + name='ExpParameter', + full_name='caffe.ExpParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='base', full_name='caffe.ExpParameter.base', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.ExpParameter.scale', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shift', full_name='caffe.ExpParameter.shift', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7314, + serialized_end=7382, +) + + +_FLATTENPARAMETER = _descriptor.Descriptor( + name='FlattenParameter', + full_name='caffe.FlattenParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.FlattenParameter.axis', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='end_axis', full_name='caffe.FlattenParameter.end_axis', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7384, + serialized_end=7441, +) + + +_HDF5DATAPARAMETER = _descriptor.Descriptor( + name='HDF5DataParameter', + full_name='caffe.HDF5DataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.HDF5DataParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batch_size', full_name='caffe.HDF5DataParameter.batch_size', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shuffle', full_name='caffe.HDF5DataParameter.shuffle', index=2, + number=3, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7443, + serialized_end=7522, +) + + +_HDF5OUTPUTPARAMETER = _descriptor.Descriptor( + name='HDF5OutputParameter', + full_name='caffe.HDF5OutputParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='file_name', full_name='caffe.HDF5OutputParameter.file_name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7524, + serialized_end=7564, +) + + +_HINGELOSSPARAMETER = _descriptor.Descriptor( + name='HingeLossParameter', + full_name='caffe.HingeLossParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='norm', full_name='caffe.HingeLossParameter.norm', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _HINGELOSSPARAMETER_NORM, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7566, + serialized_end=7660, +) + + +_IMAGEDATAPARAMETER = _descriptor.Descriptor( + name='ImageDataParameter', + full_name='caffe.ImageDataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.ImageDataParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batch_size', full_name='caffe.ImageDataParameter.batch_size', index=1, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='rand_skip', full_name='caffe.ImageDataParameter.rand_skip', index=2, + number=7, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shuffle', full_name='caffe.ImageDataParameter.shuffle', index=3, + number=8, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_height', full_name='caffe.ImageDataParameter.new_height', index=4, + number=9, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_width', full_name='caffe.ImageDataParameter.new_width', index=5, + number=10, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='is_color', full_name='caffe.ImageDataParameter.is_color', index=6, + number=11, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.ImageDataParameter.scale', index=7, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean_file', full_name='caffe.ImageDataParameter.mean_file', index=8, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='crop_size', full_name='caffe.ImageDataParameter.crop_size', index=9, + number=5, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mirror', full_name='caffe.ImageDataParameter.mirror', index=10, + number=6, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='root_folder', full_name='caffe.ImageDataParameter.root_folder', index=11, + number=12, type=9, cpp_type=9, label=1, + has_default_value=True, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7663, + serialized_end=7939, +) + + +_VIDEODATAPARAMETER = _descriptor.Descriptor( + name='VideoDataParameter', + full_name='caffe.VideoDataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.VideoDataParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batch_size', full_name='caffe.VideoDataParameter.batch_size', index=1, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='rand_skip', full_name='caffe.VideoDataParameter.rand_skip', index=2, + number=7, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shuffle', full_name='caffe.VideoDataParameter.shuffle', index=3, + number=8, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_height', full_name='caffe.VideoDataParameter.new_height', index=4, + number=9, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_width', full_name='caffe.VideoDataParameter.new_width', index=5, + number=10, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_length', full_name='caffe.VideoDataParameter.new_length', index=6, + number=11, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='num_segments', full_name='caffe.VideoDataParameter.num_segments', index=7, + number=12, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.VideoDataParameter.scale', index=8, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean_file', full_name='caffe.VideoDataParameter.mean_file', index=9, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='crop_size', full_name='caffe.VideoDataParameter.crop_size', index=10, + number=5, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mirror', full_name='caffe.VideoDataParameter.mirror', index=11, + number=6, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='modality', full_name='caffe.VideoDataParameter.modality', index=12, + number=13, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='name_pattern', full_name='caffe.VideoDataParameter.name_pattern', index=13, + number=14, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='encoded', full_name='caffe.VideoDataParameter.encoded', index=14, + number=15, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='grayscale', full_name='caffe.VideoDataParameter.grayscale', index=15, + number=16, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _VIDEODATAPARAMETER_MODALITY, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=7942, + serialized_end=8382, +) + + +_INFOGAINLOSSPARAMETER = _descriptor.Descriptor( + name='InfogainLossParameter', + full_name='caffe.InfogainLossParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.InfogainLossParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=8384, + serialized_end=8423, +) + + +_INNERPRODUCTPARAMETER = _descriptor.Descriptor( + name='InnerProductParameter', + full_name='caffe.InnerProductParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='num_output', full_name='caffe.InnerProductParameter.num_output', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_term', full_name='caffe.InnerProductParameter.bias_term', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='weight_filler', full_name='caffe.InnerProductParameter.weight_filler', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_filler', full_name='caffe.InnerProductParameter.bias_filler', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.InnerProductParameter.axis', index=4, + number=5, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=8426, + serialized_end=8603, +) + + +_LOGPARAMETER = _descriptor.Descriptor( + name='LogParameter', + full_name='caffe.LogParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='base', full_name='caffe.LogParameter.base', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.LogParameter.scale', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shift', full_name='caffe.LogParameter.shift', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=8605, + serialized_end=8673, +) + + +_LRNPARAMETER = _descriptor.Descriptor( + name='LRNParameter', + full_name='caffe.LRNParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='local_size', full_name='caffe.LRNParameter.local_size', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='alpha', full_name='caffe.LRNParameter.alpha', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='beta', full_name='caffe.LRNParameter.beta', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.75, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='norm_region', full_name='caffe.LRNParameter.norm_region', index=3, + number=4, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='k', full_name='caffe.LRNParameter.k', index=4, + number=5, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _LRNPARAMETER_NORMREGION, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=8676, + serialized_end=8890, +) + + +_MEMORYDATAPARAMETER = _descriptor.Descriptor( + name='MemoryDataParameter', + full_name='caffe.MemoryDataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='batch_size', full_name='caffe.MemoryDataParameter.batch_size', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='channels', full_name='caffe.MemoryDataParameter.channels', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='height', full_name='caffe.MemoryDataParameter.height', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='width', full_name='caffe.MemoryDataParameter.width', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=8892, + serialized_end=8982, +) + + +_MVNPARAMETER = _descriptor.Descriptor( + name='MVNParameter', + full_name='caffe.MVNParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='normalize_variance', full_name='caffe.MVNParameter.normalize_variance', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='across_channels', full_name='caffe.MVNParameter.across_channels', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='eps', full_name='caffe.MVNParameter.eps', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1e-09, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=8984, + serialized_end=9084, +) + + +_POOLINGPARAMETER = _descriptor.Descriptor( + name='PoolingParameter', + full_name='caffe.PoolingParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='pool', full_name='caffe.PoolingParameter.pool', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad', full_name='caffe.PoolingParameter.pad', index=1, + number=4, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad_h', full_name='caffe.PoolingParameter.pad_h', index=2, + number=9, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad_w', full_name='caffe.PoolingParameter.pad_w', index=3, + number=10, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernel_size', full_name='caffe.PoolingParameter.kernel_size', index=4, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernel_h', full_name='caffe.PoolingParameter.kernel_h', index=5, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernel_w', full_name='caffe.PoolingParameter.kernel_w', index=6, + number=6, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride', full_name='caffe.PoolingParameter.stride', index=7, + number=3, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride_h', full_name='caffe.PoolingParameter.stride_h', index=8, + number=7, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride_w', full_name='caffe.PoolingParameter.stride_w', index=9, + number=8, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.PoolingParameter.engine', index=10, + number=11, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='global_pooling', full_name='caffe.PoolingParameter.global_pooling', index=11, + number=12, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _POOLINGPARAMETER_POOLMETHOD, + _POOLINGPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=9087, + serialized_end=9505, +) + + +_POWERPARAMETER = _descriptor.Descriptor( + name='PowerParameter', + full_name='caffe.PowerParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='power', full_name='caffe.PowerParameter.power', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.PowerParameter.scale', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shift', full_name='caffe.PowerParameter.shift', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=9507, + serialized_end=9577, +) + + +_PYTHONPARAMETER = _descriptor.Descriptor( + name='PythonParameter', + full_name='caffe.PythonParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='module', full_name='caffe.PythonParameter.module', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='layer', full_name='caffe.PythonParameter.layer', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='param_str', full_name='caffe.PythonParameter.param_str', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=9579, + serialized_end=9646, +) + + +_REDUCTIONPARAMETER = _descriptor.Descriptor( + name='ReductionParameter', + full_name='caffe.ReductionParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='operation', full_name='caffe.ReductionParameter.operation', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.ReductionParameter.axis', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='coeff', full_name='caffe.ReductionParameter.coeff', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='k', full_name='caffe.ReductionParameter.k', index=3, + number=4, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _REDUCTIONPARAMETER_REDUCTIONOP, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=9649, + serialized_end=9846, +) + + +_RELUPARAMETER = _descriptor.Descriptor( + name='ReLUParameter', + full_name='caffe.ReLUParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='negative_slope', full_name='caffe.ReLUParameter.negative_slope', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.ReLUParameter.engine', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _RELUPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=9849, + serialized_end=9990, +) + + +_RESHAPEPARAMETER = _descriptor.Descriptor( + name='ReshapeParameter', + full_name='caffe.ReshapeParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='shape', full_name='caffe.ReshapeParameter.shape', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.ReshapeParameter.axis', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='num_axes', full_name='caffe.ReshapeParameter.num_axes', index=2, + number=3, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=-1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=9992, + serialized_end=10082, +) + + +_SEGDATAPARAMETER = _descriptor.Descriptor( + name='SegDataParameter', + full_name='caffe.SegDataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.SegDataParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='root_dir', full_name='caffe.SegDataParameter.root_dir', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shuffle', full_name='caffe.SegDataParameter.shuffle', index=2, + number=3, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='balance', full_name='caffe.SegDataParameter.balance', index=3, + number=4, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10084, + serialized_end=10184, +) + + +_SIGMOIDPARAMETER = _descriptor.Descriptor( + name='SigmoidParameter', + full_name='caffe.SigmoidParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.SigmoidParameter.engine', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SIGMOIDPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10186, + serialized_end=10306, +) + + +_SLICEPARAMETER = _descriptor.Descriptor( + name='SliceParameter', + full_name='caffe.SliceParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.SliceParameter.axis', index=0, + number=3, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='slice_point', full_name='caffe.SliceParameter.slice_point', index=1, + number=2, type=13, cpp_type=3, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='slice_dim', full_name='caffe.SliceParameter.slice_dim', index=2, + number=1, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10308, + serialized_end=10384, +) + + +_SOFTMAXPARAMETER = _descriptor.Descriptor( + name='SoftmaxParameter', + full_name='caffe.SoftmaxParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.SoftmaxParameter.engine', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.SoftmaxParameter.axis', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SOFTMAXPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10387, + serialized_end=10524, +) + + +_TANHPARAMETER = _descriptor.Descriptor( + name='TanHParameter', + full_name='caffe.TanHParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.TanHParameter.engine', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _TANHPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10526, + serialized_end=10640, +) + + +_THRESHOLDPARAMETER = _descriptor.Descriptor( + name='ThresholdParameter', + full_name='caffe.ThresholdParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='threshold', full_name='caffe.ThresholdParameter.threshold', index=0, + number=1, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10642, + serialized_end=10684, +) + + +_WINDOWDATAPARAMETER = _descriptor.Descriptor( + name='WindowDataParameter', + full_name='caffe.WindowDataParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='source', full_name='caffe.WindowDataParameter.source', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.WindowDataParameter.scale', index=1, + number=2, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mean_file', full_name='caffe.WindowDataParameter.mean_file', index=2, + number=3, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batch_size', full_name='caffe.WindowDataParameter.batch_size', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='crop_size', full_name='caffe.WindowDataParameter.crop_size', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mirror', full_name='caffe.WindowDataParameter.mirror', index=5, + number=6, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='fg_threshold', full_name='caffe.WindowDataParameter.fg_threshold', index=6, + number=7, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bg_threshold', full_name='caffe.WindowDataParameter.bg_threshold', index=7, + number=8, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='fg_fraction', full_name='caffe.WindowDataParameter.fg_fraction', index=8, + number=9, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.25, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='context_pad', full_name='caffe.WindowDataParameter.context_pad', index=9, + number=10, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='crop_mode', full_name='caffe.WindowDataParameter.crop_mode', index=10, + number=11, type=9, cpp_type=9, label=1, + has_default_value=True, default_value=unicode("warp", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='cache_images', full_name='caffe.WindowDataParameter.cache_images', index=11, + number=12, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='root_folder', full_name='caffe.WindowDataParameter.root_folder', index=12, + number=13, type=9, cpp_type=9, label=1, + has_default_value=True, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=10687, + serialized_end=11008, +) + + +_SPPPARAMETER = _descriptor.Descriptor( + name='SPPParameter', + full_name='caffe.SPPParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='pyramid_height', full_name='caffe.SPPParameter.pyramid_height', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pool', full_name='caffe.SPPParameter.pool', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='engine', full_name='caffe.SPPParameter.engine', index=2, + number=6, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _SPPPARAMETER_POOLMETHOD, + _SPPPARAMETER_ENGINE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=11011, + serialized_end=11246, +) + + +_ROIPOOLINGPARAMETER = _descriptor.Descriptor( + name='ROIPoolingParameter', + full_name='caffe.ROIPoolingParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='pooled_h', full_name='caffe.ROIPoolingParameter.pooled_h', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pooled_w', full_name='caffe.ROIPoolingParameter.pooled_w', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='spatial_scale', full_name='caffe.ROIPoolingParameter.spatial_scale', index=2, + number=3, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=11248, + serialized_end=11337, +) + + +_V1LAYERPARAMETER = _descriptor.Descriptor( + name='V1LayerParameter', + full_name='caffe.V1LayerParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='bottom', full_name='caffe.V1LayerParameter.bottom', index=0, + number=2, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='top', full_name='caffe.V1LayerParameter.top', index=1, + number=3, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='name', full_name='caffe.V1LayerParameter.name', index=2, + number=4, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='include', full_name='caffe.V1LayerParameter.include', index=3, + number=32, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='exclude', full_name='caffe.V1LayerParameter.exclude', index=4, + number=33, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='type', full_name='caffe.V1LayerParameter.type', index=5, + number=5, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='blobs', full_name='caffe.V1LayerParameter.blobs', index=6, + number=6, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='param', full_name='caffe.V1LayerParameter.param', index=7, + number=1001, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='blob_share_mode', full_name='caffe.V1LayerParameter.blob_share_mode', index=8, + number=1002, type=14, cpp_type=8, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='blobs_lr', full_name='caffe.V1LayerParameter.blobs_lr', index=9, + number=7, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='weight_decay', full_name='caffe.V1LayerParameter.weight_decay', index=10, + number=8, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='loss_weight', full_name='caffe.V1LayerParameter.loss_weight', index=11, + number=35, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='accuracy_param', full_name='caffe.V1LayerParameter.accuracy_param', index=12, + number=27, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='argmax_param', full_name='caffe.V1LayerParameter.argmax_param', index=13, + number=23, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='concat_param', full_name='caffe.V1LayerParameter.concat_param', index=14, + number=9, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='contrastive_loss_param', full_name='caffe.V1LayerParameter.contrastive_loss_param', index=15, + number=40, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='convolution_param', full_name='caffe.V1LayerParameter.convolution_param', index=16, + number=10, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='data_param', full_name='caffe.V1LayerParameter.data_param', index=17, + number=11, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dropout_param', full_name='caffe.V1LayerParameter.dropout_param', index=18, + number=12, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dummy_data_param', full_name='caffe.V1LayerParameter.dummy_data_param', index=19, + number=26, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='eltwise_param', full_name='caffe.V1LayerParameter.eltwise_param', index=20, + number=24, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='exp_param', full_name='caffe.V1LayerParameter.exp_param', index=21, + number=41, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hdf5_data_param', full_name='caffe.V1LayerParameter.hdf5_data_param', index=22, + number=13, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hdf5_output_param', full_name='caffe.V1LayerParameter.hdf5_output_param', index=23, + number=14, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hinge_loss_param', full_name='caffe.V1LayerParameter.hinge_loss_param', index=24, + number=29, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='image_data_param', full_name='caffe.V1LayerParameter.image_data_param', index=25, + number=15, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='infogain_loss_param', full_name='caffe.V1LayerParameter.infogain_loss_param', index=26, + number=16, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='inner_product_param', full_name='caffe.V1LayerParameter.inner_product_param', index=27, + number=17, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='lrn_param', full_name='caffe.V1LayerParameter.lrn_param', index=28, + number=18, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='memory_data_param', full_name='caffe.V1LayerParameter.memory_data_param', index=29, + number=22, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mvn_param', full_name='caffe.V1LayerParameter.mvn_param', index=30, + number=34, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pooling_param', full_name='caffe.V1LayerParameter.pooling_param', index=31, + number=19, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='power_param', full_name='caffe.V1LayerParameter.power_param', index=32, + number=21, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='relu_param', full_name='caffe.V1LayerParameter.relu_param', index=33, + number=30, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='sigmoid_param', full_name='caffe.V1LayerParameter.sigmoid_param', index=34, + number=38, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='softmax_param', full_name='caffe.V1LayerParameter.softmax_param', index=35, + number=39, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='slice_param', full_name='caffe.V1LayerParameter.slice_param', index=36, + number=31, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='tanh_param', full_name='caffe.V1LayerParameter.tanh_param', index=37, + number=37, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='threshold_param', full_name='caffe.V1LayerParameter.threshold_param', index=38, + number=25, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='window_data_param', full_name='caffe.V1LayerParameter.window_data_param', index=39, + number=20, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='transform_param', full_name='caffe.V1LayerParameter.transform_param', index=40, + number=36, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='loss_param', full_name='caffe.V1LayerParameter.loss_param', index=41, + number=42, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='layer', full_name='caffe.V1LayerParameter.layer', index=42, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _V1LAYERPARAMETER_LAYERTYPE, + _V1LAYERPARAMETER_DIMCHECKMODE, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=11340, + serialized_end=13868, +) + + +_V0LAYERPARAMETER = _descriptor.Descriptor( + name='V0LayerParameter', + full_name='caffe.V0LayerParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='name', full_name='caffe.V0LayerParameter.name', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='type', full_name='caffe.V0LayerParameter.type', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='num_output', full_name='caffe.V0LayerParameter.num_output', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='biasterm', full_name='caffe.V0LayerParameter.biasterm', index=3, + number=4, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='weight_filler', full_name='caffe.V0LayerParameter.weight_filler', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_filler', full_name='caffe.V0LayerParameter.bias_filler', index=5, + number=6, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pad', full_name='caffe.V0LayerParameter.pad', index=6, + number=7, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='kernelsize', full_name='caffe.V0LayerParameter.kernelsize', index=7, + number=8, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='group', full_name='caffe.V0LayerParameter.group', index=8, + number=9, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='stride', full_name='caffe.V0LayerParameter.stride', index=9, + number=10, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pool', full_name='caffe.V0LayerParameter.pool', index=10, + number=11, type=14, cpp_type=8, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='dropout_ratio', full_name='caffe.V0LayerParameter.dropout_ratio', index=11, + number=12, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='local_size', full_name='caffe.V0LayerParameter.local_size', index=12, + number=13, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='alpha', full_name='caffe.V0LayerParameter.alpha', index=13, + number=14, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='beta', full_name='caffe.V0LayerParameter.beta', index=14, + number=15, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.75, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='k', full_name='caffe.V0LayerParameter.k', index=15, + number=22, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='source', full_name='caffe.V0LayerParameter.source', index=16, + number=16, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='scale', full_name='caffe.V0LayerParameter.scale', index=17, + number=17, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='meanfile', full_name='caffe.V0LayerParameter.meanfile', index=18, + number=18, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=unicode("", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='batchsize', full_name='caffe.V0LayerParameter.batchsize', index=19, + number=19, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='cropsize', full_name='caffe.V0LayerParameter.cropsize', index=20, + number=20, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='mirror', full_name='caffe.V0LayerParameter.mirror', index=21, + number=21, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='blobs', full_name='caffe.V0LayerParameter.blobs', index=22, + number=50, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='blobs_lr', full_name='caffe.V0LayerParameter.blobs_lr', index=23, + number=51, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='weight_decay', full_name='caffe.V0LayerParameter.weight_decay', index=24, + number=52, type=2, cpp_type=6, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='rand_skip', full_name='caffe.V0LayerParameter.rand_skip', index=25, + number=53, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='det_fg_threshold', full_name='caffe.V0LayerParameter.det_fg_threshold', index=26, + number=54, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='det_bg_threshold', full_name='caffe.V0LayerParameter.det_bg_threshold', index=27, + number=55, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.5, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='det_fg_fraction', full_name='caffe.V0LayerParameter.det_fg_fraction', index=28, + number=56, type=2, cpp_type=6, label=1, + has_default_value=True, default_value=0.25, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='det_context_pad', full_name='caffe.V0LayerParameter.det_context_pad', index=29, + number=58, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='det_crop_mode', full_name='caffe.V0LayerParameter.det_crop_mode', index=30, + number=59, type=9, cpp_type=9, label=1, + has_default_value=True, default_value=unicode("warp", "utf-8"), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_num', full_name='caffe.V0LayerParameter.new_num', index=31, + number=60, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_channels', full_name='caffe.V0LayerParameter.new_channels', index=32, + number=61, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_height', full_name='caffe.V0LayerParameter.new_height', index=33, + number=62, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='new_width', full_name='caffe.V0LayerParameter.new_width', index=34, + number=63, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='shuffle_images', full_name='caffe.V0LayerParameter.shuffle_images', index=35, + number=64, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='concat_dim', full_name='caffe.V0LayerParameter.concat_dim', index=36, + number=65, type=13, cpp_type=3, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='hdf5_output_param', full_name='caffe.V0LayerParameter.hdf5_output_param', index=37, + number=1001, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _V0LAYERPARAMETER_POOLMETHOD, + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=13871, + serialized_end=14892, +) + + +_PRELUPARAMETER = _descriptor.Descriptor( + name='PReLUParameter', + full_name='caffe.PReLUParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='filler', full_name='caffe.PReLUParameter.filler', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='channel_shared', full_name='caffe.PReLUParameter.channel_shared', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=14894, + serialized_end=14981, +) + + +_SCALEPARAMETER = _descriptor.Descriptor( + name='ScaleParameter', + full_name='caffe.ScaleParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.ScaleParameter.axis', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='num_axes', full_name='caffe.ScaleParameter.num_axes', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='filler', full_name='caffe.ScaleParameter.filler', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_term', full_name='caffe.ScaleParameter.bias_term', index=3, + number=4, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='bias_filler', full_name='caffe.ScaleParameter.bias_filler', index=4, + number=5, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=14984, + serialized_end=15149, +) + + +_BIASPARAMETER = _descriptor.Descriptor( + name='BiasParameter', + full_name='caffe.BiasParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='axis', full_name='caffe.BiasParameter.axis', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='num_axes', full_name='caffe.BiasParameter.num_axes', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=True, default_value=1, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='filler', full_name='caffe.BiasParameter.filler', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=15151, + serialized_end=15244, +) + + +_BATCHREDUCTIONPARAMETER = _descriptor.Descriptor( + name='BatchReductionParameter', + full_name='caffe.BatchReductionParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='level', full_name='caffe.BatchReductionParameter.level', index=0, + number=1, type=5, cpp_type=1, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='reduction_param', full_name='caffe.BatchReductionParameter.reduction_param', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='pos', full_name='caffe.BatchReductionParameter.pos', index=2, + number=3, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=15246, + serialized_end=15358, +) + + +_MEMORYOPTIMIZATIONPARAMETER = _descriptor.Descriptor( + name='MemoryOptimizationParameter', + full_name='caffe.MemoryOptimizationParameter', + filename=None, + file=DESCRIPTOR, + containing_type=None, + fields=[ + _descriptor.FieldDescriptor( + name='optimize_train', full_name='caffe.MemoryOptimizationParameter.optimize_train', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=True, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='optimize_test', full_name='caffe.MemoryOptimizationParameter.optimize_test', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=True, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + _descriptor.FieldDescriptor( + name='exclude_blob', full_name='caffe.MemoryOptimizationParameter.exclude_blob', index=2, + number=3, type=9, cpp_type=9, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + options=None), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + options=None, + is_extendable=False, + extension_ranges=[], + serialized_start=15360, + serialized_end=15471, +) + +_BLOBPROTO.fields_by_name['shape'].message_type = _BLOBSHAPE +_BLOBPROTOVECTOR.fields_by_name['blobs'].message_type = _BLOBPROTO +_FILLERPARAMETER.fields_by_name['variance_norm'].enum_type = _FILLERPARAMETER_VARIANCENORM +_FILLERPARAMETER_VARIANCENORM.containing_type = _FILLERPARAMETER; +_NETPARAMETER.fields_by_name['input_shape'].message_type = _BLOBSHAPE +_NETPARAMETER.fields_by_name['state'].message_type = _NETSTATE +_NETPARAMETER.fields_by_name['layer'].message_type = _LAYERPARAMETER +_NETPARAMETER.fields_by_name['mem_param'].message_type = _MEMORYOPTIMIZATIONPARAMETER +_NETPARAMETER.fields_by_name['layers'].message_type = _V1LAYERPARAMETER +_SOLVERPARAMETER.fields_by_name['net_param'].message_type = _NETPARAMETER +_SOLVERPARAMETER.fields_by_name['train_net_param'].message_type = _NETPARAMETER +_SOLVERPARAMETER.fields_by_name['test_net_param'].message_type = _NETPARAMETER +_SOLVERPARAMETER.fields_by_name['train_state'].message_type = _NETSTATE +_SOLVERPARAMETER.fields_by_name['test_state'].message_type = _NETSTATE +_SOLVERPARAMETER.fields_by_name['solver_mode'].enum_type = _SOLVERPARAMETER_SOLVERMODE +_SOLVERPARAMETER.fields_by_name['solver_type'].enum_type = _SOLVERPARAMETER_SOLVERTYPE +_SOLVERPARAMETER_SOLVERMODE.containing_type = _SOLVERPARAMETER; +_SOLVERPARAMETER_SOLVERTYPE.containing_type = _SOLVERPARAMETER; +_SOLVERSTATE.fields_by_name['history'].message_type = _BLOBPROTO +_NETSTATE.fields_by_name['phase'].enum_type = _PHASE +_NETSTATERULE.fields_by_name['phase'].enum_type = _PHASE +_PARAMSPEC.fields_by_name['share_mode'].enum_type = _PARAMSPEC_DIMCHECKMODE +_PARAMSPEC_DIMCHECKMODE.containing_type = _PARAMSPEC; +_LAYERPARAMETER.fields_by_name['phase'].enum_type = _PHASE +_LAYERPARAMETER.fields_by_name['param'].message_type = _PARAMSPEC +_LAYERPARAMETER.fields_by_name['blobs'].message_type = _BLOBPROTO +_LAYERPARAMETER.fields_by_name['include'].message_type = _NETSTATERULE +_LAYERPARAMETER.fields_by_name['exclude'].message_type = _NETSTATERULE +_LAYERPARAMETER.fields_by_name['transform_param'].message_type = _TRANSFORMATIONPARAMETER +_LAYERPARAMETER.fields_by_name['loss_param'].message_type = _LOSSPARAMETER +_LAYERPARAMETER.fields_by_name['accuracy_param'].message_type = _ACCURACYPARAMETER +_LAYERPARAMETER.fields_by_name['argmax_param'].message_type = _ARGMAXPARAMETER +_LAYERPARAMETER.fields_by_name['bn_param'].message_type = _BNPARAMETER +_LAYERPARAMETER.fields_by_name['concat_param'].message_type = _CONCATPARAMETER +_LAYERPARAMETER.fields_by_name['contrastive_loss_param'].message_type = _CONTRASTIVELOSSPARAMETER +_LAYERPARAMETER.fields_by_name['convolution_param'].message_type = _CONVOLUTIONPARAMETER +_LAYERPARAMETER.fields_by_name['data_param'].message_type = _DATAPARAMETER +_LAYERPARAMETER.fields_by_name['dropout_param'].message_type = _DROPOUTPARAMETER +_LAYERPARAMETER.fields_by_name['dummy_data_param'].message_type = _DUMMYDATAPARAMETER +_LAYERPARAMETER.fields_by_name['eltwise_param'].message_type = _ELTWISEPARAMETER +_LAYERPARAMETER.fields_by_name['exp_param'].message_type = _EXPPARAMETER +_LAYERPARAMETER.fields_by_name['flatten_param'].message_type = _FLATTENPARAMETER +_LAYERPARAMETER.fields_by_name['hdf5_data_param'].message_type = _HDF5DATAPARAMETER +_LAYERPARAMETER.fields_by_name['hdf5_output_param'].message_type = _HDF5OUTPUTPARAMETER +_LAYERPARAMETER.fields_by_name['hinge_loss_param'].message_type = _HINGELOSSPARAMETER +_LAYERPARAMETER.fields_by_name['image_data_param'].message_type = _IMAGEDATAPARAMETER +_LAYERPARAMETER.fields_by_name['infogain_loss_param'].message_type = _INFOGAINLOSSPARAMETER +_LAYERPARAMETER.fields_by_name['inner_product_param'].message_type = _INNERPRODUCTPARAMETER +_LAYERPARAMETER.fields_by_name['log_param'].message_type = _LOGPARAMETER +_LAYERPARAMETER.fields_by_name['lrn_param'].message_type = _LRNPARAMETER +_LAYERPARAMETER.fields_by_name['memory_data_param'].message_type = _MEMORYDATAPARAMETER +_LAYERPARAMETER.fields_by_name['mvn_param'].message_type = _MVNPARAMETER +_LAYERPARAMETER.fields_by_name['pooling_param'].message_type = _POOLINGPARAMETER +_LAYERPARAMETER.fields_by_name['power_param'].message_type = _POWERPARAMETER +_LAYERPARAMETER.fields_by_name['prelu_param'].message_type = _PRELUPARAMETER +_LAYERPARAMETER.fields_by_name['python_param'].message_type = _PYTHONPARAMETER +_LAYERPARAMETER.fields_by_name['reduction_param'].message_type = _REDUCTIONPARAMETER +_LAYERPARAMETER.fields_by_name['relu_param'].message_type = _RELUPARAMETER +_LAYERPARAMETER.fields_by_name['reshape_param'].message_type = _RESHAPEPARAMETER +_LAYERPARAMETER.fields_by_name['seg_data_param'].message_type = _SEGDATAPARAMETER +_LAYERPARAMETER.fields_by_name['sigmoid_param'].message_type = _SIGMOIDPARAMETER +_LAYERPARAMETER.fields_by_name['softmax_param'].message_type = _SOFTMAXPARAMETER +_LAYERPARAMETER.fields_by_name['spp_param'].message_type = _SPPPARAMETER +_LAYERPARAMETER.fields_by_name['slice_param'].message_type = _SLICEPARAMETER +_LAYERPARAMETER.fields_by_name['tanh_param'].message_type = _TANHPARAMETER +_LAYERPARAMETER.fields_by_name['threshold_param'].message_type = _THRESHOLDPARAMETER +_LAYERPARAMETER.fields_by_name['window_data_param'].message_type = _WINDOWDATAPARAMETER +_LAYERPARAMETER.fields_by_name['video_data_param'].message_type = _VIDEODATAPARAMETER +_LAYERPARAMETER.fields_by_name['roi_pooling_param'].message_type = _ROIPOOLINGPARAMETER +_LAYERPARAMETER.fields_by_name['scale_param'].message_type = _SCALEPARAMETER +_LAYERPARAMETER.fields_by_name['bias_param'].message_type = _BIASPARAMETER +_LAYERPARAMETER.fields_by_name['batch_reduction_param'].message_type = _BATCHREDUCTIONPARAMETER +_BNPARAMETER.fields_by_name['slope_filler'].message_type = _FILLERPARAMETER +_BNPARAMETER.fields_by_name['bias_filler'].message_type = _FILLERPARAMETER +_BNPARAMETER.fields_by_name['engine'].enum_type = _BNPARAMETER_ENGINE +_BNPARAMETER_ENGINE.containing_type = _BNPARAMETER; +_CONVOLUTIONPARAMETER.fields_by_name['weight_filler'].message_type = _FILLERPARAMETER +_CONVOLUTIONPARAMETER.fields_by_name['bias_filler'].message_type = _FILLERPARAMETER +_CONVOLUTIONPARAMETER.fields_by_name['engine'].enum_type = _CONVOLUTIONPARAMETER_ENGINE +_CONVOLUTIONPARAMETER_ENGINE.containing_type = _CONVOLUTIONPARAMETER; +_DATAPARAMETER.fields_by_name['backend'].enum_type = _DATAPARAMETER_DB +_DATAPARAMETER_DB.containing_type = _DATAPARAMETER; +_DUMMYDATAPARAMETER.fields_by_name['data_filler'].message_type = _FILLERPARAMETER +_DUMMYDATAPARAMETER.fields_by_name['shape'].message_type = _BLOBSHAPE +_ELTWISEPARAMETER.fields_by_name['operation'].enum_type = _ELTWISEPARAMETER_ELTWISEOP +_ELTWISEPARAMETER_ELTWISEOP.containing_type = _ELTWISEPARAMETER; +_HINGELOSSPARAMETER.fields_by_name['norm'].enum_type = _HINGELOSSPARAMETER_NORM +_HINGELOSSPARAMETER_NORM.containing_type = _HINGELOSSPARAMETER; +_VIDEODATAPARAMETER.fields_by_name['modality'].enum_type = _VIDEODATAPARAMETER_MODALITY +_VIDEODATAPARAMETER_MODALITY.containing_type = _VIDEODATAPARAMETER; +_INNERPRODUCTPARAMETER.fields_by_name['weight_filler'].message_type = _FILLERPARAMETER +_INNERPRODUCTPARAMETER.fields_by_name['bias_filler'].message_type = _FILLERPARAMETER +_LRNPARAMETER.fields_by_name['norm_region'].enum_type = _LRNPARAMETER_NORMREGION +_LRNPARAMETER_NORMREGION.containing_type = _LRNPARAMETER; +_POOLINGPARAMETER.fields_by_name['pool'].enum_type = _POOLINGPARAMETER_POOLMETHOD +_POOLINGPARAMETER.fields_by_name['engine'].enum_type = _POOLINGPARAMETER_ENGINE +_POOLINGPARAMETER_POOLMETHOD.containing_type = _POOLINGPARAMETER; +_POOLINGPARAMETER_ENGINE.containing_type = _POOLINGPARAMETER; +_REDUCTIONPARAMETER.fields_by_name['operation'].enum_type = _REDUCTIONPARAMETER_REDUCTIONOP +_REDUCTIONPARAMETER_REDUCTIONOP.containing_type = _REDUCTIONPARAMETER; +_RELUPARAMETER.fields_by_name['engine'].enum_type = _RELUPARAMETER_ENGINE +_RELUPARAMETER_ENGINE.containing_type = _RELUPARAMETER; +_RESHAPEPARAMETER.fields_by_name['shape'].message_type = _BLOBSHAPE +_SIGMOIDPARAMETER.fields_by_name['engine'].enum_type = _SIGMOIDPARAMETER_ENGINE +_SIGMOIDPARAMETER_ENGINE.containing_type = _SIGMOIDPARAMETER; +_SOFTMAXPARAMETER.fields_by_name['engine'].enum_type = _SOFTMAXPARAMETER_ENGINE +_SOFTMAXPARAMETER_ENGINE.containing_type = _SOFTMAXPARAMETER; +_TANHPARAMETER.fields_by_name['engine'].enum_type = _TANHPARAMETER_ENGINE +_TANHPARAMETER_ENGINE.containing_type = _TANHPARAMETER; +_SPPPARAMETER.fields_by_name['pool'].enum_type = _SPPPARAMETER_POOLMETHOD +_SPPPARAMETER.fields_by_name['engine'].enum_type = _SPPPARAMETER_ENGINE +_SPPPARAMETER_POOLMETHOD.containing_type = _SPPPARAMETER; +_SPPPARAMETER_ENGINE.containing_type = _SPPPARAMETER; +_V1LAYERPARAMETER.fields_by_name['include'].message_type = _NETSTATERULE +_V1LAYERPARAMETER.fields_by_name['exclude'].message_type = _NETSTATERULE +_V1LAYERPARAMETER.fields_by_name['type'].enum_type = _V1LAYERPARAMETER_LAYERTYPE +_V1LAYERPARAMETER.fields_by_name['blobs'].message_type = _BLOBPROTO +_V1LAYERPARAMETER.fields_by_name['blob_share_mode'].enum_type = _V1LAYERPARAMETER_DIMCHECKMODE +_V1LAYERPARAMETER.fields_by_name['accuracy_param'].message_type = _ACCURACYPARAMETER +_V1LAYERPARAMETER.fields_by_name['argmax_param'].message_type = _ARGMAXPARAMETER +_V1LAYERPARAMETER.fields_by_name['concat_param'].message_type = _CONCATPARAMETER +_V1LAYERPARAMETER.fields_by_name['contrastive_loss_param'].message_type = _CONTRASTIVELOSSPARAMETER +_V1LAYERPARAMETER.fields_by_name['convolution_param'].message_type = _CONVOLUTIONPARAMETER +_V1LAYERPARAMETER.fields_by_name['data_param'].message_type = _DATAPARAMETER +_V1LAYERPARAMETER.fields_by_name['dropout_param'].message_type = _DROPOUTPARAMETER +_V1LAYERPARAMETER.fields_by_name['dummy_data_param'].message_type = _DUMMYDATAPARAMETER +_V1LAYERPARAMETER.fields_by_name['eltwise_param'].message_type = _ELTWISEPARAMETER +_V1LAYERPARAMETER.fields_by_name['exp_param'].message_type = _EXPPARAMETER +_V1LAYERPARAMETER.fields_by_name['hdf5_data_param'].message_type = _HDF5DATAPARAMETER +_V1LAYERPARAMETER.fields_by_name['hdf5_output_param'].message_type = _HDF5OUTPUTPARAMETER +_V1LAYERPARAMETER.fields_by_name['hinge_loss_param'].message_type = _HINGELOSSPARAMETER +_V1LAYERPARAMETER.fields_by_name['image_data_param'].message_type = _IMAGEDATAPARAMETER +_V1LAYERPARAMETER.fields_by_name['infogain_loss_param'].message_type = _INFOGAINLOSSPARAMETER +_V1LAYERPARAMETER.fields_by_name['inner_product_param'].message_type = _INNERPRODUCTPARAMETER +_V1LAYERPARAMETER.fields_by_name['lrn_param'].message_type = _LRNPARAMETER +_V1LAYERPARAMETER.fields_by_name['memory_data_param'].message_type = _MEMORYDATAPARAMETER +_V1LAYERPARAMETER.fields_by_name['mvn_param'].message_type = _MVNPARAMETER +_V1LAYERPARAMETER.fields_by_name['pooling_param'].message_type = _POOLINGPARAMETER +_V1LAYERPARAMETER.fields_by_name['power_param'].message_type = _POWERPARAMETER +_V1LAYERPARAMETER.fields_by_name['relu_param'].message_type = _RELUPARAMETER +_V1LAYERPARAMETER.fields_by_name['sigmoid_param'].message_type = _SIGMOIDPARAMETER +_V1LAYERPARAMETER.fields_by_name['softmax_param'].message_type = _SOFTMAXPARAMETER +_V1LAYERPARAMETER.fields_by_name['slice_param'].message_type = _SLICEPARAMETER +_V1LAYERPARAMETER.fields_by_name['tanh_param'].message_type = _TANHPARAMETER +_V1LAYERPARAMETER.fields_by_name['threshold_param'].message_type = _THRESHOLDPARAMETER +_V1LAYERPARAMETER.fields_by_name['window_data_param'].message_type = _WINDOWDATAPARAMETER +_V1LAYERPARAMETER.fields_by_name['transform_param'].message_type = _TRANSFORMATIONPARAMETER +_V1LAYERPARAMETER.fields_by_name['loss_param'].message_type = _LOSSPARAMETER +_V1LAYERPARAMETER.fields_by_name['layer'].message_type = _V0LAYERPARAMETER +_V1LAYERPARAMETER_LAYERTYPE.containing_type = _V1LAYERPARAMETER; +_V1LAYERPARAMETER_DIMCHECKMODE.containing_type = _V1LAYERPARAMETER; +_V0LAYERPARAMETER.fields_by_name['weight_filler'].message_type = _FILLERPARAMETER +_V0LAYERPARAMETER.fields_by_name['bias_filler'].message_type = _FILLERPARAMETER +_V0LAYERPARAMETER.fields_by_name['pool'].enum_type = _V0LAYERPARAMETER_POOLMETHOD +_V0LAYERPARAMETER.fields_by_name['blobs'].message_type = _BLOBPROTO +_V0LAYERPARAMETER.fields_by_name['hdf5_output_param'].message_type = _HDF5OUTPUTPARAMETER +_V0LAYERPARAMETER_POOLMETHOD.containing_type = _V0LAYERPARAMETER; +_PRELUPARAMETER.fields_by_name['filler'].message_type = _FILLERPARAMETER +_SCALEPARAMETER.fields_by_name['filler'].message_type = _FILLERPARAMETER +_SCALEPARAMETER.fields_by_name['bias_filler'].message_type = _FILLERPARAMETER +_BIASPARAMETER.fields_by_name['filler'].message_type = _FILLERPARAMETER +_BATCHREDUCTIONPARAMETER.fields_by_name['reduction_param'].message_type = _REDUCTIONPARAMETER +DESCRIPTOR.message_types_by_name['BlobShape'] = _BLOBSHAPE +DESCRIPTOR.message_types_by_name['BlobProto'] = _BLOBPROTO +DESCRIPTOR.message_types_by_name['BlobProtoVector'] = _BLOBPROTOVECTOR +DESCRIPTOR.message_types_by_name['Datum'] = _DATUM +DESCRIPTOR.message_types_by_name['FillerParameter'] = _FILLERPARAMETER +DESCRIPTOR.message_types_by_name['NetParameter'] = _NETPARAMETER +DESCRIPTOR.message_types_by_name['SolverParameter'] = _SOLVERPARAMETER +DESCRIPTOR.message_types_by_name['SolverState'] = _SOLVERSTATE +DESCRIPTOR.message_types_by_name['NetState'] = _NETSTATE +DESCRIPTOR.message_types_by_name['NetStateRule'] = _NETSTATERULE +DESCRIPTOR.message_types_by_name['ParamSpec'] = _PARAMSPEC +DESCRIPTOR.message_types_by_name['LayerParameter'] = _LAYERPARAMETER +DESCRIPTOR.message_types_by_name['TransformationParameter'] = _TRANSFORMATIONPARAMETER +DESCRIPTOR.message_types_by_name['LossParameter'] = _LOSSPARAMETER +DESCRIPTOR.message_types_by_name['AccuracyParameter'] = _ACCURACYPARAMETER +DESCRIPTOR.message_types_by_name['ArgMaxParameter'] = _ARGMAXPARAMETER +DESCRIPTOR.message_types_by_name['BNParameter'] = _BNPARAMETER +DESCRIPTOR.message_types_by_name['ConcatParameter'] = _CONCATPARAMETER +DESCRIPTOR.message_types_by_name['ContrastiveLossParameter'] = _CONTRASTIVELOSSPARAMETER +DESCRIPTOR.message_types_by_name['ConvolutionParameter'] = _CONVOLUTIONPARAMETER +DESCRIPTOR.message_types_by_name['DataParameter'] = _DATAPARAMETER +DESCRIPTOR.message_types_by_name['DropoutParameter'] = _DROPOUTPARAMETER +DESCRIPTOR.message_types_by_name['DummyDataParameter'] = _DUMMYDATAPARAMETER +DESCRIPTOR.message_types_by_name['EltwiseParameter'] = _ELTWISEPARAMETER +DESCRIPTOR.message_types_by_name['ExpParameter'] = _EXPPARAMETER +DESCRIPTOR.message_types_by_name['FlattenParameter'] = _FLATTENPARAMETER +DESCRIPTOR.message_types_by_name['HDF5DataParameter'] = _HDF5DATAPARAMETER +DESCRIPTOR.message_types_by_name['HDF5OutputParameter'] = _HDF5OUTPUTPARAMETER +DESCRIPTOR.message_types_by_name['HingeLossParameter'] = _HINGELOSSPARAMETER +DESCRIPTOR.message_types_by_name['ImageDataParameter'] = _IMAGEDATAPARAMETER +DESCRIPTOR.message_types_by_name['VideoDataParameter'] = _VIDEODATAPARAMETER +DESCRIPTOR.message_types_by_name['InfogainLossParameter'] = _INFOGAINLOSSPARAMETER +DESCRIPTOR.message_types_by_name['InnerProductParameter'] = _INNERPRODUCTPARAMETER +DESCRIPTOR.message_types_by_name['LogParameter'] = _LOGPARAMETER +DESCRIPTOR.message_types_by_name['LRNParameter'] = _LRNPARAMETER +DESCRIPTOR.message_types_by_name['MemoryDataParameter'] = _MEMORYDATAPARAMETER +DESCRIPTOR.message_types_by_name['MVNParameter'] = _MVNPARAMETER +DESCRIPTOR.message_types_by_name['PoolingParameter'] = _POOLINGPARAMETER +DESCRIPTOR.message_types_by_name['PowerParameter'] = _POWERPARAMETER +DESCRIPTOR.message_types_by_name['PythonParameter'] = _PYTHONPARAMETER +DESCRIPTOR.message_types_by_name['ReductionParameter'] = _REDUCTIONPARAMETER +DESCRIPTOR.message_types_by_name['ReLUParameter'] = _RELUPARAMETER +DESCRIPTOR.message_types_by_name['ReshapeParameter'] = _RESHAPEPARAMETER +DESCRIPTOR.message_types_by_name['SegDataParameter'] = _SEGDATAPARAMETER +DESCRIPTOR.message_types_by_name['SigmoidParameter'] = _SIGMOIDPARAMETER +DESCRIPTOR.message_types_by_name['SliceParameter'] = _SLICEPARAMETER +DESCRIPTOR.message_types_by_name['SoftmaxParameter'] = _SOFTMAXPARAMETER +DESCRIPTOR.message_types_by_name['TanHParameter'] = _TANHPARAMETER +DESCRIPTOR.message_types_by_name['ThresholdParameter'] = _THRESHOLDPARAMETER +DESCRIPTOR.message_types_by_name['WindowDataParameter'] = _WINDOWDATAPARAMETER +DESCRIPTOR.message_types_by_name['SPPParameter'] = _SPPPARAMETER +DESCRIPTOR.message_types_by_name['ROIPoolingParameter'] = _ROIPOOLINGPARAMETER +DESCRIPTOR.message_types_by_name['V1LayerParameter'] = _V1LAYERPARAMETER +DESCRIPTOR.message_types_by_name['V0LayerParameter'] = _V0LAYERPARAMETER +DESCRIPTOR.message_types_by_name['PReLUParameter'] = _PRELUPARAMETER +DESCRIPTOR.message_types_by_name['ScaleParameter'] = _SCALEPARAMETER +DESCRIPTOR.message_types_by_name['BiasParameter'] = _BIASPARAMETER +DESCRIPTOR.message_types_by_name['BatchReductionParameter'] = _BATCHREDUCTIONPARAMETER +DESCRIPTOR.message_types_by_name['MemoryOptimizationParameter'] = _MEMORYOPTIMIZATIONPARAMETER + +class BlobShape(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _BLOBSHAPE + + # @@protoc_insertion_point(class_scope:caffe.BlobShape) + +class BlobProto(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _BLOBPROTO + + # @@protoc_insertion_point(class_scope:caffe.BlobProto) + +class BlobProtoVector(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _BLOBPROTOVECTOR + + # @@protoc_insertion_point(class_scope:caffe.BlobProtoVector) + +class Datum(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _DATUM + + # @@protoc_insertion_point(class_scope:caffe.Datum) + +class FillerParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _FILLERPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.FillerParameter) + +class NetParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _NETPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.NetParameter) + +class SolverParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SOLVERPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.SolverParameter) + +class SolverState(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SOLVERSTATE + + # @@protoc_insertion_point(class_scope:caffe.SolverState) + +class NetState(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _NETSTATE + + # @@protoc_insertion_point(class_scope:caffe.NetState) + +class NetStateRule(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _NETSTATERULE + + # @@protoc_insertion_point(class_scope:caffe.NetStateRule) + +class ParamSpec(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _PARAMSPEC + + # @@protoc_insertion_point(class_scope:caffe.ParamSpec) + +class LayerParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _LAYERPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.LayerParameter) + +class TransformationParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _TRANSFORMATIONPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.TransformationParameter) + +class LossParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _LOSSPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.LossParameter) + +class AccuracyParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ACCURACYPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.AccuracyParameter) + +class ArgMaxParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ARGMAXPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ArgMaxParameter) + +class BNParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _BNPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.BNParameter) + +class ConcatParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _CONCATPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ConcatParameter) + +class ContrastiveLossParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _CONTRASTIVELOSSPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ContrastiveLossParameter) + +class ConvolutionParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _CONVOLUTIONPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ConvolutionParameter) + +class DataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _DATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.DataParameter) + +class DropoutParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _DROPOUTPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.DropoutParameter) + +class DummyDataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _DUMMYDATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.DummyDataParameter) + +class EltwiseParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ELTWISEPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.EltwiseParameter) + +class ExpParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _EXPPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ExpParameter) + +class FlattenParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _FLATTENPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.FlattenParameter) + +class HDF5DataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _HDF5DATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.HDF5DataParameter) + +class HDF5OutputParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _HDF5OUTPUTPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.HDF5OutputParameter) + +class HingeLossParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _HINGELOSSPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.HingeLossParameter) + +class ImageDataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _IMAGEDATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ImageDataParameter) + +class VideoDataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _VIDEODATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.VideoDataParameter) + +class InfogainLossParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _INFOGAINLOSSPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.InfogainLossParameter) + +class InnerProductParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _INNERPRODUCTPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.InnerProductParameter) + +class LogParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _LOGPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.LogParameter) + +class LRNParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _LRNPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.LRNParameter) + +class MemoryDataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _MEMORYDATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.MemoryDataParameter) + +class MVNParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _MVNPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.MVNParameter) + +class PoolingParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _POOLINGPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.PoolingParameter) + +class PowerParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _POWERPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.PowerParameter) + +class PythonParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _PYTHONPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.PythonParameter) + +class ReductionParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _REDUCTIONPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ReductionParameter) + +class ReLUParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _RELUPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ReLUParameter) + +class ReshapeParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _RESHAPEPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ReshapeParameter) + +class SegDataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SEGDATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.SegDataParameter) + +class SigmoidParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SIGMOIDPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.SigmoidParameter) + +class SliceParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SLICEPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.SliceParameter) + +class SoftmaxParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SOFTMAXPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.SoftmaxParameter) + +class TanHParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _TANHPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.TanHParameter) + +class ThresholdParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _THRESHOLDPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ThresholdParameter) + +class WindowDataParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _WINDOWDATAPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.WindowDataParameter) + +class SPPParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SPPPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.SPPParameter) + +class ROIPoolingParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _ROIPOOLINGPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ROIPoolingParameter) + +class V1LayerParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _V1LAYERPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.V1LayerParameter) + +class V0LayerParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _V0LAYERPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.V0LayerParameter) + +class PReLUParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _PRELUPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.PReLUParameter) + +class ScaleParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _SCALEPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.ScaleParameter) + +class BiasParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _BIASPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.BiasParameter) + +class BatchReductionParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _BATCHREDUCTIONPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.BatchReductionParameter) + +class MemoryOptimizationParameter(_message.Message): + __metaclass__ = _reflection.GeneratedProtocolMessageType + DESCRIPTOR = _MEMORYOPTIMIZATIONPARAMETER + + # @@protoc_insertion_point(class_scope:caffe.MemoryOptimizationParameter) + + +_BLOBSHAPE.fields_by_name['dim'].has_options = True +_BLOBSHAPE.fields_by_name['dim']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), '\020\001') +_BLOBPROTO.fields_by_name['data'].has_options = True +_BLOBPROTO.fields_by_name['data']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), '\020\001') +_BLOBPROTO.fields_by_name['diff'].has_options = True +_BLOBPROTO.fields_by_name['diff']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), '\020\001') +# @@protoc_insertion_point(module_scope) diff --git a/bninception/inceptionv3.yaml b/bninception/inceptionv3.yaml new file mode 100644 index 0000000..7c173c9 --- /dev/null +++ b/bninception/inceptionv3.yaml @@ -0,0 +1,821 @@ +inputs: [] +layers: +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 32, pad_h: 0, pad_w: 0, stride_h: 2, + stride_w: 2} + expr: conv_Conv2D<=Convolution<=data + id: conv_Conv2D +- attrs: {} + expr: conv<=BN<=conv_Conv2D + id: conv_batchnorm +- {expr: conv<=ReLU<=conv, id: conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 32, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: conv_1_Conv2D<=Convolution<=conv + id: conv_1_Conv2D +- attrs: {} + expr: conv_1<=BN<=conv_1_Conv2D + id: conv_1_batchnorm +- {expr: conv_1<=ReLU<=conv_1, id: conv_1} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 64, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: conv_2_Conv2D<=Convolution<=conv_1 + id: conv_2_Conv2D +- attrs: {} + expr: conv_2<=BN<=conv_2_Conv2D + id: conv_2_batchnorm +- {expr: conv_2<=ReLU<=conv_2, id: conv_2} +- attrs: {kernel_size: 3, mode: max, pad: 0, stride: 2} + expr: pool<=Pooling<=conv_2 + id: pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 80, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: conv_3_Conv2D<=Convolution<=pool + id: conv_3_Conv2D +- attrs: {} + expr: conv_3<=BN<=conv_3_Conv2D + id: conv_3_batchnorm +- {expr: conv_3<=ReLU<=conv_3, id: conv_3} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: conv_4_Conv2D<=Convolution<=conv_3 + id: conv_4_Conv2D +- attrs: {} + expr: conv_4<=BN<=conv_4_Conv2D + id: conv_4_batchnorm +- {expr: conv_4<=ReLU<=conv_4, id: conv_4} +- attrs: {kernel_size: 3, mode: max, pad: 0, stride: 2} + expr: pool_1<=Pooling<=conv_4 + id: pool_1 +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_conv_Conv2D<=Convolution<=pool_1 + id: mixed_conv_Conv2D +- attrs: {} + expr: mixed_conv<=BN<=mixed_conv_Conv2D + id: mixed_conv_batchnorm +- {expr: mixed_conv<=ReLU<=mixed_conv, id: mixed_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 48, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_tower_conv_Conv2D<=Convolution<=pool_1 + id: mixed_tower_conv_Conv2D +- attrs: {} + expr: mixed_tower_conv<=BN<=mixed_tower_conv_Conv2D + id: mixed_tower_conv_batchnorm +- {expr: mixed_tower_conv<=ReLU<=mixed_tower_conv, id: mixed_tower_conv} +- attrs: {kernel_h: 5, kernel_w: 5, num_output: 64, pad_h: 2, pad_w: 2, stride_h: 1, + stride_w: 1} + expr: mixed_tower_conv_1_Conv2D<=Convolution<=mixed_tower_conv + id: mixed_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_tower_conv_1<=BN<=mixed_tower_conv_1_Conv2D + id: mixed_tower_conv_1_batchnorm +- {expr: mixed_tower_conv_1<=ReLU<=mixed_tower_conv_1, id: mixed_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_tower_1_conv_Conv2D<=Convolution<=pool_1 + id: mixed_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_tower_1_conv<=BN<=mixed_tower_1_conv_Conv2D + id: mixed_tower_1_conv_batchnorm +- {expr: mixed_tower_1_conv<=ReLU<=mixed_tower_1_conv, id: mixed_tower_1_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_tower_1_conv_1_Conv2D<=Convolution<=mixed_tower_1_conv + id: mixed_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_tower_1_conv_1<=BN<=mixed_tower_1_conv_1_Conv2D + id: mixed_tower_1_conv_1_batchnorm +- {expr: mixed_tower_1_conv_1<=ReLU<=mixed_tower_1_conv_1, id: mixed_tower_1_conv_1} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_tower_1_conv_2_Conv2D<=Convolution<=mixed_tower_1_conv_1 + id: mixed_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_tower_1_conv_2<=BN<=mixed_tower_1_conv_2_Conv2D + id: mixed_tower_1_conv_2_batchnorm +- {expr: mixed_tower_1_conv_2<=ReLU<=mixed_tower_1_conv_2, id: mixed_tower_1_conv_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_tower_2_pool<=Pooling<=pool_1 + id: mixed_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 32, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_tower_2_conv_Conv2D<=Convolution<=mixed_tower_2_pool + id: mixed_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_tower_2_conv<=BN<=mixed_tower_2_conv_Conv2D + id: mixed_tower_2_conv_batchnorm +- {expr: mixed_tower_2_conv<=ReLU<=mixed_tower_2_conv, id: mixed_tower_2_conv} +- {expr: 'mixed_join<=Concat<=mixed_conv,mixed_tower_conv_1,mixed_tower_1_conv_2,mixed_tower_2_conv', + id: mixed_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_1_conv_Conv2D<=Convolution<=mixed_join + id: mixed_1_conv_Conv2D +- attrs: {} + expr: mixed_1_conv<=BN<=mixed_1_conv_Conv2D + id: mixed_1_conv_batchnorm +- {expr: mixed_1_conv<=ReLU<=mixed_1_conv, id: mixed_1_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 48, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_1_tower_conv_Conv2D<=Convolution<=mixed_join + id: mixed_1_tower_conv_Conv2D +- attrs: {} + expr: mixed_1_tower_conv<=BN<=mixed_1_tower_conv_Conv2D + id: mixed_1_tower_conv_batchnorm +- {expr: mixed_1_tower_conv<=ReLU<=mixed_1_tower_conv, id: mixed_1_tower_conv} +- attrs: {kernel_h: 5, kernel_w: 5, num_output: 64, pad_h: 2, pad_w: 2, stride_h: 1, + stride_w: 1} + expr: mixed_1_tower_conv_1_Conv2D<=Convolution<=mixed_1_tower_conv + id: mixed_1_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_1_tower_conv_1<=BN<=mixed_1_tower_conv_1_Conv2D + id: mixed_1_tower_conv_1_batchnorm +- {expr: mixed_1_tower_conv_1<=ReLU<=mixed_1_tower_conv_1, id: mixed_1_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_1_tower_1_conv_Conv2D<=Convolution<=mixed_join + id: mixed_1_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_1_tower_1_conv<=BN<=mixed_1_tower_1_conv_Conv2D + id: mixed_1_tower_1_conv_batchnorm +- {expr: mixed_1_tower_1_conv<=ReLU<=mixed_1_tower_1_conv, id: mixed_1_tower_1_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_1_tower_1_conv_1_Conv2D<=Convolution<=mixed_1_tower_1_conv + id: mixed_1_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_1_tower_1_conv_1<=BN<=mixed_1_tower_1_conv_1_Conv2D + id: mixed_1_tower_1_conv_1_batchnorm +- {expr: mixed_1_tower_1_conv_1<=ReLU<=mixed_1_tower_1_conv_1, id: mixed_1_tower_1_conv_1} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_1_tower_1_conv_2_Conv2D<=Convolution<=mixed_1_tower_1_conv_1 + id: mixed_1_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_1_tower_1_conv_2<=BN<=mixed_1_tower_1_conv_2_Conv2D + id: mixed_1_tower_1_conv_2_batchnorm +- {expr: mixed_1_tower_1_conv_2<=ReLU<=mixed_1_tower_1_conv_2, id: mixed_1_tower_1_conv_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_1_tower_2_pool<=Pooling<=mixed_join + id: mixed_1_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_1_tower_2_conv_Conv2D<=Convolution<=mixed_1_tower_2_pool + id: mixed_1_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_1_tower_2_conv<=BN<=mixed_1_tower_2_conv_Conv2D + id: mixed_1_tower_2_conv_batchnorm +- {expr: mixed_1_tower_2_conv<=ReLU<=mixed_1_tower_2_conv, id: mixed_1_tower_2_conv} +- {expr: 'mixed_1_join<=Concat<=mixed_1_conv,mixed_1_tower_conv_1,mixed_1_tower_1_conv_2,mixed_1_tower_2_conv', + id: mixed_1_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_2_conv_Conv2D<=Convolution<=mixed_1_join + id: mixed_2_conv_Conv2D +- attrs: {} + expr: mixed_2_conv<=BN<=mixed_2_conv_Conv2D + id: mixed_2_conv_batchnorm +- {expr: mixed_2_conv<=ReLU<=mixed_2_conv, id: mixed_2_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 48, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_2_tower_conv_Conv2D<=Convolution<=mixed_1_join + id: mixed_2_tower_conv_Conv2D +- attrs: {} + expr: mixed_2_tower_conv<=BN<=mixed_2_tower_conv_Conv2D + id: mixed_2_tower_conv_batchnorm +- {expr: mixed_2_tower_conv<=ReLU<=mixed_2_tower_conv, id: mixed_2_tower_conv} +- attrs: {kernel_h: 5, kernel_w: 5, num_output: 64, pad_h: 2, pad_w: 2, stride_h: 1, + stride_w: 1} + expr: mixed_2_tower_conv_1_Conv2D<=Convolution<=mixed_2_tower_conv + id: mixed_2_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_2_tower_conv_1<=BN<=mixed_2_tower_conv_1_Conv2D + id: mixed_2_tower_conv_1_batchnorm +- {expr: mixed_2_tower_conv_1<=ReLU<=mixed_2_tower_conv_1, id: mixed_2_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_2_tower_1_conv_Conv2D<=Convolution<=mixed_1_join + id: mixed_2_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_2_tower_1_conv<=BN<=mixed_2_tower_1_conv_Conv2D + id: mixed_2_tower_1_conv_batchnorm +- {expr: mixed_2_tower_1_conv<=ReLU<=mixed_2_tower_1_conv, id: mixed_2_tower_1_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_2_tower_1_conv_1_Conv2D<=Convolution<=mixed_2_tower_1_conv + id: mixed_2_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_2_tower_1_conv_1<=BN<=mixed_2_tower_1_conv_1_Conv2D + id: mixed_2_tower_1_conv_1_batchnorm +- {expr: mixed_2_tower_1_conv_1<=ReLU<=mixed_2_tower_1_conv_1, id: mixed_2_tower_1_conv_1} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_2_tower_1_conv_2_Conv2D<=Convolution<=mixed_2_tower_1_conv_1 + id: mixed_2_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_2_tower_1_conv_2<=BN<=mixed_2_tower_1_conv_2_Conv2D + id: mixed_2_tower_1_conv_2_batchnorm +- {expr: mixed_2_tower_1_conv_2<=ReLU<=mixed_2_tower_1_conv_2, id: mixed_2_tower_1_conv_2} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_2_tower_2_pool<=Pooling<=mixed_1_join + id: mixed_2_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_2_tower_2_conv_Conv2D<=Convolution<=mixed_2_tower_2_pool + id: mixed_2_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_2_tower_2_conv<=BN<=mixed_2_tower_2_conv_Conv2D + id: mixed_2_tower_2_conv_batchnorm +- {expr: mixed_2_tower_2_conv<=ReLU<=mixed_2_tower_2_conv, id: mixed_2_tower_2_conv} +- {expr: 'mixed_2_join<=Concat<=mixed_2_conv,mixed_2_tower_conv_1,mixed_2_tower_1_conv_2,mixed_2_tower_2_conv', + id: mixed_2_join} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 384, pad_h: 0, pad_w: 0, stride_h: 2, + stride_w: 2} + expr: mixed_3_conv_Conv2D<=Convolution<=mixed_2_join + id: mixed_3_conv_Conv2D +- attrs: {} + expr: mixed_3_conv<=BN<=mixed_3_conv_Conv2D + id: mixed_3_conv_batchnorm +- {expr: mixed_3_conv<=ReLU<=mixed_3_conv, id: mixed_3_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 64, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_3_tower_conv_Conv2D<=Convolution<=mixed_2_join + id: mixed_3_tower_conv_Conv2D +- attrs: {} + expr: mixed_3_tower_conv<=BN<=mixed_3_tower_conv_Conv2D + id: mixed_3_tower_conv_batchnorm +- {expr: mixed_3_tower_conv<=ReLU<=mixed_3_tower_conv, id: mixed_3_tower_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_3_tower_conv_1_Conv2D<=Convolution<=mixed_3_tower_conv + id: mixed_3_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_3_tower_conv_1<=BN<=mixed_3_tower_conv_1_Conv2D + id: mixed_3_tower_conv_1_batchnorm +- {expr: mixed_3_tower_conv_1<=ReLU<=mixed_3_tower_conv_1, id: mixed_3_tower_conv_1} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 96, pad_h: 0, pad_w: 0, stride_h: 2, + stride_w: 2} + expr: mixed_3_tower_conv_2_Conv2D<=Convolution<=mixed_3_tower_conv_1 + id: mixed_3_tower_conv_2_Conv2D +- attrs: {} + expr: mixed_3_tower_conv_2<=BN<=mixed_3_tower_conv_2_Conv2D + id: mixed_3_tower_conv_2_batchnorm +- {expr: mixed_3_tower_conv_2<=ReLU<=mixed_3_tower_conv_2, id: mixed_3_tower_conv_2} +- attrs: {kernel_size: 3, mode: max, pad: 0, stride: 2} + expr: mixed_3_pool<=Pooling<=mixed_2_join + id: mixed_3_pool +- {expr: 'mixed_3_join<=Concat<=mixed_3_conv,mixed_3_tower_conv_2,mixed_3_pool', id: mixed_3_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_conv_Conv2D<=Convolution<=mixed_3_join + id: mixed_4_conv_Conv2D +- attrs: {} + expr: mixed_4_conv<=BN<=mixed_4_conv_Conv2D + id: mixed_4_conv_batchnorm +- {expr: mixed_4_conv<=ReLU<=mixed_4_conv, id: mixed_4_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 128, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_conv_Conv2D<=Convolution<=mixed_3_join + id: mixed_4_tower_conv_Conv2D +- attrs: {} + expr: mixed_4_tower_conv<=BN<=mixed_4_tower_conv_Conv2D + id: mixed_4_tower_conv_batchnorm +- {expr: mixed_4_tower_conv<=ReLU<=mixed_4_tower_conv, id: mixed_4_tower_conv} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 128, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_conv_1_Conv2D<=Convolution<=mixed_4_tower_conv + id: mixed_4_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_4_tower_conv_1<=BN<=mixed_4_tower_conv_1_Conv2D + id: mixed_4_tower_conv_1_batchnorm +- {expr: mixed_4_tower_conv_1<=ReLU<=mixed_4_tower_conv_1, id: mixed_4_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_conv_2_Conv2D<=Convolution<=mixed_4_tower_conv_1 + id: mixed_4_tower_conv_2_Conv2D +- attrs: {} + expr: mixed_4_tower_conv_2<=BN<=mixed_4_tower_conv_2_Conv2D + id: mixed_4_tower_conv_2_batchnorm +- {expr: mixed_4_tower_conv_2<=ReLU<=mixed_4_tower_conv_2, id: mixed_4_tower_conv_2} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 128, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_1_conv_Conv2D<=Convolution<=mixed_3_join + id: mixed_4_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_4_tower_1_conv<=BN<=mixed_4_tower_1_conv_Conv2D + id: mixed_4_tower_1_conv_batchnorm +- {expr: mixed_4_tower_1_conv<=ReLU<=mixed_4_tower_1_conv, id: mixed_4_tower_1_conv} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 128, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_1_conv_1_Conv2D<=Convolution<=mixed_4_tower_1_conv + id: mixed_4_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_4_tower_1_conv_1<=BN<=mixed_4_tower_1_conv_1_Conv2D + id: mixed_4_tower_1_conv_1_batchnorm +- {expr: mixed_4_tower_1_conv_1<=ReLU<=mixed_4_tower_1_conv_1, id: mixed_4_tower_1_conv_1} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 128, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_1_conv_2_Conv2D<=Convolution<=mixed_4_tower_1_conv_1 + id: mixed_4_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_4_tower_1_conv_2<=BN<=mixed_4_tower_1_conv_2_Conv2D + id: mixed_4_tower_1_conv_2_batchnorm +- {expr: mixed_4_tower_1_conv_2<=ReLU<=mixed_4_tower_1_conv_2, id: mixed_4_tower_1_conv_2} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 128, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_1_conv_3_Conv2D<=Convolution<=mixed_4_tower_1_conv_2 + id: mixed_4_tower_1_conv_3_Conv2D +- attrs: {} + expr: mixed_4_tower_1_conv_3<=BN<=mixed_4_tower_1_conv_3_Conv2D + id: mixed_4_tower_1_conv_3_batchnorm +- {expr: mixed_4_tower_1_conv_3<=ReLU<=mixed_4_tower_1_conv_3, id: mixed_4_tower_1_conv_3} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_1_conv_4_Conv2D<=Convolution<=mixed_4_tower_1_conv_3 + id: mixed_4_tower_1_conv_4_Conv2D +- attrs: {} + expr: mixed_4_tower_1_conv_4<=BN<=mixed_4_tower_1_conv_4_Conv2D + id: mixed_4_tower_1_conv_4_batchnorm +- {expr: mixed_4_tower_1_conv_4<=ReLU<=mixed_4_tower_1_conv_4, id: mixed_4_tower_1_conv_4} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_4_tower_2_pool<=Pooling<=mixed_3_join + id: mixed_4_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_4_tower_2_conv_Conv2D<=Convolution<=mixed_4_tower_2_pool + id: mixed_4_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_4_tower_2_conv<=BN<=mixed_4_tower_2_conv_Conv2D + id: mixed_4_tower_2_conv_batchnorm +- {expr: mixed_4_tower_2_conv<=ReLU<=mixed_4_tower_2_conv, id: mixed_4_tower_2_conv} +- {expr: 'mixed_4_join<=Concat<=mixed_4_conv,mixed_4_tower_conv_2,mixed_4_tower_1_conv_4,mixed_4_tower_2_conv', + id: mixed_4_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_conv_Conv2D<=Convolution<=mixed_4_join + id: mixed_5_conv_Conv2D +- attrs: {} + expr: mixed_5_conv<=BN<=mixed_5_conv_Conv2D + id: mixed_5_conv_batchnorm +- {expr: mixed_5_conv<=ReLU<=mixed_5_conv, id: mixed_5_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 160, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_conv_Conv2D<=Convolution<=mixed_4_join + id: mixed_5_tower_conv_Conv2D +- attrs: {} + expr: mixed_5_tower_conv<=BN<=mixed_5_tower_conv_Conv2D + id: mixed_5_tower_conv_batchnorm +- {expr: mixed_5_tower_conv<=ReLU<=mixed_5_tower_conv, id: mixed_5_tower_conv} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 160, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_conv_1_Conv2D<=Convolution<=mixed_5_tower_conv + id: mixed_5_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_5_tower_conv_1<=BN<=mixed_5_tower_conv_1_Conv2D + id: mixed_5_tower_conv_1_batchnorm +- {expr: mixed_5_tower_conv_1<=ReLU<=mixed_5_tower_conv_1, id: mixed_5_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_conv_2_Conv2D<=Convolution<=mixed_5_tower_conv_1 + id: mixed_5_tower_conv_2_Conv2D +- attrs: {} + expr: mixed_5_tower_conv_2<=BN<=mixed_5_tower_conv_2_Conv2D + id: mixed_5_tower_conv_2_batchnorm +- {expr: mixed_5_tower_conv_2<=ReLU<=mixed_5_tower_conv_2, id: mixed_5_tower_conv_2} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 160, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_1_conv_Conv2D<=Convolution<=mixed_4_join + id: mixed_5_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_5_tower_1_conv<=BN<=mixed_5_tower_1_conv_Conv2D + id: mixed_5_tower_1_conv_batchnorm +- {expr: mixed_5_tower_1_conv<=ReLU<=mixed_5_tower_1_conv, id: mixed_5_tower_1_conv} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 160, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_1_conv_1_Conv2D<=Convolution<=mixed_5_tower_1_conv + id: mixed_5_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_5_tower_1_conv_1<=BN<=mixed_5_tower_1_conv_1_Conv2D + id: mixed_5_tower_1_conv_1_batchnorm +- {expr: mixed_5_tower_1_conv_1<=ReLU<=mixed_5_tower_1_conv_1, id: mixed_5_tower_1_conv_1} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 160, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_1_conv_2_Conv2D<=Convolution<=mixed_5_tower_1_conv_1 + id: mixed_5_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_5_tower_1_conv_2<=BN<=mixed_5_tower_1_conv_2_Conv2D + id: mixed_5_tower_1_conv_2_batchnorm +- {expr: mixed_5_tower_1_conv_2<=ReLU<=mixed_5_tower_1_conv_2, id: mixed_5_tower_1_conv_2} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 160, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_1_conv_3_Conv2D<=Convolution<=mixed_5_tower_1_conv_2 + id: mixed_5_tower_1_conv_3_Conv2D +- attrs: {} + expr: mixed_5_tower_1_conv_3<=BN<=mixed_5_tower_1_conv_3_Conv2D + id: mixed_5_tower_1_conv_3_batchnorm +- {expr: mixed_5_tower_1_conv_3<=ReLU<=mixed_5_tower_1_conv_3, id: mixed_5_tower_1_conv_3} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_1_conv_4_Conv2D<=Convolution<=mixed_5_tower_1_conv_3 + id: mixed_5_tower_1_conv_4_Conv2D +- attrs: {} + expr: mixed_5_tower_1_conv_4<=BN<=mixed_5_tower_1_conv_4_Conv2D + id: mixed_5_tower_1_conv_4_batchnorm +- {expr: mixed_5_tower_1_conv_4<=ReLU<=mixed_5_tower_1_conv_4, id: mixed_5_tower_1_conv_4} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_5_tower_2_pool<=Pooling<=mixed_4_join + id: mixed_5_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_5_tower_2_conv_Conv2D<=Convolution<=mixed_5_tower_2_pool + id: mixed_5_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_5_tower_2_conv<=BN<=mixed_5_tower_2_conv_Conv2D + id: mixed_5_tower_2_conv_batchnorm +- {expr: mixed_5_tower_2_conv<=ReLU<=mixed_5_tower_2_conv, id: mixed_5_tower_2_conv} +- {expr: 'mixed_5_join<=Concat<=mixed_5_conv,mixed_5_tower_conv_2,mixed_5_tower_1_conv_4,mixed_5_tower_2_conv', + id: mixed_5_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_conv_Conv2D<=Convolution<=mixed_5_join + id: mixed_6_conv_Conv2D +- attrs: {} + expr: mixed_6_conv<=BN<=mixed_6_conv_Conv2D + id: mixed_6_conv_batchnorm +- {expr: mixed_6_conv<=ReLU<=mixed_6_conv, id: mixed_6_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 160, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_conv_Conv2D<=Convolution<=mixed_5_join + id: mixed_6_tower_conv_Conv2D +- attrs: {} + expr: mixed_6_tower_conv<=BN<=mixed_6_tower_conv_Conv2D + id: mixed_6_tower_conv_batchnorm +- {expr: mixed_6_tower_conv<=ReLU<=mixed_6_tower_conv, id: mixed_6_tower_conv} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 160, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_conv_1_Conv2D<=Convolution<=mixed_6_tower_conv + id: mixed_6_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_6_tower_conv_1<=BN<=mixed_6_tower_conv_1_Conv2D + id: mixed_6_tower_conv_1_batchnorm +- {expr: mixed_6_tower_conv_1<=ReLU<=mixed_6_tower_conv_1, id: mixed_6_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_conv_2_Conv2D<=Convolution<=mixed_6_tower_conv_1 + id: mixed_6_tower_conv_2_Conv2D +- attrs: {} + expr: mixed_6_tower_conv_2<=BN<=mixed_6_tower_conv_2_Conv2D + id: mixed_6_tower_conv_2_batchnorm +- {expr: mixed_6_tower_conv_2<=ReLU<=mixed_6_tower_conv_2, id: mixed_6_tower_conv_2} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 160, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_1_conv_Conv2D<=Convolution<=mixed_5_join + id: mixed_6_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_6_tower_1_conv<=BN<=mixed_6_tower_1_conv_Conv2D + id: mixed_6_tower_1_conv_batchnorm +- {expr: mixed_6_tower_1_conv<=ReLU<=mixed_6_tower_1_conv, id: mixed_6_tower_1_conv} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 160, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_1_conv_1_Conv2D<=Convolution<=mixed_6_tower_1_conv + id: mixed_6_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_6_tower_1_conv_1<=BN<=mixed_6_tower_1_conv_1_Conv2D + id: mixed_6_tower_1_conv_1_batchnorm +- {expr: mixed_6_tower_1_conv_1<=ReLU<=mixed_6_tower_1_conv_1, id: mixed_6_tower_1_conv_1} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 160, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_1_conv_2_Conv2D<=Convolution<=mixed_6_tower_1_conv_1 + id: mixed_6_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_6_tower_1_conv_2<=BN<=mixed_6_tower_1_conv_2_Conv2D + id: mixed_6_tower_1_conv_2_batchnorm +- {expr: mixed_6_tower_1_conv_2<=ReLU<=mixed_6_tower_1_conv_2, id: mixed_6_tower_1_conv_2} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 160, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_1_conv_3_Conv2D<=Convolution<=mixed_6_tower_1_conv_2 + id: mixed_6_tower_1_conv_3_Conv2D +- attrs: {} + expr: mixed_6_tower_1_conv_3<=BN<=mixed_6_tower_1_conv_3_Conv2D + id: mixed_6_tower_1_conv_3_batchnorm +- {expr: mixed_6_tower_1_conv_3<=ReLU<=mixed_6_tower_1_conv_3, id: mixed_6_tower_1_conv_3} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_1_conv_4_Conv2D<=Convolution<=mixed_6_tower_1_conv_3 + id: mixed_6_tower_1_conv_4_Conv2D +- attrs: {} + expr: mixed_6_tower_1_conv_4<=BN<=mixed_6_tower_1_conv_4_Conv2D + id: mixed_6_tower_1_conv_4_batchnorm +- {expr: mixed_6_tower_1_conv_4<=ReLU<=mixed_6_tower_1_conv_4, id: mixed_6_tower_1_conv_4} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_6_tower_2_pool<=Pooling<=mixed_5_join + id: mixed_6_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_6_tower_2_conv_Conv2D<=Convolution<=mixed_6_tower_2_pool + id: mixed_6_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_6_tower_2_conv<=BN<=mixed_6_tower_2_conv_Conv2D + id: mixed_6_tower_2_conv_batchnorm +- {expr: mixed_6_tower_2_conv<=ReLU<=mixed_6_tower_2_conv, id: mixed_6_tower_2_conv} +- {expr: 'mixed_6_join<=Concat<=mixed_6_conv,mixed_6_tower_conv_2,mixed_6_tower_1_conv_4,mixed_6_tower_2_conv', + id: mixed_6_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_conv_Conv2D<=Convolution<=mixed_6_join + id: mixed_7_conv_Conv2D +- attrs: {} + expr: mixed_7_conv<=BN<=mixed_7_conv_Conv2D + id: mixed_7_conv_batchnorm +- {expr: mixed_7_conv<=ReLU<=mixed_7_conv, id: mixed_7_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_conv_Conv2D<=Convolution<=mixed_6_join + id: mixed_7_tower_conv_Conv2D +- attrs: {} + expr: mixed_7_tower_conv<=BN<=mixed_7_tower_conv_Conv2D + id: mixed_7_tower_conv_batchnorm +- {expr: mixed_7_tower_conv<=ReLU<=mixed_7_tower_conv, id: mixed_7_tower_conv} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_conv_1_Conv2D<=Convolution<=mixed_7_tower_conv + id: mixed_7_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_7_tower_conv_1<=BN<=mixed_7_tower_conv_1_Conv2D + id: mixed_7_tower_conv_1_batchnorm +- {expr: mixed_7_tower_conv_1<=ReLU<=mixed_7_tower_conv_1, id: mixed_7_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_conv_2_Conv2D<=Convolution<=mixed_7_tower_conv_1 + id: mixed_7_tower_conv_2_Conv2D +- attrs: {} + expr: mixed_7_tower_conv_2<=BN<=mixed_7_tower_conv_2_Conv2D + id: mixed_7_tower_conv_2_batchnorm +- {expr: mixed_7_tower_conv_2<=ReLU<=mixed_7_tower_conv_2, id: mixed_7_tower_conv_2} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_1_conv_Conv2D<=Convolution<=mixed_6_join + id: mixed_7_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_7_tower_1_conv<=BN<=mixed_7_tower_1_conv_Conv2D + id: mixed_7_tower_1_conv_batchnorm +- {expr: mixed_7_tower_1_conv<=ReLU<=mixed_7_tower_1_conv, id: mixed_7_tower_1_conv} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_1_conv_1_Conv2D<=Convolution<=mixed_7_tower_1_conv + id: mixed_7_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_7_tower_1_conv_1<=BN<=mixed_7_tower_1_conv_1_Conv2D + id: mixed_7_tower_1_conv_1_batchnorm +- {expr: mixed_7_tower_1_conv_1<=ReLU<=mixed_7_tower_1_conv_1, id: mixed_7_tower_1_conv_1} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_1_conv_2_Conv2D<=Convolution<=mixed_7_tower_1_conv_1 + id: mixed_7_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_7_tower_1_conv_2<=BN<=mixed_7_tower_1_conv_2_Conv2D + id: mixed_7_tower_1_conv_2_batchnorm +- {expr: mixed_7_tower_1_conv_2<=ReLU<=mixed_7_tower_1_conv_2, id: mixed_7_tower_1_conv_2} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_1_conv_3_Conv2D<=Convolution<=mixed_7_tower_1_conv_2 + id: mixed_7_tower_1_conv_3_Conv2D +- attrs: {} + expr: mixed_7_tower_1_conv_3<=BN<=mixed_7_tower_1_conv_3_Conv2D + id: mixed_7_tower_1_conv_3_batchnorm +- {expr: mixed_7_tower_1_conv_3<=ReLU<=mixed_7_tower_1_conv_3, id: mixed_7_tower_1_conv_3} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_1_conv_4_Conv2D<=Convolution<=mixed_7_tower_1_conv_3 + id: mixed_7_tower_1_conv_4_Conv2D +- attrs: {} + expr: mixed_7_tower_1_conv_4<=BN<=mixed_7_tower_1_conv_4_Conv2D + id: mixed_7_tower_1_conv_4_batchnorm +- {expr: mixed_7_tower_1_conv_4<=ReLU<=mixed_7_tower_1_conv_4, id: mixed_7_tower_1_conv_4} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_7_tower_2_pool<=Pooling<=mixed_6_join + id: mixed_7_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_7_tower_2_conv_Conv2D<=Convolution<=mixed_7_tower_2_pool + id: mixed_7_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_7_tower_2_conv<=BN<=mixed_7_tower_2_conv_Conv2D + id: mixed_7_tower_2_conv_batchnorm +- {expr: mixed_7_tower_2_conv<=ReLU<=mixed_7_tower_2_conv, id: mixed_7_tower_2_conv} +- {expr: 'mixed_7_join<=Concat<=mixed_7_conv,mixed_7_tower_conv_2,mixed_7_tower_1_conv_4,mixed_7_tower_2_conv', + id: mixed_7_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_8_tower_conv_Conv2D<=Convolution<=mixed_7_join + id: mixed_8_tower_conv_Conv2D +- attrs: {} + expr: mixed_8_tower_conv<=BN<=mixed_8_tower_conv_Conv2D + id: mixed_8_tower_conv_batchnorm +- {expr: mixed_8_tower_conv<=ReLU<=mixed_8_tower_conv, id: mixed_8_tower_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 320, pad_h: 0, pad_w: 0, stride_h: 2, + stride_w: 2} + expr: mixed_8_tower_conv_1_Conv2D<=Convolution<=mixed_8_tower_conv + id: mixed_8_tower_conv_1_Conv2D +- attrs: {} + expr: mixed_8_tower_conv_1<=BN<=mixed_8_tower_conv_1_Conv2D + id: mixed_8_tower_conv_1_batchnorm +- {expr: mixed_8_tower_conv_1<=ReLU<=mixed_8_tower_conv_1, id: mixed_8_tower_conv_1} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_8_tower_1_conv_Conv2D<=Convolution<=mixed_7_join + id: mixed_8_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_8_tower_1_conv<=BN<=mixed_8_tower_1_conv_Conv2D + id: mixed_8_tower_1_conv_batchnorm +- {expr: mixed_8_tower_1_conv<=ReLU<=mixed_8_tower_1_conv, id: mixed_8_tower_1_conv} +- attrs: {kernel_h: 7, kernel_w: 1, num_output: 192, pad_h: 3, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_8_tower_1_conv_1_Conv2D<=Convolution<=mixed_8_tower_1_conv + id: mixed_8_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_8_tower_1_conv_1<=BN<=mixed_8_tower_1_conv_1_Conv2D + id: mixed_8_tower_1_conv_1_batchnorm +- {expr: mixed_8_tower_1_conv_1<=ReLU<=mixed_8_tower_1_conv_1, id: mixed_8_tower_1_conv_1} +- attrs: {kernel_h: 1, kernel_w: 7, num_output: 192, pad_h: 0, pad_w: 3, stride_h: 1, + stride_w: 1} + expr: mixed_8_tower_1_conv_2_Conv2D<=Convolution<=mixed_8_tower_1_conv_1 + id: mixed_8_tower_1_conv_2_Conv2D +- attrs: {} + expr: mixed_8_tower_1_conv_2<=BN<=mixed_8_tower_1_conv_2_Conv2D + id: mixed_8_tower_1_conv_2_batchnorm +- {expr: mixed_8_tower_1_conv_2<=ReLU<=mixed_8_tower_1_conv_2, id: mixed_8_tower_1_conv_2} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 2, + stride_w: 2} + expr: mixed_8_tower_1_conv_3_Conv2D<=Convolution<=mixed_8_tower_1_conv_2 + id: mixed_8_tower_1_conv_3_Conv2D +- attrs: {} + expr: mixed_8_tower_1_conv_3<=BN<=mixed_8_tower_1_conv_3_Conv2D + id: mixed_8_tower_1_conv_3_batchnorm +- {expr: mixed_8_tower_1_conv_3<=ReLU<=mixed_8_tower_1_conv_3, id: mixed_8_tower_1_conv_3} +- attrs: {kernel_size: 3, mode: max, pad: 0, stride: 2} + expr: mixed_8_pool<=Pooling<=mixed_7_join + id: mixed_8_pool +- {expr: 'mixed_8_join<=Concat<=mixed_8_tower_conv_1,mixed_8_tower_1_conv_3,mixed_8_pool', + id: mixed_8_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 320, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_9_conv_Conv2D<=Convolution<=mixed_8_join + id: mixed_9_conv_Conv2D +- attrs: {} + expr: mixed_9_conv<=BN<=mixed_9_conv_Conv2D + id: mixed_9_conv_batchnorm +- {expr: mixed_9_conv<=ReLU<=mixed_9_conv, id: mixed_9_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 384, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_conv_Conv2D<=Convolution<=mixed_8_join + id: mixed_9_tower_conv_Conv2D +- attrs: {} + expr: mixed_9_tower_conv<=BN<=mixed_9_tower_conv_Conv2D + id: mixed_9_tower_conv_batchnorm +- {expr: mixed_9_tower_conv<=ReLU<=mixed_9_tower_conv, id: mixed_9_tower_conv} +- attrs: {kernel_h: 3, kernel_w: 1, num_output: 384, pad_h: 1, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_mixed_conv_Conv2D<=Convolution<=mixed_9_tower_conv + id: mixed_9_tower_mixed_conv_Conv2D +- attrs: {} + expr: mixed_9_tower_mixed_conv<=BN<=mixed_9_tower_mixed_conv_Conv2D + id: mixed_9_tower_mixed_conv_batchnorm +- {expr: mixed_9_tower_mixed_conv<=ReLU<=mixed_9_tower_mixed_conv, id: mixed_9_tower_mixed_conv} +- attrs: {kernel_h: 1, kernel_w: 3, num_output: 384, pad_h: 0, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_mixed_conv_1_Conv2D<=Convolution<=mixed_9_tower_conv + id: mixed_9_tower_mixed_conv_1_Conv2D +- attrs: {} + expr: mixed_9_tower_mixed_conv_1<=BN<=mixed_9_tower_mixed_conv_1_Conv2D + id: mixed_9_tower_mixed_conv_1_batchnorm +- {expr: mixed_9_tower_mixed_conv_1<=ReLU<=mixed_9_tower_mixed_conv_1, id: mixed_9_tower_mixed_conv_1} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 448, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_1_conv_Conv2D<=Convolution<=mixed_8_join + id: mixed_9_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_9_tower_1_conv<=BN<=mixed_9_tower_1_conv_Conv2D + id: mixed_9_tower_1_conv_batchnorm +- {expr: mixed_9_tower_1_conv<=ReLU<=mixed_9_tower_1_conv, id: mixed_9_tower_1_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 384, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_1_conv_1_Conv2D<=Convolution<=mixed_9_tower_1_conv + id: mixed_9_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_9_tower_1_conv_1<=BN<=mixed_9_tower_1_conv_1_Conv2D + id: mixed_9_tower_1_conv_1_batchnorm +- {expr: mixed_9_tower_1_conv_1<=ReLU<=mixed_9_tower_1_conv_1, id: mixed_9_tower_1_conv_1} +- attrs: {kernel_h: 3, kernel_w: 1, num_output: 384, pad_h: 1, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_1_mixed_conv_Conv2D<=Convolution<=mixed_9_tower_1_conv_1 + id: mixed_9_tower_1_mixed_conv_Conv2D +- attrs: {} + expr: mixed_9_tower_1_mixed_conv<=BN<=mixed_9_tower_1_mixed_conv_Conv2D + id: mixed_9_tower_1_mixed_conv_batchnorm +- {expr: mixed_9_tower_1_mixed_conv<=ReLU<=mixed_9_tower_1_mixed_conv, id: mixed_9_tower_1_mixed_conv} +- attrs: {kernel_h: 1, kernel_w: 3, num_output: 384, pad_h: 0, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_1_mixed_conv_1_Conv2D<=Convolution<=mixed_9_tower_1_conv_1 + id: mixed_9_tower_1_mixed_conv_1_Conv2D +- attrs: {} + expr: mixed_9_tower_1_mixed_conv_1<=BN<=mixed_9_tower_1_mixed_conv_1_Conv2D + id: mixed_9_tower_1_mixed_conv_1_batchnorm +- {expr: mixed_9_tower_1_mixed_conv_1<=ReLU<=mixed_9_tower_1_mixed_conv_1, id: mixed_9_tower_1_mixed_conv_1} +- attrs: {kernel_size: 3, mode: ave, pad: 1, stride: 1} + expr: mixed_9_tower_2_pool<=Pooling<=mixed_8_join + id: mixed_9_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_9_tower_2_conv_Conv2D<=Convolution<=mixed_9_tower_2_pool + id: mixed_9_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_9_tower_2_conv<=BN<=mixed_9_tower_2_conv_Conv2D + id: mixed_9_tower_2_conv_batchnorm +- {expr: mixed_9_tower_2_conv<=ReLU<=mixed_9_tower_2_conv, id: mixed_9_tower_2_conv} +- {expr: 'mixed_9_join<=Concat<=mixed_9_conv,mixed_9_tower_mixed_conv,mixed_9_tower_mixed_conv_1,mixed_9_tower_1_mixed_conv,mixed_9_tower_1_mixed_conv_1,mixed_9_tower_2_conv', + id: mixed_9_join} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 320, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_10_conv_Conv2D<=Convolution<=mixed_9_join + id: mixed_10_conv_Conv2D +- attrs: {} + expr: mixed_10_conv<=BN<=mixed_10_conv_Conv2D + id: mixed_10_conv_batchnorm +- {expr: mixed_10_conv<=ReLU<=mixed_10_conv, id: mixed_10_conv} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 384, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_conv_Conv2D<=Convolution<=mixed_9_join + id: mixed_10_tower_conv_Conv2D +- attrs: {} + expr: mixed_10_tower_conv<=BN<=mixed_10_tower_conv_Conv2D + id: mixed_10_tower_conv_batchnorm +- {expr: mixed_10_tower_conv<=ReLU<=mixed_10_tower_conv, id: mixed_10_tower_conv} +- attrs: {kernel_h: 3, kernel_w: 1, num_output: 384, pad_h: 1, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_mixed_conv_Conv2D<=Convolution<=mixed_10_tower_conv + id: mixed_10_tower_mixed_conv_Conv2D +- attrs: {} + expr: mixed_10_tower_mixed_conv<=BN<=mixed_10_tower_mixed_conv_Conv2D + id: mixed_10_tower_mixed_conv_batchnorm +- {expr: mixed_10_tower_mixed_conv<=ReLU<=mixed_10_tower_mixed_conv, id: mixed_10_tower_mixed_conv} +- attrs: {kernel_h: 1, kernel_w: 3, num_output: 384, pad_h: 0, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_mixed_conv_1_Conv2D<=Convolution<=mixed_10_tower_conv + id: mixed_10_tower_mixed_conv_1_Conv2D +- attrs: {} + expr: mixed_10_tower_mixed_conv_1<=BN<=mixed_10_tower_mixed_conv_1_Conv2D + id: mixed_10_tower_mixed_conv_1_batchnorm +- {expr: mixed_10_tower_mixed_conv_1<=ReLU<=mixed_10_tower_mixed_conv_1, id: mixed_10_tower_mixed_conv_1} +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 448, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_1_conv_Conv2D<=Convolution<=mixed_9_join + id: mixed_10_tower_1_conv_Conv2D +- attrs: {} + expr: mixed_10_tower_1_conv<=BN<=mixed_10_tower_1_conv_Conv2D + id: mixed_10_tower_1_conv_batchnorm +- {expr: mixed_10_tower_1_conv<=ReLU<=mixed_10_tower_1_conv, id: mixed_10_tower_1_conv} +- attrs: {kernel_h: 3, kernel_w: 3, num_output: 384, pad_h: 1, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_1_conv_1_Conv2D<=Convolution<=mixed_10_tower_1_conv + id: mixed_10_tower_1_conv_1_Conv2D +- attrs: {} + expr: mixed_10_tower_1_conv_1<=BN<=mixed_10_tower_1_conv_1_Conv2D + id: mixed_10_tower_1_conv_1_batchnorm +- {expr: mixed_10_tower_1_conv_1<=ReLU<=mixed_10_tower_1_conv_1, id: mixed_10_tower_1_conv_1} +- attrs: {kernel_h: 3, kernel_w: 1, num_output: 384, pad_h: 1, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_1_mixed_conv_Conv2D<=Convolution<=mixed_10_tower_1_conv_1 + id: mixed_10_tower_1_mixed_conv_Conv2D +- attrs: {} + expr: mixed_10_tower_1_mixed_conv<=BN<=mixed_10_tower_1_mixed_conv_Conv2D + id: mixed_10_tower_1_mixed_conv_batchnorm +- {expr: mixed_10_tower_1_mixed_conv<=ReLU<=mixed_10_tower_1_mixed_conv, id: mixed_10_tower_1_mixed_conv} +- attrs: {kernel_h: 1, kernel_w: 3, num_output: 384, pad_h: 0, pad_w: 1, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_1_mixed_conv_1_Conv2D<=Convolution<=mixed_10_tower_1_conv_1 + id: mixed_10_tower_1_mixed_conv_1_Conv2D +- attrs: {} + expr: mixed_10_tower_1_mixed_conv_1<=BN<=mixed_10_tower_1_mixed_conv_1_Conv2D + id: mixed_10_tower_1_mixed_conv_1_batchnorm +- {expr: mixed_10_tower_1_mixed_conv_1<=ReLU<=mixed_10_tower_1_mixed_conv_1, id: mixed_10_tower_1_mixed_conv_1} +- attrs: {kernel_size: 3, mode: max, pad: 1, stride: 1} + expr: mixed_10_tower_2_pool<=Pooling<=mixed_9_join + id: mixed_10_tower_2_pool +- attrs: {kernel_h: 1, kernel_w: 1, num_output: 192, pad_h: 0, pad_w: 0, stride_h: 1, + stride_w: 1} + expr: mixed_10_tower_2_conv_Conv2D<=Convolution<=mixed_10_tower_2_pool + id: mixed_10_tower_2_conv_Conv2D +- attrs: {} + expr: mixed_10_tower_2_conv<=BN<=mixed_10_tower_2_conv_Conv2D + id: mixed_10_tower_2_conv_batchnorm +- {expr: mixed_10_tower_2_conv<=ReLU<=mixed_10_tower_2_conv, id: mixed_10_tower_2_conv} +- {expr: 'mixed_10_join<=Concat<=mixed_10_conv,mixed_10_tower_mixed_conv,mixed_10_tower_mixed_conv_1,mixed_10_tower_1_mixed_conv,mixed_10_tower_1_mixed_conv_1,mixed_10_tower_2_conv', + id: mixed_10_join} +- attrs: {kernel_size: 8, mode: ave, pad: 0, stride: 1} + expr: top_cls_global_pool<=Pooling<=mixed_10_join + id: top_cls_pool +- attrs: {num_output: 1000} + expr: fc<=InnerProduct<=top_cls_global_pool + id: top_cls_fc +name: inception2 diff --git a/bninception/layer_factory.py b/bninception/layer_factory.py new file mode 100644 index 0000000..d6ba18b --- /dev/null +++ b/bninception/layer_factory.py @@ -0,0 +1,84 @@ +import torch +from torch import nn + + +LAYER_BUILDER_DICT=dict() + + +def parse_expr(expr): + parts = expr.split('<=') + return parts[0].split(','), parts[1], parts[2].split(',') + + +def get_basic_layer(info, channels=None, conv_bias=False): + id = info['id'] + attr = info['attrs'] if 'attrs' in info else list() + + out, op, in_vars = parse_expr(info['expr']) + assert(len(out) == 1) + assert(len(in_vars) == 1) + mod, out_channel, = LAYER_BUILDER_DICT[op](attr, channels, conv_bias) + + return id, out[0], mod, out_channel, in_vars[0] + + +def build_conv(attr, channels=None, conv_bias=False): + out_channels = attr['num_output'] + ks = attr['kernel_size'] if 'kernel_size' in attr else (attr['kernel_h'], attr['kernel_w']) + if 'pad' in attr or 'pad_w' in attr and 'pad_h' in attr: + padding = attr['pad'] if 'pad' in attr else (attr['pad_h'], attr['pad_w']) + else: + padding = 0 + if 'stride' in attr or 'stride_w' in attr and 'stride_h' in attr: + stride = attr['stride'] if 'stride' in attr else (attr['stride_h'], attr['stride_w']) + else: + stride = 1 + + conv = nn.Conv2d(channels, out_channels, ks, stride, padding, bias=conv_bias) + + return conv, out_channels + + +def build_pooling(attr, channels=None, conv_bias=False): + method = attr['mode'] + pad = attr['pad'] if 'pad' in attr else 0 + if method == 'max': + pool = nn.MaxPool2d(attr['kernel_size'], attr['stride'], pad, + ceil_mode=True) # all Caffe pooling use ceil model + elif method == 'ave': + pool = nn.AvgPool2d(attr['kernel_size'], attr['stride'], pad, + ceil_mode=True) # all Caffe pooling use ceil model + else: + raise ValueError("Unknown pooling method: {}".format(method)) + + return pool, channels + + +def build_relu(attr, channels=None, conv_bias=False): + return nn.ReLU(inplace=True), channels + + +def build_bn(attr, channels=None, conv_bias=False): + return nn.BatchNorm2d(channels, momentum=0.1), channels + + +def build_linear(attr, channels=None, conv_bias=False): + return nn.Linear(channels, attr['num_output']), channels + + +def build_dropout(attr, channels=None, conv_bias=False): + return nn.Dropout(p=attr['dropout_ratio']), channels + + +LAYER_BUILDER_DICT['Convolution'] = build_conv + +LAYER_BUILDER_DICT['Pooling'] = build_pooling + +LAYER_BUILDER_DICT['ReLU'] = build_relu + +LAYER_BUILDER_DICT['Dropout'] = build_dropout + +LAYER_BUILDER_DICT['BN'] = build_bn + +LAYER_BUILDER_DICT['InnerProduct'] = build_linear + diff --git a/bninception/parse_caffe.py b/bninception/parse_caffe.py new file mode 100644 index 0000000..d713038 --- /dev/null +++ b/bninception/parse_caffe.py @@ -0,0 +1,159 @@ +#!/usr/bin/env python + +import argparse + +parser = argparse.ArgumentParser(description="Convert a Caffe model and its learned parameters to torch") +parser.add_argument('model', help='network spec, usually a ProtoBuf text message') +parser.add_argument('weights', help='network parameters, usually in a name like *.caffemodel ') +parser.add_argument('--model_yaml', help="translated model spec yaml file") +parser.add_argument('--dump_weights', help="translated model parameters to be used by torch") +parser.add_argument('--model_version', help="the version of Caffe's model spec, usually 2", default=2) + +args = parser.parse_args() + +from . import caffe_pb2 +from google.protobuf import text_format +from pprint import pprint +import yaml +import numpy as np +import torch + + +class CaffeVendor(object): + def __init__(self, net_name, weight_name, version=2): + print("loading model spec...") + self._net_pb = caffe_pb2.NetParameter() + text_format.Merge(open(net_name).read(), self._net_pb) + self._weight_dict = {} + self._init_dict = [] + + if weight_name is not None: + print("loading weights...") + self._weight_pb = caffe_pb2.NetParameter() + self._weight_pb.ParseFromString(open(weight_name, 'rb').read()) + for l in self._weight_pb.layer: + self._weight_dict[l.name] = l + + print("parsing...") + self._parse_net(version) + + def _parse_net(self, version): + self._name = str(self._net_pb.name) + self._layers = self._net_pb.layer if version == 2 else self._net_pb.layers + self._parsed_layers = [self._layer2dict(x, version) for x in self._layers] + + self._net_dict = { + 'name': self._name, + 'inputs': [], + 'layers': [], + } + + self._weight_array_dict = {} + + for info, blob, is_data in self._parsed_layers: + if not is_data and info is not None: + self._net_dict['layers'].append(info) + + self._weight_array_dict.update(blob) + + @staticmethod + def _parse_blob(blob): + flat_data = np.array(blob.data) + shaped_data = flat_data.reshape(list(blob.shape.dim)) + return shaped_data + + def _layer2dict(self, layer, version): + attr_dict = {} + params = [] + weight_params = [] + fillers = [] + + for field, value in layer.ListFields(): + if field.name == 'top': + tops = [v.replace('-', '_').replace('/', '_') for v in value] + elif field.name == 'name': + layer_name = str(value).replace('-', '_').replace('/', '_') + elif field.name == 'bottom': + bottoms = [v.replace('-', '_').replace('/', '_') for v in value] + elif field.name == 'include': + if value[0].phase == 1 and op == 'Data': + print('found 1 testing data layer') + return None, dict(), dict(), False + elif field.name == 'type': + if version == 2: + op = value + else: + raise NotImplemented + elif field.name == 'loss_weight': + pass + elif field.name == 'param': + pass + else: + # other params + try: + for f, v in value.ListFields(): + if 'filler' in f.name: + pass + elif f.name == 'pool': + attr_dict['mode'] = 'max' if v == 0 else 'ave' + else: + attr_dict[f.name] = v + + except: + print(field.name, value) + raise + + expr_temp = '{top}<={op}<={input}' + + if layer.name in self._weight_dict: + blobs = [self._parse_blob(x) for x in self._weight_dict[layer.name].blobs] + else: + blobs = [] + + blob_dict = dict() + if len(blobs) > 0: + blob_dict['{}.weight'.format(layer_name)] = torch.from_numpy(blobs[0]) + blob_dict['{}.bias'.format(layer_name)] = torch.from_numpy(blobs[1]) + if op == 'BN': + blob_dict['{}.running_mean'.format(layer_name)] = torch.from_numpy(blobs[2]) + blob_dict['{}.running_var'.format(layer_name)] = torch.from_numpy(blobs[3]) + + expr = expr_temp.format(top=','.join(tops), input=','.join(bottoms), op=op) + + out_dict = { + 'id': layer_name, + 'expr': expr, + } + + if len(attr_dict) > 0: + out_dict['attrs'] = attr_dict + + return out_dict, blob_dict, False + + @property + def text_form(self): + return str(self._net_pb) + + @property + def info(self): + return { + 'name': self._name, + 'layers': [x.name for x in self._layers] + } + + @property + def yaml(self): + return yaml.dump(self._net_dict) + + def dump_weights(self, filename): + # print self._weight_array_dict.keys() + torch.save(self._weight_array_dict, open(filename, 'wb')) + +# build output +cv = CaffeVendor(args.model, args.weights, int(args.model_version)) + +if args.model_yaml is not None: + open(args.model_yaml, 'w').write(cv.yaml) + +if args.dump_weights is not None: + cv.dump_weights(args.dump_weights) diff --git a/bninception/pytorch_load.py b/bninception/pytorch_load.py new file mode 100644 index 0000000..ae4ab70 --- /dev/null +++ b/bninception/pytorch_load.py @@ -0,0 +1,67 @@ +import torch +from torch import nn +from .layer_factory import get_basic_layer, parse_expr +import torch.utils.model_zoo as model_zoo +import yaml + + +class BNInception(nn.Module): + def __init__(self, model_path='model_zoo/bninception/bn_inception.yaml', num_classes=101, + weight_url='https://yjxiong.blob.core.windows.net/models/bn_inception-9f5701afb96c8044.pth'): + super(BNInception, self).__init__() + + manifest = yaml.load(open(model_path)) + + layers = manifest['layers'] + + self._channel_dict = dict() + + self._op_list = list() + for l in layers: + out_var, op, in_var = parse_expr(l['expr']) + if op != 'Concat': + id, out_name, module, out_channel, in_name = get_basic_layer(l, + 3 if len(self._channel_dict) == 0 else self._channel_dict[in_var[0]], + conv_bias=True) + + self._channel_dict[out_name] = out_channel + setattr(self, id, module) + self._op_list.append((id, op, out_name, in_name)) + else: + self._op_list.append((id, op, out_var[0], in_var)) + channel = sum([self._channel_dict[x] for x in in_var]) + self._channel_dict[out_var[0]] = channel + + self.load_state_dict(torch.utils.model_zoo.load_url(weight_url)) + + def forward(self, input): + data_dict = dict() + data_dict[self._op_list[0][-1]] = input + + def get_hook(name): + + def hook(m, grad_in, grad_out): + print(name, grad_out[0].data.abs().mean()) + + return hook + for op in self._op_list: + if op[1] != 'Concat' and op[1] != 'InnerProduct': + data_dict[op[2]] = getattr(self, op[0])(data_dict[op[-1]]) + # getattr(self, op[0]).register_backward_hook(get_hook(op[0])) + elif op[1] == 'InnerProduct': + x = data_dict[op[-1]] + data_dict[op[2]] = getattr(self, op[0])(x.view(x.size(0), -1)) + else: + try: + data_dict[op[2]] = torch.cat(tuple(data_dict[x] for x in op[-1]), 1) + except: + for x in op[-1]: + print(x,data_dict[x].size()) + raise + return data_dict[self._op_list[-1][2]] + + +class InceptionV3(BNInception): + def __init__(self, model_path='model_zoo/bninception/inceptionv3.yaml', num_classes=101, + weight_url='https://yjxiong.blob.core.windows.net/models/inceptionv3-cuhk-0e09b300b493bc74c.pth'): + super(InceptionV3, self).__init__(model_path=model_path, weight_url=weight_url, num_classes=num_classes)