From 2fe769f314d3710ef40e710c646647b7c2cf7b7a Mon Sep 17 00:00:00 2001 From: nihui Date: Fri, 26 Apr 2019 23:07:41 +0800 Subject: [PATCH] update fused param files, enable ncnnoptimize tool build --- benchmark/alexnet.param | 41 ++-- benchmark/googlenet.param | 248 +++++++++------------ benchmark/mnasnet.param | 243 +++++++-------------- benchmark/mobilenet.param | 91 +++----- benchmark/mobilenet_ssd.param | 221 ++++++++----------- benchmark/mobilenet_v2.param | 298 +++++++------------------- benchmark/mobilenet_yolo.param | 173 ++++----------- benchmark/mobilenet_yolov3.param | 119 ++++------- benchmark/proxylessnasnet.param | 288 ++++++++----------------- benchmark/resnet18.param | 153 +++++-------- benchmark/resnet50.param | 353 ++++++++++-------------------- benchmark/shufflenet.param | 355 +++++++++++-------------------- benchmark/squeezenet.param | 125 +++++------ benchmark/squeezenet_ssd.param | 300 +++++++++++--------------- benchmark/vgg16.param | 67 +++--- tools/CMakeLists.txt | 8 + 16 files changed, 1049 insertions(+), 2034 deletions(-) mode change 100755 => 100644 benchmark/resnet50.param diff --git a/benchmark/alexnet.param b/benchmark/alexnet.param index b3170f06a..da9e4b4b4 100644 --- a/benchmark/alexnet.param +++ b/benchmark/alexnet.param @@ -1,26 +1,17 @@ 7767517 -24 24 -Input data 0 1 data 0=227 1=227 2=3 -Convolution conv1 1 1 data conv1 0=96 1=11 2=1 3=4 4=0 5=1 6=34848 -ReLU relu1 1 1 conv1 conv1_relu1 -LRN norm1 1 1 conv1_relu1 norm1 0=0 1=5 2=0.000100 3=0.750000 -Pooling pool1 1 1 norm1 pool1 0=0 1=3 2=2 3=0 4=0 -ConvolutionDepthWise conv2 1 1 pool1 conv2 0=256 1=5 2=1 3=1 4=2 5=1 6=307200 7=2 -ReLU relu2 1 1 conv2 conv2_relu2 -LRN norm2 1 1 conv2_relu2 norm2 0=0 1=5 2=0.000100 3=0.750000 -Pooling pool2 1 1 norm2 pool2 0=0 1=3 2=2 3=0 4=0 -Convolution conv3 1 1 pool2 conv3 0=384 1=3 2=1 3=1 4=1 5=1 6=884736 -ReLU relu3 1 1 conv3 conv3_relu3 -ConvolutionDepthWise conv4 1 1 conv3_relu3 conv4 0=384 1=3 2=1 3=1 4=1 5=1 6=663552 7=2 -ReLU relu4 1 1 conv4 conv4_relu4 -ConvolutionDepthWise conv5 1 1 conv4_relu4 conv5 0=256 1=3 2=1 3=1 4=1 5=1 6=442368 7=2 -ReLU relu5 1 1 conv5 conv5_relu5 -Pooling pool5 1 1 conv5_relu5 pool5 0=0 1=3 2=2 3=0 4=0 -InnerProduct fc6 1 1 pool5 fc6 0=4096 1=1 2=37748736 -ReLU relu6 1 1 fc6 fc6_relu6 -Dropout drop6 1 1 fc6_relu6 fc6_drop6 -InnerProduct fc7 1 1 fc6_drop6 fc7 0=4096 1=1 2=16777216 -ReLU relu7 1 1 fc7 fc7_relu7 -Dropout drop7 1 1 fc7_relu7 fc7_drop7 -InnerProduct fc8 1 1 fc7_drop7 fc8 0=1000 1=1 2=4096000 -Softmax prob 1 1 fc8 prob 0=0 +15 15 +Input data 0 1 data 0=227 1=227 2=3 +Convolution conv1 1 1 data conv1_relu1 0=96 1=11 3=4 5=1 6=34848 9=1 +LRN norm1 1 1 conv1_relu1 norm1 2=0.000100 +Pooling pool1 1 1 norm1 pool1 1=3 2=2 +ConvolutionDepthWise conv2 1 1 pool1 conv2_relu2 0=256 1=5 4=2 5=1 6=307200 7=2 9=1 +LRN norm2 1 1 conv2_relu2 norm2 2=0.000100 +Pooling pool2 1 1 norm2 pool2 1=3 2=2 +Convolution conv3 1 1 pool2 conv3_relu3 0=384 1=3 4=1 5=1 6=884736 9=1 +ConvolutionDepthWise conv4 1 1 conv3_relu3 conv4_relu4 0=384 1=3 4=1 5=1 6=663552 7=2 9=1 +ConvolutionDepthWise conv5 1 1 conv4_relu4 conv5_relu5 0=256 1=3 4=1 5=1 6=442368 7=2 9=1 +Pooling pool5 1 1 conv5_relu5 pool5 1=3 2=2 +InnerProduct fc6 1 1 pool5 fc6_drop6 0=4096 1=1 2=37748736 9=1 +InnerProduct fc7 1 1 fc6_drop6 fc7_drop7 0=4096 1=1 2=16777216 9=1 +InnerProduct fc8 1 1 fc7_drop7 fc8 0=1000 1=1 2=4096000 +Softmax prob 1 1 fc8 prob diff --git a/benchmark/googlenet.param b/benchmark/googlenet.param index ed359e32e..0a572a00a 100644 --- a/benchmark/googlenet.param +++ b/benchmark/googlenet.param @@ -1,154 +1,96 @@ 7767517 -152 179 -Input data 0 1 data 0=3 1=224 2=224 -Convolution conv1/7x7_s2 1 1 data conv1/7x7_s2 0=64 1=7 2=1 3=2 4=3 5=1 6=9408 -ReLU conv1/relu_7x7 1 1 conv1/7x7_s2 conv1/7x7_s2_conv1/relu_7x7 -Pooling pool1/3x3_s2 1 1 conv1/7x7_s2_conv1/relu_7x7 pool1/3x3_s2 0=0 1=3 2=2 3=0 4=0 -LRN pool1/norm1 1 1 pool1/3x3_s2 pool1/norm1 0=0 1=5 2=0.000100 3=0.750000 -Convolution conv2/3x3_reduce 1 1 pool1/norm1 conv2/3x3_reduce 0=64 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU conv2/relu_3x3_reduce 1 1 conv2/3x3_reduce conv2/3x3_reduce_conv2/relu_3x3_reduce -Convolution conv2/3x3 1 1 conv2/3x3_reduce_conv2/relu_3x3_reduce conv2/3x3 0=192 1=3 2=1 3=1 4=1 5=1 6=110592 -ReLU conv2/relu_3x3 1 1 conv2/3x3 conv2/3x3_conv2/relu_3x3 -LRN conv2/norm2 1 1 conv2/3x3_conv2/relu_3x3 conv2/norm2 0=0 1=5 2=0.000100 3=0.750000 -Pooling pool2/3x3_s2 1 1 conv2/norm2 pool2/3x3_s2 0=0 1=3 2=2 3=0 4=0 -Split splitncnn_0 1 4 pool2/3x3_s2 pool2/3x3_s2_splitncnn_0 pool2/3x3_s2_splitncnn_1 pool2/3x3_s2_splitncnn_2 pool2/3x3_s2_splitncnn_3 -Convolution inception_3a/1x1 1 1 pool2/3x3_s2_splitncnn_3 inception_3a/1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=12288 -ReLU inception_3a/relu_1x1 1 1 inception_3a/1x1 inception_3a/1x1_inception_3a/relu_1x1 -Convolution inception_3a/3x3_reduce 1 1 pool2/3x3_s2_splitncnn_2 inception_3a/3x3_reduce 0=96 1=1 2=1 3=1 4=0 5=1 6=18432 -ReLU inception_3a/relu_3x3_reduce 1 1 inception_3a/3x3_reduce inception_3a/3x3_reduce_inception_3a/relu_3x3_reduce -Convolution inception_3a/3x3 1 1 inception_3a/3x3_reduce_inception_3a/relu_3x3_reduce inception_3a/3x3 0=128 1=3 2=1 3=1 4=1 5=1 6=110592 -ReLU inception_3a/relu_3x3 1 1 inception_3a/3x3 inception_3a/3x3_inception_3a/relu_3x3 -Convolution inception_3a/5x5_reduce 1 1 pool2/3x3_s2_splitncnn_1 inception_3a/5x5_reduce 0=16 1=1 2=1 3=1 4=0 5=1 6=3072 -ReLU inception_3a/relu_5x5_reduce 1 1 inception_3a/5x5_reduce inception_3a/5x5_reduce_inception_3a/relu_5x5_reduce -Convolution inception_3a/5x5 1 1 inception_3a/5x5_reduce_inception_3a/relu_5x5_reduce inception_3a/5x5 0=32 1=5 2=1 3=1 4=2 5=1 6=12800 -ReLU inception_3a/relu_5x5 1 1 inception_3a/5x5 inception_3a/5x5_inception_3a/relu_5x5 -Pooling inception_3a/pool 1 1 pool2/3x3_s2_splitncnn_0 inception_3a/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_3a/pool_proj 1 1 inception_3a/pool inception_3a/pool_proj 0=32 1=1 2=1 3=1 4=0 5=1 6=6144 -ReLU inception_3a/relu_pool_proj 1 1 inception_3a/pool_proj inception_3a/pool_proj_inception_3a/relu_pool_proj -Concat inception_3a/output 4 1 inception_3a/1x1_inception_3a/relu_1x1 inception_3a/3x3_inception_3a/relu_3x3 inception_3a/5x5_inception_3a/relu_5x5 inception_3a/pool_proj_inception_3a/relu_pool_proj inception_3a/output 0=0 -Split splitncnn_1 1 4 inception_3a/output inception_3a/output_splitncnn_0 inception_3a/output_splitncnn_1 inception_3a/output_splitncnn_2 inception_3a/output_splitncnn_3 -Convolution inception_3b/1x1 1 1 inception_3a/output_splitncnn_3 inception_3b/1x1 0=128 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU inception_3b/relu_1x1 1 1 inception_3b/1x1 inception_3b/1x1_inception_3b/relu_1x1 -Convolution inception_3b/3x3_reduce 1 1 inception_3a/output_splitncnn_2 inception_3b/3x3_reduce 0=128 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU inception_3b/relu_3x3_reduce 1 1 inception_3b/3x3_reduce inception_3b/3x3_reduce_inception_3b/relu_3x3_reduce -Convolution inception_3b/3x3 1 1 inception_3b/3x3_reduce_inception_3b/relu_3x3_reduce inception_3b/3x3 0=192 1=3 2=1 3=1 4=1 5=1 6=221184 -ReLU inception_3b/relu_3x3 1 1 inception_3b/3x3 inception_3b/3x3_inception_3b/relu_3x3 -Convolution inception_3b/5x5_reduce 1 1 inception_3a/output_splitncnn_1 inception_3b/5x5_reduce 0=32 1=1 2=1 3=1 4=0 5=1 6=8192 -ReLU inception_3b/relu_5x5_reduce 1 1 inception_3b/5x5_reduce inception_3b/5x5_reduce_inception_3b/relu_5x5_reduce -Convolution inception_3b/5x5 1 1 inception_3b/5x5_reduce_inception_3b/relu_5x5_reduce inception_3b/5x5 0=96 1=5 2=1 3=1 4=2 5=1 6=76800 -ReLU inception_3b/relu_5x5 1 1 inception_3b/5x5 inception_3b/5x5_inception_3b/relu_5x5 -Pooling inception_3b/pool 1 1 inception_3a/output_splitncnn_0 inception_3b/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_3b/pool_proj 1 1 inception_3b/pool inception_3b/pool_proj 0=64 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU inception_3b/relu_pool_proj 1 1 inception_3b/pool_proj inception_3b/pool_proj_inception_3b/relu_pool_proj -Concat inception_3b/output 4 1 inception_3b/1x1_inception_3b/relu_1x1 inception_3b/3x3_inception_3b/relu_3x3 inception_3b/5x5_inception_3b/relu_5x5 inception_3b/pool_proj_inception_3b/relu_pool_proj inception_3b/output 0=0 -Pooling pool3/3x3_s2 1 1 inception_3b/output pool3/3x3_s2 0=0 1=3 2=2 3=0 4=0 -Split splitncnn_2 1 4 pool3/3x3_s2 pool3/3x3_s2_splitncnn_0 pool3/3x3_s2_splitncnn_1 pool3/3x3_s2_splitncnn_2 pool3/3x3_s2_splitncnn_3 -Convolution inception_4a/1x1 1 1 pool3/3x3_s2_splitncnn_3 inception_4a/1x1 0=192 1=1 2=1 3=1 4=0 5=1 6=92160 -ReLU inception_4a/relu_1x1 1 1 inception_4a/1x1 inception_4a/1x1_inception_4a/relu_1x1 -Convolution inception_4a/3x3_reduce 1 1 pool3/3x3_s2_splitncnn_2 inception_4a/3x3_reduce 0=96 1=1 2=1 3=1 4=0 5=1 6=46080 -ReLU inception_4a/relu_3x3_reduce 1 1 inception_4a/3x3_reduce inception_4a/3x3_reduce_inception_4a/relu_3x3_reduce -Convolution inception_4a/3x3 1 1 inception_4a/3x3_reduce_inception_4a/relu_3x3_reduce inception_4a/3x3 0=208 1=3 2=1 3=1 4=1 5=1 6=179712 -ReLU inception_4a/relu_3x3 1 1 inception_4a/3x3 inception_4a/3x3_inception_4a/relu_3x3 -Convolution inception_4a/5x5_reduce 1 1 pool3/3x3_s2_splitncnn_1 inception_4a/5x5_reduce 0=16 1=1 2=1 3=1 4=0 5=1 6=7680 -ReLU inception_4a/relu_5x5_reduce 1 1 inception_4a/5x5_reduce inception_4a/5x5_reduce_inception_4a/relu_5x5_reduce -Convolution inception_4a/5x5 1 1 inception_4a/5x5_reduce_inception_4a/relu_5x5_reduce inception_4a/5x5 0=48 1=5 2=1 3=1 4=2 5=1 6=19200 -ReLU inception_4a/relu_5x5 1 1 inception_4a/5x5 inception_4a/5x5_inception_4a/relu_5x5 -Pooling inception_4a/pool 1 1 pool3/3x3_s2_splitncnn_0 inception_4a/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_4a/pool_proj 1 1 inception_4a/pool inception_4a/pool_proj 0=64 1=1 2=1 3=1 4=0 5=1 6=30720 -ReLU inception_4a/relu_pool_proj 1 1 inception_4a/pool_proj inception_4a/pool_proj_inception_4a/relu_pool_proj -Concat inception_4a/output 4 1 inception_4a/1x1_inception_4a/relu_1x1 inception_4a/3x3_inception_4a/relu_3x3 inception_4a/5x5_inception_4a/relu_5x5 inception_4a/pool_proj_inception_4a/relu_pool_proj inception_4a/output 0=0 -Split splitncnn_3 1 4 inception_4a/output inception_4a/output_splitncnn_0 inception_4a/output_splitncnn_1 inception_4a/output_splitncnn_2 inception_4a/output_splitncnn_3 -Convolution inception_4b/1x1 1 1 inception_4a/output_splitncnn_3 inception_4b/1x1 0=160 1=1 2=1 3=1 4=0 5=1 6=81920 -ReLU inception_4b/relu_1x1 1 1 inception_4b/1x1 inception_4b/1x1_inception_4b/relu_1x1 -Convolution inception_4b/3x3_reduce 1 1 inception_4a/output_splitncnn_2 inception_4b/3x3_reduce 0=112 1=1 2=1 3=1 4=0 5=1 6=57344 -ReLU inception_4b/relu_3x3_reduce 1 1 inception_4b/3x3_reduce inception_4b/3x3_reduce_inception_4b/relu_3x3_reduce -Convolution inception_4b/3x3 1 1 inception_4b/3x3_reduce_inception_4b/relu_3x3_reduce inception_4b/3x3 0=224 1=3 2=1 3=1 4=1 5=1 6=225792 -ReLU inception_4b/relu_3x3 1 1 inception_4b/3x3 inception_4b/3x3_inception_4b/relu_3x3 -Convolution inception_4b/5x5_reduce 1 1 inception_4a/output_splitncnn_1 inception_4b/5x5_reduce 0=24 1=1 2=1 3=1 4=0 5=1 6=12288 -ReLU inception_4b/relu_5x5_reduce 1 1 inception_4b/5x5_reduce inception_4b/5x5_reduce_inception_4b/relu_5x5_reduce -Convolution inception_4b/5x5 1 1 inception_4b/5x5_reduce_inception_4b/relu_5x5_reduce inception_4b/5x5 0=64 1=5 2=1 3=1 4=2 5=1 6=38400 -ReLU inception_4b/relu_5x5 1 1 inception_4b/5x5 inception_4b/5x5_inception_4b/relu_5x5 -Pooling inception_4b/pool 1 1 inception_4a/output_splitncnn_0 inception_4b/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_4b/pool_proj 1 1 inception_4b/pool inception_4b/pool_proj 0=64 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU inception_4b/relu_pool_proj 1 1 inception_4b/pool_proj inception_4b/pool_proj_inception_4b/relu_pool_proj -Concat inception_4b/output 4 1 inception_4b/1x1_inception_4b/relu_1x1 inception_4b/3x3_inception_4b/relu_3x3 inception_4b/5x5_inception_4b/relu_5x5 inception_4b/pool_proj_inception_4b/relu_pool_proj inception_4b/output 0=0 -Split splitncnn_4 1 4 inception_4b/output inception_4b/output_splitncnn_0 inception_4b/output_splitncnn_1 inception_4b/output_splitncnn_2 inception_4b/output_splitncnn_3 -Convolution inception_4c/1x1 1 1 inception_4b/output_splitncnn_3 inception_4c/1x1 0=128 1=1 2=1 3=1 4=0 5=1 6=65536 -ReLU inception_4c/relu_1x1 1 1 inception_4c/1x1 inception_4c/1x1_inception_4c/relu_1x1 -Convolution inception_4c/3x3_reduce 1 1 inception_4b/output_splitncnn_2 inception_4c/3x3_reduce 0=128 1=1 2=1 3=1 4=0 5=1 6=65536 -ReLU inception_4c/relu_3x3_reduce 1 1 inception_4c/3x3_reduce inception_4c/3x3_reduce_inception_4c/relu_3x3_reduce -Convolution inception_4c/3x3 1 1 inception_4c/3x3_reduce_inception_4c/relu_3x3_reduce inception_4c/3x3 0=256 1=3 2=1 3=1 4=1 5=1 6=294912 -ReLU inception_4c/relu_3x3 1 1 inception_4c/3x3 inception_4c/3x3_inception_4c/relu_3x3 -Convolution inception_4c/5x5_reduce 1 1 inception_4b/output_splitncnn_1 inception_4c/5x5_reduce 0=24 1=1 2=1 3=1 4=0 5=1 6=12288 -ReLU inception_4c/relu_5x5_reduce 1 1 inception_4c/5x5_reduce inception_4c/5x5_reduce_inception_4c/relu_5x5_reduce -Convolution inception_4c/5x5 1 1 inception_4c/5x5_reduce_inception_4c/relu_5x5_reduce inception_4c/5x5 0=64 1=5 2=1 3=1 4=2 5=1 6=38400 -ReLU inception_4c/relu_5x5 1 1 inception_4c/5x5 inception_4c/5x5_inception_4c/relu_5x5 -Pooling inception_4c/pool 1 1 inception_4b/output_splitncnn_0 inception_4c/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_4c/pool_proj 1 1 inception_4c/pool inception_4c/pool_proj 0=64 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU inception_4c/relu_pool_proj 1 1 inception_4c/pool_proj inception_4c/pool_proj_inception_4c/relu_pool_proj -Concat inception_4c/output 4 1 inception_4c/1x1_inception_4c/relu_1x1 inception_4c/3x3_inception_4c/relu_3x3 inception_4c/5x5_inception_4c/relu_5x5 inception_4c/pool_proj_inception_4c/relu_pool_proj inception_4c/output 0=0 -Split splitncnn_5 1 4 inception_4c/output inception_4c/output_splitncnn_0 inception_4c/output_splitncnn_1 inception_4c/output_splitncnn_2 inception_4c/output_splitncnn_3 -Convolution inception_4d/1x1 1 1 inception_4c/output_splitncnn_3 inception_4d/1x1 0=112 1=1 2=1 3=1 4=0 5=1 6=57344 -ReLU inception_4d/relu_1x1 1 1 inception_4d/1x1 inception_4d/1x1_inception_4d/relu_1x1 -Convolution inception_4d/3x3_reduce 1 1 inception_4c/output_splitncnn_2 inception_4d/3x3_reduce 0=144 1=1 2=1 3=1 4=0 5=1 6=73728 -ReLU inception_4d/relu_3x3_reduce 1 1 inception_4d/3x3_reduce inception_4d/3x3_reduce_inception_4d/relu_3x3_reduce -Convolution inception_4d/3x3 1 1 inception_4d/3x3_reduce_inception_4d/relu_3x3_reduce inception_4d/3x3 0=288 1=3 2=1 3=1 4=1 5=1 6=373248 -ReLU inception_4d/relu_3x3 1 1 inception_4d/3x3 inception_4d/3x3_inception_4d/relu_3x3 -Convolution inception_4d/5x5_reduce 1 1 inception_4c/output_splitncnn_1 inception_4d/5x5_reduce 0=32 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU inception_4d/relu_5x5_reduce 1 1 inception_4d/5x5_reduce inception_4d/5x5_reduce_inception_4d/relu_5x5_reduce -Convolution inception_4d/5x5 1 1 inception_4d/5x5_reduce_inception_4d/relu_5x5_reduce inception_4d/5x5 0=64 1=5 2=1 3=1 4=2 5=1 6=51200 -ReLU inception_4d/relu_5x5 1 1 inception_4d/5x5 inception_4d/5x5_inception_4d/relu_5x5 -Pooling inception_4d/pool 1 1 inception_4c/output_splitncnn_0 inception_4d/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_4d/pool_proj 1 1 inception_4d/pool inception_4d/pool_proj 0=64 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU inception_4d/relu_pool_proj 1 1 inception_4d/pool_proj inception_4d/pool_proj_inception_4d/relu_pool_proj -Concat inception_4d/output 4 1 inception_4d/1x1_inception_4d/relu_1x1 inception_4d/3x3_inception_4d/relu_3x3 inception_4d/5x5_inception_4d/relu_5x5 inception_4d/pool_proj_inception_4d/relu_pool_proj inception_4d/output 0=0 -Split splitncnn_6 1 4 inception_4d/output inception_4d/output_splitncnn_0 inception_4d/output_splitncnn_1 inception_4d/output_splitncnn_2 inception_4d/output_splitncnn_3 -Convolution inception_4e/1x1 1 1 inception_4d/output_splitncnn_3 inception_4e/1x1 0=256 1=1 2=1 3=1 4=0 5=1 6=135168 -ReLU inception_4e/relu_1x1 1 1 inception_4e/1x1 inception_4e/1x1_inception_4e/relu_1x1 -Convolution inception_4e/3x3_reduce 1 1 inception_4d/output_splitncnn_2 inception_4e/3x3_reduce 0=160 1=1 2=1 3=1 4=0 5=1 6=84480 -ReLU inception_4e/relu_3x3_reduce 1 1 inception_4e/3x3_reduce inception_4e/3x3_reduce_inception_4e/relu_3x3_reduce -Convolution inception_4e/3x3 1 1 inception_4e/3x3_reduce_inception_4e/relu_3x3_reduce inception_4e/3x3 0=320 1=3 2=1 3=1 4=1 5=1 6=460800 -ReLU inception_4e/relu_3x3 1 1 inception_4e/3x3 inception_4e/3x3_inception_4e/relu_3x3 -Convolution inception_4e/5x5_reduce 1 1 inception_4d/output_splitncnn_1 inception_4e/5x5_reduce 0=32 1=1 2=1 3=1 4=0 5=1 6=16896 -ReLU inception_4e/relu_5x5_reduce 1 1 inception_4e/5x5_reduce inception_4e/5x5_reduce_inception_4e/relu_5x5_reduce -Convolution inception_4e/5x5 1 1 inception_4e/5x5_reduce_inception_4e/relu_5x5_reduce inception_4e/5x5 0=128 1=5 2=1 3=1 4=2 5=1 6=102400 -ReLU inception_4e/relu_5x5 1 1 inception_4e/5x5 inception_4e/5x5_inception_4e/relu_5x5 -Pooling inception_4e/pool 1 1 inception_4d/output_splitncnn_0 inception_4e/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_4e/pool_proj 1 1 inception_4e/pool inception_4e/pool_proj 0=128 1=1 2=1 3=1 4=0 5=1 6=67584 -ReLU inception_4e/relu_pool_proj 1 1 inception_4e/pool_proj inception_4e/pool_proj_inception_4e/relu_pool_proj -Concat inception_4e/output 4 1 inception_4e/1x1_inception_4e/relu_1x1 inception_4e/3x3_inception_4e/relu_3x3 inception_4e/5x5_inception_4e/relu_5x5 inception_4e/pool_proj_inception_4e/relu_pool_proj inception_4e/output 0=0 -Pooling pool4/3x3_s2 1 1 inception_4e/output pool4/3x3_s2 0=0 1=3 2=2 3=0 4=0 -Split splitncnn_7 1 4 pool4/3x3_s2 pool4/3x3_s2_splitncnn_0 pool4/3x3_s2_splitncnn_1 pool4/3x3_s2_splitncnn_2 pool4/3x3_s2_splitncnn_3 -Convolution inception_5a/1x1 1 1 pool4/3x3_s2_splitncnn_3 inception_5a/1x1 0=256 1=1 2=1 3=1 4=0 5=1 6=212992 -ReLU inception_5a/relu_1x1 1 1 inception_5a/1x1 inception_5a/1x1_inception_5a/relu_1x1 -Convolution inception_5a/3x3_reduce 1 1 pool4/3x3_s2_splitncnn_2 inception_5a/3x3_reduce 0=160 1=1 2=1 3=1 4=0 5=1 6=133120 -ReLU inception_5a/relu_3x3_reduce 1 1 inception_5a/3x3_reduce inception_5a/3x3_reduce_inception_5a/relu_3x3_reduce -Convolution inception_5a/3x3 1 1 inception_5a/3x3_reduce_inception_5a/relu_3x3_reduce inception_5a/3x3 0=320 1=3 2=1 3=1 4=1 5=1 6=460800 -ReLU inception_5a/relu_3x3 1 1 inception_5a/3x3 inception_5a/3x3_inception_5a/relu_3x3 -Convolution inception_5a/5x5_reduce 1 1 pool4/3x3_s2_splitncnn_1 inception_5a/5x5_reduce 0=32 1=1 2=1 3=1 4=0 5=1 6=26624 -ReLU inception_5a/relu_5x5_reduce 1 1 inception_5a/5x5_reduce inception_5a/5x5_reduce_inception_5a/relu_5x5_reduce -Convolution inception_5a/5x5 1 1 inception_5a/5x5_reduce_inception_5a/relu_5x5_reduce inception_5a/5x5 0=128 1=5 2=1 3=1 4=2 5=1 6=102400 -ReLU inception_5a/relu_5x5 1 1 inception_5a/5x5 inception_5a/5x5_inception_5a/relu_5x5 -Pooling inception_5a/pool 1 1 pool4/3x3_s2_splitncnn_0 inception_5a/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_5a/pool_proj 1 1 inception_5a/pool inception_5a/pool_proj 0=128 1=1 2=1 3=1 4=0 5=1 6=106496 -ReLU inception_5a/relu_pool_proj 1 1 inception_5a/pool_proj inception_5a/pool_proj_inception_5a/relu_pool_proj -Concat inception_5a/output 4 1 inception_5a/1x1_inception_5a/relu_1x1 inception_5a/3x3_inception_5a/relu_3x3 inception_5a/5x5_inception_5a/relu_5x5 inception_5a/pool_proj_inception_5a/relu_pool_proj inception_5a/output 0=0 -Split splitncnn_8 1 4 inception_5a/output inception_5a/output_splitncnn_0 inception_5a/output_splitncnn_1 inception_5a/output_splitncnn_2 inception_5a/output_splitncnn_3 -Convolution inception_5b/1x1 1 1 inception_5a/output_splitncnn_3 inception_5b/1x1 0=384 1=1 2=1 3=1 4=0 5=1 6=319488 -ReLU inception_5b/relu_1x1 1 1 inception_5b/1x1 inception_5b/1x1_inception_5b/relu_1x1 -Convolution inception_5b/3x3_reduce 1 1 inception_5a/output_splitncnn_2 inception_5b/3x3_reduce 0=192 1=1 2=1 3=1 4=0 5=1 6=159744 -ReLU inception_5b/relu_3x3_reduce 1 1 inception_5b/3x3_reduce inception_5b/3x3_reduce_inception_5b/relu_3x3_reduce -Convolution inception_5b/3x3 1 1 inception_5b/3x3_reduce_inception_5b/relu_3x3_reduce inception_5b/3x3 0=384 1=3 2=1 3=1 4=1 5=1 6=663552 -ReLU inception_5b/relu_3x3 1 1 inception_5b/3x3 inception_5b/3x3_inception_5b/relu_3x3 -Convolution inception_5b/5x5_reduce 1 1 inception_5a/output_splitncnn_1 inception_5b/5x5_reduce 0=48 1=1 2=1 3=1 4=0 5=1 6=39936 -ReLU inception_5b/relu_5x5_reduce 1 1 inception_5b/5x5_reduce inception_5b/5x5_reduce_inception_5b/relu_5x5_reduce -Convolution inception_5b/5x5 1 1 inception_5b/5x5_reduce_inception_5b/relu_5x5_reduce inception_5b/5x5 0=128 1=5 2=1 3=1 4=2 5=1 6=153600 -ReLU inception_5b/relu_5x5 1 1 inception_5b/5x5 inception_5b/5x5_inception_5b/relu_5x5 -Pooling inception_5b/pool 1 1 inception_5a/output_splitncnn_0 inception_5b/pool 0=0 1=3 2=1 3=1 4=0 -Convolution inception_5b/pool_proj 1 1 inception_5b/pool inception_5b/pool_proj 0=128 1=1 2=1 3=1 4=0 5=1 6=106496 -ReLU inception_5b/relu_pool_proj 1 1 inception_5b/pool_proj inception_5b/pool_proj_inception_5b/relu_pool_proj -Concat inception_5b/output 4 1 inception_5b/1x1_inception_5b/relu_1x1 inception_5b/3x3_inception_5b/relu_3x3 inception_5b/5x5_inception_5b/relu_5x5 inception_5b/pool_proj_inception_5b/relu_pool_proj inception_5b/output 0=0 -Pooling pool5/7x7_s1 1 1 inception_5b/output pool5/7x7_s1 0=1 1=7 2=1 3=0 4=0 -Dropout pool5/drop_7x7_s1 1 1 pool5/7x7_s1 pool5/7x7_s1_pool5/drop_7x7_s1 -InnerProduct loss3/classifier 1 1 pool5/7x7_s1_pool5/drop_7x7_s1 loss3/classifier 0=1000 1=1 2=1024000 -Softmax prob 1 1 loss3/classifier prob 0=0 +94 121 +Input data 0 1 data 0=3 1=224 2=224 +Convolution conv1/7x7_s2 1 1 data conv1/7x7_s2_conv1/relu_7x7 0=64 1=7 3=2 4=3 5=1 6=9408 9=1 +Pooling pool1/3x3_s2 1 1 conv1/7x7_s2_conv1/relu_7x7 pool1/3x3_s2 1=3 2=2 +LRN pool1/norm1 1 1 pool1/3x3_s2 pool1/norm1 2=0.000100 +Convolution conv2/3x3_reduce 1 1 pool1/norm1 conv2/3x3_reduce_conv2/relu_3x3_reduce 0=64 1=1 5=1 6=4096 9=1 +Convolution conv2/3x3 1 1 conv2/3x3_reduce_conv2/relu_3x3_reduce conv2/3x3_conv2/relu_3x3 0=192 1=3 4=1 5=1 6=110592 9=1 +LRN conv2/norm2 1 1 conv2/3x3_conv2/relu_3x3 conv2/norm2 2=0.000100 +Pooling pool2/3x3_s2 1 1 conv2/norm2 pool2/3x3_s2 1=3 2=2 +Split splitncnn_0 1 4 pool2/3x3_s2 pool2/3x3_s2_splitncnn_0 pool2/3x3_s2_splitncnn_1 pool2/3x3_s2_splitncnn_2 pool2/3x3_s2_splitncnn_3 +Convolution inception_3a/1x1 1 1 pool2/3x3_s2_splitncnn_3 inception_3a/1x1_inception_3a/relu_1x1 0=64 1=1 5=1 6=12288 9=1 +Convolution inception_3a/3x3_reduce 1 1 pool2/3x3_s2_splitncnn_2 inception_3a/3x3_reduce_inception_3a/relu_3x3_reduce 0=96 1=1 5=1 6=18432 9=1 +Convolution inception_3a/3x3 1 1 inception_3a/3x3_reduce_inception_3a/relu_3x3_reduce inception_3a/3x3_inception_3a/relu_3x3 0=128 1=3 4=1 5=1 6=110592 9=1 +Convolution inception_3a/5x5_reduce 1 1 pool2/3x3_s2_splitncnn_1 inception_3a/5x5_reduce_inception_3a/relu_5x5_reduce 0=16 1=1 5=1 6=3072 9=1 +Convolution inception_3a/5x5 1 1 inception_3a/5x5_reduce_inception_3a/relu_5x5_reduce inception_3a/5x5_inception_3a/relu_5x5 0=32 1=5 4=2 5=1 6=12800 9=1 +Pooling inception_3a/pool 1 1 pool2/3x3_s2_splitncnn_0 inception_3a/pool 1=3 3=1 +Convolution inception_3a/pool_proj 1 1 inception_3a/pool inception_3a/pool_proj_inception_3a/relu_pool_proj 0=32 1=1 5=1 6=6144 9=1 +Concat inception_3a/output 4 1 inception_3a/1x1_inception_3a/relu_1x1 inception_3a/3x3_inception_3a/relu_3x3 inception_3a/5x5_inception_3a/relu_5x5 inception_3a/pool_proj_inception_3a/relu_pool_proj inception_3a/output +Split splitncnn_1 1 4 inception_3a/output inception_3a/output_splitncnn_0 inception_3a/output_splitncnn_1 inception_3a/output_splitncnn_2 inception_3a/output_splitncnn_3 +Convolution inception_3b/1x1 1 1 inception_3a/output_splitncnn_3 inception_3b/1x1_inception_3b/relu_1x1 0=128 1=1 5=1 6=32768 9=1 +Convolution inception_3b/3x3_reduce 1 1 inception_3a/output_splitncnn_2 inception_3b/3x3_reduce_inception_3b/relu_3x3_reduce 0=128 1=1 5=1 6=32768 9=1 +Convolution inception_3b/3x3 1 1 inception_3b/3x3_reduce_inception_3b/relu_3x3_reduce inception_3b/3x3_inception_3b/relu_3x3 0=192 1=3 4=1 5=1 6=221184 9=1 +Convolution inception_3b/5x5_reduce 1 1 inception_3a/output_splitncnn_1 inception_3b/5x5_reduce_inception_3b/relu_5x5_reduce 0=32 1=1 5=1 6=8192 9=1 +Convolution inception_3b/5x5 1 1 inception_3b/5x5_reduce_inception_3b/relu_5x5_reduce inception_3b/5x5_inception_3b/relu_5x5 0=96 1=5 4=2 5=1 6=76800 9=1 +Pooling inception_3b/pool 1 1 inception_3a/output_splitncnn_0 inception_3b/pool 1=3 3=1 +Convolution inception_3b/pool_proj 1 1 inception_3b/pool inception_3b/pool_proj_inception_3b/relu_pool_proj 0=64 1=1 5=1 6=16384 9=1 +Concat inception_3b/output 4 1 inception_3b/1x1_inception_3b/relu_1x1 inception_3b/3x3_inception_3b/relu_3x3 inception_3b/5x5_inception_3b/relu_5x5 inception_3b/pool_proj_inception_3b/relu_pool_proj inception_3b/output +Pooling pool3/3x3_s2 1 1 inception_3b/output pool3/3x3_s2 1=3 2=2 +Split splitncnn_2 1 4 pool3/3x3_s2 pool3/3x3_s2_splitncnn_0 pool3/3x3_s2_splitncnn_1 pool3/3x3_s2_splitncnn_2 pool3/3x3_s2_splitncnn_3 +Convolution inception_4a/1x1 1 1 pool3/3x3_s2_splitncnn_3 inception_4a/1x1_inception_4a/relu_1x1 0=192 1=1 5=1 6=92160 9=1 +Convolution inception_4a/3x3_reduce 1 1 pool3/3x3_s2_splitncnn_2 inception_4a/3x3_reduce_inception_4a/relu_3x3_reduce 0=96 1=1 5=1 6=46080 9=1 +Convolution inception_4a/3x3 1 1 inception_4a/3x3_reduce_inception_4a/relu_3x3_reduce inception_4a/3x3_inception_4a/relu_3x3 0=208 1=3 4=1 5=1 6=179712 9=1 +Convolution inception_4a/5x5_reduce 1 1 pool3/3x3_s2_splitncnn_1 inception_4a/5x5_reduce_inception_4a/relu_5x5_reduce 0=16 1=1 5=1 6=7680 9=1 +Convolution inception_4a/5x5 1 1 inception_4a/5x5_reduce_inception_4a/relu_5x5_reduce inception_4a/5x5_inception_4a/relu_5x5 0=48 1=5 4=2 5=1 6=19200 9=1 +Pooling inception_4a/pool 1 1 pool3/3x3_s2_splitncnn_0 inception_4a/pool 1=3 3=1 +Convolution inception_4a/pool_proj 1 1 inception_4a/pool inception_4a/pool_proj_inception_4a/relu_pool_proj 0=64 1=1 5=1 6=30720 9=1 +Concat inception_4a/output 4 1 inception_4a/1x1_inception_4a/relu_1x1 inception_4a/3x3_inception_4a/relu_3x3 inception_4a/5x5_inception_4a/relu_5x5 inception_4a/pool_proj_inception_4a/relu_pool_proj inception_4a/output +Split splitncnn_3 1 4 inception_4a/output inception_4a/output_splitncnn_0 inception_4a/output_splitncnn_1 inception_4a/output_splitncnn_2 inception_4a/output_splitncnn_3 +Convolution inception_4b/1x1 1 1 inception_4a/output_splitncnn_3 inception_4b/1x1_inception_4b/relu_1x1 0=160 1=1 5=1 6=81920 9=1 +Convolution inception_4b/3x3_reduce 1 1 inception_4a/output_splitncnn_2 inception_4b/3x3_reduce_inception_4b/relu_3x3_reduce 0=112 1=1 5=1 6=57344 9=1 +Convolution inception_4b/3x3 1 1 inception_4b/3x3_reduce_inception_4b/relu_3x3_reduce inception_4b/3x3_inception_4b/relu_3x3 0=224 1=3 4=1 5=1 6=225792 9=1 +Convolution inception_4b/5x5_reduce 1 1 inception_4a/output_splitncnn_1 inception_4b/5x5_reduce_inception_4b/relu_5x5_reduce 0=24 1=1 5=1 6=12288 9=1 +Convolution inception_4b/5x5 1 1 inception_4b/5x5_reduce_inception_4b/relu_5x5_reduce inception_4b/5x5_inception_4b/relu_5x5 0=64 1=5 4=2 5=1 6=38400 9=1 +Pooling inception_4b/pool 1 1 inception_4a/output_splitncnn_0 inception_4b/pool 1=3 3=1 +Convolution inception_4b/pool_proj 1 1 inception_4b/pool inception_4b/pool_proj_inception_4b/relu_pool_proj 0=64 1=1 5=1 6=32768 9=1 +Concat inception_4b/output 4 1 inception_4b/1x1_inception_4b/relu_1x1 inception_4b/3x3_inception_4b/relu_3x3 inception_4b/5x5_inception_4b/relu_5x5 inception_4b/pool_proj_inception_4b/relu_pool_proj inception_4b/output +Split splitncnn_4 1 4 inception_4b/output inception_4b/output_splitncnn_0 inception_4b/output_splitncnn_1 inception_4b/output_splitncnn_2 inception_4b/output_splitncnn_3 +Convolution inception_4c/1x1 1 1 inception_4b/output_splitncnn_3 inception_4c/1x1_inception_4c/relu_1x1 0=128 1=1 5=1 6=65536 9=1 +Convolution inception_4c/3x3_reduce 1 1 inception_4b/output_splitncnn_2 inception_4c/3x3_reduce_inception_4c/relu_3x3_reduce 0=128 1=1 5=1 6=65536 9=1 +Convolution inception_4c/3x3 1 1 inception_4c/3x3_reduce_inception_4c/relu_3x3_reduce inception_4c/3x3_inception_4c/relu_3x3 0=256 1=3 4=1 5=1 6=294912 9=1 +Convolution inception_4c/5x5_reduce 1 1 inception_4b/output_splitncnn_1 inception_4c/5x5_reduce_inception_4c/relu_5x5_reduce 0=24 1=1 5=1 6=12288 9=1 +Convolution inception_4c/5x5 1 1 inception_4c/5x5_reduce_inception_4c/relu_5x5_reduce inception_4c/5x5_inception_4c/relu_5x5 0=64 1=5 4=2 5=1 6=38400 9=1 +Pooling inception_4c/pool 1 1 inception_4b/output_splitncnn_0 inception_4c/pool 1=3 3=1 +Convolution inception_4c/pool_proj 1 1 inception_4c/pool inception_4c/pool_proj_inception_4c/relu_pool_proj 0=64 1=1 5=1 6=32768 9=1 +Concat inception_4c/output 4 1 inception_4c/1x1_inception_4c/relu_1x1 inception_4c/3x3_inception_4c/relu_3x3 inception_4c/5x5_inception_4c/relu_5x5 inception_4c/pool_proj_inception_4c/relu_pool_proj inception_4c/output +Split splitncnn_5 1 4 inception_4c/output inception_4c/output_splitncnn_0 inception_4c/output_splitncnn_1 inception_4c/output_splitncnn_2 inception_4c/output_splitncnn_3 +Convolution inception_4d/1x1 1 1 inception_4c/output_splitncnn_3 inception_4d/1x1_inception_4d/relu_1x1 0=112 1=1 5=1 6=57344 9=1 +Convolution inception_4d/3x3_reduce 1 1 inception_4c/output_splitncnn_2 inception_4d/3x3_reduce_inception_4d/relu_3x3_reduce 0=144 1=1 5=1 6=73728 9=1 +Convolution inception_4d/3x3 1 1 inception_4d/3x3_reduce_inception_4d/relu_3x3_reduce inception_4d/3x3_inception_4d/relu_3x3 0=288 1=3 4=1 5=1 6=373248 9=1 +Convolution inception_4d/5x5_reduce 1 1 inception_4c/output_splitncnn_1 inception_4d/5x5_reduce_inception_4d/relu_5x5_reduce 0=32 1=1 5=1 6=16384 9=1 +Convolution inception_4d/5x5 1 1 inception_4d/5x5_reduce_inception_4d/relu_5x5_reduce inception_4d/5x5_inception_4d/relu_5x5 0=64 1=5 4=2 5=1 6=51200 9=1 +Pooling inception_4d/pool 1 1 inception_4c/output_splitncnn_0 inception_4d/pool 1=3 3=1 +Convolution inception_4d/pool_proj 1 1 inception_4d/pool inception_4d/pool_proj_inception_4d/relu_pool_proj 0=64 1=1 5=1 6=32768 9=1 +Concat inception_4d/output 4 1 inception_4d/1x1_inception_4d/relu_1x1 inception_4d/3x3_inception_4d/relu_3x3 inception_4d/5x5_inception_4d/relu_5x5 inception_4d/pool_proj_inception_4d/relu_pool_proj inception_4d/output +Split splitncnn_6 1 4 inception_4d/output inception_4d/output_splitncnn_0 inception_4d/output_splitncnn_1 inception_4d/output_splitncnn_2 inception_4d/output_splitncnn_3 +Convolution inception_4e/1x1 1 1 inception_4d/output_splitncnn_3 inception_4e/1x1_inception_4e/relu_1x1 0=256 1=1 5=1 6=135168 9=1 +Convolution inception_4e/3x3_reduce 1 1 inception_4d/output_splitncnn_2 inception_4e/3x3_reduce_inception_4e/relu_3x3_reduce 0=160 1=1 5=1 6=84480 9=1 +Convolution inception_4e/3x3 1 1 inception_4e/3x3_reduce_inception_4e/relu_3x3_reduce inception_4e/3x3_inception_4e/relu_3x3 0=320 1=3 4=1 5=1 6=460800 9=1 +Convolution inception_4e/5x5_reduce 1 1 inception_4d/output_splitncnn_1 inception_4e/5x5_reduce_inception_4e/relu_5x5_reduce 0=32 1=1 5=1 6=16896 9=1 +Convolution inception_4e/5x5 1 1 inception_4e/5x5_reduce_inception_4e/relu_5x5_reduce inception_4e/5x5_inception_4e/relu_5x5 0=128 1=5 4=2 5=1 6=102400 9=1 +Pooling inception_4e/pool 1 1 inception_4d/output_splitncnn_0 inception_4e/pool 1=3 3=1 +Convolution inception_4e/pool_proj 1 1 inception_4e/pool inception_4e/pool_proj_inception_4e/relu_pool_proj 0=128 1=1 5=1 6=67584 9=1 +Concat inception_4e/output 4 1 inception_4e/1x1_inception_4e/relu_1x1 inception_4e/3x3_inception_4e/relu_3x3 inception_4e/5x5_inception_4e/relu_5x5 inception_4e/pool_proj_inception_4e/relu_pool_proj inception_4e/output +Pooling pool4/3x3_s2 1 1 inception_4e/output pool4/3x3_s2 1=3 2=2 +Split splitncnn_7 1 4 pool4/3x3_s2 pool4/3x3_s2_splitncnn_0 pool4/3x3_s2_splitncnn_1 pool4/3x3_s2_splitncnn_2 pool4/3x3_s2_splitncnn_3 +Convolution inception_5a/1x1 1 1 pool4/3x3_s2_splitncnn_3 inception_5a/1x1_inception_5a/relu_1x1 0=256 1=1 5=1 6=212992 9=1 +Convolution inception_5a/3x3_reduce 1 1 pool4/3x3_s2_splitncnn_2 inception_5a/3x3_reduce_inception_5a/relu_3x3_reduce 0=160 1=1 5=1 6=133120 9=1 +Convolution inception_5a/3x3 1 1 inception_5a/3x3_reduce_inception_5a/relu_3x3_reduce inception_5a/3x3_inception_5a/relu_3x3 0=320 1=3 4=1 5=1 6=460800 9=1 +Convolution inception_5a/5x5_reduce 1 1 pool4/3x3_s2_splitncnn_1 inception_5a/5x5_reduce_inception_5a/relu_5x5_reduce 0=32 1=1 5=1 6=26624 9=1 +Convolution inception_5a/5x5 1 1 inception_5a/5x5_reduce_inception_5a/relu_5x5_reduce inception_5a/5x5_inception_5a/relu_5x5 0=128 1=5 4=2 5=1 6=102400 9=1 +Pooling inception_5a/pool 1 1 pool4/3x3_s2_splitncnn_0 inception_5a/pool 1=3 3=1 +Convolution inception_5a/pool_proj 1 1 inception_5a/pool inception_5a/pool_proj_inception_5a/relu_pool_proj 0=128 1=1 5=1 6=106496 9=1 +Concat inception_5a/output 4 1 inception_5a/1x1_inception_5a/relu_1x1 inception_5a/3x3_inception_5a/relu_3x3 inception_5a/5x5_inception_5a/relu_5x5 inception_5a/pool_proj_inception_5a/relu_pool_proj inception_5a/output +Split splitncnn_8 1 4 inception_5a/output inception_5a/output_splitncnn_0 inception_5a/output_splitncnn_1 inception_5a/output_splitncnn_2 inception_5a/output_splitncnn_3 +Convolution inception_5b/1x1 1 1 inception_5a/output_splitncnn_3 inception_5b/1x1_inception_5b/relu_1x1 0=384 1=1 5=1 6=319488 9=1 +Convolution inception_5b/3x3_reduce 1 1 inception_5a/output_splitncnn_2 inception_5b/3x3_reduce_inception_5b/relu_3x3_reduce 0=192 1=1 5=1 6=159744 9=1 +Convolution inception_5b/3x3 1 1 inception_5b/3x3_reduce_inception_5b/relu_3x3_reduce inception_5b/3x3_inception_5b/relu_3x3 0=384 1=3 4=1 5=1 6=663552 9=1 +Convolution inception_5b/5x5_reduce 1 1 inception_5a/output_splitncnn_1 inception_5b/5x5_reduce_inception_5b/relu_5x5_reduce 0=48 1=1 5=1 6=39936 9=1 +Convolution inception_5b/5x5 1 1 inception_5b/5x5_reduce_inception_5b/relu_5x5_reduce inception_5b/5x5_inception_5b/relu_5x5 0=128 1=5 4=2 5=1 6=153600 9=1 +Pooling inception_5b/pool 1 1 inception_5a/output_splitncnn_0 inception_5b/pool 1=3 3=1 +Convolution inception_5b/pool_proj 1 1 inception_5b/pool inception_5b/pool_proj_inception_5b/relu_pool_proj 0=128 1=1 5=1 6=106496 9=1 +Concat inception_5b/output 4 1 inception_5b/1x1_inception_5b/relu_1x1 inception_5b/3x3_inception_5b/relu_3x3 inception_5b/5x5_inception_5b/relu_5x5 inception_5b/pool_proj_inception_5b/relu_pool_proj inception_5b/output +Pooling pool5/7x7_s1 1 1 inception_5b/output pool5/7x7_s1_pool5/drop_7x7_s1 0=1 1=7 +InnerProduct loss3/classifier 1 1 pool5/7x7_s1_pool5/drop_7x7_s1 loss3/classifier 0=1000 1=1 2=1024000 +Softmax prob 1 1 loss3/classifier prob diff --git a/benchmark/mnasnet.param b/benchmark/mnasnet.param index 41494f91f..feff8d318 100644 --- a/benchmark/mnasnet.param +++ b/benchmark/mnasnet.param @@ -1,166 +1,79 @@ 7767517 -164 174 -Input data 0 1 data -Convolution first-3x3-conv 1 1 data first-3x3-conv 0=32 1=3 11=3 2=1 12=1 3=2 13=2 4=1 14=1 5=0 6=864 -BatchNorm first-3x3-conv_bn 1 1 first-3x3-conv first-3x3-conv_bn 0=32 -ReLU first-3x3-conv_relu 1 1 first-3x3-conv_bn first-3x3-conv_relu -ConvolutionDepthWise A0_dw 1 1 first-3x3-conv_relu A0_dw 0=32 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=288 7=32 -BatchNorm A0_dw_bn 1 1 A0_dw A0_dw_bn 0=32 -ReLU A0_dw_relu 1 1 A0_dw_bn A0_dw_relu -Convolution A0_linear 1 1 A0_dw_relu A0_linear 0=16 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=512 -BatchNorm A0_linear_bn 1 1 A0_linear A0_linear_bn 0=16 -Convolution B0_expand 1 1 A0_linear_bn B0_expand 0=48 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=768 -BatchNorm B0_expand_bn 1 1 B0_expand B0_expand_bn 0=48 -ReLU B0_expand_relu 1 1 B0_expand_bn B0_expand_relu -ConvolutionDepthWise B0_dw 1 1 B0_expand_relu B0_dw 0=48 1=3 11=3 2=1 12=1 3=2 13=2 4=1 14=1 5=0 6=432 7=48 -BatchNorm B0_dw_bn 1 1 B0_dw B0_dw_bn 0=48 -ReLU B0_dw_relu 1 1 B0_dw_bn B0_dw_relu -Convolution B0_linear 1 1 B0_dw_relu B0_linear 0=24 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1152 -BatchNorm B0_linear_bn 1 1 B0_linear B0_linear_bn 0=24 -Split splitncnn_0 1 2 B0_linear_bn B0_linear_bn_splitncnn_0 B0_linear_bn_splitncnn_1 -Convolution B1_expand 1 1 B0_linear_bn_splitncnn_1 B1_expand 0=72 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1728 -BatchNorm B1_expand_bn 1 1 B1_expand B1_expand_bn 0=72 -ReLU B1_expand_relu 1 1 B1_expand_bn B1_expand_relu -ConvolutionDepthWise B1_dw 1 1 B1_expand_relu B1_dw 0=72 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=648 7=72 -BatchNorm B1_dw_bn 1 1 B1_dw B1_dw_bn 0=72 -ReLU B1_dw_relu 1 1 B1_dw_bn B1_dw_relu -Convolution B1_linear 1 1 B1_dw_relu B1_linear 0=24 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1728 -BatchNorm B1_linear_bn 1 1 B1_linear B1_linear_bn 0=24 -BinaryOp unknownncnn_0 2 1 B0_linear_bn_splitncnn_0 B1_linear_bn unknownncnn_0 0=0 -Split splitncnn_1 1 2 unknownncnn_0 unknownncnn_0_splitncnn_0 unknownncnn_0_splitncnn_1 -Convolution B2_expand 1 1 unknownncnn_0_splitncnn_1 B2_expand 0=72 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1728 -BatchNorm B2_expand_bn 1 1 B2_expand B2_expand_bn 0=72 -ReLU B2_expand_relu 1 1 B2_expand_bn B2_expand_relu -ConvolutionDepthWise B2_dw 1 1 B2_expand_relu B2_dw 0=72 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=648 7=72 -BatchNorm B2_dw_bn 1 1 B2_dw B2_dw_bn 0=72 -ReLU B2_dw_relu 1 1 B2_dw_bn B2_dw_relu -Convolution B2_linear 1 1 B2_dw_relu B2_linear 0=24 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1728 -BatchNorm B2_linear_bn 1 1 B2_linear B2_linear_bn 0=24 -BinaryOp unknownncnn_1 2 1 unknownncnn_0_splitncnn_0 B2_linear_bn unknownncnn_1 0=0 -Convolution C0_expand 1 1 unknownncnn_1 C0_expand 0=72 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1728 -BatchNorm C0_expand_bn 1 1 C0_expand C0_expand_bn 0=72 -ReLU C0_expand_relu 1 1 C0_expand_bn C0_expand_relu -ConvolutionDepthWise C0_dw 1 1 C0_expand_relu C0_dw 0=72 1=5 11=5 2=1 12=1 3=2 13=2 4=2 14=2 5=0 6=1800 7=72 -BatchNorm C0_dw_bn 1 1 C0_dw C0_dw_bn 0=72 -ReLU C0_dw_relu 1 1 C0_dw_bn C0_dw_relu -Convolution C0_linear 1 1 C0_dw_relu C0_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=2880 -BatchNorm C0_linear_bn 1 1 C0_linear C0_linear_bn 0=40 -Split splitncnn_2 1 2 C0_linear_bn C0_linear_bn_splitncnn_0 C0_linear_bn_splitncnn_1 -Convolution C1_expand 1 1 C0_linear_bn_splitncnn_1 C1_expand 0=120 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C1_expand_bn 1 1 C1_expand C1_expand_bn 0=120 -ReLU C1_expand_relu 1 1 C1_expand_bn C1_expand_relu -ConvolutionDepthWise C1_dw 1 1 C1_expand_relu C1_dw 0=120 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=3000 7=120 -BatchNorm C1_dw_bn 1 1 C1_dw C1_dw_bn 0=120 -ReLU C1_dw_relu 1 1 C1_dw_bn C1_dw_relu -Convolution C1_linear 1 1 C1_dw_relu C1_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C1_linear_bn 1 1 C1_linear C1_linear_bn 0=40 -BinaryOp unknownncnn_2 2 1 C0_linear_bn_splitncnn_0 C1_linear_bn unknownncnn_2 0=0 -Split splitncnn_3 1 2 unknownncnn_2 unknownncnn_2_splitncnn_0 unknownncnn_2_splitncnn_1 -Convolution C2_expand 1 1 unknownncnn_2_splitncnn_1 C2_expand 0=120 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C2_expand_bn 1 1 C2_expand C2_expand_bn 0=120 -ReLU C2_expand_relu 1 1 C2_expand_bn C2_expand_relu -ConvolutionDepthWise C2_dw 1 1 C2_expand_relu C2_dw 0=120 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=3000 7=120 -BatchNorm C2_dw_bn 1 1 C2_dw C2_dw_bn 0=120 -ReLU C2_dw_relu 1 1 C2_dw_bn C2_dw_relu -Convolution C2_linear 1 1 C2_dw_relu C2_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C2_linear_bn 1 1 C2_linear C2_linear_bn 0=40 -BinaryOp unknownncnn_3 2 1 unknownncnn_2_splitncnn_0 C2_linear_bn unknownncnn_3 0=0 -Convolution D0_expand 1 1 unknownncnn_3 D0_expand 0=240 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=9600 -BatchNorm D0_expand_bn 1 1 D0_expand D0_expand_bn 0=240 -ReLU D0_expand_relu 1 1 D0_expand_bn D0_expand_relu -ConvolutionDepthWise D0_dw 1 1 D0_expand_relu D0_dw 0=240 1=5 11=5 2=1 12=1 3=2 13=2 4=2 14=2 5=0 6=6000 7=240 -BatchNorm D0_dw_bn 1 1 D0_dw D0_dw_bn 0=240 -ReLU D0_dw_relu 1 1 D0_dw_bn D0_dw_relu -Convolution D0_linear 1 1 D0_dw_relu D0_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D0_linear_bn 1 1 D0_linear D0_linear_bn 0=80 -Split splitncnn_4 1 2 D0_linear_bn D0_linear_bn_splitncnn_0 D0_linear_bn_splitncnn_1 -Convolution D1_expand 1 1 D0_linear_bn_splitncnn_1 D1_expand 0=480 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=38400 -BatchNorm D1_expand_bn 1 1 D1_expand D1_expand_bn 0=480 -ReLU D1_expand_relu 1 1 D1_expand_bn D1_expand_relu -ConvolutionDepthWise D1_dw 1 1 D1_expand_relu D1_dw 0=480 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=12000 7=480 -BatchNorm D1_dw_bn 1 1 D1_dw D1_dw_bn 0=480 -ReLU D1_dw_relu 1 1 D1_dw_bn D1_dw_relu -Convolution D1_linear 1 1 D1_dw_relu D1_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=38400 -BatchNorm D1_linear_bn 1 1 D1_linear D1_linear_bn 0=80 -BinaryOp unknownncnn_4 2 1 D0_linear_bn_splitncnn_0 D1_linear_bn unknownncnn_4 0=0 -Split splitncnn_5 1 2 unknownncnn_4 unknownncnn_4_splitncnn_0 unknownncnn_4_splitncnn_1 -Convolution D2_expand 1 1 unknownncnn_4_splitncnn_1 D2_expand 0=480 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=38400 -BatchNorm D2_expand_bn 1 1 D2_expand D2_expand_bn 0=480 -ReLU D2_expand_relu 1 1 D2_expand_bn D2_expand_relu -ConvolutionDepthWise D2_dw 1 1 D2_expand_relu D2_dw 0=480 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=12000 7=480 -BatchNorm D2_dw_bn 1 1 D2_dw D2_dw_bn 0=480 -ReLU D2_dw_relu 1 1 D2_dw_bn D2_dw_relu -Convolution D2_linear 1 1 D2_dw_relu D2_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=38400 -BatchNorm D2_linear_bn 1 1 D2_linear D2_linear_bn 0=80 -BinaryOp unknownncnn_5 2 1 unknownncnn_4_splitncnn_0 D2_linear_bn unknownncnn_5 0=0 -Convolution E0_expand 1 1 unknownncnn_5 E0_expand 0=480 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=38400 -BatchNorm E0_expand_bn 1 1 E0_expand E0_expand_bn 0=480 -ReLU E0_expand_relu 1 1 E0_expand_bn E0_expand_relu -ConvolutionDepthWise E0_dw 1 1 E0_expand_relu E0_dw 0=480 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=4320 7=480 -BatchNorm E0_dw_bn 1 1 E0_dw E0_dw_bn 0=480 -ReLU E0_dw_relu 1 1 E0_dw_bn E0_dw_relu -Convolution E0_linear 1 1 E0_dw_relu E0_linear 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=46080 -BatchNorm E0_linear_bn 1 1 E0_linear E0_linear_bn 0=96 -Split splitncnn_6 1 2 E0_linear_bn E0_linear_bn_splitncnn_0 E0_linear_bn_splitncnn_1 -Convolution E1_expand 1 1 E0_linear_bn_splitncnn_1 E1_expand 0=576 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=55296 -BatchNorm E1_expand_bn 1 1 E1_expand E1_expand_bn 0=576 -ReLU E1_expand_relu 1 1 E1_expand_bn E1_expand_relu -ConvolutionDepthWise E1_dw 1 1 E1_expand_relu E1_dw 0=576 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=5184 7=576 -BatchNorm E1_dw_bn 1 1 E1_dw E1_dw_bn 0=576 -ReLU E1_dw_relu 1 1 E1_dw_bn E1_dw_relu -Convolution E1_linear 1 1 E1_dw_relu E1_linear 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=55296 -BatchNorm E1_linear_bn 1 1 E1_linear E1_linear_bn 0=96 -BinaryOp unknownncnn_6 2 1 E0_linear_bn_splitncnn_0 E1_linear_bn unknownncnn_6 0=0 -Convolution F0_expand 1 1 unknownncnn_6 F0_expand 0=576 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=55296 -BatchNorm F0_expand_bn 1 1 F0_expand F0_expand_bn 0=576 -ReLU F0_expand_relu 1 1 F0_expand_bn F0_expand_relu -ConvolutionDepthWise F0_dw 1 1 F0_expand_relu F0_dw 0=576 1=5 11=5 2=1 12=1 3=2 13=2 4=2 14=2 5=0 6=14400 7=576 -BatchNorm F0_dw_bn 1 1 F0_dw F0_dw_bn 0=576 -ReLU F0_dw_relu 1 1 F0_dw_bn F0_dw_relu -Convolution F0_linear 1 1 F0_dw_relu F0_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=110592 -BatchNorm F0_linear_bn 1 1 F0_linear F0_linear_bn 0=192 -Split splitncnn_7 1 2 F0_linear_bn F0_linear_bn_splitncnn_0 F0_linear_bn_splitncnn_1 -Convolution F1_expand 1 1 F0_linear_bn_splitncnn_1 F1_expand 0=1152 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F1_expand_bn 1 1 F1_expand F1_expand_bn 0=1152 -ReLU F1_expand_relu 1 1 F1_expand_bn F1_expand_relu -ConvolutionDepthWise F1_dw 1 1 F1_expand_relu F1_dw 0=1152 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=28800 7=1152 -BatchNorm F1_dw_bn 1 1 F1_dw F1_dw_bn 0=1152 -ReLU F1_dw_relu 1 1 F1_dw_bn F1_dw_relu -Convolution F1_linear 1 1 F1_dw_relu F1_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F1_linear_bn 1 1 F1_linear F1_linear_bn 0=192 -BinaryOp unknownncnn_7 2 1 F0_linear_bn_splitncnn_0 F1_linear_bn unknownncnn_7 0=0 -Split splitncnn_8 1 2 unknownncnn_7 unknownncnn_7_splitncnn_0 unknownncnn_7_splitncnn_1 -Convolution F2_expand 1 1 unknownncnn_7_splitncnn_1 F2_expand 0=1152 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F2_expand_bn 1 1 F2_expand F2_expand_bn 0=1152 -ReLU F2_expand_relu 1 1 F2_expand_bn F2_expand_relu -ConvolutionDepthWise F2_dw 1 1 F2_expand_relu F2_dw 0=1152 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=28800 7=1152 -BatchNorm F2_dw_bn 1 1 F2_dw F2_dw_bn 0=1152 -ReLU F2_dw_relu 1 1 F2_dw_bn F2_dw_relu -Convolution F2_linear 1 1 F2_dw_relu F2_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F2_linear_bn 1 1 F2_linear F2_linear_bn 0=192 -BinaryOp unknownncnn_8 2 1 unknownncnn_7_splitncnn_0 F2_linear_bn unknownncnn_8 0=0 -Split splitncnn_9 1 2 unknownncnn_8 unknownncnn_8_splitncnn_0 unknownncnn_8_splitncnn_1 -Convolution F3_expand 1 1 unknownncnn_8_splitncnn_1 F3_expand 0=1152 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F3_expand_bn 1 1 F3_expand F3_expand_bn 0=1152 -ReLU F3_expand_relu 1 1 F3_expand_bn F3_expand_relu -ConvolutionDepthWise F3_dw 1 1 F3_expand_relu F3_dw 0=1152 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=28800 7=1152 -BatchNorm F3_dw_bn 1 1 F3_dw F3_dw_bn 0=1152 -ReLU F3_dw_relu 1 1 F3_dw_bn F3_dw_relu -Convolution F3_linear 1 1 F3_dw_relu F3_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F3_linear_bn 1 1 F3_linear F3_linear_bn 0=192 -BinaryOp unknownncnn_9 2 1 unknownncnn_8_splitncnn_0 F3_linear_bn unknownncnn_9 0=0 -Convolution G0_expand 1 1 unknownncnn_9 G0_expand 0=1152 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm G0_expand_bn 1 1 G0_expand G0_expand_bn 0=1152 -ReLU G0_expand_relu 1 1 G0_expand_bn G0_expand_relu -ConvolutionDepthWise G0_dw 1 1 G0_expand_relu G0_dw 0=1152 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=10368 7=1152 -BatchNorm G0_dw_bn 1 1 G0_dw G0_dw_bn 0=1152 -ReLU G0_dw_relu 1 1 G0_dw_bn G0_dw_relu -Convolution G0_linear 1 1 G0_dw_relu G0_linear 0=320 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=368640 -BatchNorm G0_linear_bn 1 1 G0_linear G0_linear_bn 0=320 -Convolution last-1x1-conv 1 1 G0_linear_bn last-1x1-conv 0=1280 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=409600 -BatchNorm last-1x1-conv_bn 1 1 last-1x1-conv last-1x1-conv_bn 0=1280 -ReLU last-1x1-conv_relu 1 1 last-1x1-conv_bn last-1x1-conv_relu -Pooling avgpool 1 1 last-1x1-conv_relu avgpool 0=1 1=7 4=1 5=1 -Flatten flatten 1 1 avgpool flatten -InnerProduct fc 1 1 flatten fc 0=1000 1=1 2=1280000 -Softmax prob 1 1 fc prob 0=0 +77 87 +Input data 0 1 data +Convolution first-3x3-conv 1 1 data first-3x3-conv_relu 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +ConvolutionDepthWise A0_dw 1 1 first-3x3-conv_relu A0_dw_relu 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution A0_linear 1 1 A0_dw_relu A0_linear_bn 0=16 1=1 5=1 6=512 +Convolution B0_expand 1 1 A0_linear_bn B0_expand_relu 0=48 1=1 5=1 6=768 9=1 +ConvolutionDepthWise B0_dw 1 1 B0_expand_relu B0_dw_relu 0=48 1=3 3=2 4=1 5=1 6=432 7=48 9=1 +Convolution B0_linear 1 1 B0_dw_relu B0_linear_bn 0=24 1=1 5=1 6=1152 +Split splitncnn_0 1 2 B0_linear_bn B0_linear_bn_splitncnn_0 B0_linear_bn_splitncnn_1 +Convolution B1_expand 1 1 B0_linear_bn_splitncnn_1 B1_expand_relu 0=72 1=1 5=1 6=1728 9=1 +ConvolutionDepthWise B1_dw 1 1 B1_expand_relu B1_dw_relu 0=72 1=3 4=1 5=1 6=648 7=72 9=1 +Convolution B1_linear 1 1 B1_dw_relu B1_linear_bn 0=24 1=1 5=1 6=1728 +BinaryOp unknownncnn_0 2 1 B0_linear_bn_splitncnn_0 B1_linear_bn unknownncnn_0 +Split splitncnn_1 1 2 unknownncnn_0 unknownncnn_0_splitncnn_0 unknownncnn_0_splitncnn_1 +Convolution B2_expand 1 1 unknownncnn_0_splitncnn_1 B2_expand_relu 0=72 1=1 5=1 6=1728 9=1 +ConvolutionDepthWise B2_dw 1 1 B2_expand_relu B2_dw_relu 0=72 1=3 4=1 5=1 6=648 7=72 9=1 +Convolution B2_linear 1 1 B2_dw_relu B2_linear_bn 0=24 1=1 5=1 6=1728 +BinaryOp unknownncnn_1 2 1 unknownncnn_0_splitncnn_0 B2_linear_bn unknownncnn_1 +Convolution C0_expand 1 1 unknownncnn_1 C0_expand_relu 0=72 1=1 5=1 6=1728 9=1 +ConvolutionDepthWise C0_dw 1 1 C0_expand_relu C0_dw_relu 0=72 1=5 3=2 4=2 5=1 6=1800 7=72 9=1 +Convolution C0_linear 1 1 C0_dw_relu C0_linear_bn 0=40 1=1 5=1 6=2880 +Split splitncnn_2 1 2 C0_linear_bn C0_linear_bn_splitncnn_0 C0_linear_bn_splitncnn_1 +Convolution C1_expand 1 1 C0_linear_bn_splitncnn_1 C1_expand_relu 0=120 1=1 5=1 6=4800 9=1 +ConvolutionDepthWise C1_dw 1 1 C1_expand_relu C1_dw_relu 0=120 1=5 4=2 5=1 6=3000 7=120 9=1 +Convolution C1_linear 1 1 C1_dw_relu C1_linear_bn 0=40 1=1 5=1 6=4800 +BinaryOp unknownncnn_2 2 1 C0_linear_bn_splitncnn_0 C1_linear_bn unknownncnn_2 +Split splitncnn_3 1 2 unknownncnn_2 unknownncnn_2_splitncnn_0 unknownncnn_2_splitncnn_1 +Convolution C2_expand 1 1 unknownncnn_2_splitncnn_1 C2_expand_relu 0=120 1=1 5=1 6=4800 9=1 +ConvolutionDepthWise C2_dw 1 1 C2_expand_relu C2_dw_relu 0=120 1=5 4=2 5=1 6=3000 7=120 9=1 +Convolution C2_linear 1 1 C2_dw_relu C2_linear_bn 0=40 1=1 5=1 6=4800 +BinaryOp unknownncnn_3 2 1 unknownncnn_2_splitncnn_0 C2_linear_bn unknownncnn_3 +Convolution D0_expand 1 1 unknownncnn_3 D0_expand_relu 0=240 1=1 5=1 6=9600 9=1 +ConvolutionDepthWise D0_dw 1 1 D0_expand_relu D0_dw_relu 0=240 1=5 3=2 4=2 5=1 6=6000 7=240 9=1 +Convolution D0_linear 1 1 D0_dw_relu D0_linear_bn 0=80 1=1 5=1 6=19200 +Split splitncnn_4 1 2 D0_linear_bn D0_linear_bn_splitncnn_0 D0_linear_bn_splitncnn_1 +Convolution D1_expand 1 1 D0_linear_bn_splitncnn_1 D1_expand_relu 0=480 1=1 5=1 6=38400 9=1 +ConvolutionDepthWise D1_dw 1 1 D1_expand_relu D1_dw_relu 0=480 1=5 4=2 5=1 6=12000 7=480 9=1 +Convolution D1_linear 1 1 D1_dw_relu D1_linear_bn 0=80 1=1 5=1 6=38400 +BinaryOp unknownncnn_4 2 1 D0_linear_bn_splitncnn_0 D1_linear_bn unknownncnn_4 +Split splitncnn_5 1 2 unknownncnn_4 unknownncnn_4_splitncnn_0 unknownncnn_4_splitncnn_1 +Convolution D2_expand 1 1 unknownncnn_4_splitncnn_1 D2_expand_relu 0=480 1=1 5=1 6=38400 9=1 +ConvolutionDepthWise D2_dw 1 1 D2_expand_relu D2_dw_relu 0=480 1=5 4=2 5=1 6=12000 7=480 9=1 +Convolution D2_linear 1 1 D2_dw_relu D2_linear_bn 0=80 1=1 5=1 6=38400 +BinaryOp unknownncnn_5 2 1 unknownncnn_4_splitncnn_0 D2_linear_bn unknownncnn_5 +Convolution E0_expand 1 1 unknownncnn_5 E0_expand_relu 0=480 1=1 5=1 6=38400 9=1 +ConvolutionDepthWise E0_dw 1 1 E0_expand_relu E0_dw_relu 0=480 1=3 4=1 5=1 6=4320 7=480 9=1 +Convolution E0_linear 1 1 E0_dw_relu E0_linear_bn 0=96 1=1 5=1 6=46080 +Split splitncnn_6 1 2 E0_linear_bn E0_linear_bn_splitncnn_0 E0_linear_bn_splitncnn_1 +Convolution E1_expand 1 1 E0_linear_bn_splitncnn_1 E1_expand_relu 0=576 1=1 5=1 6=55296 9=1 +ConvolutionDepthWise E1_dw 1 1 E1_expand_relu E1_dw_relu 0=576 1=3 4=1 5=1 6=5184 7=576 9=1 +Convolution E1_linear 1 1 E1_dw_relu E1_linear_bn 0=96 1=1 5=1 6=55296 +BinaryOp unknownncnn_6 2 1 E0_linear_bn_splitncnn_0 E1_linear_bn unknownncnn_6 +Convolution F0_expand 1 1 unknownncnn_6 F0_expand_relu 0=576 1=1 5=1 6=55296 9=1 +ConvolutionDepthWise F0_dw 1 1 F0_expand_relu F0_dw_relu 0=576 1=5 3=2 4=2 5=1 6=14400 7=576 9=1 +Convolution F0_linear 1 1 F0_dw_relu F0_linear_bn 0=192 1=1 5=1 6=110592 +Split splitncnn_7 1 2 F0_linear_bn F0_linear_bn_splitncnn_0 F0_linear_bn_splitncnn_1 +Convolution F1_expand 1 1 F0_linear_bn_splitncnn_1 F1_expand_relu 0=1152 1=1 5=1 6=221184 9=1 +ConvolutionDepthWise F1_dw 1 1 F1_expand_relu F1_dw_relu 0=1152 1=5 4=2 5=1 6=28800 7=1152 9=1 +Convolution F1_linear 1 1 F1_dw_relu F1_linear_bn 0=192 1=1 5=1 6=221184 +BinaryOp unknownncnn_7 2 1 F0_linear_bn_splitncnn_0 F1_linear_bn unknownncnn_7 +Split splitncnn_8 1 2 unknownncnn_7 unknownncnn_7_splitncnn_0 unknownncnn_7_splitncnn_1 +Convolution F2_expand 1 1 unknownncnn_7_splitncnn_1 F2_expand_relu 0=1152 1=1 5=1 6=221184 9=1 +ConvolutionDepthWise F2_dw 1 1 F2_expand_relu F2_dw_relu 0=1152 1=5 4=2 5=1 6=28800 7=1152 9=1 +Convolution F2_linear 1 1 F2_dw_relu F2_linear_bn 0=192 1=1 5=1 6=221184 +BinaryOp unknownncnn_8 2 1 unknownncnn_7_splitncnn_0 F2_linear_bn unknownncnn_8 +Split splitncnn_9 1 2 unknownncnn_8 unknownncnn_8_splitncnn_0 unknownncnn_8_splitncnn_1 +Convolution F3_expand 1 1 unknownncnn_8_splitncnn_1 F3_expand_relu 0=1152 1=1 5=1 6=221184 9=1 +ConvolutionDepthWise F3_dw 1 1 F3_expand_relu F3_dw_relu 0=1152 1=5 4=2 5=1 6=28800 7=1152 9=1 +Convolution F3_linear 1 1 F3_dw_relu F3_linear_bn 0=192 1=1 5=1 6=221184 +BinaryOp unknownncnn_9 2 1 unknownncnn_8_splitncnn_0 F3_linear_bn unknownncnn_9 +Convolution G0_expand 1 1 unknownncnn_9 G0_expand_relu 0=1152 1=1 5=1 6=221184 9=1 +ConvolutionDepthWise G0_dw 1 1 G0_expand_relu G0_dw_relu 0=1152 1=3 4=1 5=1 6=10368 7=1152 9=1 +Convolution G0_linear 1 1 G0_dw_relu G0_linear_bn 0=320 1=1 5=1 6=368640 +Convolution last-1x1-conv 1 1 G0_linear_bn last-1x1-conv_relu 0=1280 1=1 5=1 6=409600 9=1 +Pooling avgpool 1 1 last-1x1-conv_relu avgpool 0=1 1=7 4=1 5=1 +Flatten flatten 1 1 avgpool flatten +InnerProduct fc 1 1 flatten fc 0=1000 1=1 2=1280000 +Softmax prob 1 1 fc prob diff --git a/benchmark/mobilenet.param b/benchmark/mobilenet.param index 5b1484113..8818b3564 100644 --- a/benchmark/mobilenet.param +++ b/benchmark/mobilenet.param @@ -1,60 +1,33 @@ 7767517 -58 58 -Input data 0 1 data 0=224 1=224 2=3 -Convolution conv1 1 1 data conv1 0=32 1=3 2=1 3=2 4=1 5=1 6=864 -ReLU relu1 1 1 conv1 conv1_relu1 -ConvolutionDepthWise conv2_1/dw 1 1 conv1_relu1 conv2_1/dw 0=32 1=3 2=1 3=1 4=1 5=1 6=288 7=32 -ReLU relu2_1/dw 1 1 conv2_1/dw conv2_1/dw_relu2_1/dw -Convolution conv2_1/sep 1 1 conv2_1/dw_relu2_1/dw conv2_1/sep 0=64 1=1 2=1 3=1 4=0 5=1 6=2048 -ReLU relu2_1/sep 1 1 conv2_1/sep conv2_1/sep_relu2_1/sep -ConvolutionDepthWise conv2_2/dw 1 1 conv2_1/sep_relu2_1/sep conv2_2/dw 0=64 1=3 2=1 3=2 4=1 5=1 6=576 7=64 -ReLU relu2_2/dw 1 1 conv2_2/dw conv2_2/dw_relu2_2/dw -Convolution conv2_2/sep 1 1 conv2_2/dw_relu2_2/dw conv2_2/sep 0=128 1=1 2=1 3=1 4=0 5=1 6=8192 -ReLU relu2_2/sep 1 1 conv2_2/sep conv2_2/sep_relu2_2/sep -ConvolutionDepthWise conv3_1/dw 1 1 conv2_2/sep_relu2_2/sep conv3_1/dw 0=128 1=3 2=1 3=1 4=1 5=1 6=1152 7=128 -ReLU relu3_1/dw 1 1 conv3_1/dw conv3_1/dw_relu3_1/dw -Convolution conv3_1/sep 1 1 conv3_1/dw_relu3_1/dw conv3_1/sep 0=128 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU relu3_1/sep 1 1 conv3_1/sep conv3_1/sep_relu3_1/sep -ConvolutionDepthWise conv3_2/dw 1 1 conv3_1/sep_relu3_1/sep conv3_2/dw 0=128 1=3 2=1 3=2 4=1 5=1 6=1152 7=128 -ReLU relu3_2/dw 1 1 conv3_2/dw conv3_2/dw_relu3_2/dw -Convolution conv3_2/sep 1 1 conv3_2/dw_relu3_2/dw conv3_2/sep 0=256 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU relu3_2/sep 1 1 conv3_2/sep conv3_2/sep_relu3_2/sep -ConvolutionDepthWise conv4_1/dw 1 1 conv3_2/sep_relu3_2/sep conv4_1/dw 0=256 1=3 2=1 3=1 4=1 5=1 6=2304 7=256 -ReLU relu4_1/dw 1 1 conv4_1/dw conv4_1/dw_relu4_1/dw -Convolution conv4_1/sep 1 1 conv4_1/dw_relu4_1/dw conv4_1/sep 0=256 1=1 2=1 3=1 4=0 5=1 6=65536 -ReLU relu4_1/sep 1 1 conv4_1/sep conv4_1/sep_relu4_1/sep -ConvolutionDepthWise conv4_2/dw 1 1 conv4_1/sep_relu4_1/sep conv4_2/dw 0=256 1=3 2=1 3=2 4=1 5=1 6=2304 7=256 -ReLU relu4_2/dw 1 1 conv4_2/dw conv4_2/dw_relu4_2/dw -Convolution conv4_2/sep 1 1 conv4_2/dw_relu4_2/dw conv4_2/sep 0=512 1=1 2=1 3=1 4=0 5=1 6=131072 -ReLU relu4_2/sep 1 1 conv4_2/sep conv4_2/sep_relu4_2/sep -ConvolutionDepthWise conv5_1/dw 1 1 conv4_2/sep_relu4_2/sep conv5_1/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU relu5_1/dw 1 1 conv5_1/dw conv5_1/dw_relu5_1/dw -Convolution conv5_1/sep 1 1 conv5_1/dw_relu5_1/dw conv5_1/sep 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU relu5_1/sep 1 1 conv5_1/sep conv5_1/sep_relu5_1/sep -ConvolutionDepthWise conv5_2/dw 1 1 conv5_1/sep_relu5_1/sep conv5_2/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU relu5_2/dw 1 1 conv5_2/dw conv5_2/dw_relu5_2/dw -Convolution conv5_2/sep 1 1 conv5_2/dw_relu5_2/dw conv5_2/sep 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU relu5_2/sep 1 1 conv5_2/sep conv5_2/sep_relu5_2/sep -ConvolutionDepthWise conv5_3/dw 1 1 conv5_2/sep_relu5_2/sep conv5_3/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU relu5_3/dw 1 1 conv5_3/dw conv5_3/dw_relu5_3/dw -Convolution conv5_3/sep 1 1 conv5_3/dw_relu5_3/dw conv5_3/sep 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU relu5_3/sep 1 1 conv5_3/sep conv5_3/sep_relu5_3/sep -ConvolutionDepthWise conv5_4/dw 1 1 conv5_3/sep_relu5_3/sep conv5_4/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU relu5_4/dw 1 1 conv5_4/dw conv5_4/dw_relu5_4/dw -Convolution conv5_4/sep 1 1 conv5_4/dw_relu5_4/dw conv5_4/sep 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU relu5_4/sep 1 1 conv5_4/sep conv5_4/sep_relu5_4/sep -ConvolutionDepthWise conv5_5/dw 1 1 conv5_4/sep_relu5_4/sep conv5_5/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU relu5_5/dw 1 1 conv5_5/dw conv5_5/dw_relu5_5/dw -Convolution conv5_5/sep 1 1 conv5_5/dw_relu5_5/dw conv5_5/sep 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU relu5_5/sep 1 1 conv5_5/sep conv5_5/sep_relu5_5/sep -ConvolutionDepthWise conv5_6/dw 1 1 conv5_5/sep_relu5_5/sep conv5_6/dw 0=512 1=3 2=1 3=2 4=1 5=1 6=4608 7=512 -ReLU relu5_6/dw 1 1 conv5_6/dw conv5_6/dw_relu5_6/dw -Convolution conv5_6/sep 1 1 conv5_6/dw_relu5_6/dw conv5_6/sep 0=1024 1=1 2=1 3=1 4=0 5=1 6=524288 -ReLU relu5_6/sep 1 1 conv5_6/sep conv5_6/sep_relu5_6/sep -ConvolutionDepthWise conv6/dw 1 1 conv5_6/sep_relu5_6/sep conv6/dw 0=1024 1=3 2=1 3=1 4=1 5=1 6=9216 7=1024 -ReLU relu6/dw 1 1 conv6/dw conv6/dw_relu6/dw -Convolution conv6/sep 1 1 conv6/dw_relu6/dw conv6/sep 0=1024 1=1 2=1 3=1 4=0 5=1 6=1048576 -ReLU relu6/sep 1 1 conv6/sep conv6/sep_relu6/sep -Pooling pool6 1 1 conv6/sep_relu6/sep pool6 0=1 1=0 2=1 3=0 4=1 -Convolution fc7 1 1 pool6 fc7 0=1000 1=1 2=1 3=1 4=0 5=1 6=1024000 -Softmax prob 1 1 fc7 prob 0=0 1=1 +31 31 +Input data 0 1 data 0=224 1=224 2=3 +Convolution conv1 1 1 data conv1_relu1 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +ConvolutionDepthWise conv2_1/dw 1 1 conv1_relu1 conv2_1/dw_relu2_1/dw 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution conv2_1/sep 1 1 conv2_1/dw_relu2_1/dw conv2_1/sep_relu2_1/sep 0=64 1=1 5=1 6=2048 9=1 +ConvolutionDepthWise conv2_2/dw 1 1 conv2_1/sep_relu2_1/sep conv2_2/dw_relu2_2/dw 0=64 1=3 3=2 4=1 5=1 6=576 7=64 9=1 +Convolution conv2_2/sep 1 1 conv2_2/dw_relu2_2/dw conv2_2/sep_relu2_2/sep 0=128 1=1 5=1 6=8192 9=1 +ConvolutionDepthWise conv3_1/dw 1 1 conv2_2/sep_relu2_2/sep conv3_1/dw_relu3_1/dw 0=128 1=3 4=1 5=1 6=1152 7=128 9=1 +Convolution conv3_1/sep 1 1 conv3_1/dw_relu3_1/dw conv3_1/sep_relu3_1/sep 0=128 1=1 5=1 6=16384 9=1 +ConvolutionDepthWise conv3_2/dw 1 1 conv3_1/sep_relu3_1/sep conv3_2/dw_relu3_2/dw 0=128 1=3 3=2 4=1 5=1 6=1152 7=128 9=1 +Convolution conv3_2/sep 1 1 conv3_2/dw_relu3_2/dw conv3_2/sep_relu3_2/sep 0=256 1=1 5=1 6=32768 9=1 +ConvolutionDepthWise conv4_1/dw 1 1 conv3_2/sep_relu3_2/sep conv4_1/dw_relu4_1/dw 0=256 1=3 4=1 5=1 6=2304 7=256 9=1 +Convolution conv4_1/sep 1 1 conv4_1/dw_relu4_1/dw conv4_1/sep_relu4_1/sep 0=256 1=1 5=1 6=65536 9=1 +ConvolutionDepthWise conv4_2/dw 1 1 conv4_1/sep_relu4_1/sep conv4_2/dw_relu4_2/dw 0=256 1=3 3=2 4=1 5=1 6=2304 7=256 9=1 +Convolution conv4_2/sep 1 1 conv4_2/dw_relu4_2/dw conv4_2/sep_relu4_2/sep 0=512 1=1 5=1 6=131072 9=1 +ConvolutionDepthWise conv5_1/dw 1 1 conv4_2/sep_relu4_2/sep conv5_1/dw_relu5_1/dw 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv5_1/sep 1 1 conv5_1/dw_relu5_1/dw conv5_1/sep_relu5_1/sep 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv5_2/dw 1 1 conv5_1/sep_relu5_1/sep conv5_2/dw_relu5_2/dw 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv5_2/sep 1 1 conv5_2/dw_relu5_2/dw conv5_2/sep_relu5_2/sep 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv5_3/dw 1 1 conv5_2/sep_relu5_2/sep conv5_3/dw_relu5_3/dw 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv5_3/sep 1 1 conv5_3/dw_relu5_3/dw conv5_3/sep_relu5_3/sep 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv5_4/dw 1 1 conv5_3/sep_relu5_3/sep conv5_4/dw_relu5_4/dw 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv5_4/sep 1 1 conv5_4/dw_relu5_4/dw conv5_4/sep_relu5_4/sep 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv5_5/dw 1 1 conv5_4/sep_relu5_4/sep conv5_5/dw_relu5_5/dw 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv5_5/sep 1 1 conv5_5/dw_relu5_5/dw conv5_5/sep_relu5_5/sep 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv5_6/dw 1 1 conv5_5/sep_relu5_5/sep conv5_6/dw_relu5_6/dw 0=512 1=3 3=2 4=1 5=1 6=4608 7=512 9=1 +Convolution conv5_6/sep 1 1 conv5_6/dw_relu5_6/dw conv5_6/sep_relu5_6/sep 0=1024 1=1 5=1 6=524288 9=1 +ConvolutionDepthWise conv6/dw 1 1 conv5_6/sep_relu5_6/sep conv6/dw_relu6/dw 0=1024 1=3 4=1 5=1 6=9216 7=1024 9=1 +Convolution conv6/sep 1 1 conv6/dw_relu6/dw conv6/sep_relu6/sep 0=1024 1=1 5=1 6=1048576 9=1 +Pooling pool6 1 1 conv6/sep_relu6/sep pool6 0=1 4=1 +Convolution fc7 1 1 pool6 fc7 0=1000 1=1 5=1 6=1024000 +Softmax prob 1 1 fc7 prob diff --git a/benchmark/mobilenet_ssd.param b/benchmark/mobilenet_ssd.param index 306d8aeb3..96c0f8884 100644 --- a/benchmark/mobilenet_ssd.param +++ b/benchmark/mobilenet_ssd.param @@ -1,129 +1,94 @@ 7767517 -127 150 -Input input 0 1 data 0=300 1=300 2=3 -Split splitncnn_0 1 7 data data_splitncnn_0 data_splitncnn_1 data_splitncnn_2 data_splitncnn_3 data_splitncnn_4 data_splitncnn_5 data_splitncnn_6 -Convolution conv0 1 1 data_splitncnn_6 conv0 0=32 1=3 2=1 3=2 4=1 5=1 6=864 -ReLU conv0/relu 1 1 conv0 conv0_conv0/relu -ConvolutionDepthWise conv1/dw 1 1 conv0_conv0/relu conv1/dw 0=32 1=3 2=1 3=1 4=1 5=1 6=288 7=32 -ReLU conv1/dw/relu 1 1 conv1/dw conv1/dw_conv1/dw/relu -Convolution conv1 1 1 conv1/dw_conv1/dw/relu conv1 0=64 1=1 2=1 3=1 4=0 5=1 6=2048 -ReLU conv1/relu 1 1 conv1 conv1_conv1/relu -ConvolutionDepthWise conv2/dw 1 1 conv1_conv1/relu conv2/dw 0=64 1=3 2=1 3=2 4=1 5=1 6=576 7=64 -ReLU conv2/dw/relu 1 1 conv2/dw conv2/dw_conv2/dw/relu -Convolution conv2 1 1 conv2/dw_conv2/dw/relu conv2 0=128 1=1 2=1 3=1 4=0 5=1 6=8192 -ReLU conv2/relu 1 1 conv2 conv2_conv2/relu -ConvolutionDepthWise conv3/dw 1 1 conv2_conv2/relu conv3/dw 0=128 1=3 2=1 3=1 4=1 5=1 6=1152 7=128 -ReLU conv3/dw/relu 1 1 conv3/dw conv3/dw_conv3/dw/relu -Convolution conv3 1 1 conv3/dw_conv3/dw/relu conv3 0=128 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU conv3/relu 1 1 conv3 conv3_conv3/relu -ConvolutionDepthWise conv4/dw 1 1 conv3_conv3/relu conv4/dw 0=128 1=3 2=1 3=2 4=1 5=1 6=1152 7=128 -ReLU conv4/dw/relu 1 1 conv4/dw conv4/dw_conv4/dw/relu -Convolution conv4 1 1 conv4/dw_conv4/dw/relu conv4 0=256 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU conv4/relu 1 1 conv4 conv4_conv4/relu -ConvolutionDepthWise conv5/dw 1 1 conv4_conv4/relu conv5/dw 0=256 1=3 2=1 3=1 4=1 5=1 6=2304 7=256 -ReLU conv5/dw/relu 1 1 conv5/dw conv5/dw_conv5/dw/relu -Convolution conv5 1 1 conv5/dw_conv5/dw/relu conv5 0=256 1=1 2=1 3=1 4=0 5=1 6=65536 -ReLU conv5/relu 1 1 conv5 conv5_conv5/relu -ConvolutionDepthWise conv6/dw 1 1 conv5_conv5/relu conv6/dw 0=256 1=3 2=1 3=2 4=1 5=1 6=2304 7=256 -ReLU conv6/dw/relu 1 1 conv6/dw conv6/dw_conv6/dw/relu -Convolution conv6 1 1 conv6/dw_conv6/dw/relu conv6 0=512 1=1 2=1 3=1 4=0 5=1 6=131072 -ReLU conv6/relu 1 1 conv6 conv6_conv6/relu -ConvolutionDepthWise conv7/dw 1 1 conv6_conv6/relu conv7/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv7/dw/relu 1 1 conv7/dw conv7/dw_conv7/dw/relu -Convolution conv7 1 1 conv7/dw_conv7/dw/relu conv7 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv7/relu 1 1 conv7 conv7_conv7/relu -ConvolutionDepthWise conv8/dw 1 1 conv7_conv7/relu conv8/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv8/dw/relu 1 1 conv8/dw conv8/dw_conv8/dw/relu -Convolution conv8 1 1 conv8/dw_conv8/dw/relu conv8 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv8/relu 1 1 conv8 conv8_conv8/relu -ConvolutionDepthWise conv9/dw 1 1 conv8_conv8/relu conv9/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv9/dw/relu 1 1 conv9/dw conv9/dw_conv9/dw/relu -Convolution conv9 1 1 conv9/dw_conv9/dw/relu conv9 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv9/relu 1 1 conv9 conv9_conv9/relu -ConvolutionDepthWise conv10/dw 1 1 conv9_conv9/relu conv10/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv10/dw/relu 1 1 conv10/dw conv10/dw_conv10/dw/relu -Convolution conv10 1 1 conv10/dw_conv10/dw/relu conv10 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv10/relu 1 1 conv10 conv10_conv10/relu -ConvolutionDepthWise conv11/dw 1 1 conv10_conv10/relu conv11/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv11/dw/relu 1 1 conv11/dw conv11/dw_conv11/dw/relu -Convolution conv11 1 1 conv11/dw_conv11/dw/relu conv11 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv11/relu 1 1 conv11 conv11_conv11/relu -Split splitncnn_1 1 4 conv11_conv11/relu conv11_conv11/relu_splitncnn_0 conv11_conv11/relu_splitncnn_1 conv11_conv11/relu_splitncnn_2 conv11_conv11/relu_splitncnn_3 -ConvolutionDepthWise conv12/dw 1 1 conv11_conv11/relu_splitncnn_3 conv12/dw 0=512 1=3 2=1 3=2 4=1 5=1 6=4608 7=512 -ReLU conv12/dw/relu 1 1 conv12/dw conv12/dw_conv12/dw/relu -Convolution conv12 1 1 conv12/dw_conv12/dw/relu conv12 0=1024 1=1 2=1 3=1 4=0 5=1 6=524288 -ReLU conv12/relu 1 1 conv12 conv12_conv12/relu -ConvolutionDepthWise conv13/dw 1 1 conv12_conv12/relu conv13/dw 0=1024 1=3 2=1 3=1 4=1 5=1 6=9216 7=1024 -ReLU conv13/dw/relu 1 1 conv13/dw conv13/dw_conv13/dw/relu -Convolution conv13 1 1 conv13/dw_conv13/dw/relu conv13 0=1024 1=1 2=1 3=1 4=0 5=1 6=1048576 -ReLU conv13/relu 1 1 conv13 conv13_conv13/relu -Split splitncnn_2 1 4 conv13_conv13/relu conv13_conv13/relu_splitncnn_0 conv13_conv13/relu_splitncnn_1 conv13_conv13/relu_splitncnn_2 conv13_conv13/relu_splitncnn_3 -Convolution conv14_1 1 1 conv13_conv13/relu_splitncnn_3 conv14_1 0=256 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv14_1/relu 1 1 conv14_1 conv14_1_conv14_1/relu -Convolution conv14_2 1 1 conv14_1_conv14_1/relu conv14_2 0=512 1=3 2=1 3=2 4=1 5=1 6=1179648 -ReLU conv14_2/relu 1 1 conv14_2 conv14_2_conv14_2/relu -Split splitncnn_3 1 4 conv14_2_conv14_2/relu conv14_2_conv14_2/relu_splitncnn_0 conv14_2_conv14_2/relu_splitncnn_1 conv14_2_conv14_2/relu_splitncnn_2 conv14_2_conv14_2/relu_splitncnn_3 -Convolution conv15_1 1 1 conv14_2_conv14_2/relu_splitncnn_3 conv15_1 0=128 1=1 2=1 3=1 4=0 5=1 6=65536 -ReLU conv15_1/relu 1 1 conv15_1 conv15_1_conv15_1/relu -Convolution conv15_2 1 1 conv15_1_conv15_1/relu conv15_2 0=256 1=3 2=1 3=2 4=1 5=1 6=294912 -ReLU conv15_2/relu 1 1 conv15_2 conv15_2_conv15_2/relu -Split splitncnn_4 1 4 conv15_2_conv15_2/relu conv15_2_conv15_2/relu_splitncnn_0 conv15_2_conv15_2/relu_splitncnn_1 conv15_2_conv15_2/relu_splitncnn_2 conv15_2_conv15_2/relu_splitncnn_3 -Convolution conv16_1 1 1 conv15_2_conv15_2/relu_splitncnn_3 conv16_1 0=128 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU conv16_1/relu 1 1 conv16_1 conv16_1_conv16_1/relu -Convolution conv16_2 1 1 conv16_1_conv16_1/relu conv16_2 0=256 1=3 2=1 3=2 4=1 5=1 6=294912 -ReLU conv16_2/relu 1 1 conv16_2 conv16_2_conv16_2/relu -Split splitncnn_5 1 4 conv16_2_conv16_2/relu conv16_2_conv16_2/relu_splitncnn_0 conv16_2_conv16_2/relu_splitncnn_1 conv16_2_conv16_2/relu_splitncnn_2 conv16_2_conv16_2/relu_splitncnn_3 -Convolution conv17_1 1 1 conv16_2_conv16_2/relu_splitncnn_3 conv17_1 0=64 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU conv17_1/relu 1 1 conv17_1 conv17_1_conv17_1/relu -Convolution conv17_2 1 1 conv17_1_conv17_1/relu conv17_2 0=128 1=3 2=1 3=2 4=1 5=1 6=73728 -ReLU conv17_2/relu 1 1 conv17_2 conv17_2_conv17_2/relu -Split splitncnn_6 1 3 conv17_2_conv17_2/relu conv17_2_conv17_2/relu_splitncnn_0 conv17_2_conv17_2/relu_splitncnn_1 conv17_2_conv17_2/relu_splitncnn_2 -Convolution conv11_mbox_loc 1 1 conv11_conv11/relu_splitncnn_2 conv11_mbox_loc 0=12 1=1 2=1 3=1 4=0 5=1 6=6144 -Permute conv11_mbox_loc_perm 1 1 conv11_mbox_loc conv11_mbox_loc_perm 0=3 -Flatten conv11_mbox_loc_flat 1 1 conv11_mbox_loc_perm conv11_mbox_loc_flat -Convolution conv11_mbox_conf 1 1 conv11_conv11/relu_splitncnn_1 conv11_mbox_conf 0=63 1=1 2=1 3=1 4=0 5=1 6=32256 -Permute conv11_mbox_conf_perm 1 1 conv11_mbox_conf conv11_mbox_conf_perm 0=3 -Flatten conv11_mbox_conf_flat 1 1 conv11_mbox_conf_perm conv11_mbox_conf_flat -PriorBox conv11_mbox_priorbox 2 1 conv11_conv11/relu_splitncnn_0 data_splitncnn_5 conv11_mbox_priorbox -23300=1,60.000000 -23301=0 -23302=1,2.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=-233.000000 12=-233.000000 13=0.500000 -Convolution conv13_mbox_loc 1 1 conv13_conv13/relu_splitncnn_2 conv13_mbox_loc 0=24 1=1 2=1 3=1 4=0 5=1 6=24576 -Permute conv13_mbox_loc_perm 1 1 conv13_mbox_loc conv13_mbox_loc_perm 0=3 -Flatten conv13_mbox_loc_flat 1 1 conv13_mbox_loc_perm conv13_mbox_loc_flat -Convolution conv13_mbox_conf 1 1 conv13_conv13/relu_splitncnn_1 conv13_mbox_conf 0=126 1=1 2=1 3=1 4=0 5=1 6=129024 -Permute conv13_mbox_conf_perm 1 1 conv13_mbox_conf conv13_mbox_conf_perm 0=3 -Flatten conv13_mbox_conf_flat 1 1 conv13_mbox_conf_perm conv13_mbox_conf_flat -PriorBox conv13_mbox_priorbox 2 1 conv13_conv13/relu_splitncnn_0 data_splitncnn_4 conv13_mbox_priorbox -23300=1,105.000000 -23301=1,150.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=-233.000000 12=-233.000000 13=0.500000 -Convolution conv14_2_mbox_loc 1 1 conv14_2_conv14_2/relu_splitncnn_2 conv14_2_mbox_loc 0=24 1=1 2=1 3=1 4=0 5=1 6=12288 -Permute conv14_2_mbox_loc_perm 1 1 conv14_2_mbox_loc conv14_2_mbox_loc_perm 0=3 -Flatten conv14_2_mbox_loc_flat 1 1 conv14_2_mbox_loc_perm conv14_2_mbox_loc_flat -Convolution conv14_2_mbox_conf 1 1 conv14_2_conv14_2/relu_splitncnn_1 conv14_2_mbox_conf 0=126 1=1 2=1 3=1 4=0 5=1 6=64512 -Permute conv14_2_mbox_conf_perm 1 1 conv14_2_mbox_conf conv14_2_mbox_conf_perm 0=3 -Flatten conv14_2_mbox_conf_flat 1 1 conv14_2_mbox_conf_perm conv14_2_mbox_conf_flat -PriorBox conv14_2_mbox_priorbox 2 1 conv14_2_conv14_2/relu_splitncnn_0 data_splitncnn_3 conv14_2_mbox_priorbox -23300=1,150.000000 -23301=1,195.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=-233.000000 12=-233.000000 13=0.500000 -Convolution conv15_2_mbox_loc 1 1 conv15_2_conv15_2/relu_splitncnn_2 conv15_2_mbox_loc 0=24 1=1 2=1 3=1 4=0 5=1 6=6144 -Permute conv15_2_mbox_loc_perm 1 1 conv15_2_mbox_loc conv15_2_mbox_loc_perm 0=3 -Flatten conv15_2_mbox_loc_flat 1 1 conv15_2_mbox_loc_perm conv15_2_mbox_loc_flat -Convolution conv15_2_mbox_conf 1 1 conv15_2_conv15_2/relu_splitncnn_1 conv15_2_mbox_conf 0=126 1=1 2=1 3=1 4=0 5=1 6=32256 -Permute conv15_2_mbox_conf_perm 1 1 conv15_2_mbox_conf conv15_2_mbox_conf_perm 0=3 -Flatten conv15_2_mbox_conf_flat 1 1 conv15_2_mbox_conf_perm conv15_2_mbox_conf_flat -PriorBox conv15_2_mbox_priorbox 2 1 conv15_2_conv15_2/relu_splitncnn_0 data_splitncnn_2 conv15_2_mbox_priorbox -23300=1,195.000000 -23301=1,240.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=-233.000000 12=-233.000000 13=0.500000 -Convolution conv16_2_mbox_loc 1 1 conv16_2_conv16_2/relu_splitncnn_2 conv16_2_mbox_loc 0=24 1=1 2=1 3=1 4=0 5=1 6=6144 -Permute conv16_2_mbox_loc_perm 1 1 conv16_2_mbox_loc conv16_2_mbox_loc_perm 0=3 -Flatten conv16_2_mbox_loc_flat 1 1 conv16_2_mbox_loc_perm conv16_2_mbox_loc_flat -Convolution conv16_2_mbox_conf 1 1 conv16_2_conv16_2/relu_splitncnn_1 conv16_2_mbox_conf 0=126 1=1 2=1 3=1 4=0 5=1 6=32256 -Permute conv16_2_mbox_conf_perm 1 1 conv16_2_mbox_conf conv16_2_mbox_conf_perm 0=3 -Flatten conv16_2_mbox_conf_flat 1 1 conv16_2_mbox_conf_perm conv16_2_mbox_conf_flat -PriorBox conv16_2_mbox_priorbox 2 1 conv16_2_conv16_2/relu_splitncnn_0 data_splitncnn_1 conv16_2_mbox_priorbox -23300=1,240.000000 -23301=1,285.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=-233.000000 12=-233.000000 13=0.500000 -Convolution conv17_2_mbox_loc 1 1 conv17_2_conv17_2/relu_splitncnn_2 conv17_2_mbox_loc 0=24 1=1 2=1 3=1 4=0 5=1 6=3072 -Permute conv17_2_mbox_loc_perm 1 1 conv17_2_mbox_loc conv17_2_mbox_loc_perm 0=3 -Flatten conv17_2_mbox_loc_flat 1 1 conv17_2_mbox_loc_perm conv17_2_mbox_loc_flat -Convolution conv17_2_mbox_conf 1 1 conv17_2_conv17_2/relu_splitncnn_1 conv17_2_mbox_conf 0=126 1=1 2=1 3=1 4=0 5=1 6=16128 -Permute conv17_2_mbox_conf_perm 1 1 conv17_2_mbox_conf conv17_2_mbox_conf_perm 0=3 -Flatten conv17_2_mbox_conf_flat 1 1 conv17_2_mbox_conf_perm conv17_2_mbox_conf_flat -PriorBox conv17_2_mbox_priorbox 2 1 conv17_2_conv17_2/relu_splitncnn_0 data_splitncnn_0 conv17_2_mbox_priorbox -23300=1,285.000000 -23301=1,300.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=-233.000000 12=-233.000000 13=0.500000 -Concat mbox_loc 6 1 conv11_mbox_loc_flat conv13_mbox_loc_flat conv14_2_mbox_loc_flat conv15_2_mbox_loc_flat conv16_2_mbox_loc_flat conv17_2_mbox_loc_flat mbox_loc 0=0 -Concat mbox_conf 6 1 conv11_mbox_conf_flat conv13_mbox_conf_flat conv14_2_mbox_conf_flat conv15_2_mbox_conf_flat conv16_2_mbox_conf_flat conv17_2_mbox_conf_flat mbox_conf 0=0 -Concat mbox_priorbox 6 1 conv11_mbox_priorbox conv13_mbox_priorbox conv14_2_mbox_priorbox conv15_2_mbox_priorbox conv16_2_mbox_priorbox conv17_2_mbox_priorbox mbox_priorbox 0=1 -Reshape mbox_conf_reshape 1 1 mbox_conf mbox_conf_reshape 0=21 1=-1 2=-233 3=0 -Softmax mbox_conf_softmax 1 1 mbox_conf_reshape mbox_conf_softmax 0=1 1=1 -Flatten mbox_conf_flatten 1 1 mbox_conf_softmax mbox_conf_flatten -DetectionOutput detection_out 3 1 mbox_loc mbox_conf_flatten mbox_priorbox detection_out 0=21 1=0.450000 2=100 3=100 4=0.250000 +92 115 +Input input 0 1 data 0=300 1=300 2=3 +Split splitncnn_0 1 7 data data_splitncnn_0 data_splitncnn_1 data_splitncnn_2 data_splitncnn_3 data_splitncnn_4 data_splitncnn_5 data_splitncnn_6 +Convolution conv0 1 1 data_splitncnn_6 conv0_conv0/relu 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +ConvolutionDepthWise conv1/dw 1 1 conv0_conv0/relu conv1/dw_conv1/dw/relu 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution conv1 1 1 conv1/dw_conv1/dw/relu conv1_conv1/relu 0=64 1=1 5=1 6=2048 9=1 +ConvolutionDepthWise conv2/dw 1 1 conv1_conv1/relu conv2/dw_conv2/dw/relu 0=64 1=3 3=2 4=1 5=1 6=576 7=64 9=1 +Convolution conv2 1 1 conv2/dw_conv2/dw/relu conv2_conv2/relu 0=128 1=1 5=1 6=8192 9=1 +ConvolutionDepthWise conv3/dw 1 1 conv2_conv2/relu conv3/dw_conv3/dw/relu 0=128 1=3 4=1 5=1 6=1152 7=128 9=1 +Convolution conv3 1 1 conv3/dw_conv3/dw/relu conv3_conv3/relu 0=128 1=1 5=1 6=16384 9=1 +ConvolutionDepthWise conv4/dw 1 1 conv3_conv3/relu conv4/dw_conv4/dw/relu 0=128 1=3 3=2 4=1 5=1 6=1152 7=128 9=1 +Convolution conv4 1 1 conv4/dw_conv4/dw/relu conv4_conv4/relu 0=256 1=1 5=1 6=32768 9=1 +ConvolutionDepthWise conv5/dw 1 1 conv4_conv4/relu conv5/dw_conv5/dw/relu 0=256 1=3 4=1 5=1 6=2304 7=256 9=1 +Convolution conv5 1 1 conv5/dw_conv5/dw/relu conv5_conv5/relu 0=256 1=1 5=1 6=65536 9=1 +ConvolutionDepthWise conv6/dw 1 1 conv5_conv5/relu conv6/dw_conv6/dw/relu 0=256 1=3 3=2 4=1 5=1 6=2304 7=256 9=1 +Convolution conv6 1 1 conv6/dw_conv6/dw/relu conv6_conv6/relu 0=512 1=1 5=1 6=131072 9=1 +ConvolutionDepthWise conv7/dw 1 1 conv6_conv6/relu conv7/dw_conv7/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv7 1 1 conv7/dw_conv7/dw/relu conv7_conv7/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv8/dw 1 1 conv7_conv7/relu conv8/dw_conv8/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv8 1 1 conv8/dw_conv8/dw/relu conv8_conv8/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv9/dw 1 1 conv8_conv8/relu conv9/dw_conv9/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv9 1 1 conv9/dw_conv9/dw/relu conv9_conv9/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv10/dw 1 1 conv9_conv9/relu conv10/dw_conv10/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv10 1 1 conv10/dw_conv10/dw/relu conv10_conv10/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv11/dw 1 1 conv10_conv10/relu conv11/dw_conv11/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv11 1 1 conv11/dw_conv11/dw/relu conv11_conv11/relu 0=512 1=1 5=1 6=262144 9=1 +Split splitncnn_1 1 4 conv11_conv11/relu conv11_conv11/relu_splitncnn_0 conv11_conv11/relu_splitncnn_1 conv11_conv11/relu_splitncnn_2 conv11_conv11/relu_splitncnn_3 +ConvolutionDepthWise conv12/dw 1 1 conv11_conv11/relu_splitncnn_3 conv12/dw_conv12/dw/relu 0=512 1=3 3=2 4=1 5=1 6=4608 7=512 9=1 +Convolution conv12 1 1 conv12/dw_conv12/dw/relu conv12_conv12/relu 0=1024 1=1 5=1 6=524288 9=1 +ConvolutionDepthWise conv13/dw 1 1 conv12_conv12/relu conv13/dw_conv13/dw/relu 0=1024 1=3 4=1 5=1 6=9216 7=1024 9=1 +Convolution conv13 1 1 conv13/dw_conv13/dw/relu conv13_conv13/relu 0=1024 1=1 5=1 6=1048576 9=1 +Split splitncnn_2 1 4 conv13_conv13/relu conv13_conv13/relu_splitncnn_0 conv13_conv13/relu_splitncnn_1 conv13_conv13/relu_splitncnn_2 conv13_conv13/relu_splitncnn_3 +Convolution conv14_1 1 1 conv13_conv13/relu_splitncnn_3 conv14_1_conv14_1/relu 0=256 1=1 5=1 6=262144 9=1 +Convolution conv14_2 1 1 conv14_1_conv14_1/relu conv14_2_conv14_2/relu 0=512 1=3 3=2 4=1 5=1 6=1179648 9=1 +Split splitncnn_3 1 4 conv14_2_conv14_2/relu conv14_2_conv14_2/relu_splitncnn_0 conv14_2_conv14_2/relu_splitncnn_1 conv14_2_conv14_2/relu_splitncnn_2 conv14_2_conv14_2/relu_splitncnn_3 +Convolution conv15_1 1 1 conv14_2_conv14_2/relu_splitncnn_3 conv15_1_conv15_1/relu 0=128 1=1 5=1 6=65536 9=1 +Convolution conv15_2 1 1 conv15_1_conv15_1/relu conv15_2_conv15_2/relu 0=256 1=3 3=2 4=1 5=1 6=294912 9=1 +Split splitncnn_4 1 4 conv15_2_conv15_2/relu conv15_2_conv15_2/relu_splitncnn_0 conv15_2_conv15_2/relu_splitncnn_1 conv15_2_conv15_2/relu_splitncnn_2 conv15_2_conv15_2/relu_splitncnn_3 +Convolution conv16_1 1 1 conv15_2_conv15_2/relu_splitncnn_3 conv16_1_conv16_1/relu 0=128 1=1 5=1 6=32768 9=1 +Convolution conv16_2 1 1 conv16_1_conv16_1/relu conv16_2_conv16_2/relu 0=256 1=3 3=2 4=1 5=1 6=294912 9=1 +Split splitncnn_5 1 4 conv16_2_conv16_2/relu conv16_2_conv16_2/relu_splitncnn_0 conv16_2_conv16_2/relu_splitncnn_1 conv16_2_conv16_2/relu_splitncnn_2 conv16_2_conv16_2/relu_splitncnn_3 +Convolution conv17_1 1 1 conv16_2_conv16_2/relu_splitncnn_3 conv17_1_conv17_1/relu 0=64 1=1 5=1 6=16384 9=1 +Convolution conv17_2 1 1 conv17_1_conv17_1/relu conv17_2_conv17_2/relu 0=128 1=3 3=2 4=1 5=1 6=73728 9=1 +Split splitncnn_6 1 3 conv17_2_conv17_2/relu conv17_2_conv17_2/relu_splitncnn_0 conv17_2_conv17_2/relu_splitncnn_1 conv17_2_conv17_2/relu_splitncnn_2 +Convolution conv11_mbox_loc 1 1 conv11_conv11/relu_splitncnn_2 conv11_mbox_loc 0=12 1=1 5=1 6=6144 +Permute conv11_mbox_loc_perm 1 1 conv11_mbox_loc conv11_mbox_loc_perm 0=3 +Flatten conv11_mbox_loc_flat 1 1 conv11_mbox_loc_perm conv11_mbox_loc_flat +Convolution conv11_mbox_conf 1 1 conv11_conv11/relu_splitncnn_1 conv11_mbox_conf 0=63 1=1 5=1 6=32256 +Permute conv11_mbox_conf_perm 1 1 conv11_mbox_conf conv11_mbox_conf_perm 0=3 +Flatten conv11_mbox_conf_flat 1 1 conv11_mbox_conf_perm conv11_mbox_conf_flat +PriorBox conv11_mbox_priorbox 2 1 conv11_conv11/relu_splitncnn_0 data_splitncnn_5 conv11_mbox_priorbox -23300=1,1114636288 -23302=1,1073741824 9=-233 10=-233 13=0.500000 +Convolution conv13_mbox_loc 1 1 conv13_conv13/relu_splitncnn_2 conv13_mbox_loc 0=24 1=1 5=1 6=24576 +Permute conv13_mbox_loc_perm 1 1 conv13_mbox_loc conv13_mbox_loc_perm 0=3 +Flatten conv13_mbox_loc_flat 1 1 conv13_mbox_loc_perm conv13_mbox_loc_flat +Convolution conv13_mbox_conf 1 1 conv13_conv13/relu_splitncnn_1 conv13_mbox_conf 0=126 1=1 5=1 6=129024 +Permute conv13_mbox_conf_perm 1 1 conv13_mbox_conf conv13_mbox_conf_perm 0=3 +Flatten conv13_mbox_conf_flat 1 1 conv13_mbox_conf_perm conv13_mbox_conf_flat +PriorBox conv13_mbox_priorbox 2 1 conv13_conv13/relu_splitncnn_0 data_splitncnn_4 conv13_mbox_priorbox -23300=1,1121058816 -23301=1,1125515264 -23302=2,1073741824,1077936128 9=-233 10=-233 13=0.500000 +Convolution conv14_2_mbox_loc 1 1 conv14_2_conv14_2/relu_splitncnn_2 conv14_2_mbox_loc 0=24 1=1 5=1 6=12288 +Permute conv14_2_mbox_loc_perm 1 1 conv14_2_mbox_loc conv14_2_mbox_loc_perm 0=3 +Flatten conv14_2_mbox_loc_flat 1 1 conv14_2_mbox_loc_perm conv14_2_mbox_loc_flat +Convolution conv14_2_mbox_conf 1 1 conv14_2_conv14_2/relu_splitncnn_1 conv14_2_mbox_conf 0=126 1=1 5=1 6=64512 +Permute conv14_2_mbox_conf_perm 1 1 conv14_2_mbox_conf conv14_2_mbox_conf_perm 0=3 +Flatten conv14_2_mbox_conf_flat 1 1 conv14_2_mbox_conf_perm conv14_2_mbox_conf_flat +PriorBox conv14_2_mbox_priorbox 2 1 conv14_2_conv14_2/relu_splitncnn_0 data_splitncnn_3 conv14_2_mbox_priorbox -23300=1,1125515264 -23301=1,1128464384 -23302=2,1073741824,1077936128 9=-233 10=-233 13=0.500000 +Convolution conv15_2_mbox_loc 1 1 conv15_2_conv15_2/relu_splitncnn_2 conv15_2_mbox_loc 0=24 1=1 5=1 6=6144 +Permute conv15_2_mbox_loc_perm 1 1 conv15_2_mbox_loc conv15_2_mbox_loc_perm 0=3 +Flatten conv15_2_mbox_loc_flat 1 1 conv15_2_mbox_loc_perm conv15_2_mbox_loc_flat +Convolution conv15_2_mbox_conf 1 1 conv15_2_conv15_2/relu_splitncnn_1 conv15_2_mbox_conf 0=126 1=1 5=1 6=32256 +Permute conv15_2_mbox_conf_perm 1 1 conv15_2_mbox_conf conv15_2_mbox_conf_perm 0=3 +Flatten conv15_2_mbox_conf_flat 1 1 conv15_2_mbox_conf_perm conv15_2_mbox_conf_flat +PriorBox conv15_2_mbox_priorbox 2 1 conv15_2_conv15_2/relu_splitncnn_0 data_splitncnn_2 conv15_2_mbox_priorbox -23300=1,1128464384 -23301=1,1131413504 -23302=2,1073741824,1077936128 9=-233 10=-233 13=0.500000 +Convolution conv16_2_mbox_loc 1 1 conv16_2_conv16_2/relu_splitncnn_2 conv16_2_mbox_loc 0=24 1=1 5=1 6=6144 +Permute conv16_2_mbox_loc_perm 1 1 conv16_2_mbox_loc conv16_2_mbox_loc_perm 0=3 +Flatten conv16_2_mbox_loc_flat 1 1 conv16_2_mbox_loc_perm conv16_2_mbox_loc_flat +Convolution conv16_2_mbox_conf 1 1 conv16_2_conv16_2/relu_splitncnn_1 conv16_2_mbox_conf 0=126 1=1 5=1 6=32256 +Permute conv16_2_mbox_conf_perm 1 1 conv16_2_mbox_conf conv16_2_mbox_conf_perm 0=3 +Flatten conv16_2_mbox_conf_flat 1 1 conv16_2_mbox_conf_perm conv16_2_mbox_conf_flat +PriorBox conv16_2_mbox_priorbox 2 1 conv16_2_conv16_2/relu_splitncnn_0 data_splitncnn_1 conv16_2_mbox_priorbox -23300=1,1131413504 -23301=1,1133412352 -23302=2,1073741824,1077936128 9=-233 10=-233 13=0.500000 +Convolution conv17_2_mbox_loc 1 1 conv17_2_conv17_2/relu_splitncnn_2 conv17_2_mbox_loc 0=24 1=1 5=1 6=3072 +Permute conv17_2_mbox_loc_perm 1 1 conv17_2_mbox_loc conv17_2_mbox_loc_perm 0=3 +Flatten conv17_2_mbox_loc_flat 1 1 conv17_2_mbox_loc_perm conv17_2_mbox_loc_flat +Convolution conv17_2_mbox_conf 1 1 conv17_2_conv17_2/relu_splitncnn_1 conv17_2_mbox_conf 0=126 1=1 5=1 6=16128 +Permute conv17_2_mbox_conf_perm 1 1 conv17_2_mbox_conf conv17_2_mbox_conf_perm 0=3 +Flatten conv17_2_mbox_conf_flat 1 1 conv17_2_mbox_conf_perm conv17_2_mbox_conf_flat +PriorBox conv17_2_mbox_priorbox 2 1 conv17_2_conv17_2/relu_splitncnn_0 data_splitncnn_0 conv17_2_mbox_priorbox -23300=1,1133412352 -23301=1,1133903872 -23302=2,1073741824,1077936128 9=-233 10=-233 13=0.500000 +Concat mbox_loc 6 1 conv11_mbox_loc_flat conv13_mbox_loc_flat conv14_2_mbox_loc_flat conv15_2_mbox_loc_flat conv16_2_mbox_loc_flat conv17_2_mbox_loc_flat mbox_loc +Concat mbox_conf 6 1 conv11_mbox_conf_flat conv13_mbox_conf_flat conv14_2_mbox_conf_flat conv15_2_mbox_conf_flat conv16_2_mbox_conf_flat conv17_2_mbox_conf_flat mbox_conf +Concat mbox_priorbox 6 1 conv11_mbox_priorbox conv13_mbox_priorbox conv14_2_mbox_priorbox conv15_2_mbox_priorbox conv16_2_mbox_priorbox conv17_2_mbox_priorbox mbox_priorbox 0=1 +Reshape mbox_conf_reshape 1 1 mbox_conf mbox_conf_reshape 0=21 1=-1 +Softmax mbox_conf_softmax 1 1 mbox_conf_reshape mbox_conf_softmax 0=1 1=1 +Flatten mbox_conf_flatten 1 1 mbox_conf_softmax mbox_conf_flatten +DetectionOutput detection_out 3 1 mbox_loc mbox_conf_flatten mbox_priorbox detection_out 0=21 1=0.450000 2=100 4=0.250000 diff --git a/benchmark/mobilenet_v2.param b/benchmark/mobilenet_v2.param index 13e5f0617..fa3b62b83 100644 --- a/benchmark/mobilenet_v2.param +++ b/benchmark/mobilenet_v2.param @@ -1,221 +1,79 @@ 7767517 -219 229 -Input data 0 1 data 0=224 1=224 2=3 -Convolution conv1 1 1 data conv1 0=32 1=3 2=1 3=2 4=1 5=0 6=864 -BatchNorm conv1/bn 1 1 conv1 conv1/bn 0=32 -Scale conv1/scale 1 1 conv1/bn conv1/bn_conv1/scale 0=32 1=1 -ReLU relu1 1 1 conv1/bn_conv1/scale conv1/bn_relu1 -Convolution conv2_1/expand 1 1 conv1/bn_relu1 conv2_1/expand 0=32 1=1 2=1 3=1 4=0 5=0 6=1024 -BatchNorm conv2_1/expand/bn 1 1 conv2_1/expand conv2_1/expand/bn 0=32 -Scale conv2_1/expand/scale 1 1 conv2_1/expand/bn conv2_1/expand/bn_conv2_1/expand/scale 0=32 1=1 -ReLU relu2_1/expand 1 1 conv2_1/expand/bn_conv2_1/expand/scale conv2_1/expand/bn_relu2_1/expand -ConvolutionDepthWise conv2_1/dwise 1 1 conv2_1/expand/bn_relu2_1/expand conv2_1/dwise 0=32 1=3 2=1 3=1 4=1 5=0 6=288 7=32 -BatchNorm conv2_1/dwise/bn 1 1 conv2_1/dwise conv2_1/dwise/bn 0=32 -Scale conv2_1/dwise/scale 1 1 conv2_1/dwise/bn conv2_1/dwise/bn_conv2_1/dwise/scale 0=32 1=1 -ReLU relu2_1/dwise 1 1 conv2_1/dwise/bn_conv2_1/dwise/scale conv2_1/dwise/bn_relu2_1/dwise -Convolution conv2_1/linear 1 1 conv2_1/dwise/bn_relu2_1/dwise conv2_1/linear 0=16 1=1 2=1 3=1 4=0 5=0 6=512 -BatchNorm conv2_1/linear/bn 1 1 conv2_1/linear conv2_1/linear/bn 0=16 -Scale conv2_1/linear/scale 1 1 conv2_1/linear/bn conv2_1/linear/bn_conv2_1/linear/scale 0=16 1=1 -Convolution conv2_2/expand 1 1 conv2_1/linear/bn_conv2_1/linear/scale conv2_2/expand 0=96 1=1 2=1 3=1 4=0 5=0 6=1536 -BatchNorm conv2_2/expand/bn 1 1 conv2_2/expand conv2_2/expand/bn 0=96 -Scale conv2_2/expand/scale 1 1 conv2_2/expand/bn conv2_2/expand/bn_conv2_2/expand/scale 0=96 1=1 -ReLU relu2_2/expand 1 1 conv2_2/expand/bn_conv2_2/expand/scale conv2_2/expand/bn_relu2_2/expand -ConvolutionDepthWise conv2_2/dwise 1 1 conv2_2/expand/bn_relu2_2/expand conv2_2/dwise 0=96 1=3 2=1 3=2 4=1 5=0 6=864 7=96 -BatchNorm conv2_2/dwise/bn 1 1 conv2_2/dwise conv2_2/dwise/bn 0=96 -Scale conv2_2/dwise/scale 1 1 conv2_2/dwise/bn conv2_2/dwise/bn_conv2_2/dwise/scale 0=96 1=1 -ReLU relu2_2/dwise 1 1 conv2_2/dwise/bn_conv2_2/dwise/scale conv2_2/dwise/bn_relu2_2/dwise -Convolution conv2_2/linear 1 1 conv2_2/dwise/bn_relu2_2/dwise conv2_2/linear 0=24 1=1 2=1 3=1 4=0 5=0 6=2304 -BatchNorm conv2_2/linear/bn 1 1 conv2_2/linear conv2_2/linear/bn 0=24 -Scale conv2_2/linear/scale 1 1 conv2_2/linear/bn conv2_2/linear/bn_conv2_2/linear/scale 0=24 1=1 -Split splitncnn_0 1 2 conv2_2/linear/bn_conv2_2/linear/scale conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_0 conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_1 -Convolution conv3_1/expand 1 1 conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_1 conv3_1/expand 0=144 1=1 2=1 3=1 4=0 5=0 6=3456 -BatchNorm conv3_1/expand/bn 1 1 conv3_1/expand conv3_1/expand/bn 0=144 -Scale conv3_1/expand/scale 1 1 conv3_1/expand/bn conv3_1/expand/bn_conv3_1/expand/scale 0=144 1=1 -ReLU relu3_1/expand 1 1 conv3_1/expand/bn_conv3_1/expand/scale conv3_1/expand/bn_relu3_1/expand -ConvolutionDepthWise conv3_1/dwise 1 1 conv3_1/expand/bn_relu3_1/expand conv3_1/dwise 0=144 1=3 2=1 3=1 4=1 5=0 6=1296 7=144 -BatchNorm conv3_1/dwise/bn 1 1 conv3_1/dwise conv3_1/dwise/bn 0=144 -Scale conv3_1/dwise/scale 1 1 conv3_1/dwise/bn conv3_1/dwise/bn_conv3_1/dwise/scale 0=144 1=1 -ReLU relu3_1/dwise 1 1 conv3_1/dwise/bn_conv3_1/dwise/scale conv3_1/dwise/bn_relu3_1/dwise -Convolution conv3_1/linear 1 1 conv3_1/dwise/bn_relu3_1/dwise conv3_1/linear 0=24 1=1 2=1 3=1 4=0 5=0 6=3456 -BatchNorm conv3_1/linear/bn 1 1 conv3_1/linear conv3_1/linear/bn 0=24 -Scale conv3_1/linear/scale 1 1 conv3_1/linear/bn conv3_1/linear/bn_conv3_1/linear/scale 0=24 1=1 -Eltwise block_3_1 2 1 conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_0 conv3_1/linear/bn_conv3_1/linear/scale block_3_1 0=1 -23301=0 -Convolution conv3_2/expand 1 1 block_3_1 conv3_2/expand 0=144 1=1 2=1 3=1 4=0 5=0 6=3456 -BatchNorm conv3_2/expand/bn 1 1 conv3_2/expand conv3_2/expand/bn 0=144 -Scale conv3_2/expand/scale 1 1 conv3_2/expand/bn conv3_2/expand/bn_conv3_2/expand/scale 0=144 1=1 -ReLU relu3_2/expand 1 1 conv3_2/expand/bn_conv3_2/expand/scale conv3_2/expand/bn_relu3_2/expand -ConvolutionDepthWise conv3_2/dwise 1 1 conv3_2/expand/bn_relu3_2/expand conv3_2/dwise 0=144 1=3 2=1 3=2 4=1 5=0 6=1296 7=144 -BatchNorm conv3_2/dwise/bn 1 1 conv3_2/dwise conv3_2/dwise/bn 0=144 -Scale conv3_2/dwise/scale 1 1 conv3_2/dwise/bn conv3_2/dwise/bn_conv3_2/dwise/scale 0=144 1=1 -ReLU relu3_2/dwise 1 1 conv3_2/dwise/bn_conv3_2/dwise/scale conv3_2/dwise/bn_relu3_2/dwise -Convolution conv3_2/linear 1 1 conv3_2/dwise/bn_relu3_2/dwise conv3_2/linear 0=32 1=1 2=1 3=1 4=0 5=0 6=4608 -BatchNorm conv3_2/linear/bn 1 1 conv3_2/linear conv3_2/linear/bn 0=32 -Scale conv3_2/linear/scale 1 1 conv3_2/linear/bn conv3_2/linear/bn_conv3_2/linear/scale 0=32 1=1 -Split splitncnn_1 1 2 conv3_2/linear/bn_conv3_2/linear/scale conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_0 conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_1 -Convolution conv4_1/expand 1 1 conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_1 conv4_1/expand 0=192 1=1 2=1 3=1 4=0 5=0 6=6144 -BatchNorm conv4_1/expand/bn 1 1 conv4_1/expand conv4_1/expand/bn 0=192 -Scale conv4_1/expand/scale 1 1 conv4_1/expand/bn conv4_1/expand/bn_conv4_1/expand/scale 0=192 1=1 -ReLU relu4_1/expand 1 1 conv4_1/expand/bn_conv4_1/expand/scale conv4_1/expand/bn_relu4_1/expand -ConvolutionDepthWise conv4_1/dwise 1 1 conv4_1/expand/bn_relu4_1/expand conv4_1/dwise 0=192 1=3 2=1 3=1 4=1 5=0 6=1728 7=192 -BatchNorm conv4_1/dwise/bn 1 1 conv4_1/dwise conv4_1/dwise/bn 0=192 -Scale conv4_1/dwise/scale 1 1 conv4_1/dwise/bn conv4_1/dwise/bn_conv4_1/dwise/scale 0=192 1=1 -ReLU relu4_1/dwise 1 1 conv4_1/dwise/bn_conv4_1/dwise/scale conv4_1/dwise/bn_relu4_1/dwise -Convolution conv4_1/linear 1 1 conv4_1/dwise/bn_relu4_1/dwise conv4_1/linear 0=32 1=1 2=1 3=1 4=0 5=0 6=6144 -BatchNorm conv4_1/linear/bn 1 1 conv4_1/linear conv4_1/linear/bn 0=32 -Scale conv4_1/linear/scale 1 1 conv4_1/linear/bn conv4_1/linear/bn_conv4_1/linear/scale 0=32 1=1 -Eltwise block_4_1 2 1 conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_0 conv4_1/linear/bn_conv4_1/linear/scale block_4_1 0=1 -23301=0 -Split splitncnn_2 1 2 block_4_1 block_4_1_splitncnn_0 block_4_1_splitncnn_1 -Convolution conv4_2/expand 1 1 block_4_1_splitncnn_1 conv4_2/expand 0=192 1=1 2=1 3=1 4=0 5=0 6=6144 -BatchNorm conv4_2/expand/bn 1 1 conv4_2/expand conv4_2/expand/bn 0=192 -Scale conv4_2/expand/scale 1 1 conv4_2/expand/bn conv4_2/expand/bn_conv4_2/expand/scale 0=192 1=1 -ReLU relu4_2/expand 1 1 conv4_2/expand/bn_conv4_2/expand/scale conv4_2/expand/bn_relu4_2/expand -ConvolutionDepthWise conv4_2/dwise 1 1 conv4_2/expand/bn_relu4_2/expand conv4_2/dwise 0=192 1=3 2=1 3=1 4=1 5=0 6=1728 7=192 -BatchNorm conv4_2/dwise/bn 1 1 conv4_2/dwise conv4_2/dwise/bn 0=192 -Scale conv4_2/dwise/scale 1 1 conv4_2/dwise/bn conv4_2/dwise/bn_conv4_2/dwise/scale 0=192 1=1 -ReLU relu4_2/dwise 1 1 conv4_2/dwise/bn_conv4_2/dwise/scale conv4_2/dwise/bn_relu4_2/dwise -Convolution conv4_2/linear 1 1 conv4_2/dwise/bn_relu4_2/dwise conv4_2/linear 0=32 1=1 2=1 3=1 4=0 5=0 6=6144 -BatchNorm conv4_2/linear/bn 1 1 conv4_2/linear conv4_2/linear/bn 0=32 -Scale conv4_2/linear/scale 1 1 conv4_2/linear/bn conv4_2/linear/bn_conv4_2/linear/scale 0=32 1=1 -Eltwise block_4_2 2 1 block_4_1_splitncnn_0 conv4_2/linear/bn_conv4_2/linear/scale block_4_2 0=1 -23301=0 -Convolution conv4_3/expand 1 1 block_4_2 conv4_3/expand 0=192 1=1 2=1 3=1 4=0 5=0 6=6144 -BatchNorm conv4_3/expand/bn 1 1 conv4_3/expand conv4_3/expand/bn 0=192 -Scale conv4_3/expand/scale 1 1 conv4_3/expand/bn conv4_3/expand/bn_conv4_3/expand/scale 0=192 1=1 -ReLU relu4_3/expand 1 1 conv4_3/expand/bn_conv4_3/expand/scale conv4_3/expand/bn_relu4_3/expand -ConvolutionDepthWise conv4_3/dwise 1 1 conv4_3/expand/bn_relu4_3/expand conv4_3/dwise 0=192 1=3 2=1 3=2 4=1 5=0 6=1728 7=192 -BatchNorm conv4_3/dwise/bn 1 1 conv4_3/dwise conv4_3/dwise/bn 0=192 -Scale conv4_3/dwise/scale 1 1 conv4_3/dwise/bn conv4_3/dwise/bn_conv4_3/dwise/scale 0=192 1=1 -ReLU relu4_3/dwise 1 1 conv4_3/dwise/bn_conv4_3/dwise/scale conv4_3/dwise/bn_relu4_3/dwise -Convolution conv4_3/linear 1 1 conv4_3/dwise/bn_relu4_3/dwise conv4_3/linear 0=64 1=1 2=1 3=1 4=0 5=0 6=12288 -BatchNorm conv4_3/linear/bn 1 1 conv4_3/linear conv4_3/linear/bn 0=64 -Scale conv4_3/linear/scale 1 1 conv4_3/linear/bn conv4_3/linear/bn_conv4_3/linear/scale 0=64 1=1 -Split splitncnn_3 1 2 conv4_3/linear/bn_conv4_3/linear/scale conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_0 conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_1 -Convolution conv4_4/expand 1 1 conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_1 conv4_4/expand 0=384 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_4/expand/bn 1 1 conv4_4/expand conv4_4/expand/bn 0=384 -Scale conv4_4/expand/scale 1 1 conv4_4/expand/bn conv4_4/expand/bn_conv4_4/expand/scale 0=384 1=1 -ReLU relu4_4/expand 1 1 conv4_4/expand/bn_conv4_4/expand/scale conv4_4/expand/bn_relu4_4/expand -ConvolutionDepthWise conv4_4/dwise 1 1 conv4_4/expand/bn_relu4_4/expand conv4_4/dwise 0=384 1=3 2=1 3=1 4=1 5=0 6=3456 7=384 -BatchNorm conv4_4/dwise/bn 1 1 conv4_4/dwise conv4_4/dwise/bn 0=384 -Scale conv4_4/dwise/scale 1 1 conv4_4/dwise/bn conv4_4/dwise/bn_conv4_4/dwise/scale 0=384 1=1 -ReLU relu4_4/dwise 1 1 conv4_4/dwise/bn_conv4_4/dwise/scale conv4_4/dwise/bn_relu4_4/dwise -Convolution conv4_4/linear 1 1 conv4_4/dwise/bn_relu4_4/dwise conv4_4/linear 0=64 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_4/linear/bn 1 1 conv4_4/linear conv4_4/linear/bn 0=64 -Scale conv4_4/linear/scale 1 1 conv4_4/linear/bn conv4_4/linear/bn_conv4_4/linear/scale 0=64 1=1 -Eltwise block_4_4 2 1 conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_0 conv4_4/linear/bn_conv4_4/linear/scale block_4_4 0=1 -23301=0 -Split splitncnn_4 1 2 block_4_4 block_4_4_splitncnn_0 block_4_4_splitncnn_1 -Convolution conv4_5/expand 1 1 block_4_4_splitncnn_1 conv4_5/expand 0=384 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_5/expand/bn 1 1 conv4_5/expand conv4_5/expand/bn 0=384 -Scale conv4_5/expand/scale 1 1 conv4_5/expand/bn conv4_5/expand/bn_conv4_5/expand/scale 0=384 1=1 -ReLU relu4_5/expand 1 1 conv4_5/expand/bn_conv4_5/expand/scale conv4_5/expand/bn_relu4_5/expand -ConvolutionDepthWise conv4_5/dwise 1 1 conv4_5/expand/bn_relu4_5/expand conv4_5/dwise 0=384 1=3 2=1 3=1 4=1 5=0 6=3456 7=384 -BatchNorm conv4_5/dwise/bn 1 1 conv4_5/dwise conv4_5/dwise/bn 0=384 -Scale conv4_5/dwise/scale 1 1 conv4_5/dwise/bn conv4_5/dwise/bn_conv4_5/dwise/scale 0=384 1=1 -ReLU relu4_5/dwise 1 1 conv4_5/dwise/bn_conv4_5/dwise/scale conv4_5/dwise/bn_relu4_5/dwise -Convolution conv4_5/linear 1 1 conv4_5/dwise/bn_relu4_5/dwise conv4_5/linear 0=64 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_5/linear/bn 1 1 conv4_5/linear conv4_5/linear/bn 0=64 -Scale conv4_5/linear/scale 1 1 conv4_5/linear/bn conv4_5/linear/bn_conv4_5/linear/scale 0=64 1=1 -Eltwise block_4_5 2 1 block_4_4_splitncnn_0 conv4_5/linear/bn_conv4_5/linear/scale block_4_5 0=1 -23301=0 -Split splitncnn_5 1 2 block_4_5 block_4_5_splitncnn_0 block_4_5_splitncnn_1 -Convolution conv4_6/expand 1 1 block_4_5_splitncnn_1 conv4_6/expand 0=384 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_6/expand/bn 1 1 conv4_6/expand conv4_6/expand/bn 0=384 -Scale conv4_6/expand/scale 1 1 conv4_6/expand/bn conv4_6/expand/bn_conv4_6/expand/scale 0=384 1=1 -ReLU relu4_6/expand 1 1 conv4_6/expand/bn_conv4_6/expand/scale conv4_6/expand/bn_relu4_6/expand -ConvolutionDepthWise conv4_6/dwise 1 1 conv4_6/expand/bn_relu4_6/expand conv4_6/dwise 0=384 1=3 2=1 3=1 4=1 5=0 6=3456 7=384 -BatchNorm conv4_6/dwise/bn 1 1 conv4_6/dwise conv4_6/dwise/bn 0=384 -Scale conv4_6/dwise/scale 1 1 conv4_6/dwise/bn conv4_6/dwise/bn_conv4_6/dwise/scale 0=384 1=1 -ReLU relu4_6/dwise 1 1 conv4_6/dwise/bn_conv4_6/dwise/scale conv4_6/dwise/bn_relu4_6/dwise -Convolution conv4_6/linear 1 1 conv4_6/dwise/bn_relu4_6/dwise conv4_6/linear 0=64 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_6/linear/bn 1 1 conv4_6/linear conv4_6/linear/bn 0=64 -Scale conv4_6/linear/scale 1 1 conv4_6/linear/bn conv4_6/linear/bn_conv4_6/linear/scale 0=64 1=1 -Eltwise block_4_6 2 1 block_4_5_splitncnn_0 conv4_6/linear/bn_conv4_6/linear/scale block_4_6 0=1 -23301=0 -Convolution conv4_7/expand 1 1 block_4_6 conv4_7/expand 0=384 1=1 2=1 3=1 4=0 5=0 6=24576 -BatchNorm conv4_7/expand/bn 1 1 conv4_7/expand conv4_7/expand/bn 0=384 -Scale conv4_7/expand/scale 1 1 conv4_7/expand/bn conv4_7/expand/bn_conv4_7/expand/scale 0=384 1=1 -ReLU relu4_7/expand 1 1 conv4_7/expand/bn_conv4_7/expand/scale conv4_7/expand/bn_relu4_7/expand -ConvolutionDepthWise conv4_7/dwise 1 1 conv4_7/expand/bn_relu4_7/expand conv4_7/dwise 0=384 1=3 2=1 3=1 4=1 5=0 6=3456 7=384 -BatchNorm conv4_7/dwise/bn 1 1 conv4_7/dwise conv4_7/dwise/bn 0=384 -Scale conv4_7/dwise/scale 1 1 conv4_7/dwise/bn conv4_7/dwise/bn_conv4_7/dwise/scale 0=384 1=1 -ReLU relu4_7/dwise 1 1 conv4_7/dwise/bn_conv4_7/dwise/scale conv4_7/dwise/bn_relu4_7/dwise -Convolution conv4_7/linear 1 1 conv4_7/dwise/bn_relu4_7/dwise conv4_7/linear 0=96 1=1 2=1 3=1 4=0 5=0 6=36864 -BatchNorm conv4_7/linear/bn 1 1 conv4_7/linear conv4_7/linear/bn 0=96 -Scale conv4_7/linear/scale 1 1 conv4_7/linear/bn conv4_7/linear/bn_conv4_7/linear/scale 0=96 1=1 -Split splitncnn_6 1 2 conv4_7/linear/bn_conv4_7/linear/scale conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_0 conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_1 -Convolution conv5_1/expand 1 1 conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_1 conv5_1/expand 0=576 1=1 2=1 3=1 4=0 5=0 6=55296 -BatchNorm conv5_1/expand/bn 1 1 conv5_1/expand conv5_1/expand/bn 0=576 -Scale conv5_1/expand/scale 1 1 conv5_1/expand/bn conv5_1/expand/bn_conv5_1/expand/scale 0=576 1=1 -ReLU relu5_1/expand 1 1 conv5_1/expand/bn_conv5_1/expand/scale conv5_1/expand/bn_relu5_1/expand -ConvolutionDepthWise conv5_1/dwise 1 1 conv5_1/expand/bn_relu5_1/expand conv5_1/dwise 0=576 1=3 2=1 3=1 4=1 5=0 6=5184 7=576 -BatchNorm conv5_1/dwise/bn 1 1 conv5_1/dwise conv5_1/dwise/bn 0=576 -Scale conv5_1/dwise/scale 1 1 conv5_1/dwise/bn conv5_1/dwise/bn_conv5_1/dwise/scale 0=576 1=1 -ReLU relu5_1/dwise 1 1 conv5_1/dwise/bn_conv5_1/dwise/scale conv5_1/dwise/bn_relu5_1/dwise -Convolution conv5_1/linear 1 1 conv5_1/dwise/bn_relu5_1/dwise conv5_1/linear 0=96 1=1 2=1 3=1 4=0 5=0 6=55296 -BatchNorm conv5_1/linear/bn 1 1 conv5_1/linear conv5_1/linear/bn 0=96 -Scale conv5_1/linear/scale 1 1 conv5_1/linear/bn conv5_1/linear/bn_conv5_1/linear/scale 0=96 1=1 -Eltwise block_5_1 2 1 conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_0 conv5_1/linear/bn_conv5_1/linear/scale block_5_1 0=1 -23301=0 -Split splitncnn_7 1 2 block_5_1 block_5_1_splitncnn_0 block_5_1_splitncnn_1 -Convolution conv5_2/expand 1 1 block_5_1_splitncnn_1 conv5_2/expand 0=576 1=1 2=1 3=1 4=0 5=0 6=55296 -BatchNorm conv5_2/expand/bn 1 1 conv5_2/expand conv5_2/expand/bn 0=576 -Scale conv5_2/expand/scale 1 1 conv5_2/expand/bn conv5_2/expand/bn_conv5_2/expand/scale 0=576 1=1 -ReLU relu5_2/expand 1 1 conv5_2/expand/bn_conv5_2/expand/scale conv5_2/expand/bn_relu5_2/expand -ConvolutionDepthWise conv5_2/dwise 1 1 conv5_2/expand/bn_relu5_2/expand conv5_2/dwise 0=576 1=3 2=1 3=1 4=1 5=0 6=5184 7=576 -BatchNorm conv5_2/dwise/bn 1 1 conv5_2/dwise conv5_2/dwise/bn 0=576 -Scale conv5_2/dwise/scale 1 1 conv5_2/dwise/bn conv5_2/dwise/bn_conv5_2/dwise/scale 0=576 1=1 -ReLU relu5_2/dwise 1 1 conv5_2/dwise/bn_conv5_2/dwise/scale conv5_2/dwise/bn_relu5_2/dwise -Convolution conv5_2/linear 1 1 conv5_2/dwise/bn_relu5_2/dwise conv5_2/linear 0=96 1=1 2=1 3=1 4=0 5=0 6=55296 -BatchNorm conv5_2/linear/bn 1 1 conv5_2/linear conv5_2/linear/bn 0=96 -Scale conv5_2/linear/scale 1 1 conv5_2/linear/bn conv5_2/linear/bn_conv5_2/linear/scale 0=96 1=1 -Eltwise block_5_2 2 1 block_5_1_splitncnn_0 conv5_2/linear/bn_conv5_2/linear/scale block_5_2 0=1 -23301=0 -Convolution conv5_3/expand 1 1 block_5_2 conv5_3/expand 0=576 1=1 2=1 3=1 4=0 5=0 6=55296 -BatchNorm conv5_3/expand/bn 1 1 conv5_3/expand conv5_3/expand/bn 0=576 -Scale conv5_3/expand/scale 1 1 conv5_3/expand/bn conv5_3/expand/bn_conv5_3/expand/scale 0=576 1=1 -ReLU relu5_3/expand 1 1 conv5_3/expand/bn_conv5_3/expand/scale conv5_3/expand/bn_relu5_3/expand -ConvolutionDepthWise conv5_3/dwise 1 1 conv5_3/expand/bn_relu5_3/expand conv5_3/dwise 0=576 1=3 2=1 3=2 4=1 5=0 6=5184 7=576 -BatchNorm conv5_3/dwise/bn 1 1 conv5_3/dwise conv5_3/dwise/bn 0=576 -Scale conv5_3/dwise/scale 1 1 conv5_3/dwise/bn conv5_3/dwise/bn_conv5_3/dwise/scale 0=576 1=1 -ReLU relu5_3/dwise 1 1 conv5_3/dwise/bn_conv5_3/dwise/scale conv5_3/dwise/bn_relu5_3/dwise -Convolution conv5_3/linear 1 1 conv5_3/dwise/bn_relu5_3/dwise conv5_3/linear 0=160 1=1 2=1 3=1 4=0 5=0 6=92160 -BatchNorm conv5_3/linear/bn 1 1 conv5_3/linear conv5_3/linear/bn 0=160 -Scale conv5_3/linear/scale 1 1 conv5_3/linear/bn conv5_3/linear/bn_conv5_3/linear/scale 0=160 1=1 -Split splitncnn_8 1 2 conv5_3/linear/bn_conv5_3/linear/scale conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_0 conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_1 -Convolution conv6_1/expand 1 1 conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_1 conv6_1/expand 0=960 1=1 2=1 3=1 4=0 5=0 6=153600 -BatchNorm conv6_1/expand/bn 1 1 conv6_1/expand conv6_1/expand/bn 0=960 -Scale conv6_1/expand/scale 1 1 conv6_1/expand/bn conv6_1/expand/bn_conv6_1/expand/scale 0=960 1=1 -ReLU relu6_1/expand 1 1 conv6_1/expand/bn_conv6_1/expand/scale conv6_1/expand/bn_relu6_1/expand -ConvolutionDepthWise conv6_1/dwise 1 1 conv6_1/expand/bn_relu6_1/expand conv6_1/dwise 0=960 1=3 2=1 3=1 4=1 5=0 6=8640 7=960 -BatchNorm conv6_1/dwise/bn 1 1 conv6_1/dwise conv6_1/dwise/bn 0=960 -Scale conv6_1/dwise/scale 1 1 conv6_1/dwise/bn conv6_1/dwise/bn_conv6_1/dwise/scale 0=960 1=1 -ReLU relu6_1/dwise 1 1 conv6_1/dwise/bn_conv6_1/dwise/scale conv6_1/dwise/bn_relu6_1/dwise -Convolution conv6_1/linear 1 1 conv6_1/dwise/bn_relu6_1/dwise conv6_1/linear 0=160 1=1 2=1 3=1 4=0 5=0 6=153600 -BatchNorm conv6_1/linear/bn 1 1 conv6_1/linear conv6_1/linear/bn 0=160 -Scale conv6_1/linear/scale 1 1 conv6_1/linear/bn conv6_1/linear/bn_conv6_1/linear/scale 0=160 1=1 -Eltwise block_6_1 2 1 conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_0 conv6_1/linear/bn_conv6_1/linear/scale block_6_1 0=1 -23301=0 -Split splitncnn_9 1 2 block_6_1 block_6_1_splitncnn_0 block_6_1_splitncnn_1 -Convolution conv6_2/expand 1 1 block_6_1_splitncnn_1 conv6_2/expand 0=960 1=1 2=1 3=1 4=0 5=0 6=153600 -BatchNorm conv6_2/expand/bn 1 1 conv6_2/expand conv6_2/expand/bn 0=960 -Scale conv6_2/expand/scale 1 1 conv6_2/expand/bn conv6_2/expand/bn_conv6_2/expand/scale 0=960 1=1 -ReLU relu6_2/expand 1 1 conv6_2/expand/bn_conv6_2/expand/scale conv6_2/expand/bn_relu6_2/expand -ConvolutionDepthWise conv6_2/dwise 1 1 conv6_2/expand/bn_relu6_2/expand conv6_2/dwise 0=960 1=3 2=1 3=1 4=1 5=0 6=8640 7=960 -BatchNorm conv6_2/dwise/bn 1 1 conv6_2/dwise conv6_2/dwise/bn 0=960 -Scale conv6_2/dwise/scale 1 1 conv6_2/dwise/bn conv6_2/dwise/bn_conv6_2/dwise/scale 0=960 1=1 -ReLU relu6_2/dwise 1 1 conv6_2/dwise/bn_conv6_2/dwise/scale conv6_2/dwise/bn_relu6_2/dwise -Convolution conv6_2/linear 1 1 conv6_2/dwise/bn_relu6_2/dwise conv6_2/linear 0=160 1=1 2=1 3=1 4=0 5=0 6=153600 -BatchNorm conv6_2/linear/bn 1 1 conv6_2/linear conv6_2/linear/bn 0=160 -Scale conv6_2/linear/scale 1 1 conv6_2/linear/bn conv6_2/linear/bn_conv6_2/linear/scale 0=160 1=1 -Eltwise block_6_2 2 1 block_6_1_splitncnn_0 conv6_2/linear/bn_conv6_2/linear/scale block_6_2 0=1 -23301=0 -Convolution conv6_3/expand 1 1 block_6_2 conv6_3/expand 0=960 1=1 2=1 3=1 4=0 5=0 6=153600 -BatchNorm conv6_3/expand/bn 1 1 conv6_3/expand conv6_3/expand/bn 0=960 -Scale conv6_3/expand/scale 1 1 conv6_3/expand/bn conv6_3/expand/bn_conv6_3/expand/scale 0=960 1=1 -ReLU relu6_3/expand 1 1 conv6_3/expand/bn_conv6_3/expand/scale conv6_3/expand/bn_relu6_3/expand -ConvolutionDepthWise conv6_3/dwise 1 1 conv6_3/expand/bn_relu6_3/expand conv6_3/dwise 0=960 1=3 2=1 3=1 4=1 5=0 6=8640 7=960 -BatchNorm conv6_3/dwise/bn 1 1 conv6_3/dwise conv6_3/dwise/bn 0=960 -Scale conv6_3/dwise/scale 1 1 conv6_3/dwise/bn conv6_3/dwise/bn_conv6_3/dwise/scale 0=960 1=1 -ReLU relu6_3/dwise 1 1 conv6_3/dwise/bn_conv6_3/dwise/scale conv6_3/dwise/bn_relu6_3/dwise -Convolution conv6_3/linear 1 1 conv6_3/dwise/bn_relu6_3/dwise conv6_3/linear 0=320 1=1 2=1 3=1 4=0 5=0 6=307200 -BatchNorm conv6_3/linear/bn 1 1 conv6_3/linear conv6_3/linear/bn 0=320 -Scale conv6_3/linear/scale 1 1 conv6_3/linear/bn conv6_3/linear/bn_conv6_3/linear/scale 0=320 1=1 -Convolution conv6_4 1 1 conv6_3/linear/bn_conv6_3/linear/scale conv6_4 0=1280 1=1 2=1 3=1 4=0 5=0 6=409600 -BatchNorm conv6_4/bn 1 1 conv6_4 conv6_4/bn 0=1280 -Scale conv6_4/scale 1 1 conv6_4/bn conv6_4/bn_conv6_4/scale 0=1280 1=1 -ReLU relu6_4 1 1 conv6_4/bn_conv6_4/scale conv6_4/bn_relu6_4 -Pooling pool6 1 1 conv6_4/bn_relu6_4 pool6 0=1 1=0 2=1 3=0 4=1 -Convolution fc7 1 1 pool6 fc7 0=1000 1=1 2=1 3=1 4=0 5=1 6=1280000 -Softmax prob 1 1 fc7 prob 0=0 +77 87 +Input data 0 1 data 0=224 1=224 2=3 +Convolution conv1 1 1 data conv1/bn_relu1 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +Convolution conv2_1/expand 1 1 conv1/bn_relu1 conv2_1/expand/bn_relu2_1/expand 0=32 1=1 5=1 6=1024 9=1 +ConvolutionDepthWise conv2_1/dwise 1 1 conv2_1/expand/bn_relu2_1/expand conv2_1/dwise/bn_relu2_1/dwise 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution conv2_1/linear 1 1 conv2_1/dwise/bn_relu2_1/dwise conv2_1/linear/bn_conv2_1/linear/scale 0=16 1=1 5=1 6=512 +Convolution conv2_2/expand 1 1 conv2_1/linear/bn_conv2_1/linear/scale conv2_2/expand/bn_relu2_2/expand 0=96 1=1 5=1 6=1536 9=1 +ConvolutionDepthWise conv2_2/dwise 1 1 conv2_2/expand/bn_relu2_2/expand conv2_2/dwise/bn_relu2_2/dwise 0=96 1=3 3=2 4=1 5=1 6=864 7=96 9=1 +Convolution conv2_2/linear 1 1 conv2_2/dwise/bn_relu2_2/dwise conv2_2/linear/bn_conv2_2/linear/scale 0=24 1=1 5=1 6=2304 +Split splitncnn_0 1 2 conv2_2/linear/bn_conv2_2/linear/scale conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_0 conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_1 +Convolution conv3_1/expand 1 1 conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_1 conv3_1/expand/bn_relu3_1/expand 0=144 1=1 5=1 6=3456 9=1 +ConvolutionDepthWise conv3_1/dwise 1 1 conv3_1/expand/bn_relu3_1/expand conv3_1/dwise/bn_relu3_1/dwise 0=144 1=3 4=1 5=1 6=1296 7=144 9=1 +Convolution conv3_1/linear 1 1 conv3_1/dwise/bn_relu3_1/dwise conv3_1/linear/bn_conv3_1/linear/scale 0=24 1=1 5=1 6=3456 +Eltwise block_3_1 2 1 conv2_2/linear/bn_conv2_2/linear/scale_splitncnn_0 conv3_1/linear/bn_conv3_1/linear/scale block_3_1 0=1 +Convolution conv3_2/expand 1 1 block_3_1 conv3_2/expand/bn_relu3_2/expand 0=144 1=1 5=1 6=3456 9=1 +ConvolutionDepthWise conv3_2/dwise 1 1 conv3_2/expand/bn_relu3_2/expand conv3_2/dwise/bn_relu3_2/dwise 0=144 1=3 3=2 4=1 5=1 6=1296 7=144 9=1 +Convolution conv3_2/linear 1 1 conv3_2/dwise/bn_relu3_2/dwise conv3_2/linear/bn_conv3_2/linear/scale 0=32 1=1 5=1 6=4608 +Split splitncnn_1 1 2 conv3_2/linear/bn_conv3_2/linear/scale conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_0 conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_1 +Convolution conv4_1/expand 1 1 conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_1 conv4_1/expand/bn_relu4_1/expand 0=192 1=1 5=1 6=6144 9=1 +ConvolutionDepthWise conv4_1/dwise 1 1 conv4_1/expand/bn_relu4_1/expand conv4_1/dwise/bn_relu4_1/dwise 0=192 1=3 4=1 5=1 6=1728 7=192 9=1 +Convolution conv4_1/linear 1 1 conv4_1/dwise/bn_relu4_1/dwise conv4_1/linear/bn_conv4_1/linear/scale 0=32 1=1 5=1 6=6144 +Eltwise block_4_1 2 1 conv3_2/linear/bn_conv3_2/linear/scale_splitncnn_0 conv4_1/linear/bn_conv4_1/linear/scale block_4_1 0=1 +Split splitncnn_2 1 2 block_4_1 block_4_1_splitncnn_0 block_4_1_splitncnn_1 +Convolution conv4_2/expand 1 1 block_4_1_splitncnn_1 conv4_2/expand/bn_relu4_2/expand 0=192 1=1 5=1 6=6144 9=1 +ConvolutionDepthWise conv4_2/dwise 1 1 conv4_2/expand/bn_relu4_2/expand conv4_2/dwise/bn_relu4_2/dwise 0=192 1=3 4=1 5=1 6=1728 7=192 9=1 +Convolution conv4_2/linear 1 1 conv4_2/dwise/bn_relu4_2/dwise conv4_2/linear/bn_conv4_2/linear/scale 0=32 1=1 5=1 6=6144 +Eltwise block_4_2 2 1 block_4_1_splitncnn_0 conv4_2/linear/bn_conv4_2/linear/scale block_4_2 0=1 +Convolution conv4_3/expand 1 1 block_4_2 conv4_3/expand/bn_relu4_3/expand 0=192 1=1 5=1 6=6144 9=1 +ConvolutionDepthWise conv4_3/dwise 1 1 conv4_3/expand/bn_relu4_3/expand conv4_3/dwise/bn_relu4_3/dwise 0=192 1=3 3=2 4=1 5=1 6=1728 7=192 9=1 +Convolution conv4_3/linear 1 1 conv4_3/dwise/bn_relu4_3/dwise conv4_3/linear/bn_conv4_3/linear/scale 0=64 1=1 5=1 6=12288 +Split splitncnn_3 1 2 conv4_3/linear/bn_conv4_3/linear/scale conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_0 conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_1 +Convolution conv4_4/expand 1 1 conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_1 conv4_4/expand/bn_relu4_4/expand 0=384 1=1 5=1 6=24576 9=1 +ConvolutionDepthWise conv4_4/dwise 1 1 conv4_4/expand/bn_relu4_4/expand conv4_4/dwise/bn_relu4_4/dwise 0=384 1=3 4=1 5=1 6=3456 7=384 9=1 +Convolution conv4_4/linear 1 1 conv4_4/dwise/bn_relu4_4/dwise conv4_4/linear/bn_conv4_4/linear/scale 0=64 1=1 5=1 6=24576 +Eltwise block_4_4 2 1 conv4_3/linear/bn_conv4_3/linear/scale_splitncnn_0 conv4_4/linear/bn_conv4_4/linear/scale block_4_4 0=1 +Split splitncnn_4 1 2 block_4_4 block_4_4_splitncnn_0 block_4_4_splitncnn_1 +Convolution conv4_5/expand 1 1 block_4_4_splitncnn_1 conv4_5/expand/bn_relu4_5/expand 0=384 1=1 5=1 6=24576 9=1 +ConvolutionDepthWise conv4_5/dwise 1 1 conv4_5/expand/bn_relu4_5/expand conv4_5/dwise/bn_relu4_5/dwise 0=384 1=3 4=1 5=1 6=3456 7=384 9=1 +Convolution conv4_5/linear 1 1 conv4_5/dwise/bn_relu4_5/dwise conv4_5/linear/bn_conv4_5/linear/scale 0=64 1=1 5=1 6=24576 +Eltwise block_4_5 2 1 block_4_4_splitncnn_0 conv4_5/linear/bn_conv4_5/linear/scale block_4_5 0=1 +Split splitncnn_5 1 2 block_4_5 block_4_5_splitncnn_0 block_4_5_splitncnn_1 +Convolution conv4_6/expand 1 1 block_4_5_splitncnn_1 conv4_6/expand/bn_relu4_6/expand 0=384 1=1 5=1 6=24576 9=1 +ConvolutionDepthWise conv4_6/dwise 1 1 conv4_6/expand/bn_relu4_6/expand conv4_6/dwise/bn_relu4_6/dwise 0=384 1=3 4=1 5=1 6=3456 7=384 9=1 +Convolution conv4_6/linear 1 1 conv4_6/dwise/bn_relu4_6/dwise conv4_6/linear/bn_conv4_6/linear/scale 0=64 1=1 5=1 6=24576 +Eltwise block_4_6 2 1 block_4_5_splitncnn_0 conv4_6/linear/bn_conv4_6/linear/scale block_4_6 0=1 +Convolution conv4_7/expand 1 1 block_4_6 conv4_7/expand/bn_relu4_7/expand 0=384 1=1 5=1 6=24576 9=1 +ConvolutionDepthWise conv4_7/dwise 1 1 conv4_7/expand/bn_relu4_7/expand conv4_7/dwise/bn_relu4_7/dwise 0=384 1=3 4=1 5=1 6=3456 7=384 9=1 +Convolution conv4_7/linear 1 1 conv4_7/dwise/bn_relu4_7/dwise conv4_7/linear/bn_conv4_7/linear/scale 0=96 1=1 5=1 6=36864 +Split splitncnn_6 1 2 conv4_7/linear/bn_conv4_7/linear/scale conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_0 conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_1 +Convolution conv5_1/expand 1 1 conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_1 conv5_1/expand/bn_relu5_1/expand 0=576 1=1 5=1 6=55296 9=1 +ConvolutionDepthWise conv5_1/dwise 1 1 conv5_1/expand/bn_relu5_1/expand conv5_1/dwise/bn_relu5_1/dwise 0=576 1=3 4=1 5=1 6=5184 7=576 9=1 +Convolution conv5_1/linear 1 1 conv5_1/dwise/bn_relu5_1/dwise conv5_1/linear/bn_conv5_1/linear/scale 0=96 1=1 5=1 6=55296 +Eltwise block_5_1 2 1 conv4_7/linear/bn_conv4_7/linear/scale_splitncnn_0 conv5_1/linear/bn_conv5_1/linear/scale block_5_1 0=1 +Split splitncnn_7 1 2 block_5_1 block_5_1_splitncnn_0 block_5_1_splitncnn_1 +Convolution conv5_2/expand 1 1 block_5_1_splitncnn_1 conv5_2/expand/bn_relu5_2/expand 0=576 1=1 5=1 6=55296 9=1 +ConvolutionDepthWise conv5_2/dwise 1 1 conv5_2/expand/bn_relu5_2/expand conv5_2/dwise/bn_relu5_2/dwise 0=576 1=3 4=1 5=1 6=5184 7=576 9=1 +Convolution conv5_2/linear 1 1 conv5_2/dwise/bn_relu5_2/dwise conv5_2/linear/bn_conv5_2/linear/scale 0=96 1=1 5=1 6=55296 +Eltwise block_5_2 2 1 block_5_1_splitncnn_0 conv5_2/linear/bn_conv5_2/linear/scale block_5_2 0=1 +Convolution conv5_3/expand 1 1 block_5_2 conv5_3/expand/bn_relu5_3/expand 0=576 1=1 5=1 6=55296 9=1 +ConvolutionDepthWise conv5_3/dwise 1 1 conv5_3/expand/bn_relu5_3/expand conv5_3/dwise/bn_relu5_3/dwise 0=576 1=3 3=2 4=1 5=1 6=5184 7=576 9=1 +Convolution conv5_3/linear 1 1 conv5_3/dwise/bn_relu5_3/dwise conv5_3/linear/bn_conv5_3/linear/scale 0=160 1=1 5=1 6=92160 +Split splitncnn_8 1 2 conv5_3/linear/bn_conv5_3/linear/scale conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_0 conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_1 +Convolution conv6_1/expand 1 1 conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_1 conv6_1/expand/bn_relu6_1/expand 0=960 1=1 5=1 6=153600 9=1 +ConvolutionDepthWise conv6_1/dwise 1 1 conv6_1/expand/bn_relu6_1/expand conv6_1/dwise/bn_relu6_1/dwise 0=960 1=3 4=1 5=1 6=8640 7=960 9=1 +Convolution conv6_1/linear 1 1 conv6_1/dwise/bn_relu6_1/dwise conv6_1/linear/bn_conv6_1/linear/scale 0=160 1=1 5=1 6=153600 +Eltwise block_6_1 2 1 conv5_3/linear/bn_conv5_3/linear/scale_splitncnn_0 conv6_1/linear/bn_conv6_1/linear/scale block_6_1 0=1 +Split splitncnn_9 1 2 block_6_1 block_6_1_splitncnn_0 block_6_1_splitncnn_1 +Convolution conv6_2/expand 1 1 block_6_1_splitncnn_1 conv6_2/expand/bn_relu6_2/expand 0=960 1=1 5=1 6=153600 9=1 +ConvolutionDepthWise conv6_2/dwise 1 1 conv6_2/expand/bn_relu6_2/expand conv6_2/dwise/bn_relu6_2/dwise 0=960 1=3 4=1 5=1 6=8640 7=960 9=1 +Convolution conv6_2/linear 1 1 conv6_2/dwise/bn_relu6_2/dwise conv6_2/linear/bn_conv6_2/linear/scale 0=160 1=1 5=1 6=153600 +Eltwise block_6_2 2 1 block_6_1_splitncnn_0 conv6_2/linear/bn_conv6_2/linear/scale block_6_2 0=1 +Convolution conv6_3/expand 1 1 block_6_2 conv6_3/expand/bn_relu6_3/expand 0=960 1=1 5=1 6=153600 9=1 +ConvolutionDepthWise conv6_3/dwise 1 1 conv6_3/expand/bn_relu6_3/expand conv6_3/dwise/bn_relu6_3/dwise 0=960 1=3 4=1 5=1 6=8640 7=960 9=1 +Convolution conv6_3/linear 1 1 conv6_3/dwise/bn_relu6_3/dwise conv6_3/linear/bn_conv6_3/linear/scale 0=320 1=1 5=1 6=307200 +Convolution conv6_4 1 1 conv6_3/linear/bn_conv6_3/linear/scale conv6_4/bn_relu6_4 0=1280 1=1 5=1 6=409600 9=1 +Pooling pool6 1 1 conv6_4/bn_relu6_4 pool6 0=1 4=1 +Convolution fc7 1 1 pool6 fc7 0=1000 1=1 5=1 6=1280000 +Softmax prob 1 1 fc7 prob diff --git a/benchmark/mobilenet_yolo.param b/benchmark/mobilenet_yolo.param index c99f6144a..3405a2fdb 100644 --- a/benchmark/mobilenet_yolo.param +++ b/benchmark/mobilenet_yolo.param @@ -1,134 +1,41 @@ 7767517 -132 134 -Input data 0 1 data 0=416 1=416 2=3 -Convolution conv0 1 1 data conv0 0=32 1=3 2=1 3=2 4=1 5=0 6=864 -BatchNorm conv0/bn 1 1 conv0 conv0_conv0/bn 0=32 -Scale conv0/scale 1 1 conv0_conv0/bn conv0_conv0/scale 0=32 1=1 -ReLU conv0/relu 1 1 conv0_conv0/scale conv0_conv0/relu -ConvolutionDepthWise conv1/dw 1 1 conv0_conv0/relu conv1/dw 0=32 1=3 2=1 3=1 4=1 5=0 6=288 7=32 -BatchNorm conv1/dw/bn 1 1 conv1/dw conv1/dw_conv1/dw/bn 0=32 -Scale conv1/dw/scale 1 1 conv1/dw_conv1/dw/bn conv1/dw_conv1/dw/scale 0=32 1=1 -ReLU conv1/dw/relu 1 1 conv1/dw_conv1/dw/scale conv1/dw_conv1/dw/relu -Convolution conv1 1 1 conv1/dw_conv1/dw/relu conv1 0=64 1=1 2=1 3=1 4=0 5=0 6=2048 -BatchNorm conv1/bn 1 1 conv1 conv1_conv1/bn 0=64 -Scale conv1/scale 1 1 conv1_conv1/bn conv1_conv1/scale 0=64 1=1 -ReLU conv1/relu 1 1 conv1_conv1/scale conv1_conv1/relu -ConvolutionDepthWise conv2/dw 1 1 conv1_conv1/relu conv2/dw 0=64 1=3 2=1 3=2 4=1 5=0 6=576 7=64 -BatchNorm conv2/dw/bn 1 1 conv2/dw conv2/dw_conv2/dw/bn 0=64 -Scale conv2/dw/scale 1 1 conv2/dw_conv2/dw/bn conv2/dw_conv2/dw/scale 0=64 1=1 -ReLU conv2/dw/relu 1 1 conv2/dw_conv2/dw/scale conv2/dw_conv2/dw/relu -Convolution conv2 1 1 conv2/dw_conv2/dw/relu conv2 0=128 1=1 2=1 3=1 4=0 5=0 6=8192 -BatchNorm conv2/bn 1 1 conv2 conv2_conv2/bn 0=128 -Scale conv2/scale 1 1 conv2_conv2/bn conv2_conv2/scale 0=128 1=1 -ReLU conv2/relu 1 1 conv2_conv2/scale conv2_conv2/relu -ConvolutionDepthWise conv3/dw 1 1 conv2_conv2/relu conv3/dw 0=128 1=3 2=1 3=1 4=1 5=0 6=1152 7=128 -BatchNorm conv3/dw/bn 1 1 conv3/dw conv3/dw_conv3/dw/bn 0=128 -Scale conv3/dw/scale 1 1 conv3/dw_conv3/dw/bn conv3/dw_conv3/dw/scale 0=128 1=1 -ReLU conv3/dw/relu 1 1 conv3/dw_conv3/dw/scale conv3/dw_conv3/dw/relu -Convolution conv3 1 1 conv3/dw_conv3/dw/relu conv3 0=128 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm conv3/bn 1 1 conv3 conv3_conv3/bn 0=128 -Scale conv3/scale 1 1 conv3_conv3/bn conv3_conv3/scale 0=128 1=1 -ReLU conv3/relu 1 1 conv3_conv3/scale conv3_conv3/relu -ConvolutionDepthWise conv4/dw 1 1 conv3_conv3/relu conv4/dw 0=128 1=3 2=1 3=2 4=1 5=0 6=1152 7=128 -BatchNorm conv4/dw/bn 1 1 conv4/dw conv4/dw_conv4/dw/bn 0=128 -Scale conv4/dw/scale 1 1 conv4/dw_conv4/dw/bn conv4/dw_conv4/dw/scale 0=128 1=1 -ReLU conv4/dw/relu 1 1 conv4/dw_conv4/dw/scale conv4/dw_conv4/dw/relu -Convolution conv4 1 1 conv4/dw_conv4/dw/relu conv4 0=256 1=1 2=1 3=1 4=0 5=0 6=32768 -BatchNorm conv4/bn 1 1 conv4 conv4_conv4/bn 0=256 -Scale conv4/scale 1 1 conv4_conv4/bn conv4_conv4/scale 0=256 1=1 -ReLU conv4/relu 1 1 conv4_conv4/scale conv4_conv4/relu -ConvolutionDepthWise conv5/dw 1 1 conv4_conv4/relu conv5/dw 0=256 1=3 2=1 3=1 4=1 5=0 6=2304 7=256 -BatchNorm conv5/dw/bn 1 1 conv5/dw conv5/dw_conv5/dw/bn 0=256 -Scale conv5/dw/scale 1 1 conv5/dw_conv5/dw/bn conv5/dw_conv5/dw/scale 0=256 1=1 -ReLU conv5/dw/relu 1 1 conv5/dw_conv5/dw/scale conv5/dw_conv5/dw/relu -Convolution conv5 1 1 conv5/dw_conv5/dw/relu conv5 0=256 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm conv5/bn 1 1 conv5 conv5_conv5/bn 0=256 -Scale conv5/scale 1 1 conv5_conv5/bn conv5_conv5/scale 0=256 1=1 -ReLU conv5/relu 1 1 conv5_conv5/scale conv5_conv5/relu -ConvolutionDepthWise conv6/dw 1 1 conv5_conv5/relu conv6/dw 0=256 1=3 2=1 3=2 4=1 5=0 6=2304 7=256 -BatchNorm conv6/dw/bn 1 1 conv6/dw conv6/dw_conv6/dw/bn 0=256 -Scale conv6/dw/scale 1 1 conv6/dw_conv6/dw/bn conv6/dw_conv6/dw/scale 0=256 1=1 -ReLU conv6/dw/relu 1 1 conv6/dw_conv6/dw/scale conv6/dw_conv6/dw/relu -Convolution conv6 1 1 conv6/dw_conv6/dw/relu conv6 0=512 1=1 2=1 3=1 4=0 5=0 6=131072 -BatchNorm conv6/bn 1 1 conv6 conv6_conv6/bn 0=512 -Scale conv6/scale 1 1 conv6_conv6/bn conv6_conv6/scale 0=512 1=1 -ReLU conv6/relu 1 1 conv6_conv6/scale conv6_conv6/relu -ConvolutionDepthWise conv7/dw 1 1 conv6_conv6/relu conv7/dw 0=512 1=3 2=1 3=1 4=1 5=0 6=4608 7=512 -BatchNorm conv7/dw/bn 1 1 conv7/dw conv7/dw_conv7/dw/bn 0=512 -Scale conv7/dw/scale 1 1 conv7/dw_conv7/dw/bn conv7/dw_conv7/dw/scale 0=512 1=1 -ReLU conv7/dw/relu 1 1 conv7/dw_conv7/dw/scale conv7/dw_conv7/dw/relu -Convolution conv7 1 1 conv7/dw_conv7/dw/relu conv7 0=512 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm conv7/bn 1 1 conv7 conv7_conv7/bn 0=512 -Scale conv7/scale 1 1 conv7_conv7/bn conv7_conv7/scale 0=512 1=1 -ReLU conv7/relu 1 1 conv7_conv7/scale conv7_conv7/relu -ConvolutionDepthWise conv8/dw 1 1 conv7_conv7/relu conv8/dw 0=512 1=3 2=1 3=1 4=1 5=0 6=4608 7=512 -BatchNorm conv8/dw/bn 1 1 conv8/dw conv8/dw_conv8/dw/bn 0=512 -Scale conv8/dw/scale 1 1 conv8/dw_conv8/dw/bn conv8/dw_conv8/dw/scale 0=512 1=1 -ReLU conv8/dw/relu 1 1 conv8/dw_conv8/dw/scale conv8/dw_conv8/dw/relu -Convolution conv8 1 1 conv8/dw_conv8/dw/relu conv8 0=512 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm conv8/bn 1 1 conv8 conv8_conv8/bn 0=512 -Scale conv8/scale 1 1 conv8_conv8/bn conv8_conv8/scale 0=512 1=1 -ReLU conv8/relu 1 1 conv8_conv8/scale conv8_conv8/relu -ConvolutionDepthWise conv9/dw 1 1 conv8_conv8/relu conv9/dw 0=512 1=3 2=1 3=1 4=1 5=0 6=4608 7=512 -BatchNorm conv9/dw/bn 1 1 conv9/dw conv9/dw_conv9/dw/bn 0=512 -Scale conv9/dw/scale 1 1 conv9/dw_conv9/dw/bn conv9/dw_conv9/dw/scale 0=512 1=1 -ReLU conv9/dw/relu 1 1 conv9/dw_conv9/dw/scale conv9/dw_conv9/dw/relu -Convolution conv9 1 1 conv9/dw_conv9/dw/relu conv9 0=512 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm conv9/bn 1 1 conv9 conv9_conv9/bn 0=512 -Scale conv9/scale 1 1 conv9_conv9/bn conv9_conv9/scale 0=512 1=1 -ReLU conv9/relu 1 1 conv9_conv9/scale conv9_conv9/relu -ConvolutionDepthWise conv10/dw 1 1 conv9_conv9/relu conv10/dw 0=512 1=3 2=1 3=1 4=1 5=0 6=4608 7=512 -BatchNorm conv10/dw/bn 1 1 conv10/dw conv10/dw_conv10/dw/bn 0=512 -Scale conv10/dw/scale 1 1 conv10/dw_conv10/dw/bn conv10/dw_conv10/dw/scale 0=512 1=1 -ReLU conv10/dw/relu 1 1 conv10/dw_conv10/dw/scale conv10/dw_conv10/dw/relu -Convolution conv10 1 1 conv10/dw_conv10/dw/relu conv10 0=512 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm conv10/bn 1 1 conv10 conv10_conv10/bn 0=512 -Scale conv10/scale 1 1 conv10_conv10/bn conv10_conv10/scale 0=512 1=1 -ReLU conv10/relu 1 1 conv10_conv10/scale conv10_conv10/relu -ConvolutionDepthWise conv11/dw 1 1 conv10_conv10/relu conv11/dw 0=512 1=3 2=1 3=1 4=1 5=0 6=4608 7=512 -BatchNorm conv11/dw/bn 1 1 conv11/dw conv11/dw_conv11/dw/bn 0=512 -Scale conv11/dw/scale 1 1 conv11/dw_conv11/dw/bn conv11/dw_conv11/dw/scale 0=512 1=1 -ReLU conv11/dw/relu 1 1 conv11/dw_conv11/dw/scale conv11/dw_conv11/dw/relu -Convolution conv11 1 1 conv11/dw_conv11/dw/relu conv11 0=512 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm conv11/bn 1 1 conv11 conv11_conv11/bn 0=512 -Scale conv11/scale 1 1 conv11_conv11/bn conv11_conv11/scale 0=512 1=1 -ReLU conv11/relu 1 1 conv11_conv11/scale conv11_conv11/relu -Split splitncnn_0 1 2 conv11_conv11/relu conv11_conv11/relu_splitncnn_0 conv11_conv11/relu_splitncnn_1 -ConvolutionDepthWise conv12/dw 1 1 conv11_conv11/relu_splitncnn_1 conv12/dw 0=512 1=3 2=1 3=2 4=1 5=0 6=4608 7=512 -BatchNorm conv12/dw/bn 1 1 conv12/dw conv12/dw_conv12/dw/bn 0=512 -Scale conv12/dw/scale 1 1 conv12/dw_conv12/dw/bn conv12/dw_conv12/dw/scale 0=512 1=1 -ReLU conv12/dw/relu 1 1 conv12/dw_conv12/dw/scale conv12/dw_conv12/dw/relu -Convolution conv12 1 1 conv12/dw_conv12/dw/relu conv12 0=1024 1=1 2=1 3=1 4=0 5=0 6=524288 -BatchNorm conv12/bn 1 1 conv12 conv12_conv12/bn 0=1024 -Scale conv12/scale 1 1 conv12_conv12/bn conv12_conv12/scale 0=1024 1=1 -ReLU conv12/relu 1 1 conv12_conv12/scale conv12_conv12/relu -ConvolutionDepthWise conv13/dw 1 1 conv12_conv12/relu conv13/dw 0=1024 1=3 2=1 3=1 4=1 5=0 6=9216 7=1024 -BatchNorm conv13/dw/bn 1 1 conv13/dw conv13/dw_conv13/dw/bn 0=1024 -Scale conv13/dw/scale 1 1 conv13/dw_conv13/dw/bn conv13/dw_conv13/dw/scale 0=1024 1=1 -ReLU conv13/dw/relu 1 1 conv13/dw_conv13/dw/scale conv13/dw_conv13/dw/relu -Convolution conv13 1 1 conv13/dw_conv13/dw/relu conv13 0=1024 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm conv13/bn 1 1 conv13 conv13_conv13/bn 0=1024 -Scale conv13/scale 1 1 conv13_conv13/bn conv13_conv13/scale 0=1024 1=1 -ReLU conv13/relu 1 1 conv13_conv13/scale conv13_conv13/relu -ConvolutionDepthWise conv16/dw 1 1 conv13_conv13/relu conv16/dw 0=1024 1=3 2=1 3=1 4=1 5=0 6=9216 7=1024 -BatchNorm conv16/dw/bn 1 1 conv16/dw conv16/dw_conv16/dw/bn 0=1024 -Scale conv16/dw/scale 1 1 conv16/dw_conv16/dw/bn conv16/dw_conv16/dw/scale 0=1024 1=1 -ReLU conv16/dw/relu 1 1 conv16/dw_conv16/dw/scale conv16/dw_conv16/dw/relu -Convolution conv17 1 1 conv16/dw_conv16/dw/relu conv17 0=1024 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm conv17/bn 1 1 conv17 conv17_conv17/bn 0=1024 -Scale conv17/scale 1 1 conv17_conv17/bn conv17_conv17/scale 0=1024 1=1 -ReLU conv17/relu 1 1 conv17_conv17/scale conv17_conv17/relu -Split splitncnn_1 1 2 conv17_conv17/relu conv17_conv17/relu_splitncnn_0 conv17_conv17/relu_splitncnn_1 -DeconvolutionDepthWise upsample 1 1 conv17_conv17/relu_splitncnn_1 upsample 0=512 1=4 2=1 3=2 4=1 5=0 6=16384 7=512 -Eltwise conv_18/sum 2 1 conv11_conv11/relu_splitncnn_0 upsample conv_18/sum 0=1 -23301=0 -ConvolutionDepthWise conv19/dw 1 1 conv_18/sum conv19/dw 0=512 1=3 2=1 3=1 4=1 5=0 6=4608 7=512 -BatchNorm conv19/dw/bn 1 1 conv19/dw conv19/dw_conv19/dw/bn 0=512 -Scale conv19/dw/scale 1 1 conv19/dw_conv19/dw/bn conv19/dw_conv19/dw/scale 0=512 1=1 -ReLU conv19/dw/relu 1 1 conv19/dw_conv19/dw/scale conv19/dw_conv19/dw/relu -Convolution conv20 1 1 conv19/dw_conv19/dw/relu conv20 0=1024 1=1 2=1 3=1 4=0 5=0 6=524288 -BatchNorm conv20/bn 1 1 conv20 conv20_conv20/bn 0=1024 -Scale conv20/scale 1 1 conv20_conv20/bn conv20_conv20/scale 0=1024 1=1 -ReLU conv20/relu 1 1 conv20_conv20/scale conv20_conv20/relu -Convolution conv22_indoor 1 1 conv17_conv17/relu_splitncnn_0 conv22 0=125 1=1 2=1 3=1 4=0 5=1 6=128000 -Convolution conv23_indoor 1 1 conv20_conv20/relu conv23 0=125 1=1 2=1 3=1 4=0 5=1 6=128000 -YoloDetectionOutput detection_out 2 1 conv22 conv23 detection_out 0=20 1=5 2=0.400000 3=0.450000 -23304=10,1.080000,1.190000,3.420000,4.410000,6.630000,11.380000,9.420000,5.110000,16.620001,10.520000 +39 41 +Input data 0 1 data 0=416 1=416 2=3 +Convolution conv0 1 1 data conv0_conv0/relu 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +ConvolutionDepthWise conv1/dw 1 1 conv0_conv0/relu conv1/dw_conv1/dw/relu 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution conv1 1 1 conv1/dw_conv1/dw/relu conv1_conv1/relu 0=64 1=1 5=1 6=2048 9=1 +ConvolutionDepthWise conv2/dw 1 1 conv1_conv1/relu conv2/dw_conv2/dw/relu 0=64 1=3 3=2 4=1 5=1 6=576 7=64 9=1 +Convolution conv2 1 1 conv2/dw_conv2/dw/relu conv2_conv2/relu 0=128 1=1 5=1 6=8192 9=1 +ConvolutionDepthWise conv3/dw 1 1 conv2_conv2/relu conv3/dw_conv3/dw/relu 0=128 1=3 4=1 5=1 6=1152 7=128 9=1 +Convolution conv3 1 1 conv3/dw_conv3/dw/relu conv3_conv3/relu 0=128 1=1 5=1 6=16384 9=1 +ConvolutionDepthWise conv4/dw 1 1 conv3_conv3/relu conv4/dw_conv4/dw/relu 0=128 1=3 3=2 4=1 5=1 6=1152 7=128 9=1 +Convolution conv4 1 1 conv4/dw_conv4/dw/relu conv4_conv4/relu 0=256 1=1 5=1 6=32768 9=1 +ConvolutionDepthWise conv5/dw 1 1 conv4_conv4/relu conv5/dw_conv5/dw/relu 0=256 1=3 4=1 5=1 6=2304 7=256 9=1 +Convolution conv5 1 1 conv5/dw_conv5/dw/relu conv5_conv5/relu 0=256 1=1 5=1 6=65536 9=1 +ConvolutionDepthWise conv6/dw 1 1 conv5_conv5/relu conv6/dw_conv6/dw/relu 0=256 1=3 3=2 4=1 5=1 6=2304 7=256 9=1 +Convolution conv6 1 1 conv6/dw_conv6/dw/relu conv6_conv6/relu 0=512 1=1 5=1 6=131072 9=1 +ConvolutionDepthWise conv7/dw 1 1 conv6_conv6/relu conv7/dw_conv7/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv7 1 1 conv7/dw_conv7/dw/relu conv7_conv7/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv8/dw 1 1 conv7_conv7/relu conv8/dw_conv8/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv8 1 1 conv8/dw_conv8/dw/relu conv8_conv8/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv9/dw 1 1 conv8_conv8/relu conv9/dw_conv9/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv9 1 1 conv9/dw_conv9/dw/relu conv9_conv9/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv10/dw 1 1 conv9_conv9/relu conv10/dw_conv10/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv10 1 1 conv10/dw_conv10/dw/relu conv10_conv10/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv11/dw 1 1 conv10_conv10/relu conv11/dw_conv11/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv11 1 1 conv11/dw_conv11/dw/relu conv11_conv11/relu 0=512 1=1 5=1 6=262144 9=1 +Split splitncnn_0 1 2 conv11_conv11/relu conv11_conv11/relu_splitncnn_0 conv11_conv11/relu_splitncnn_1 +ConvolutionDepthWise conv12/dw 1 1 conv11_conv11/relu_splitncnn_1 conv12/dw_conv12/dw/relu 0=512 1=3 3=2 4=1 5=1 6=4608 7=512 9=1 +Convolution conv12 1 1 conv12/dw_conv12/dw/relu conv12_conv12/relu 0=1024 1=1 5=1 6=524288 9=1 +ConvolutionDepthWise conv13/dw 1 1 conv12_conv12/relu conv13/dw_conv13/dw/relu 0=1024 1=3 4=1 5=1 6=9216 7=1024 9=1 +Convolution conv13 1 1 conv13/dw_conv13/dw/relu conv13_conv13/relu 0=1024 1=1 5=1 6=1048576 9=1 +ConvolutionDepthWise conv16/dw 1 1 conv13_conv13/relu conv16/dw_conv16/dw/relu 0=1024 1=3 4=1 5=1 6=9216 7=1024 9=1 +Convolution conv17 1 1 conv16/dw_conv16/dw/relu conv17_conv17/relu 0=1024 1=1 5=1 6=1048576 9=1 +Split splitncnn_1 1 2 conv17_conv17/relu conv17_conv17/relu_splitncnn_0 conv17_conv17/relu_splitncnn_1 +DeconvolutionDepthWise upsample 1 1 conv17_conv17/relu_splitncnn_1 upsample 0=512 1=4 3=2 4=1 6=16384 7=512 +Eltwise conv_18/sum 2 1 conv11_conv11/relu_splitncnn_0 upsample conv_18/sum 0=1 +ConvolutionDepthWise conv19/dw 1 1 conv_18/sum conv19/dw_conv19/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv20 1 1 conv19/dw_conv19/dw/relu conv20_conv20/relu 0=1024 1=1 5=1 6=524288 9=1 +Convolution conv22_indoor 1 1 conv17_conv17/relu_splitncnn_0 conv22 0=125 1=1 5=1 6=128000 +Convolution conv23_indoor 1 1 conv20_conv20/relu conv23 0=125 1=1 5=1 6=128000 +YoloDetectionOutput detection_out 2 1 conv22 conv23 detection_out 2=0.400000 -23304=10,1066024305,1066947052,1079697736,1082990264,1087645942,1094063227,1092008018,1084458271,1099232707,1093161452 diff --git a/benchmark/mobilenet_yolov3.param b/benchmark/mobilenet_yolov3.param index 715aaaa7d..d6a239596 100644 --- a/benchmark/mobilenet_yolov3.param +++ b/benchmark/mobilenet_yolov3.param @@ -1,77 +1,44 @@ 7767517 -75 77 -Input data 0 1 data 0=416 1=416 2=3 -Convolution conv0 1 1 data conv0 0=32 1=3 2=1 3=2 4=1 5=1 6=864 -ReLU conv0/relu 1 1 conv0 conv0_conv0/relu -ConvolutionDepthWise conv1/dw 1 1 conv0_conv0/relu conv1/dw 0=32 1=3 2=1 3=1 4=1 5=1 6=288 7=32 -ReLU conv1/dw/relu 1 1 conv1/dw conv1/dw_conv1/dw/relu -Convolution conv1 1 1 conv1/dw_conv1/dw/relu conv1 0=64 1=1 2=1 3=1 4=0 5=1 6=2048 -ReLU conv1/relu 1 1 conv1 conv1_conv1/relu -ConvolutionDepthWise conv2/dw 1 1 conv1_conv1/relu conv2/dw 0=64 1=3 2=1 3=2 4=1 5=1 6=576 7=64 -ReLU conv2/dw/relu 1 1 conv2/dw conv2/dw_conv2/dw/relu -Convolution conv2 1 1 conv2/dw_conv2/dw/relu conv2 0=128 1=1 2=1 3=1 4=0 5=1 6=8192 -ReLU conv2/relu 1 1 conv2 conv2_conv2/relu -ConvolutionDepthWise conv3/dw 1 1 conv2_conv2/relu conv3/dw 0=128 1=3 2=1 3=1 4=1 5=1 6=1152 7=128 -ReLU conv3/dw/relu 1 1 conv3/dw conv3/dw_conv3/dw/relu -Convolution conv3 1 1 conv3/dw_conv3/dw/relu conv3 0=128 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU conv3/relu 1 1 conv3 conv3_conv3/relu -ConvolutionDepthWise conv4/dw 1 1 conv3_conv3/relu conv4/dw 0=128 1=3 2=1 3=2 4=1 5=1 6=1152 7=128 -ReLU conv4/dw/relu 1 1 conv4/dw conv4/dw_conv4/dw/relu -Convolution conv4 1 1 conv4/dw_conv4/dw/relu conv4 0=256 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU conv4/relu 1 1 conv4 conv4_conv4/relu -ConvolutionDepthWise conv5/dw 1 1 conv4_conv4/relu conv5/dw 0=256 1=3 2=1 3=1 4=1 5=1 6=2304 7=256 -ReLU conv5/dw/relu 1 1 conv5/dw conv5/dw_conv5/dw/relu -Convolution conv5 1 1 conv5/dw_conv5/dw/relu conv5 0=256 1=1 2=1 3=1 4=0 5=1 6=65536 -ReLU conv5/relu 1 1 conv5 conv5_conv5/relu -ConvolutionDepthWise conv6/dw 1 1 conv5_conv5/relu conv6/dw 0=256 1=3 2=1 3=2 4=1 5=1 6=2304 7=256 -ReLU conv6/dw/relu 1 1 conv6/dw conv6/dw_conv6/dw/relu -Convolution conv6 1 1 conv6/dw_conv6/dw/relu conv6 0=512 1=1 2=1 3=1 4=0 5=1 6=131072 -ReLU conv6/relu 1 1 conv6 conv6_conv6/relu -ConvolutionDepthWise conv7/dw 1 1 conv6_conv6/relu conv7/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv7/dw/relu 1 1 conv7/dw conv7/dw_conv7/dw/relu -Convolution conv7 1 1 conv7/dw_conv7/dw/relu conv7 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv7/relu 1 1 conv7 conv7_conv7/relu -ConvolutionDepthWise conv8/dw 1 1 conv7_conv7/relu conv8/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv8/dw/relu 1 1 conv8/dw conv8/dw_conv8/dw/relu -Convolution conv8 1 1 conv8/dw_conv8/dw/relu conv8 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv8/relu 1 1 conv8 conv8_conv8/relu -ConvolutionDepthWise conv9/dw 1 1 conv8_conv8/relu conv9/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv9/dw/relu 1 1 conv9/dw conv9/dw_conv9/dw/relu -Convolution conv9 1 1 conv9/dw_conv9/dw/relu conv9 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv9/relu 1 1 conv9 conv9_conv9/relu -ConvolutionDepthWise conv10/dw 1 1 conv9_conv9/relu conv10/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv10/dw/relu 1 1 conv10/dw conv10/dw_conv10/dw/relu -Convolution conv10 1 1 conv10/dw_conv10/dw/relu conv10 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv10/relu 1 1 conv10 conv10_conv10/relu -ConvolutionDepthWise conv11/dw 1 1 conv10_conv10/relu conv11/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv11/dw/relu 1 1 conv11/dw conv11/dw_conv11/dw/relu -Convolution conv11 1 1 conv11/dw_conv11/dw/relu conv11 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv11/relu 1 1 conv11 conv11_conv11/relu -Split splitncnn_0 1 2 conv11_conv11/relu conv11_conv11/relu_splitncnn_0 conv11_conv11/relu_splitncnn_1 -ConvolutionDepthWise conv12/dw 1 1 conv11_conv11/relu_splitncnn_1 conv12/dw 0=512 1=3 2=1 3=2 4=1 5=1 6=4608 7=512 -ReLU conv12/dw/relu 1 1 conv12/dw conv12/dw_conv12/dw/relu -Convolution conv12 1 1 conv12/dw_conv12/dw/relu conv12 0=1024 1=1 2=1 3=1 4=0 5=1 6=524288 -ReLU conv12/relu 1 1 conv12 conv12_conv12/relu -ConvolutionDepthWise conv13/dw 1 1 conv12_conv12/relu conv13/dw 0=1024 1=3 2=1 3=1 4=1 5=1 6=9216 7=1024 -ReLU conv13/dw/relu 1 1 conv13/dw conv13/dw_conv13/dw/relu -Convolution conv13 1 1 conv13/dw_conv13/dw/relu conv13 0=1024 1=1 2=1 3=1 4=0 5=1 6=1048576 -ReLU conv13/relu 1 1 conv13 conv13_conv13/relu -ConvolutionDepthWise conv15/dw 1 1 conv13_conv13/relu conv15/dw 0=1024 1=3 2=1 3=1 4=1 5=1 6=9216 7=1024 -ReLU conv15/dw/relu 1 1 conv15/dw conv15/dw_conv15/dw/relu -Convolution conv15 1 1 conv15/dw_conv15/dw/relu conv15 0=1024 1=1 2=1 3=1 4=0 5=1 6=1048576 -ReLU conv15/relu 1 1 conv15 conv15_conv15/relu -Split splitncnn_1 1 2 conv15_conv15/relu conv15_conv15/relu_splitncnn_0 conv15_conv15/relu_splitncnn_1 -DeconvolutionDepthWise upsample 1 1 conv15_conv15/relu_splitncnn_1 upsample 0=512 1=1 2=1 3=2 4=0 5=0 6=1024 7=512 -Pooling maxpool 1 1 upsample maxpool 0=0 1=2 2=1 3=1 4=0 -ConvolutionDepthWise conv17/dw 1 1 conv11_conv11/relu_splitncnn_0 conv17/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv17/dw/relu 1 1 conv17/dw conv17/dw_conv17/dw/relu -Convolution conv17 1 1 conv17/dw_conv17/dw/relu conv17 0=512 1=1 2=1 3=1 4=0 5=1 6=262144 -ReLU conv17/relu 1 1 conv17 conv17_conv17/relu -Eltwise conv17/sum 2 1 maxpool conv17_conv17/relu conv17/sum 0=1 -23301=0 -ConvolutionDepthWise conv18/dw 1 1 conv17/sum conv18/dw 0=512 1=3 2=1 3=1 4=1 5=1 6=4608 7=512 -ReLU conv18/dw/relu 1 1 conv18/dw conv18/dw_conv18/dw/relu -Convolution conv18_new 1 1 conv18/dw_conv18/dw/relu conv18_new 0=1024 1=1 2=1 3=1 4=0 5=1 6=524288 -ReLU conv18_new/relu 1 1 conv18_new conv18_new_conv18_new/relu -Convolution conv19 1 1 conv15_conv15/relu_splitncnn_0 conv19 0=75 1=1 2=1 3=1 4=0 5=1 6=76800 -Convolution conv20 1 1 conv18_new_conv18_new/relu conv20 0=75 1=1 2=1 3=1 4=0 5=1 6=76800 -Yolov3DetectionOutput detection_out 2 1 conv19 conv20 detection_out 0=20 1=3 2=0.30000 3=0.450000 -23304=12,10.000000,14.000000,23.000000,27.000000,37.000000,58.000000,81.000000,82.000000,135.000000,169.000000,344.000000,319.000000 -23305=6,3.000000,4.000000,5.000000,0.000000,1.000000,2.000000 -23306=2,32.000000,16.000000 7=2 +42 44 +Input data 0 1 data 0=416 1=416 2=3 +Convolution conv0 1 1 data conv0_conv0/relu 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +ConvolutionDepthWise conv1/dw 1 1 conv0_conv0/relu conv1/dw_conv1/dw/relu 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution conv1 1 1 conv1/dw_conv1/dw/relu conv1_conv1/relu 0=64 1=1 5=1 6=2048 9=1 +ConvolutionDepthWise conv2/dw 1 1 conv1_conv1/relu conv2/dw_conv2/dw/relu 0=64 1=3 3=2 4=1 5=1 6=576 7=64 9=1 +Convolution conv2 1 1 conv2/dw_conv2/dw/relu conv2_conv2/relu 0=128 1=1 5=1 6=8192 9=1 +ConvolutionDepthWise conv3/dw 1 1 conv2_conv2/relu conv3/dw_conv3/dw/relu 0=128 1=3 4=1 5=1 6=1152 7=128 9=1 +Convolution conv3 1 1 conv3/dw_conv3/dw/relu conv3_conv3/relu 0=128 1=1 5=1 6=16384 9=1 +ConvolutionDepthWise conv4/dw 1 1 conv3_conv3/relu conv4/dw_conv4/dw/relu 0=128 1=3 3=2 4=1 5=1 6=1152 7=128 9=1 +Convolution conv4 1 1 conv4/dw_conv4/dw/relu conv4_conv4/relu 0=256 1=1 5=1 6=32768 9=1 +ConvolutionDepthWise conv5/dw 1 1 conv4_conv4/relu conv5/dw_conv5/dw/relu 0=256 1=3 4=1 5=1 6=2304 7=256 9=1 +Convolution conv5 1 1 conv5/dw_conv5/dw/relu conv5_conv5/relu 0=256 1=1 5=1 6=65536 9=1 +ConvolutionDepthWise conv6/dw 1 1 conv5_conv5/relu conv6/dw_conv6/dw/relu 0=256 1=3 3=2 4=1 5=1 6=2304 7=256 9=1 +Convolution conv6 1 1 conv6/dw_conv6/dw/relu conv6_conv6/relu 0=512 1=1 5=1 6=131072 9=1 +ConvolutionDepthWise conv7/dw 1 1 conv6_conv6/relu conv7/dw_conv7/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv7 1 1 conv7/dw_conv7/dw/relu conv7_conv7/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv8/dw 1 1 conv7_conv7/relu conv8/dw_conv8/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv8 1 1 conv8/dw_conv8/dw/relu conv8_conv8/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv9/dw 1 1 conv8_conv8/relu conv9/dw_conv9/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv9 1 1 conv9/dw_conv9/dw/relu conv9_conv9/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv10/dw 1 1 conv9_conv9/relu conv10/dw_conv10/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv10 1 1 conv10/dw_conv10/dw/relu conv10_conv10/relu 0=512 1=1 5=1 6=262144 9=1 +ConvolutionDepthWise conv11/dw 1 1 conv10_conv10/relu conv11/dw_conv11/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv11 1 1 conv11/dw_conv11/dw/relu conv11_conv11/relu 0=512 1=1 5=1 6=262144 9=1 +Split splitncnn_0 1 2 conv11_conv11/relu conv11_conv11/relu_splitncnn_0 conv11_conv11/relu_splitncnn_1 +ConvolutionDepthWise conv12/dw 1 1 conv11_conv11/relu_splitncnn_1 conv12/dw_conv12/dw/relu 0=512 1=3 3=2 4=1 5=1 6=4608 7=512 9=1 +Convolution conv12 1 1 conv12/dw_conv12/dw/relu conv12_conv12/relu 0=1024 1=1 5=1 6=524288 9=1 +ConvolutionDepthWise conv13/dw 1 1 conv12_conv12/relu conv13/dw_conv13/dw/relu 0=1024 1=3 4=1 5=1 6=9216 7=1024 9=1 +Convolution conv13 1 1 conv13/dw_conv13/dw/relu conv13_conv13/relu 0=1024 1=1 5=1 6=1048576 9=1 +ConvolutionDepthWise conv15/dw 1 1 conv13_conv13/relu conv15/dw_conv15/dw/relu 0=1024 1=3 4=1 5=1 6=9216 7=1024 9=1 +Convolution conv15 1 1 conv15/dw_conv15/dw/relu conv15_conv15/relu 0=1024 1=1 5=1 6=1048576 9=1 +Split splitncnn_1 1 2 conv15_conv15/relu conv15_conv15/relu_splitncnn_0 conv15_conv15/relu_splitncnn_1 +DeconvolutionDepthWise upsample 1 1 conv15_conv15/relu_splitncnn_1 upsample 0=512 1=1 3=2 6=1024 7=512 +Pooling maxpool 1 1 upsample maxpool 1=2 3=1 +ConvolutionDepthWise conv17/dw 1 1 conv11_conv11/relu_splitncnn_0 conv17/dw_conv17/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv17 1 1 conv17/dw_conv17/dw/relu conv17_conv17/relu 0=512 1=1 5=1 6=262144 9=1 +Eltwise conv17/sum 2 1 maxpool conv17_conv17/relu conv17/sum 0=1 +ConvolutionDepthWise conv18/dw 1 1 conv17/sum conv18/dw_conv18/dw/relu 0=512 1=3 4=1 5=1 6=4608 7=512 9=1 +Convolution conv18_new 1 1 conv18/dw_conv18/dw/relu conv18_new_conv18_new/relu 0=1024 1=1 5=1 6=524288 9=1 +Convolution conv19 1 1 conv15_conv15/relu_splitncnn_0 conv19 0=75 1=1 5=1 6=76800 +Convolution conv20 1 1 conv18_new_conv18_new/relu conv20 0=75 1=1 5=1 6=76800 +Yolov3DetectionOutput detection_out 2 1 conv19 conv20 detection_out 1=3 2=0.300000 -23304=12,1092616192,1096810496,1102577664,1104674816,1108606976,1114112000,1117913088,1118044160,1124532224,1126760448,1135345664,1134526464 -23305=6,1077936128,1082130432,1084227584,0,1065353216,1073741824 -23306=2,1107296256,1098907648 diff --git a/benchmark/proxylessnasnet.param b/benchmark/proxylessnasnet.param index 5e7f12e47..476b1308d 100644 --- a/benchmark/proxylessnasnet.param +++ b/benchmark/proxylessnasnet.param @@ -1,196 +1,94 @@ 7767517 -194 207 -Input data 0 1 data -Convolution first-3x3-conv 1 1 data first-3x3-conv 0=32 1=3 11=3 2=1 12=1 3=2 13=2 4=1 14=1 5=0 6=864 -BatchNorm first-3x3-conv_bn 1 1 first-3x3-conv first-3x3-conv_bn 0=32 -ReLU first-3x3-conv_relu 1 1 first-3x3-conv_bn first-3x3-conv_relu -ConvolutionDepthWise A0_dw 1 1 first-3x3-conv_relu A0_dw 0=32 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=288 7=32 -BatchNorm A0_dw_bn 1 1 A0_dw A0_dw_bn 0=32 -ReLU A0_dw_relu 1 1 A0_dw_bn A0_dw_relu -Convolution A0_linear 1 1 A0_dw_relu A0_linear 0=32 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1024 -BatchNorm A0_linear_bn 1 1 A0_linear A0_linear_bn 0=32 -Convolution B0_expand 1 1 A0_linear_bn B0_expand 0=48 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1536 -BatchNorm B0_expand_bn 1 1 B0_expand B0_expand_bn 0=48 -ReLU B0_expand_relu 1 1 B0_expand_bn B0_expand_relu -ConvolutionDepthWise B0_dw 1 1 B0_expand_relu B0_dw 0=48 1=5 11=5 2=1 12=1 3=2 13=2 4=2 14=2 5=0 6=1200 7=48 -BatchNorm B0_dw_bn 1 1 B0_dw B0_dw_bn 0=48 -ReLU B0_dw_relu 1 1 B0_dw_bn B0_dw_relu -Convolution B0_linear 1 1 B0_dw_relu B0_linear 0=32 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=1536 -BatchNorm B0_linear_bn 1 1 B0_linear B0_linear_bn 0=32 -Split splitncnn_0 1 2 B0_linear_bn B0_linear_bn_splitncnn_0 B0_linear_bn_splitncnn_1 -Convolution B1_expand 1 1 B0_linear_bn_splitncnn_1 B1_expand 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=3072 -BatchNorm B1_expand_bn 1 1 B1_expand B1_expand_bn 0=96 -ReLU B1_expand_relu 1 1 B1_expand_bn B1_expand_relu -ConvolutionDepthWise B1_dw 1 1 B1_expand_relu B1_dw 0=96 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=864 7=96 -BatchNorm B1_dw_bn 1 1 B1_dw B1_dw_bn 0=96 -ReLU B1_dw_relu 1 1 B1_dw_bn B1_dw_relu -Convolution B1_linear 1 1 B1_dw_relu B1_linear 0=32 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=3072 -BatchNorm B1_linear_bn 1 1 B1_linear B1_linear_bn 0=32 -BinaryOp unknownncnn_0 2 1 B0_linear_bn_splitncnn_0 B1_linear_bn unknownncnn_0 0=0 -Convolution C0_expand 1 1 unknownncnn_0 C0_expand 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=3072 -BatchNorm C0_expand_bn 1 1 C0_expand C0_expand_bn 0=96 -ReLU C0_expand_relu 1 1 C0_expand_bn C0_expand_relu -ConvolutionDepthWise C0_dw 1 1 C0_expand_relu C0_dw 0=96 1=7 11=7 2=1 12=1 3=2 13=2 4=3 14=3 5=0 6=4704 7=96 -BatchNorm C0_dw_bn 1 1 C0_dw C0_dw_bn 0=96 -ReLU C0_dw_relu 1 1 C0_dw_bn C0_dw_relu -Convolution C0_linear 1 1 C0_dw_relu C0_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=3840 -BatchNorm C0_linear_bn 1 1 C0_linear C0_linear_bn 0=40 -Split splitncnn_1 1 2 C0_linear_bn C0_linear_bn_splitncnn_0 C0_linear_bn_splitncnn_1 -Convolution C1_expand 1 1 C0_linear_bn_splitncnn_1 C1_expand 0=120 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C1_expand_bn 1 1 C1_expand C1_expand_bn 0=120 -ReLU C1_expand_relu 1 1 C1_expand_bn C1_expand_relu -ConvolutionDepthWise C1_dw 1 1 C1_expand_relu C1_dw 0=120 1=3 11=3 2=1 12=1 3=1 13=1 4=1 14=1 5=0 6=1080 7=120 -BatchNorm C1_dw_bn 1 1 C1_dw C1_dw_bn 0=120 -ReLU C1_dw_relu 1 1 C1_dw_bn C1_dw_relu -Convolution C1_linear 1 1 C1_dw_relu C1_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C1_linear_bn 1 1 C1_linear C1_linear_bn 0=40 -BinaryOp unknownncnn_1 2 1 C0_linear_bn_splitncnn_0 C1_linear_bn unknownncnn_1 0=0 -Split splitncnn_2 1 2 unknownncnn_1 unknownncnn_1_splitncnn_0 unknownncnn_1_splitncnn_1 -Convolution C2_expand 1 1 unknownncnn_1_splitncnn_1 C2_expand 0=120 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C2_expand_bn 1 1 C2_expand C2_expand_bn 0=120 -ReLU C2_expand_relu 1 1 C2_expand_bn C2_expand_relu -ConvolutionDepthWise C2_dw 1 1 C2_expand_relu C2_dw 0=120 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=3000 7=120 -BatchNorm C2_dw_bn 1 1 C2_dw C2_dw_bn 0=120 -ReLU C2_dw_relu 1 1 C2_dw_bn C2_dw_relu -Convolution C2_linear 1 1 C2_dw_relu C2_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C2_linear_bn 1 1 C2_linear C2_linear_bn 0=40 -BinaryOp unknownncnn_2 2 1 unknownncnn_1_splitncnn_0 C2_linear_bn unknownncnn_2 0=0 -Split splitncnn_3 1 2 unknownncnn_2 unknownncnn_2_splitncnn_0 unknownncnn_2_splitncnn_1 -Convolution C3_expand 1 1 unknownncnn_2_splitncnn_1 C3_expand 0=120 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C3_expand_bn 1 1 C3_expand C3_expand_bn 0=120 -ReLU C3_expand_relu 1 1 C3_expand_bn C3_expand_relu -ConvolutionDepthWise C3_dw 1 1 C3_expand_relu C3_dw 0=120 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=3000 7=120 -BatchNorm C3_dw_bn 1 1 C3_dw C3_dw_bn 0=120 -ReLU C3_dw_relu 1 1 C3_dw_bn C3_dw_relu -Convolution C3_linear 1 1 C3_dw_relu C3_linear 0=40 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=4800 -BatchNorm C3_linear_bn 1 1 C3_linear C3_linear_bn 0=40 -BinaryOp unknownncnn_3 2 1 unknownncnn_2_splitncnn_0 C3_linear_bn unknownncnn_3 0=0 -Convolution D0_expand 1 1 unknownncnn_3 D0_expand 0=240 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=9600 -BatchNorm D0_expand_bn 1 1 D0_expand D0_expand_bn 0=240 -ReLU D0_expand_relu 1 1 D0_expand_bn D0_expand_relu -ConvolutionDepthWise D0_dw 1 1 D0_expand_relu D0_dw 0=240 1=7 11=7 2=1 12=1 3=2 13=2 4=3 14=3 5=0 6=11760 7=240 -BatchNorm D0_dw_bn 1 1 D0_dw D0_dw_bn 0=240 -ReLU D0_dw_relu 1 1 D0_dw_bn D0_dw_relu -Convolution D0_linear 1 1 D0_dw_relu D0_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D0_linear_bn 1 1 D0_linear D0_linear_bn 0=80 -Split splitncnn_4 1 2 D0_linear_bn D0_linear_bn_splitncnn_0 D0_linear_bn_splitncnn_1 -Convolution D1_expand 1 1 D0_linear_bn_splitncnn_1 D1_expand 0=240 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D1_expand_bn 1 1 D1_expand D1_expand_bn 0=240 -ReLU D1_expand_relu 1 1 D1_expand_bn D1_expand_relu -ConvolutionDepthWise D1_dw 1 1 D1_expand_relu D1_dw 0=240 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=6000 7=240 -BatchNorm D1_dw_bn 1 1 D1_dw D1_dw_bn 0=240 -ReLU D1_dw_relu 1 1 D1_dw_bn D1_dw_relu -Convolution D1_linear 1 1 D1_dw_relu D1_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D1_linear_bn 1 1 D1_linear D1_linear_bn 0=80 -BinaryOp unknownncnn_4 2 1 D0_linear_bn_splitncnn_0 D1_linear_bn unknownncnn_4 0=0 -Split splitncnn_5 1 2 unknownncnn_4 unknownncnn_4_splitncnn_0 unknownncnn_4_splitncnn_1 -Convolution D2_expand 1 1 unknownncnn_4_splitncnn_1 D2_expand 0=240 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D2_expand_bn 1 1 D2_expand D2_expand_bn 0=240 -ReLU D2_expand_relu 1 1 D2_expand_bn D2_expand_relu -ConvolutionDepthWise D2_dw 1 1 D2_expand_relu D2_dw 0=240 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=6000 7=240 -BatchNorm D2_dw_bn 1 1 D2_dw D2_dw_bn 0=240 -ReLU D2_dw_relu 1 1 D2_dw_bn D2_dw_relu -Convolution D2_linear 1 1 D2_dw_relu D2_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D2_linear_bn 1 1 D2_linear D2_linear_bn 0=80 -BinaryOp unknownncnn_5 2 1 unknownncnn_4_splitncnn_0 D2_linear_bn unknownncnn_5 0=0 -Split splitncnn_6 1 2 unknownncnn_5 unknownncnn_5_splitncnn_0 unknownncnn_5_splitncnn_1 -Convolution D3_expand 1 1 unknownncnn_5_splitncnn_1 D3_expand 0=240 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D3_expand_bn 1 1 D3_expand D3_expand_bn 0=240 -ReLU D3_expand_relu 1 1 D3_expand_bn D3_expand_relu -ConvolutionDepthWise D3_dw 1 1 D3_expand_relu D3_dw 0=240 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=6000 7=240 -BatchNorm D3_dw_bn 1 1 D3_dw D3_dw_bn 0=240 -ReLU D3_dw_relu 1 1 D3_dw_bn D3_dw_relu -Convolution D3_linear 1 1 D3_dw_relu D3_linear 0=80 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=19200 -BatchNorm D3_linear_bn 1 1 D3_linear D3_linear_bn 0=80 -BinaryOp unknownncnn_6 2 1 unknownncnn_5_splitncnn_0 D3_linear_bn unknownncnn_6 0=0 -Convolution E0_expand 1 1 unknownncnn_6 E0_expand 0=480 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=38400 -BatchNorm E0_expand_bn 1 1 E0_expand E0_expand_bn 0=480 -ReLU E0_expand_relu 1 1 E0_expand_bn E0_expand_relu -ConvolutionDepthWise E0_dw 1 1 E0_expand_relu E0_dw 0=480 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=12000 7=480 -BatchNorm E0_dw_bn 1 1 E0_dw E0_dw_bn 0=480 -ReLU E0_dw_relu 1 1 E0_dw_bn E0_dw_relu -Convolution E0_linear 1 1 E0_dw_relu E0_linear 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=46080 -BatchNorm E0_linear_bn 1 1 E0_linear E0_linear_bn 0=96 -Split splitncnn_7 1 2 E0_linear_bn E0_linear_bn_splitncnn_0 E0_linear_bn_splitncnn_1 -Convolution E1_expand 1 1 E0_linear_bn_splitncnn_1 E1_expand 0=288 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=27648 -BatchNorm E1_expand_bn 1 1 E1_expand E1_expand_bn 0=288 -ReLU E1_expand_relu 1 1 E1_expand_bn E1_expand_relu -ConvolutionDepthWise E1_dw 1 1 E1_expand_relu E1_dw 0=288 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=7200 7=288 -BatchNorm E1_dw_bn 1 1 E1_dw E1_dw_bn 0=288 -ReLU E1_dw_relu 1 1 E1_dw_bn E1_dw_relu -Convolution E1_linear 1 1 E1_dw_relu E1_linear 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=27648 -BatchNorm E1_linear_bn 1 1 E1_linear E1_linear_bn 0=96 -BinaryOp unknownncnn_7 2 1 E0_linear_bn_splitncnn_0 E1_linear_bn unknownncnn_7 0=0 -Split splitncnn_8 1 2 unknownncnn_7 unknownncnn_7_splitncnn_0 unknownncnn_7_splitncnn_1 -Convolution E2_expand 1 1 unknownncnn_7_splitncnn_1 E2_expand 0=288 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=27648 -BatchNorm E2_expand_bn 1 1 E2_expand E2_expand_bn 0=288 -ReLU E2_expand_relu 1 1 E2_expand_bn E2_expand_relu -ConvolutionDepthWise E2_dw 1 1 E2_expand_relu E2_dw 0=288 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=7200 7=288 -BatchNorm E2_dw_bn 1 1 E2_dw E2_dw_bn 0=288 -ReLU E2_dw_relu 1 1 E2_dw_bn E2_dw_relu -Convolution E2_linear 1 1 E2_dw_relu E2_linear 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=27648 -BatchNorm E2_linear_bn 1 1 E2_linear E2_linear_bn 0=96 -BinaryOp unknownncnn_8 2 1 unknownncnn_7_splitncnn_0 E2_linear_bn unknownncnn_8 0=0 -Split splitncnn_9 1 2 unknownncnn_8 unknownncnn_8_splitncnn_0 unknownncnn_8_splitncnn_1 -Convolution E3_expand 1 1 unknownncnn_8_splitncnn_1 E3_expand 0=288 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=27648 -BatchNorm E3_expand_bn 1 1 E3_expand E3_expand_bn 0=288 -ReLU E3_expand_relu 1 1 E3_expand_bn E3_expand_relu -ConvolutionDepthWise E3_dw 1 1 E3_expand_relu E3_dw 0=288 1=5 11=5 2=1 12=1 3=1 13=1 4=2 14=2 5=0 6=7200 7=288 -BatchNorm E3_dw_bn 1 1 E3_dw E3_dw_bn 0=288 -ReLU E3_dw_relu 1 1 E3_dw_bn E3_dw_relu -Convolution E3_linear 1 1 E3_dw_relu E3_linear 0=96 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=27648 -BatchNorm E3_linear_bn 1 1 E3_linear E3_linear_bn 0=96 -BinaryOp unknownncnn_9 2 1 unknownncnn_8_splitncnn_0 E3_linear_bn unknownncnn_9 0=0 -Convolution F0_expand 1 1 unknownncnn_9 F0_expand 0=576 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=55296 -BatchNorm F0_expand_bn 1 1 F0_expand F0_expand_bn 0=576 -ReLU F0_expand_relu 1 1 F0_expand_bn F0_expand_relu -ConvolutionDepthWise F0_dw 1 1 F0_expand_relu F0_dw 0=576 1=7 11=7 2=1 12=1 3=2 13=2 4=3 14=3 5=0 6=28224 7=576 -BatchNorm F0_dw_bn 1 1 F0_dw F0_dw_bn 0=576 -ReLU F0_dw_relu 1 1 F0_dw_bn F0_dw_relu -Convolution F0_linear 1 1 F0_dw_relu F0_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=110592 -BatchNorm F0_linear_bn 1 1 F0_linear F0_linear_bn 0=192 -Split splitncnn_10 1 2 F0_linear_bn F0_linear_bn_splitncnn_0 F0_linear_bn_splitncnn_1 -Convolution F1_expand 1 1 F0_linear_bn_splitncnn_1 F1_expand 0=1152 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F1_expand_bn 1 1 F1_expand F1_expand_bn 0=1152 -ReLU F1_expand_relu 1 1 F1_expand_bn F1_expand_relu -ConvolutionDepthWise F1_dw 1 1 F1_expand_relu F1_dw 0=1152 1=7 11=7 2=1 12=1 3=1 13=1 4=3 14=3 5=0 6=56448 7=1152 -BatchNorm F1_dw_bn 1 1 F1_dw F1_dw_bn 0=1152 -ReLU F1_dw_relu 1 1 F1_dw_bn F1_dw_relu -Convolution F1_linear 1 1 F1_dw_relu F1_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm F1_linear_bn 1 1 F1_linear F1_linear_bn 0=192 -BinaryOp unknownncnn_10 2 1 F0_linear_bn_splitncnn_0 F1_linear_bn unknownncnn_10 0=0 -Split splitncnn_11 1 2 unknownncnn_10 unknownncnn_10_splitncnn_0 unknownncnn_10_splitncnn_1 -Convolution F2_expand 1 1 unknownncnn_10_splitncnn_1 F2_expand 0=576 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=110592 -BatchNorm F2_expand_bn 1 1 F2_expand F2_expand_bn 0=576 -ReLU F2_expand_relu 1 1 F2_expand_bn F2_expand_relu -ConvolutionDepthWise F2_dw 1 1 F2_expand_relu F2_dw 0=576 1=7 11=7 2=1 12=1 3=1 13=1 4=3 14=3 5=0 6=28224 7=576 -BatchNorm F2_dw_bn 1 1 F2_dw F2_dw_bn 0=576 -ReLU F2_dw_relu 1 1 F2_dw_bn F2_dw_relu -Convolution F2_linear 1 1 F2_dw_relu F2_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=110592 -BatchNorm F2_linear_bn 1 1 F2_linear F2_linear_bn 0=192 -BinaryOp unknownncnn_11 2 1 unknownncnn_10_splitncnn_0 F2_linear_bn unknownncnn_11 0=0 -Split splitncnn_12 1 2 unknownncnn_11 unknownncnn_11_splitncnn_0 unknownncnn_11_splitncnn_1 -Convolution F3_expand 1 1 unknownncnn_11_splitncnn_1 F3_expand 0=576 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=110592 -BatchNorm F3_expand_bn 1 1 F3_expand F3_expand_bn 0=576 -ReLU F3_expand_relu 1 1 F3_expand_bn F3_expand_relu -ConvolutionDepthWise F3_dw 1 1 F3_expand_relu F3_dw 0=576 1=7 11=7 2=1 12=1 3=1 13=1 4=3 14=3 5=0 6=28224 7=576 -BatchNorm F3_dw_bn 1 1 F3_dw F3_dw_bn 0=576 -ReLU F3_dw_relu 1 1 F3_dw_bn F3_dw_relu -Convolution F3_linear 1 1 F3_dw_relu F3_linear 0=192 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=110592 -BatchNorm F3_linear_bn 1 1 F3_linear F3_linear_bn 0=192 -BinaryOp unknownncnn_12 2 1 unknownncnn_11_splitncnn_0 F3_linear_bn unknownncnn_12 0=0 -Convolution G0_expand 1 1 unknownncnn_12 G0_expand 0=1152 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=221184 -BatchNorm G0_expand_bn 1 1 G0_expand G0_expand_bn 0=1152 -ReLU G0_expand_relu 1 1 G0_expand_bn G0_expand_relu -ConvolutionDepthWise G0_dw 1 1 G0_expand_relu G0_dw 0=1152 1=7 11=7 2=1 12=1 3=1 13=1 4=3 14=3 5=0 6=56448 7=1152 -BatchNorm G0_dw_bn 1 1 G0_dw G0_dw_bn 0=1152 -ReLU G0_dw_relu 1 1 G0_dw_bn G0_dw_relu -Convolution G0_linear 1 1 G0_dw_relu G0_linear 0=320 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=368640 -BatchNorm G0_linear_bn 1 1 G0_linear G0_linear_bn 0=320 -Convolution last-1x1-conv 1 1 G0_linear_bn last-1x1-conv 0=1280 1=1 11=1 2=1 12=1 3=1 13=1 4=0 14=0 5=0 6=409600 -BatchNorm last-1x1-conv_bn 1 1 last-1x1-conv last-1x1-conv_bn 0=1280 -ReLU last-1x1-conv_relu 1 1 last-1x1-conv_bn last-1x1-conv_relu -Pooling avgpool 1 1 last-1x1-conv_relu avgpool 0=1 1=7 4=1 5=1 -Flatten flatten 1 1 avgpool flatten -InnerProduct fc 1 1 flatten fc 0=1000 1=1 2=1280000 -Softmax prob 1 1 fc prob 0=0 +92 105 +Input data 0 1 data +Convolution first-3x3-conv 1 1 data first-3x3-conv_relu 0=32 1=3 3=2 4=1 5=1 6=864 9=1 +ConvolutionDepthWise A0_dw 1 1 first-3x3-conv_relu A0_dw_relu 0=32 1=3 4=1 5=1 6=288 7=32 9=1 +Convolution A0_linear 1 1 A0_dw_relu A0_linear_bn 0=32 1=1 5=1 6=1024 +Convolution B0_expand 1 1 A0_linear_bn B0_expand_relu 0=48 1=1 5=1 6=1536 9=1 +ConvolutionDepthWise B0_dw 1 1 B0_expand_relu B0_dw_relu 0=48 1=5 3=2 4=2 5=1 6=1200 7=48 9=1 +Convolution B0_linear 1 1 B0_dw_relu B0_linear_bn 0=32 1=1 5=1 6=1536 +Split splitncnn_0 1 2 B0_linear_bn B0_linear_bn_splitncnn_0 B0_linear_bn_splitncnn_1 +Convolution B1_expand 1 1 B0_linear_bn_splitncnn_1 B1_expand_relu 0=96 1=1 5=1 6=3072 9=1 +ConvolutionDepthWise B1_dw 1 1 B1_expand_relu B1_dw_relu 0=96 1=3 4=1 5=1 6=864 7=96 9=1 +Convolution B1_linear 1 1 B1_dw_relu B1_linear_bn 0=32 1=1 5=1 6=3072 +BinaryOp unknownncnn_0 2 1 B0_linear_bn_splitncnn_0 B1_linear_bn unknownncnn_0 +Convolution C0_expand 1 1 unknownncnn_0 C0_expand_relu 0=96 1=1 5=1 6=3072 9=1 +ConvolutionDepthWise C0_dw 1 1 C0_expand_relu C0_dw_relu 0=96 1=7 3=2 4=3 5=1 6=4704 7=96 9=1 +Convolution C0_linear 1 1 C0_dw_relu C0_linear_bn 0=40 1=1 5=1 6=3840 +Split splitncnn_1 1 2 C0_linear_bn C0_linear_bn_splitncnn_0 C0_linear_bn_splitncnn_1 +Convolution C1_expand 1 1 C0_linear_bn_splitncnn_1 C1_expand_relu 0=120 1=1 5=1 6=4800 9=1 +ConvolutionDepthWise C1_dw 1 1 C1_expand_relu C1_dw_relu 0=120 1=3 4=1 5=1 6=1080 7=120 9=1 +Convolution C1_linear 1 1 C1_dw_relu C1_linear_bn 0=40 1=1 5=1 6=4800 +BinaryOp unknownncnn_1 2 1 C0_linear_bn_splitncnn_0 C1_linear_bn unknownncnn_1 +Split splitncnn_2 1 2 unknownncnn_1 unknownncnn_1_splitncnn_0 unknownncnn_1_splitncnn_1 +Convolution C2_expand 1 1 unknownncnn_1_splitncnn_1 C2_expand_relu 0=120 1=1 5=1 6=4800 9=1 +ConvolutionDepthWise C2_dw 1 1 C2_expand_relu C2_dw_relu 0=120 1=5 4=2 5=1 6=3000 7=120 9=1 +Convolution C2_linear 1 1 C2_dw_relu C2_linear_bn 0=40 1=1 5=1 6=4800 +BinaryOp unknownncnn_2 2 1 unknownncnn_1_splitncnn_0 C2_linear_bn unknownncnn_2 +Split splitncnn_3 1 2 unknownncnn_2 unknownncnn_2_splitncnn_0 unknownncnn_2_splitncnn_1 +Convolution C3_expand 1 1 unknownncnn_2_splitncnn_1 C3_expand_relu 0=120 1=1 5=1 6=4800 9=1 +ConvolutionDepthWise C3_dw 1 1 C3_expand_relu C3_dw_relu 0=120 1=5 4=2 5=1 6=3000 7=120 9=1 +Convolution C3_linear 1 1 C3_dw_relu C3_linear_bn 0=40 1=1 5=1 6=4800 +BinaryOp unknownncnn_3 2 1 unknownncnn_2_splitncnn_0 C3_linear_bn unknownncnn_3 +Convolution D0_expand 1 1 unknownncnn_3 D0_expand_relu 0=240 1=1 5=1 6=9600 9=1 +ConvolutionDepthWise D0_dw 1 1 D0_expand_relu D0_dw_relu 0=240 1=7 3=2 4=3 5=1 6=11760 7=240 9=1 +Convolution D0_linear 1 1 D0_dw_relu D0_linear_bn 0=80 1=1 5=1 6=19200 +Split splitncnn_4 1 2 D0_linear_bn D0_linear_bn_splitncnn_0 D0_linear_bn_splitncnn_1 +Convolution D1_expand 1 1 D0_linear_bn_splitncnn_1 D1_expand_relu 0=240 1=1 5=1 6=19200 9=1 +ConvolutionDepthWise D1_dw 1 1 D1_expand_relu D1_dw_relu 0=240 1=5 4=2 5=1 6=6000 7=240 9=1 +Convolution D1_linear 1 1 D1_dw_relu D1_linear_bn 0=80 1=1 5=1 6=19200 +BinaryOp unknownncnn_4 2 1 D0_linear_bn_splitncnn_0 D1_linear_bn unknownncnn_4 +Split splitncnn_5 1 2 unknownncnn_4 unknownncnn_4_splitncnn_0 unknownncnn_4_splitncnn_1 +Convolution D2_expand 1 1 unknownncnn_4_splitncnn_1 D2_expand_relu 0=240 1=1 5=1 6=19200 9=1 +ConvolutionDepthWise D2_dw 1 1 D2_expand_relu D2_dw_relu 0=240 1=5 4=2 5=1 6=6000 7=240 9=1 +Convolution D2_linear 1 1 D2_dw_relu D2_linear_bn 0=80 1=1 5=1 6=19200 +BinaryOp unknownncnn_5 2 1 unknownncnn_4_splitncnn_0 D2_linear_bn unknownncnn_5 +Split splitncnn_6 1 2 unknownncnn_5 unknownncnn_5_splitncnn_0 unknownncnn_5_splitncnn_1 +Convolution D3_expand 1 1 unknownncnn_5_splitncnn_1 D3_expand_relu 0=240 1=1 5=1 6=19200 9=1 +ConvolutionDepthWise D3_dw 1 1 D3_expand_relu D3_dw_relu 0=240 1=5 4=2 5=1 6=6000 7=240 9=1 +Convolution D3_linear 1 1 D3_dw_relu D3_linear_bn 0=80 1=1 5=1 6=19200 +BinaryOp unknownncnn_6 2 1 unknownncnn_5_splitncnn_0 D3_linear_bn unknownncnn_6 +Convolution E0_expand 1 1 unknownncnn_6 E0_expand_relu 0=480 1=1 5=1 6=38400 9=1 +ConvolutionDepthWise E0_dw 1 1 E0_expand_relu E0_dw_relu 0=480 1=5 4=2 5=1 6=12000 7=480 9=1 +Convolution E0_linear 1 1 E0_dw_relu E0_linear_bn 0=96 1=1 5=1 6=46080 +Split splitncnn_7 1 2 E0_linear_bn E0_linear_bn_splitncnn_0 E0_linear_bn_splitncnn_1 +Convolution E1_expand 1 1 E0_linear_bn_splitncnn_1 E1_expand_relu 0=288 1=1 5=1 6=27648 9=1 +ConvolutionDepthWise E1_dw 1 1 E1_expand_relu E1_dw_relu 0=288 1=5 4=2 5=1 6=7200 7=288 9=1 +Convolution E1_linear 1 1 E1_dw_relu E1_linear_bn 0=96 1=1 5=1 6=27648 +BinaryOp unknownncnn_7 2 1 E0_linear_bn_splitncnn_0 E1_linear_bn unknownncnn_7 +Split splitncnn_8 1 2 unknownncnn_7 unknownncnn_7_splitncnn_0 unknownncnn_7_splitncnn_1 +Convolution E2_expand 1 1 unknownncnn_7_splitncnn_1 E2_expand_relu 0=288 1=1 5=1 6=27648 9=1 +ConvolutionDepthWise E2_dw 1 1 E2_expand_relu E2_dw_relu 0=288 1=5 4=2 5=1 6=7200 7=288 9=1 +Convolution E2_linear 1 1 E2_dw_relu E2_linear_bn 0=96 1=1 5=1 6=27648 +BinaryOp unknownncnn_8 2 1 unknownncnn_7_splitncnn_0 E2_linear_bn unknownncnn_8 +Split splitncnn_9 1 2 unknownncnn_8 unknownncnn_8_splitncnn_0 unknownncnn_8_splitncnn_1 +Convolution E3_expand 1 1 unknownncnn_8_splitncnn_1 E3_expand_relu 0=288 1=1 5=1 6=27648 9=1 +ConvolutionDepthWise E3_dw 1 1 E3_expand_relu E3_dw_relu 0=288 1=5 4=2 5=1 6=7200 7=288 9=1 +Convolution E3_linear 1 1 E3_dw_relu E3_linear_bn 0=96 1=1 5=1 6=27648 +BinaryOp unknownncnn_9 2 1 unknownncnn_8_splitncnn_0 E3_linear_bn unknownncnn_9 +Convolution F0_expand 1 1 unknownncnn_9 F0_expand_relu 0=576 1=1 5=1 6=55296 9=1 +ConvolutionDepthWise F0_dw 1 1 F0_expand_relu F0_dw_relu 0=576 1=7 3=2 4=3 5=1 6=28224 7=576 9=1 +Convolution F0_linear 1 1 F0_dw_relu F0_linear_bn 0=192 1=1 5=1 6=110592 +Split splitncnn_10 1 2 F0_linear_bn F0_linear_bn_splitncnn_0 F0_linear_bn_splitncnn_1 +Convolution F1_expand 1 1 F0_linear_bn_splitncnn_1 F1_expand_relu 0=1152 1=1 5=1 6=221184 9=1 +ConvolutionDepthWise F1_dw 1 1 F1_expand_relu F1_dw_relu 0=1152 1=7 4=3 5=1 6=56448 7=1152 9=1 +Convolution F1_linear 1 1 F1_dw_relu F1_linear_bn 0=192 1=1 5=1 6=221184 +BinaryOp unknownncnn_10 2 1 F0_linear_bn_splitncnn_0 F1_linear_bn unknownncnn_10 +Split splitncnn_11 1 2 unknownncnn_10 unknownncnn_10_splitncnn_0 unknownncnn_10_splitncnn_1 +Convolution F2_expand 1 1 unknownncnn_10_splitncnn_1 F2_expand_relu 0=576 1=1 5=1 6=110592 9=1 +ConvolutionDepthWise F2_dw 1 1 F2_expand_relu F2_dw_relu 0=576 1=7 4=3 5=1 6=28224 7=576 9=1 +Convolution F2_linear 1 1 F2_dw_relu F2_linear_bn 0=192 1=1 5=1 6=110592 +BinaryOp unknownncnn_11 2 1 unknownncnn_10_splitncnn_0 F2_linear_bn unknownncnn_11 +Split splitncnn_12 1 2 unknownncnn_11 unknownncnn_11_splitncnn_0 unknownncnn_11_splitncnn_1 +Convolution F3_expand 1 1 unknownncnn_11_splitncnn_1 F3_expand_relu 0=576 1=1 5=1 6=110592 9=1 +ConvolutionDepthWise F3_dw 1 1 F3_expand_relu F3_dw_relu 0=576 1=7 4=3 5=1 6=28224 7=576 9=1 +Convolution F3_linear 1 1 F3_dw_relu F3_linear_bn 0=192 1=1 5=1 6=110592 +BinaryOp unknownncnn_12 2 1 unknownncnn_11_splitncnn_0 F3_linear_bn unknownncnn_12 +Convolution G0_expand 1 1 unknownncnn_12 G0_expand_relu 0=1152 1=1 5=1 6=221184 9=1 +ConvolutionDepthWise G0_dw 1 1 G0_expand_relu G0_dw_relu 0=1152 1=7 4=3 5=1 6=56448 7=1152 9=1 +Convolution G0_linear 1 1 G0_dw_relu G0_linear_bn 0=320 1=1 5=1 6=368640 +Convolution last-1x1-conv 1 1 G0_linear_bn last-1x1-conv_relu 0=1280 1=1 5=1 6=409600 9=1 +Pooling avgpool 1 1 last-1x1-conv_relu avgpool 0=1 1=7 4=1 5=1 +Flatten flatten 1 1 avgpool flatten +InnerProduct fc 1 1 flatten fc 0=1000 1=1 2=1280000 +Softmax prob 1 1 fc prob diff --git a/benchmark/resnet18.param b/benchmark/resnet18.param index b0536608d..c6572892b 100644 --- a/benchmark/resnet18.param +++ b/benchmark/resnet18.param @@ -1,103 +1,52 @@ 7767517 -101 109 -Input data 0 1 data 0=3 1=224 2=224 -Convolution conv1 1 1 data conv1 0=64 1=7 2=1 3=2 4=3 5=0 6=9408 -BatchNorm bn_conv1 1 1 conv1 conv1_bn_conv1 0=64 -Scale scale_conv1 1 1 conv1_bn_conv1 conv1_scale_conv1 0=64 1=1 -ReLU conv1_relu 1 1 conv1_scale_conv1 conv1_conv1_relu -Pooling pool1 1 1 conv1_conv1_relu pool1 0=0 1=3 2=2 3=0 4=0 -Split splitncnn_0 1 2 pool1 pool1_splitncnn_0 pool1_splitncnn_1 -Convolution res2a_branch1 1 1 pool1_splitncnn_1 res2a_branch1 0=64 1=1 2=1 3=1 4=0 5=0 6=4096 -BatchNorm bn2a_branch1 1 1 res2a_branch1 res2a_branch1_bn2a_branch1 0=64 -Scale scale2a_branch1 1 1 res2a_branch1_bn2a_branch1 res2a_branch1_scale2a_branch1 0=64 1=1 -Convolution res2a_branch2a 1 1 pool1_splitncnn_0 res2a_branch2a 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2a_branch2a 1 1 res2a_branch2a res2a_branch2a_bn2a_branch2a 0=64 -Scale scale2a_branch2a 1 1 res2a_branch2a_bn2a_branch2a res2a_branch2a_scale2a_branch2a 0=64 1=1 -ReLU res2a_branch2a_relu 1 1 res2a_branch2a_scale2a_branch2a res2a_branch2a_res2a_branch2a_relu -Convolution res2a_branch2b 1 1 res2a_branch2a_res2a_branch2a_relu res2a_branch2b 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2a_branch2b 1 1 res2a_branch2b res2a_branch2b_bn2a_branch2b 0=64 -Scale scale2a_branch2b 1 1 res2a_branch2b_bn2a_branch2b res2a_branch2b_scale2a_branch2b 0=64 1=1 -Eltwise res2a 2 1 res2a_branch1_scale2a_branch1 res2a_branch2b_scale2a_branch2b res2a 0=1 -23301=0 -ReLU res2a_relu 1 1 res2a res2a_res2a_relu -Split splitncnn_1 1 2 res2a_res2a_relu res2a_res2a_relu_splitncnn_0 res2a_res2a_relu_splitncnn_1 -Convolution res2b_branch2a 1 1 res2a_res2a_relu_splitncnn_1 res2b_branch2a 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2b_branch2a 1 1 res2b_branch2a res2b_branch2a_bn2b_branch2a 0=64 -Scale scale2b_branch2a 1 1 res2b_branch2a_bn2b_branch2a res2b_branch2a_scale2b_branch2a 0=64 1=1 -ReLU res2b_branch2a_relu 1 1 res2b_branch2a_scale2b_branch2a res2b_branch2a_res2b_branch2a_relu -Convolution res2b_branch2b 1 1 res2b_branch2a_res2b_branch2a_relu res2b_branch2b 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2b_branch2b 1 1 res2b_branch2b res2b_branch2b_bn2b_branch2b 0=64 -Scale scale2b_branch2b 1 1 res2b_branch2b_bn2b_branch2b res2b_branch2b_scale2b_branch2b 0=64 1=1 -Eltwise res2b 2 1 res2a_res2a_relu_splitncnn_0 res2b_branch2b_scale2b_branch2b res2b 0=1 -23301=0 -ReLU res2b_relu 1 1 res2b res2b_res2b_relu -Split splitncnn_2 1 2 res2b_res2b_relu res2b_res2b_relu_splitncnn_0 res2b_res2b_relu_splitncnn_1 -Convolution res3a_branch1 1 1 res2b_res2b_relu_splitncnn_1 res3a_branch1 0=128 1=1 2=1 3=2 4=0 5=0 6=8192 -BatchNorm bn3a_branch1 1 1 res3a_branch1 res3a_branch1_bn3a_branch1 0=128 -Scale scale3a_branch1 1 1 res3a_branch1_bn3a_branch1 res3a_branch1_scale3a_branch1 0=128 1=1 -Convolution res3a_branch2a 1 1 res2b_res2b_relu_splitncnn_0 res3a_branch2a 0=128 1=3 2=1 3=2 4=1 5=0 6=73728 -BatchNorm bn3a_branch2a 1 1 res3a_branch2a res3a_branch2a_bn3a_branch2a 0=128 -Scale scale3a_branch2a 1 1 res3a_branch2a_bn3a_branch2a res3a_branch2a_scale3a_branch2a 0=128 1=1 -ReLU res3a_branch2a_relu 1 1 res3a_branch2a_scale3a_branch2a res3a_branch2a_res3a_branch2a_relu -Convolution res3a_branch2b 1 1 res3a_branch2a_res3a_branch2a_relu res3a_branch2b 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3a_branch2b 1 1 res3a_branch2b res3a_branch2b_bn3a_branch2b 0=128 -Scale scale3a_branch2b 1 1 res3a_branch2b_bn3a_branch2b res3a_branch2b_scale3a_branch2b 0=128 1=1 -Eltwise res3a 2 1 res3a_branch1_scale3a_branch1 res3a_branch2b_scale3a_branch2b res3a 0=1 -23301=0 -ReLU res3a_relu 1 1 res3a res3a_res3a_relu -Split splitncnn_3 1 2 res3a_res3a_relu res3a_res3a_relu_splitncnn_0 res3a_res3a_relu_splitncnn_1 -Convolution res3b_branch2a 1 1 res3a_res3a_relu_splitncnn_1 res3b_branch2a 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3b_branch2a 1 1 res3b_branch2a res3b_branch2a_bn3b_branch2a 0=128 -Scale scale3b_branch2a 1 1 res3b_branch2a_bn3b_branch2a res3b_branch2a_scale3b_branch2a 0=128 1=1 -ReLU res3b_branch2a_relu 1 1 res3b_branch2a_scale3b_branch2a res3b_branch2a_res3b_branch2a_relu -Convolution res3b_branch2b 1 1 res3b_branch2a_res3b_branch2a_relu res3b_branch2b 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3b_branch2b 1 1 res3b_branch2b res3b_branch2b_bn3b_branch2b 0=128 -Scale scale3b_branch2b 1 1 res3b_branch2b_bn3b_branch2b res3b_branch2b_scale3b_branch2b 0=128 1=1 -Eltwise res3b 2 1 res3a_res3a_relu_splitncnn_0 res3b_branch2b_scale3b_branch2b res3b 0=1 -23301=0 -ReLU res3b_relu 1 1 res3b res3b_res3b_relu -Split splitncnn_4 1 2 res3b_res3b_relu res3b_res3b_relu_splitncnn_0 res3b_res3b_relu_splitncnn_1 -Convolution res4a_branch1 1 1 res3b_res3b_relu_splitncnn_1 res4a_branch1 0=256 1=1 2=1 3=2 4=0 5=0 6=32768 -BatchNorm bn4a_branch1 1 1 res4a_branch1 res4a_branch1_bn4a_branch1 0=256 -Scale scale4a_branch1 1 1 res4a_branch1_bn4a_branch1 res4a_branch1_scale4a_branch1 0=256 1=1 -Convolution res4a_branch2a 1 1 res3b_res3b_relu_splitncnn_0 res4a_branch2a 0=256 1=3 2=1 3=2 4=1 5=0 6=294912 -BatchNorm bn4a_branch2a 1 1 res4a_branch2a res4a_branch2a_bn4a_branch2a 0=256 -Scale scale4a_branch2a 1 1 res4a_branch2a_bn4a_branch2a res4a_branch2a_scale4a_branch2a 0=256 1=1 -ReLU res4a_branch2a_relu 1 1 res4a_branch2a_scale4a_branch2a res4a_branch2a_res4a_branch2a_relu -Convolution res4a_branch2b 1 1 res4a_branch2a_res4a_branch2a_relu res4a_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4a_branch2b 1 1 res4a_branch2b res4a_branch2b_bn4a_branch2b 0=256 -Scale scale4a_branch2b 1 1 res4a_branch2b_bn4a_branch2b res4a_branch2b_scale4a_branch2b 0=256 1=1 -Eltwise res4a 2 1 res4a_branch1_scale4a_branch1 res4a_branch2b_scale4a_branch2b res4a 0=1 -23301=0 -ReLU res4a_relu 1 1 res4a res4a_res4a_relu -Split splitncnn_5 1 2 res4a_res4a_relu res4a_res4a_relu_splitncnn_0 res4a_res4a_relu_splitncnn_1 -Convolution res4b_branch2a 1 1 res4a_res4a_relu_splitncnn_1 res4b_branch2a 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4b_branch2a 1 1 res4b_branch2a res4b_branch2a_bn4b_branch2a 0=256 -Scale scale4b_branch2a 1 1 res4b_branch2a_bn4b_branch2a res4b_branch2a_scale4b_branch2a 0=256 1=1 -ReLU res4b_branch2a_relu 1 1 res4b_branch2a_scale4b_branch2a res4b_branch2a_res4b_branch2a_relu -Convolution res4b_branch2b 1 1 res4b_branch2a_res4b_branch2a_relu res4b_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4b_branch2b 1 1 res4b_branch2b res4b_branch2b_bn4b_branch2b 0=256 -Scale scale4b_branch2b 1 1 res4b_branch2b_bn4b_branch2b res4b_branch2b_scale4b_branch2b 0=256 1=1 -Eltwise res4b 2 1 res4a_res4a_relu_splitncnn_0 res4b_branch2b_scale4b_branch2b res4b 0=1 -23301=0 -ReLU res4b_relu 1 1 res4b res4b_res4b_relu -Split splitncnn_6 1 2 res4b_res4b_relu res4b_res4b_relu_splitncnn_0 res4b_res4b_relu_splitncnn_1 -Convolution res5a_branch1 1 1 res4b_res4b_relu_splitncnn_1 res5a_branch1 0=512 1=1 2=1 3=2 4=0 5=0 6=131072 -BatchNorm bn5a_branch1 1 1 res5a_branch1 res5a_branch1_bn5a_branch1 0=512 -Scale scale5a_branch1 1 1 res5a_branch1_bn5a_branch1 res5a_branch1_scale5a_branch1 0=512 1=1 -Convolution res5a_branch2a 1 1 res4b_res4b_relu_splitncnn_0 res5a_branch2a 0=512 1=3 2=1 3=2 4=1 5=0 6=1179648 -BatchNorm bn5a_branch2a 1 1 res5a_branch2a res5a_branch2a_bn5a_branch2a 0=512 -Scale scale5a_branch2a 1 1 res5a_branch2a_bn5a_branch2a res5a_branch2a_scale5a_branch2a 0=512 1=1 -ReLU res5a_branch2a_relu 1 1 res5a_branch2a_scale5a_branch2a res5a_branch2a_res5a_branch2a_relu -Convolution res5a_branch2b 1 1 res5a_branch2a_res5a_branch2a_relu res5a_branch2b 0=512 1=3 2=1 3=1 4=1 5=0 6=2359296 -BatchNorm bn5a_branch2b 1 1 res5a_branch2b res5a_branch2b_bn5a_branch2b 0=512 -Scale scale5a_branch2b 1 1 res5a_branch2b_bn5a_branch2b res5a_branch2b_scale5a_branch2b 0=512 1=1 -Eltwise res5a 2 1 res5a_branch1_scale5a_branch1 res5a_branch2b_scale5a_branch2b res5a 0=1 -23301=0 -ReLU res5a_relu 1 1 res5a res5a_res5a_relu -Split splitncnn_7 1 2 res5a_res5a_relu res5a_res5a_relu_splitncnn_0 res5a_res5a_relu_splitncnn_1 -Convolution res5b_branch2a 1 1 res5a_res5a_relu_splitncnn_1 res5b_branch2a 0=512 1=3 2=1 3=1 4=1 5=0 6=2359296 -BatchNorm bn5b_branch2a 1 1 res5b_branch2a res5b_branch2a_bn5b_branch2a 0=512 -Scale scale5b_branch2a 1 1 res5b_branch2a_bn5b_branch2a res5b_branch2a_scale5b_branch2a 0=512 1=1 -ReLU res5b_branch2a_relu 1 1 res5b_branch2a_scale5b_branch2a res5b_branch2a_res5b_branch2a_relu -Convolution res5b_branch2b 1 1 res5b_branch2a_res5b_branch2a_relu res5b_branch2b 0=512 1=3 2=1 3=1 4=1 5=0 6=2359296 -BatchNorm bn5b_branch2b 1 1 res5b_branch2b res5b_branch2b_bn5b_branch2b 0=512 -Scale scale5b_branch2b 1 1 res5b_branch2b_bn5b_branch2b res5b_branch2b_scale5b_branch2b 0=512 1=1 -Eltwise res5b 2 1 res5a_res5a_relu_splitncnn_0 res5b_branch2b_scale5b_branch2b res5b 0=1 -23301=0 -ReLU res5b_relu 1 1 res5b res5b_res5b_relu -Pooling pool5 1 1 res5b_res5b_relu pool5 0=1 1=7 2=1 3=0 4=0 -InnerProduct fc1000 1 1 pool5 fc1000 0=1000 1=1 2=512000 -Softmax prob 1 1 fc1000 prob 0=0 +50 58 +Input data 0 1 data 0=3 1=224 2=224 +Convolution conv1 1 1 data conv1_conv1_relu 0=64 1=7 3=2 4=3 5=1 6=9408 9=1 +Pooling pool1 1 1 conv1_conv1_relu pool1 1=3 2=2 +Split splitncnn_0 1 2 pool1 pool1_splitncnn_0 pool1_splitncnn_1 +Convolution res2a_branch1 1 1 pool1_splitncnn_1 res2a_branch1_scale2a_branch1 0=64 1=1 5=1 6=4096 +Convolution res2a_branch2a 1 1 pool1_splitncnn_0 res2a_branch2a_res2a_branch2a_relu 0=64 1=3 4=1 5=1 6=36864 9=1 +Convolution res2a_branch2b 1 1 res2a_branch2a_res2a_branch2a_relu res2a_branch2b_scale2a_branch2b 0=64 1=3 4=1 5=1 6=36864 +Eltwise res2a 2 1 res2a_branch1_scale2a_branch1 res2a_branch2b_scale2a_branch2b res2a 0=1 +ReLU res2a_relu 1 1 res2a res2a_res2a_relu +Split splitncnn_1 1 2 res2a_res2a_relu res2a_res2a_relu_splitncnn_0 res2a_res2a_relu_splitncnn_1 +Convolution res2b_branch2a 1 1 res2a_res2a_relu_splitncnn_1 res2b_branch2a_res2b_branch2a_relu 0=64 1=3 4=1 5=1 6=36864 9=1 +Convolution res2b_branch2b 1 1 res2b_branch2a_res2b_branch2a_relu res2b_branch2b_scale2b_branch2b 0=64 1=3 4=1 5=1 6=36864 +Eltwise res2b 2 1 res2a_res2a_relu_splitncnn_0 res2b_branch2b_scale2b_branch2b res2b 0=1 +ReLU res2b_relu 1 1 res2b res2b_res2b_relu +Split splitncnn_2 1 2 res2b_res2b_relu res2b_res2b_relu_splitncnn_0 res2b_res2b_relu_splitncnn_1 +Convolution res3a_branch1 1 1 res2b_res2b_relu_splitncnn_1 res3a_branch1_scale3a_branch1 0=128 1=1 3=2 5=1 6=8192 +Convolution res3a_branch2a 1 1 res2b_res2b_relu_splitncnn_0 res3a_branch2a_res3a_branch2a_relu 0=128 1=3 3=2 4=1 5=1 6=73728 9=1 +Convolution res3a_branch2b 1 1 res3a_branch2a_res3a_branch2a_relu res3a_branch2b_scale3a_branch2b 0=128 1=3 4=1 5=1 6=147456 +Eltwise res3a 2 1 res3a_branch1_scale3a_branch1 res3a_branch2b_scale3a_branch2b res3a 0=1 +ReLU res3a_relu 1 1 res3a res3a_res3a_relu +Split splitncnn_3 1 2 res3a_res3a_relu res3a_res3a_relu_splitncnn_0 res3a_res3a_relu_splitncnn_1 +Convolution res3b_branch2a 1 1 res3a_res3a_relu_splitncnn_1 res3b_branch2a_res3b_branch2a_relu 0=128 1=3 4=1 5=1 6=147456 9=1 +Convolution res3b_branch2b 1 1 res3b_branch2a_res3b_branch2a_relu res3b_branch2b_scale3b_branch2b 0=128 1=3 4=1 5=1 6=147456 +Eltwise res3b 2 1 res3a_res3a_relu_splitncnn_0 res3b_branch2b_scale3b_branch2b res3b 0=1 +ReLU res3b_relu 1 1 res3b res3b_res3b_relu +Split splitncnn_4 1 2 res3b_res3b_relu res3b_res3b_relu_splitncnn_0 res3b_res3b_relu_splitncnn_1 +Convolution res4a_branch1 1 1 res3b_res3b_relu_splitncnn_1 res4a_branch1_scale4a_branch1 0=256 1=1 3=2 5=1 6=32768 +Convolution res4a_branch2a 1 1 res3b_res3b_relu_splitncnn_0 res4a_branch2a_res4a_branch2a_relu 0=256 1=3 3=2 4=1 5=1 6=294912 9=1 +Convolution res4a_branch2b 1 1 res4a_branch2a_res4a_branch2a_relu res4a_branch2b_scale4a_branch2b 0=256 1=3 4=1 5=1 6=589824 +Eltwise res4a 2 1 res4a_branch1_scale4a_branch1 res4a_branch2b_scale4a_branch2b res4a 0=1 +ReLU res4a_relu 1 1 res4a res4a_res4a_relu +Split splitncnn_5 1 2 res4a_res4a_relu res4a_res4a_relu_splitncnn_0 res4a_res4a_relu_splitncnn_1 +Convolution res4b_branch2a 1 1 res4a_res4a_relu_splitncnn_1 res4b_branch2a_res4b_branch2a_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4b_branch2b 1 1 res4b_branch2a_res4b_branch2a_relu res4b_branch2b_scale4b_branch2b 0=256 1=3 4=1 5=1 6=589824 +Eltwise res4b 2 1 res4a_res4a_relu_splitncnn_0 res4b_branch2b_scale4b_branch2b res4b 0=1 +ReLU res4b_relu 1 1 res4b res4b_res4b_relu +Split splitncnn_6 1 2 res4b_res4b_relu res4b_res4b_relu_splitncnn_0 res4b_res4b_relu_splitncnn_1 +Convolution res5a_branch1 1 1 res4b_res4b_relu_splitncnn_1 res5a_branch1_scale5a_branch1 0=512 1=1 3=2 5=1 6=131072 +Convolution res5a_branch2a 1 1 res4b_res4b_relu_splitncnn_0 res5a_branch2a_res5a_branch2a_relu 0=512 1=3 3=2 4=1 5=1 6=1179648 9=1 +Convolution res5a_branch2b 1 1 res5a_branch2a_res5a_branch2a_relu res5a_branch2b_scale5a_branch2b 0=512 1=3 4=1 5=1 6=2359296 +Eltwise res5a 2 1 res5a_branch1_scale5a_branch1 res5a_branch2b_scale5a_branch2b res5a 0=1 +ReLU res5a_relu 1 1 res5a res5a_res5a_relu +Split splitncnn_7 1 2 res5a_res5a_relu res5a_res5a_relu_splitncnn_0 res5a_res5a_relu_splitncnn_1 +Convolution res5b_branch2a 1 1 res5a_res5a_relu_splitncnn_1 res5b_branch2a_res5b_branch2a_relu 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution res5b_branch2b 1 1 res5b_branch2a_res5b_branch2a_relu res5b_branch2b_scale5b_branch2b 0=512 1=3 4=1 5=1 6=2359296 +Eltwise res5b 2 1 res5a_res5a_relu_splitncnn_0 res5b_branch2b_scale5b_branch2b res5b 0=1 +ReLU res5b_relu 1 1 res5b res5b_res5b_relu +Pooling pool5 1 1 res5b_res5b_relu pool5 0=1 1=7 +InnerProduct fc1000 1 1 pool5 fc1000 0=1000 1=1 2=512000 +Softmax prob 1 1 fc1000 prob diff --git a/benchmark/resnet50.param b/benchmark/resnet50.param old mode 100755 new mode 100644 index f9df9a81c..2957272ec --- a/benchmark/resnet50.param +++ b/benchmark/resnet50.param @@ -1,247 +1,108 @@ 7767517 -245 261 -Input data 0 1 data 0=224 1=224 2=3 -Convolution conv1 1 1 data conv1 0=64 1=7 2=1 3=2 4=3 5=1 6=9408 -BatchNorm bn_conv1 1 1 conv1 conv1_bn_conv1 0=64 -Scale scale_conv1 1 1 conv1_bn_conv1 conv1_scale_conv1 0=64 1=1 -ReLU conv1_relu 1 1 conv1_scale_conv1 conv1_conv1_relu -Pooling pool1 1 1 conv1_conv1_relu pool1 0=0 1=3 2=2 3=0 4=0 -Split splitncnn_0 1 2 pool1 pool1_splitncnn_0 pool1_splitncnn_1 -Convolution res2a_branch1 1 1 pool1_splitncnn_1 res2a_branch1 0=256 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm bn2a_branch1 1 1 res2a_branch1 res2a_branch1_bn2a_branch1 0=256 -Scale scale2a_branch1 1 1 res2a_branch1_bn2a_branch1 res2a_branch1_scale2a_branch1 0=256 1=1 -Convolution res2a_branch2a 1 1 pool1_splitncnn_0 res2a_branch2a 0=64 1=1 2=1 3=1 4=0 5=0 6=4096 -BatchNorm bn2a_branch2a 1 1 res2a_branch2a res2a_branch2a_bn2a_branch2a 0=64 -Scale scale2a_branch2a 1 1 res2a_branch2a_bn2a_branch2a res2a_branch2a_scale2a_branch2a 0=64 1=1 -ReLU res2a_branch2a_relu 1 1 res2a_branch2a_scale2a_branch2a res2a_branch2a_res2a_branch2a_relu -Convolution res2a_branch2b 1 1 res2a_branch2a_res2a_branch2a_relu res2a_branch2b 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2a_branch2b 1 1 res2a_branch2b res2a_branch2b_bn2a_branch2b 0=64 -Scale scale2a_branch2b 1 1 res2a_branch2b_bn2a_branch2b res2a_branch2b_scale2a_branch2b 0=64 1=1 -ReLU res2a_branch2b_relu 1 1 res2a_branch2b_scale2a_branch2b res2a_branch2b_res2a_branch2b_relu -Convolution res2a_branch2c 1 1 res2a_branch2b_res2a_branch2b_relu res2a_branch2c 0=256 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm bn2a_branch2c 1 1 res2a_branch2c res2a_branch2c_bn2a_branch2c 0=256 -Scale scale2a_branch2c 1 1 res2a_branch2c_bn2a_branch2c res2a_branch2c_scale2a_branch2c 0=256 1=1 -Eltwise res2a 2 1 res2a_branch1_scale2a_branch1 res2a_branch2c_scale2a_branch2c res2a 0=1 -23301=0 -ReLU res2a_relu 1 1 res2a res2a_res2a_relu -Split splitncnn_1 1 2 res2a_res2a_relu res2a_res2a_relu_splitncnn_0 res2a_res2a_relu_splitncnn_1 -Convolution res2b_branch2a 1 1 res2a_res2a_relu_splitncnn_1 res2b_branch2a 0=64 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm bn2b_branch2a 1 1 res2b_branch2a res2b_branch2a_bn2b_branch2a 0=64 -Scale scale2b_branch2a 1 1 res2b_branch2a_bn2b_branch2a res2b_branch2a_scale2b_branch2a 0=64 1=1 -ReLU res2b_branch2a_relu 1 1 res2b_branch2a_scale2b_branch2a res2b_branch2a_res2b_branch2a_relu -Convolution res2b_branch2b 1 1 res2b_branch2a_res2b_branch2a_relu res2b_branch2b 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2b_branch2b 1 1 res2b_branch2b res2b_branch2b_bn2b_branch2b 0=64 -Scale scale2b_branch2b 1 1 res2b_branch2b_bn2b_branch2b res2b_branch2b_scale2b_branch2b 0=64 1=1 -ReLU res2b_branch2b_relu 1 1 res2b_branch2b_scale2b_branch2b res2b_branch2b_res2b_branch2b_relu -Convolution res2b_branch2c 1 1 res2b_branch2b_res2b_branch2b_relu res2b_branch2c 0=256 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm bn2b_branch2c 1 1 res2b_branch2c res2b_branch2c_bn2b_branch2c 0=256 -Scale scale2b_branch2c 1 1 res2b_branch2c_bn2b_branch2c res2b_branch2c_scale2b_branch2c 0=256 1=1 -Eltwise res2b 2 1 res2a_res2a_relu_splitncnn_0 res2b_branch2c_scale2b_branch2c res2b 0=1 -23301=0 -ReLU res2b_relu 1 1 res2b res2b_res2b_relu -Split splitncnn_2 1 2 res2b_res2b_relu res2b_res2b_relu_splitncnn_0 res2b_res2b_relu_splitncnn_1 -Convolution res2c_branch2a 1 1 res2b_res2b_relu_splitncnn_1 res2c_branch2a 0=64 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm bn2c_branch2a 1 1 res2c_branch2a res2c_branch2a_bn2c_branch2a 0=64 -Scale scale2c_branch2a 1 1 res2c_branch2a_bn2c_branch2a res2c_branch2a_scale2c_branch2a 0=64 1=1 -ReLU res2c_branch2a_relu 1 1 res2c_branch2a_scale2c_branch2a res2c_branch2a_res2c_branch2a_relu -Convolution res2c_branch2b 1 1 res2c_branch2a_res2c_branch2a_relu res2c_branch2b 0=64 1=3 2=1 3=1 4=1 5=0 6=36864 -BatchNorm bn2c_branch2b 1 1 res2c_branch2b res2c_branch2b_bn2c_branch2b 0=64 -Scale scale2c_branch2b 1 1 res2c_branch2b_bn2c_branch2b res2c_branch2b_scale2c_branch2b 0=64 1=1 -ReLU res2c_branch2b_relu 1 1 res2c_branch2b_scale2c_branch2b res2c_branch2b_res2c_branch2b_relu -Convolution res2c_branch2c 1 1 res2c_branch2b_res2c_branch2b_relu res2c_branch2c 0=256 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm bn2c_branch2c 1 1 res2c_branch2c res2c_branch2c_bn2c_branch2c 0=256 -Scale scale2c_branch2c 1 1 res2c_branch2c_bn2c_branch2c res2c_branch2c_scale2c_branch2c 0=256 1=1 -Eltwise res2c 2 1 res2b_res2b_relu_splitncnn_0 res2c_branch2c_scale2c_branch2c res2c 0=1 -23301=0 -ReLU res2c_relu 1 1 res2c res2c_res2c_relu -Split splitncnn_3 1 2 res2c_res2c_relu res2c_res2c_relu_splitncnn_0 res2c_res2c_relu_splitncnn_1 -Convolution res3a_branch1 1 1 res2c_res2c_relu_splitncnn_1 res3a_branch1 0=512 1=1 2=1 3=2 4=0 5=0 6=131072 -BatchNorm bn3a_branch1 1 1 res3a_branch1 res3a_branch1_bn3a_branch1 0=512 -Scale scale3a_branch1 1 1 res3a_branch1_bn3a_branch1 res3a_branch1_scale3a_branch1 0=512 1=1 -Convolution res3a_branch2a 1 1 res2c_res2c_relu_splitncnn_0 res3a_branch2a 0=128 1=1 2=1 3=2 4=0 5=0 6=32768 -BatchNorm bn3a_branch2a 1 1 res3a_branch2a res3a_branch2a_bn3a_branch2a 0=128 -Scale scale3a_branch2a 1 1 res3a_branch2a_bn3a_branch2a res3a_branch2a_scale3a_branch2a 0=128 1=1 -ReLU res3a_branch2a_relu 1 1 res3a_branch2a_scale3a_branch2a res3a_branch2a_res3a_branch2a_relu -Convolution res3a_branch2b 1 1 res3a_branch2a_res3a_branch2a_relu res3a_branch2b 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3a_branch2b 1 1 res3a_branch2b res3a_branch2b_bn3a_branch2b 0=128 -Scale scale3a_branch2b 1 1 res3a_branch2b_bn3a_branch2b res3a_branch2b_scale3a_branch2b 0=128 1=1 -ReLU res3a_branch2b_relu 1 1 res3a_branch2b_scale3a_branch2b res3a_branch2b_res3a_branch2b_relu -Convolution res3a_branch2c 1 1 res3a_branch2b_res3a_branch2b_relu res3a_branch2c 0=512 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3a_branch2c 1 1 res3a_branch2c res3a_branch2c_bn3a_branch2c 0=512 -Scale scale3a_branch2c 1 1 res3a_branch2c_bn3a_branch2c res3a_branch2c_scale3a_branch2c 0=512 1=1 -Eltwise res3a 2 1 res3a_branch1_scale3a_branch1 res3a_branch2c_scale3a_branch2c res3a 0=1 -23301=0 -ReLU res3a_relu 1 1 res3a res3a_res3a_relu -Split splitncnn_4 1 2 res3a_res3a_relu res3a_res3a_relu_splitncnn_0 res3a_res3a_relu_splitncnn_1 -Convolution res3b_branch2a 1 1 res3a_res3a_relu_splitncnn_1 res3b_branch2a 0=128 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3b_branch2a 1 1 res3b_branch2a res3b_branch2a_bn3b_branch2a 0=128 -Scale scale3b_branch2a 1 1 res3b_branch2a_bn3b_branch2a res3b_branch2a_scale3b_branch2a 0=128 1=1 -ReLU res3b_branch2a_relu 1 1 res3b_branch2a_scale3b_branch2a res3b_branch2a_res3b_branch2a_relu -Convolution res3b_branch2b 1 1 res3b_branch2a_res3b_branch2a_relu res3b_branch2b 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3b_branch2b 1 1 res3b_branch2b res3b_branch2b_bn3b_branch2b 0=128 -Scale scale3b_branch2b 1 1 res3b_branch2b_bn3b_branch2b res3b_branch2b_scale3b_branch2b 0=128 1=1 -ReLU res3b_branch2b_relu 1 1 res3b_branch2b_scale3b_branch2b res3b_branch2b_res3b_branch2b_relu -Convolution res3b_branch2c 1 1 res3b_branch2b_res3b_branch2b_relu res3b_branch2c 0=512 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3b_branch2c 1 1 res3b_branch2c res3b_branch2c_bn3b_branch2c 0=512 -Scale scale3b_branch2c 1 1 res3b_branch2c_bn3b_branch2c res3b_branch2c_scale3b_branch2c 0=512 1=1 -Eltwise res3b 2 1 res3a_res3a_relu_splitncnn_0 res3b_branch2c_scale3b_branch2c res3b 0=1 -23301=0 -ReLU res3b_relu 1 1 res3b res3b_res3b_relu -Split splitncnn_5 1 2 res3b_res3b_relu res3b_res3b_relu_splitncnn_0 res3b_res3b_relu_splitncnn_1 -Convolution res3c_branch2a 1 1 res3b_res3b_relu_splitncnn_1 res3c_branch2a 0=128 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3c_branch2a 1 1 res3c_branch2a res3c_branch2a_bn3c_branch2a 0=128 -Scale scale3c_branch2a 1 1 res3c_branch2a_bn3c_branch2a res3c_branch2a_scale3c_branch2a 0=128 1=1 -ReLU res3c_branch2a_relu 1 1 res3c_branch2a_scale3c_branch2a res3c_branch2a_res3c_branch2a_relu -Convolution res3c_branch2b 1 1 res3c_branch2a_res3c_branch2a_relu res3c_branch2b 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3c_branch2b 1 1 res3c_branch2b res3c_branch2b_bn3c_branch2b 0=128 -Scale scale3c_branch2b 1 1 res3c_branch2b_bn3c_branch2b res3c_branch2b_scale3c_branch2b 0=128 1=1 -ReLU res3c_branch2b_relu 1 1 res3c_branch2b_scale3c_branch2b res3c_branch2b_res3c_branch2b_relu -Convolution res3c_branch2c 1 1 res3c_branch2b_res3c_branch2b_relu res3c_branch2c 0=512 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3c_branch2c 1 1 res3c_branch2c res3c_branch2c_bn3c_branch2c 0=512 -Scale scale3c_branch2c 1 1 res3c_branch2c_bn3c_branch2c res3c_branch2c_scale3c_branch2c 0=512 1=1 -Eltwise res3c 2 1 res3b_res3b_relu_splitncnn_0 res3c_branch2c_scale3c_branch2c res3c 0=1 -23301=0 -ReLU res3c_relu 1 1 res3c res3c_res3c_relu -Split splitncnn_6 1 2 res3c_res3c_relu res3c_res3c_relu_splitncnn_0 res3c_res3c_relu_splitncnn_1 -Convolution res3d_branch2a 1 1 res3c_res3c_relu_splitncnn_1 res3d_branch2a 0=128 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3d_branch2a 1 1 res3d_branch2a res3d_branch2a_bn3d_branch2a 0=128 -Scale scale3d_branch2a 1 1 res3d_branch2a_bn3d_branch2a res3d_branch2a_scale3d_branch2a 0=128 1=1 -ReLU res3d_branch2a_relu 1 1 res3d_branch2a_scale3d_branch2a res3d_branch2a_res3d_branch2a_relu -Convolution res3d_branch2b 1 1 res3d_branch2a_res3d_branch2a_relu res3d_branch2b 0=128 1=3 2=1 3=1 4=1 5=0 6=147456 -BatchNorm bn3d_branch2b 1 1 res3d_branch2b res3d_branch2b_bn3d_branch2b 0=128 -Scale scale3d_branch2b 1 1 res3d_branch2b_bn3d_branch2b res3d_branch2b_scale3d_branch2b 0=128 1=1 -ReLU res3d_branch2b_relu 1 1 res3d_branch2b_scale3d_branch2b res3d_branch2b_res3d_branch2b_relu -Convolution res3d_branch2c 1 1 res3d_branch2b_res3d_branch2b_relu res3d_branch2c 0=512 1=1 2=1 3=1 4=0 5=0 6=65536 -BatchNorm bn3d_branch2c 1 1 res3d_branch2c res3d_branch2c_bn3d_branch2c 0=512 -Scale scale3d_branch2c 1 1 res3d_branch2c_bn3d_branch2c res3d_branch2c_scale3d_branch2c 0=512 1=1 -Eltwise res3d 2 1 res3c_res3c_relu_splitncnn_0 res3d_branch2c_scale3d_branch2c res3d 0=1 -23301=0 -ReLU res3d_relu 1 1 res3d res3d_res3d_relu -Split splitncnn_7 1 2 res3d_res3d_relu res3d_res3d_relu_splitncnn_0 res3d_res3d_relu_splitncnn_1 -Convolution res4a_branch1 1 1 res3d_res3d_relu_splitncnn_1 res4a_branch1 0=1024 1=1 2=1 3=2 4=0 5=0 6=524288 -BatchNorm bn4a_branch1 1 1 res4a_branch1 res4a_branch1_bn4a_branch1 0=1024 -Scale scale4a_branch1 1 1 res4a_branch1_bn4a_branch1 res4a_branch1_scale4a_branch1 0=1024 1=1 -Convolution res4a_branch2a 1 1 res3d_res3d_relu_splitncnn_0 res4a_branch2a 0=256 1=1 2=1 3=2 4=0 5=0 6=131072 -BatchNorm bn4a_branch2a 1 1 res4a_branch2a res4a_branch2a_bn4a_branch2a 0=256 -Scale scale4a_branch2a 1 1 res4a_branch2a_bn4a_branch2a res4a_branch2a_scale4a_branch2a 0=256 1=1 -ReLU res4a_branch2a_relu 1 1 res4a_branch2a_scale4a_branch2a res4a_branch2a_res4a_branch2a_relu -Convolution res4a_branch2b 1 1 res4a_branch2a_res4a_branch2a_relu res4a_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4a_branch2b 1 1 res4a_branch2b res4a_branch2b_bn4a_branch2b 0=256 -Scale scale4a_branch2b 1 1 res4a_branch2b_bn4a_branch2b res4a_branch2b_scale4a_branch2b 0=256 1=1 -ReLU res4a_branch2b_relu 1 1 res4a_branch2b_scale4a_branch2b res4a_branch2b_res4a_branch2b_relu -Convolution res4a_branch2c 1 1 res4a_branch2b_res4a_branch2b_relu res4a_branch2c 0=1024 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4a_branch2c 1 1 res4a_branch2c res4a_branch2c_bn4a_branch2c 0=1024 -Scale scale4a_branch2c 1 1 res4a_branch2c_bn4a_branch2c res4a_branch2c_scale4a_branch2c 0=1024 1=1 -Eltwise res4a 2 1 res4a_branch1_scale4a_branch1 res4a_branch2c_scale4a_branch2c res4a 0=1 -23301=0 -ReLU res4a_relu 1 1 res4a res4a_res4a_relu -Split splitncnn_8 1 2 res4a_res4a_relu res4a_res4a_relu_splitncnn_0 res4a_res4a_relu_splitncnn_1 -Convolution res4b_branch2a 1 1 res4a_res4a_relu_splitncnn_1 res4b_branch2a 0=256 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4b_branch2a 1 1 res4b_branch2a res4b_branch2a_bn4b_branch2a 0=256 -Scale scale4b_branch2a 1 1 res4b_branch2a_bn4b_branch2a res4b_branch2a_scale4b_branch2a 0=256 1=1 -ReLU res4b_branch2a_relu 1 1 res4b_branch2a_scale4b_branch2a res4b_branch2a_res4b_branch2a_relu -Convolution res4b_branch2b 1 1 res4b_branch2a_res4b_branch2a_relu res4b_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4b_branch2b 1 1 res4b_branch2b res4b_branch2b_bn4b_branch2b 0=256 -Scale scale4b_branch2b 1 1 res4b_branch2b_bn4b_branch2b res4b_branch2b_scale4b_branch2b 0=256 1=1 -ReLU res4b_branch2b_relu 1 1 res4b_branch2b_scale4b_branch2b res4b_branch2b_res4b_branch2b_relu -Convolution res4b_branch2c 1 1 res4b_branch2b_res4b_branch2b_relu res4b_branch2c 0=1024 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4b_branch2c 1 1 res4b_branch2c res4b_branch2c_bn4b_branch2c 0=1024 -Scale scale4b_branch2c 1 1 res4b_branch2c_bn4b_branch2c res4b_branch2c_scale4b_branch2c 0=1024 1=1 -Eltwise res4b 2 1 res4a_res4a_relu_splitncnn_0 res4b_branch2c_scale4b_branch2c res4b 0=1 -23301=0 -ReLU res4b_relu 1 1 res4b res4b_res4b_relu -Split splitncnn_9 1 2 res4b_res4b_relu res4b_res4b_relu_splitncnn_0 res4b_res4b_relu_splitncnn_1 -Convolution res4c_branch2a 1 1 res4b_res4b_relu_splitncnn_1 res4c_branch2a 0=256 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4c_branch2a 1 1 res4c_branch2a res4c_branch2a_bn4c_branch2a 0=256 -Scale scale4c_branch2a 1 1 res4c_branch2a_bn4c_branch2a res4c_branch2a_scale4c_branch2a 0=256 1=1 -ReLU res4c_branch2a_relu 1 1 res4c_branch2a_scale4c_branch2a res4c_branch2a_res4c_branch2a_relu -Convolution res4c_branch2b 1 1 res4c_branch2a_res4c_branch2a_relu res4c_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4c_branch2b 1 1 res4c_branch2b res4c_branch2b_bn4c_branch2b 0=256 -Scale scale4c_branch2b 1 1 res4c_branch2b_bn4c_branch2b res4c_branch2b_scale4c_branch2b 0=256 1=1 -ReLU res4c_branch2b_relu 1 1 res4c_branch2b_scale4c_branch2b res4c_branch2b_res4c_branch2b_relu -Convolution res4c_branch2c 1 1 res4c_branch2b_res4c_branch2b_relu res4c_branch2c 0=1024 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4c_branch2c 1 1 res4c_branch2c res4c_branch2c_bn4c_branch2c 0=1024 -Scale scale4c_branch2c 1 1 res4c_branch2c_bn4c_branch2c res4c_branch2c_scale4c_branch2c 0=1024 1=1 -Eltwise res4c 2 1 res4b_res4b_relu_splitncnn_0 res4c_branch2c_scale4c_branch2c res4c 0=1 -23301=0 -ReLU res4c_relu 1 1 res4c res4c_res4c_relu -Split splitncnn_10 1 2 res4c_res4c_relu res4c_res4c_relu_splitncnn_0 res4c_res4c_relu_splitncnn_1 -Convolution res4d_branch2a 1 1 res4c_res4c_relu_splitncnn_1 res4d_branch2a 0=256 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4d_branch2a 1 1 res4d_branch2a res4d_branch2a_bn4d_branch2a 0=256 -Scale scale4d_branch2a 1 1 res4d_branch2a_bn4d_branch2a res4d_branch2a_scale4d_branch2a 0=256 1=1 -ReLU res4d_branch2a_relu 1 1 res4d_branch2a_scale4d_branch2a res4d_branch2a_res4d_branch2a_relu -Convolution res4d_branch2b 1 1 res4d_branch2a_res4d_branch2a_relu res4d_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4d_branch2b 1 1 res4d_branch2b res4d_branch2b_bn4d_branch2b 0=256 -Scale scale4d_branch2b 1 1 res4d_branch2b_bn4d_branch2b res4d_branch2b_scale4d_branch2b 0=256 1=1 -ReLU res4d_branch2b_relu 1 1 res4d_branch2b_scale4d_branch2b res4d_branch2b_res4d_branch2b_relu -Convolution res4d_branch2c 1 1 res4d_branch2b_res4d_branch2b_relu res4d_branch2c 0=1024 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4d_branch2c 1 1 res4d_branch2c res4d_branch2c_bn4d_branch2c 0=1024 -Scale scale4d_branch2c 1 1 res4d_branch2c_bn4d_branch2c res4d_branch2c_scale4d_branch2c 0=1024 1=1 -Eltwise res4d 2 1 res4c_res4c_relu_splitncnn_0 res4d_branch2c_scale4d_branch2c res4d 0=1 -23301=0 -ReLU res4d_relu 1 1 res4d res4d_res4d_relu -Split splitncnn_11 1 2 res4d_res4d_relu res4d_res4d_relu_splitncnn_0 res4d_res4d_relu_splitncnn_1 -Convolution res4e_branch2a 1 1 res4d_res4d_relu_splitncnn_1 res4e_branch2a 0=256 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4e_branch2a 1 1 res4e_branch2a res4e_branch2a_bn4e_branch2a 0=256 -Scale scale4e_branch2a 1 1 res4e_branch2a_bn4e_branch2a res4e_branch2a_scale4e_branch2a 0=256 1=1 -ReLU res4e_branch2a_relu 1 1 res4e_branch2a_scale4e_branch2a res4e_branch2a_res4e_branch2a_relu -Convolution res4e_branch2b 1 1 res4e_branch2a_res4e_branch2a_relu res4e_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4e_branch2b 1 1 res4e_branch2b res4e_branch2b_bn4e_branch2b 0=256 -Scale scale4e_branch2b 1 1 res4e_branch2b_bn4e_branch2b res4e_branch2b_scale4e_branch2b 0=256 1=1 -ReLU res4e_branch2b_relu 1 1 res4e_branch2b_scale4e_branch2b res4e_branch2b_res4e_branch2b_relu -Convolution res4e_branch2c 1 1 res4e_branch2b_res4e_branch2b_relu res4e_branch2c 0=1024 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4e_branch2c 1 1 res4e_branch2c res4e_branch2c_bn4e_branch2c 0=1024 -Scale scale4e_branch2c 1 1 res4e_branch2c_bn4e_branch2c res4e_branch2c_scale4e_branch2c 0=1024 1=1 -Eltwise res4e 2 1 res4d_res4d_relu_splitncnn_0 res4e_branch2c_scale4e_branch2c res4e 0=1 -23301=0 -ReLU res4e_relu 1 1 res4e res4e_res4e_relu -Split splitncnn_12 1 2 res4e_res4e_relu res4e_res4e_relu_splitncnn_0 res4e_res4e_relu_splitncnn_1 -Convolution res4f_branch2a 1 1 res4e_res4e_relu_splitncnn_1 res4f_branch2a 0=256 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4f_branch2a 1 1 res4f_branch2a res4f_branch2a_bn4f_branch2a 0=256 -Scale scale4f_branch2a 1 1 res4f_branch2a_bn4f_branch2a res4f_branch2a_scale4f_branch2a 0=256 1=1 -ReLU res4f_branch2a_relu 1 1 res4f_branch2a_scale4f_branch2a res4f_branch2a_res4f_branch2a_relu -Convolution res4f_branch2b 1 1 res4f_branch2a_res4f_branch2a_relu res4f_branch2b 0=256 1=3 2=1 3=1 4=1 5=0 6=589824 -BatchNorm bn4f_branch2b 1 1 res4f_branch2b res4f_branch2b_bn4f_branch2b 0=256 -Scale scale4f_branch2b 1 1 res4f_branch2b_bn4f_branch2b res4f_branch2b_scale4f_branch2b 0=256 1=1 -ReLU res4f_branch2b_relu 1 1 res4f_branch2b_scale4f_branch2b res4f_branch2b_res4f_branch2b_relu -Convolution res4f_branch2c 1 1 res4f_branch2b_res4f_branch2b_relu res4f_branch2c 0=1024 1=1 2=1 3=1 4=0 5=0 6=262144 -BatchNorm bn4f_branch2c 1 1 res4f_branch2c res4f_branch2c_bn4f_branch2c 0=1024 -Scale scale4f_branch2c 1 1 res4f_branch2c_bn4f_branch2c res4f_branch2c_scale4f_branch2c 0=1024 1=1 -Eltwise res4f 2 1 res4e_res4e_relu_splitncnn_0 res4f_branch2c_scale4f_branch2c res4f 0=1 -23301=0 -ReLU res4f_relu 1 1 res4f res4f_res4f_relu -Split splitncnn_13 1 2 res4f_res4f_relu res4f_res4f_relu_splitncnn_0 res4f_res4f_relu_splitncnn_1 -Convolution res5a_branch1 1 1 res4f_res4f_relu_splitncnn_1 res5a_branch1 0=2048 1=1 2=1 3=2 4=0 5=0 6=2097152 -BatchNorm bn5a_branch1 1 1 res5a_branch1 res5a_branch1_bn5a_branch1 0=2048 -Scale scale5a_branch1 1 1 res5a_branch1_bn5a_branch1 res5a_branch1_scale5a_branch1 0=2048 1=1 -Convolution res5a_branch2a 1 1 res4f_res4f_relu_splitncnn_0 res5a_branch2a 0=512 1=1 2=1 3=2 4=0 5=0 6=524288 -BatchNorm bn5a_branch2a 1 1 res5a_branch2a res5a_branch2a_bn5a_branch2a 0=512 -Scale scale5a_branch2a 1 1 res5a_branch2a_bn5a_branch2a res5a_branch2a_scale5a_branch2a 0=512 1=1 -ReLU res5a_branch2a_relu 1 1 res5a_branch2a_scale5a_branch2a res5a_branch2a_res5a_branch2a_relu -Convolution res5a_branch2b 1 1 res5a_branch2a_res5a_branch2a_relu res5a_branch2b 0=512 1=3 2=1 3=1 4=1 5=0 6=2359296 -BatchNorm bn5a_branch2b 1 1 res5a_branch2b res5a_branch2b_bn5a_branch2b 0=512 -Scale scale5a_branch2b 1 1 res5a_branch2b_bn5a_branch2b res5a_branch2b_scale5a_branch2b 0=512 1=1 -ReLU res5a_branch2b_relu 1 1 res5a_branch2b_scale5a_branch2b res5a_branch2b_res5a_branch2b_relu -Convolution res5a_branch2c 1 1 res5a_branch2b_res5a_branch2b_relu res5a_branch2c 0=2048 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm bn5a_branch2c 1 1 res5a_branch2c res5a_branch2c_bn5a_branch2c 0=2048 -Scale scale5a_branch2c 1 1 res5a_branch2c_bn5a_branch2c res5a_branch2c_scale5a_branch2c 0=2048 1=1 -Eltwise res5a 2 1 res5a_branch1_scale5a_branch1 res5a_branch2c_scale5a_branch2c res5a 0=1 -23301=0 -ReLU res5a_relu 1 1 res5a res5a_res5a_relu -Split splitncnn_14 1 2 res5a_res5a_relu res5a_res5a_relu_splitncnn_0 res5a_res5a_relu_splitncnn_1 -Convolution res5b_branch2a 1 1 res5a_res5a_relu_splitncnn_1 res5b_branch2a 0=512 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm bn5b_branch2a 1 1 res5b_branch2a res5b_branch2a_bn5b_branch2a 0=512 -Scale scale5b_branch2a 1 1 res5b_branch2a_bn5b_branch2a res5b_branch2a_scale5b_branch2a 0=512 1=1 -ReLU res5b_branch2a_relu 1 1 res5b_branch2a_scale5b_branch2a res5b_branch2a_res5b_branch2a_relu -Convolution res5b_branch2b 1 1 res5b_branch2a_res5b_branch2a_relu res5b_branch2b 0=512 1=3 2=1 3=1 4=1 5=0 6=2359296 -BatchNorm bn5b_branch2b 1 1 res5b_branch2b res5b_branch2b_bn5b_branch2b 0=512 -Scale scale5b_branch2b 1 1 res5b_branch2b_bn5b_branch2b res5b_branch2b_scale5b_branch2b 0=512 1=1 -ReLU res5b_branch2b_relu 1 1 res5b_branch2b_scale5b_branch2b res5b_branch2b_res5b_branch2b_relu -Convolution res5b_branch2c 1 1 res5b_branch2b_res5b_branch2b_relu res5b_branch2c 0=2048 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm bn5b_branch2c 1 1 res5b_branch2c res5b_branch2c_bn5b_branch2c 0=2048 -Scale scale5b_branch2c 1 1 res5b_branch2c_bn5b_branch2c res5b_branch2c_scale5b_branch2c 0=2048 1=1 -Eltwise res5b 2 1 res5a_res5a_relu_splitncnn_0 res5b_branch2c_scale5b_branch2c res5b 0=1 -23301=0 -ReLU res5b_relu 1 1 res5b res5b_res5b_relu -Split splitncnn_15 1 2 res5b_res5b_relu res5b_res5b_relu_splitncnn_0 res5b_res5b_relu_splitncnn_1 -Convolution res5c_branch2a 1 1 res5b_res5b_relu_splitncnn_1 res5c_branch2a 0=512 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm bn5c_branch2a 1 1 res5c_branch2a res5c_branch2a_bn5c_branch2a 0=512 -Scale scale5c_branch2a 1 1 res5c_branch2a_bn5c_branch2a res5c_branch2a_scale5c_branch2a 0=512 1=1 -ReLU res5c_branch2a_relu 1 1 res5c_branch2a_scale5c_branch2a res5c_branch2a_res5c_branch2a_relu -Convolution res5c_branch2b 1 1 res5c_branch2a_res5c_branch2a_relu res5c_branch2b 0=512 1=3 2=1 3=1 4=1 5=0 6=2359296 -BatchNorm bn5c_branch2b 1 1 res5c_branch2b res5c_branch2b_bn5c_branch2b 0=512 -Scale scale5c_branch2b 1 1 res5c_branch2b_bn5c_branch2b res5c_branch2b_scale5c_branch2b 0=512 1=1 -ReLU res5c_branch2b_relu 1 1 res5c_branch2b_scale5c_branch2b res5c_branch2b_res5c_branch2b_relu -Convolution res5c_branch2c 1 1 res5c_branch2b_res5c_branch2b_relu res5c_branch2c 0=2048 1=1 2=1 3=1 4=0 5=0 6=1048576 -BatchNorm bn5c_branch2c 1 1 res5c_branch2c res5c_branch2c_bn5c_branch2c 0=2048 -Scale scale5c_branch2c 1 1 res5c_branch2c_bn5c_branch2c res5c_branch2c_scale5c_branch2c 0=2048 1=1 -Eltwise res5c 2 1 res5b_res5b_relu_splitncnn_0 res5c_branch2c_scale5c_branch2c res5c 0=1 -23301=0 -ReLU res5c_relu 1 1 res5c res5c_res5c_relu -Pooling pool5 1 1 res5c_res5c_relu pool5 0=1 1=7 2=1 3=0 4=0 -InnerProduct fc1000 1 1 pool5 fc1000 0=1000 1=1 2=2048000 -Softmax prob 1 1 fc1000 prob 0=0 +106 122 +Input data 0 1 data 0=224 1=224 2=3 +Convolution conv1 1 1 data conv1_conv1_relu 0=64 1=7 3=2 4=3 5=1 6=9408 9=1 +Pooling pool1 1 1 conv1_conv1_relu pool1 1=3 2=2 +Split splitncnn_0 1 2 pool1 pool1_splitncnn_0 pool1_splitncnn_1 +Convolution res2a_branch1 1 1 pool1_splitncnn_1 res2a_branch1_scale2a_branch1 0=256 1=1 5=1 6=16384 +Convolution res2a_branch2a 1 1 pool1_splitncnn_0 res2a_branch2a_res2a_branch2a_relu 0=64 1=1 5=1 6=4096 9=1 +Convolution res2a_branch2b 1 1 res2a_branch2a_res2a_branch2a_relu res2a_branch2b_res2a_branch2b_relu 0=64 1=3 4=1 5=1 6=36864 9=1 +Convolution res2a_branch2c 1 1 res2a_branch2b_res2a_branch2b_relu res2a_branch2c_scale2a_branch2c 0=256 1=1 5=1 6=16384 +Eltwise res2a 2 1 res2a_branch1_scale2a_branch1 res2a_branch2c_scale2a_branch2c res2a 0=1 +ReLU res2a_relu 1 1 res2a res2a_res2a_relu +Split splitncnn_1 1 2 res2a_res2a_relu res2a_res2a_relu_splitncnn_0 res2a_res2a_relu_splitncnn_1 +Convolution res2b_branch2a 1 1 res2a_res2a_relu_splitncnn_1 res2b_branch2a_res2b_branch2a_relu 0=64 1=1 5=1 6=16384 9=1 +Convolution res2b_branch2b 1 1 res2b_branch2a_res2b_branch2a_relu res2b_branch2b_res2b_branch2b_relu 0=64 1=3 4=1 5=1 6=36864 9=1 +Convolution res2b_branch2c 1 1 res2b_branch2b_res2b_branch2b_relu res2b_branch2c_scale2b_branch2c 0=256 1=1 5=1 6=16384 +Eltwise res2b 2 1 res2a_res2a_relu_splitncnn_0 res2b_branch2c_scale2b_branch2c res2b 0=1 +ReLU res2b_relu 1 1 res2b res2b_res2b_relu +Split splitncnn_2 1 2 res2b_res2b_relu res2b_res2b_relu_splitncnn_0 res2b_res2b_relu_splitncnn_1 +Convolution res2c_branch2a 1 1 res2b_res2b_relu_splitncnn_1 res2c_branch2a_res2c_branch2a_relu 0=64 1=1 5=1 6=16384 9=1 +Convolution res2c_branch2b 1 1 res2c_branch2a_res2c_branch2a_relu res2c_branch2b_res2c_branch2b_relu 0=64 1=3 4=1 5=1 6=36864 9=1 +Convolution res2c_branch2c 1 1 res2c_branch2b_res2c_branch2b_relu res2c_branch2c_scale2c_branch2c 0=256 1=1 5=1 6=16384 +Eltwise res2c 2 1 res2b_res2b_relu_splitncnn_0 res2c_branch2c_scale2c_branch2c res2c 0=1 +ReLU res2c_relu 1 1 res2c res2c_res2c_relu +Split splitncnn_3 1 2 res2c_res2c_relu res2c_res2c_relu_splitncnn_0 res2c_res2c_relu_splitncnn_1 +Convolution res3a_branch1 1 1 res2c_res2c_relu_splitncnn_1 res3a_branch1_scale3a_branch1 0=512 1=1 3=2 5=1 6=131072 +Convolution res3a_branch2a 1 1 res2c_res2c_relu_splitncnn_0 res3a_branch2a_res3a_branch2a_relu 0=128 1=1 3=2 5=1 6=32768 9=1 +Convolution res3a_branch2b 1 1 res3a_branch2a_res3a_branch2a_relu res3a_branch2b_res3a_branch2b_relu 0=128 1=3 4=1 5=1 6=147456 9=1 +Convolution res3a_branch2c 1 1 res3a_branch2b_res3a_branch2b_relu res3a_branch2c_scale3a_branch2c 0=512 1=1 5=1 6=65536 +Eltwise res3a 2 1 res3a_branch1_scale3a_branch1 res3a_branch2c_scale3a_branch2c res3a 0=1 +ReLU res3a_relu 1 1 res3a res3a_res3a_relu +Split splitncnn_4 1 2 res3a_res3a_relu res3a_res3a_relu_splitncnn_0 res3a_res3a_relu_splitncnn_1 +Convolution res3b_branch2a 1 1 res3a_res3a_relu_splitncnn_1 res3b_branch2a_res3b_branch2a_relu 0=128 1=1 5=1 6=65536 9=1 +Convolution res3b_branch2b 1 1 res3b_branch2a_res3b_branch2a_relu res3b_branch2b_res3b_branch2b_relu 0=128 1=3 4=1 5=1 6=147456 9=1 +Convolution res3b_branch2c 1 1 res3b_branch2b_res3b_branch2b_relu res3b_branch2c_scale3b_branch2c 0=512 1=1 5=1 6=65536 +Eltwise res3b 2 1 res3a_res3a_relu_splitncnn_0 res3b_branch2c_scale3b_branch2c res3b 0=1 +ReLU res3b_relu 1 1 res3b res3b_res3b_relu +Split splitncnn_5 1 2 res3b_res3b_relu res3b_res3b_relu_splitncnn_0 res3b_res3b_relu_splitncnn_1 +Convolution res3c_branch2a 1 1 res3b_res3b_relu_splitncnn_1 res3c_branch2a_res3c_branch2a_relu 0=128 1=1 5=1 6=65536 9=1 +Convolution res3c_branch2b 1 1 res3c_branch2a_res3c_branch2a_relu res3c_branch2b_res3c_branch2b_relu 0=128 1=3 4=1 5=1 6=147456 9=1 +Convolution res3c_branch2c 1 1 res3c_branch2b_res3c_branch2b_relu res3c_branch2c_scale3c_branch2c 0=512 1=1 5=1 6=65536 +Eltwise res3c 2 1 res3b_res3b_relu_splitncnn_0 res3c_branch2c_scale3c_branch2c res3c 0=1 +ReLU res3c_relu 1 1 res3c res3c_res3c_relu +Split splitncnn_6 1 2 res3c_res3c_relu res3c_res3c_relu_splitncnn_0 res3c_res3c_relu_splitncnn_1 +Convolution res3d_branch2a 1 1 res3c_res3c_relu_splitncnn_1 res3d_branch2a_res3d_branch2a_relu 0=128 1=1 5=1 6=65536 9=1 +Convolution res3d_branch2b 1 1 res3d_branch2a_res3d_branch2a_relu res3d_branch2b_res3d_branch2b_relu 0=128 1=3 4=1 5=1 6=147456 9=1 +Convolution res3d_branch2c 1 1 res3d_branch2b_res3d_branch2b_relu res3d_branch2c_scale3d_branch2c 0=512 1=1 5=1 6=65536 +Eltwise res3d 2 1 res3c_res3c_relu_splitncnn_0 res3d_branch2c_scale3d_branch2c res3d 0=1 +ReLU res3d_relu 1 1 res3d res3d_res3d_relu +Split splitncnn_7 1 2 res3d_res3d_relu res3d_res3d_relu_splitncnn_0 res3d_res3d_relu_splitncnn_1 +Convolution res4a_branch1 1 1 res3d_res3d_relu_splitncnn_1 res4a_branch1_scale4a_branch1 0=1024 1=1 3=2 5=1 6=524288 +Convolution res4a_branch2a 1 1 res3d_res3d_relu_splitncnn_0 res4a_branch2a_res4a_branch2a_relu 0=256 1=1 3=2 5=1 6=131072 9=1 +Convolution res4a_branch2b 1 1 res4a_branch2a_res4a_branch2a_relu res4a_branch2b_res4a_branch2b_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4a_branch2c 1 1 res4a_branch2b_res4a_branch2b_relu res4a_branch2c_scale4a_branch2c 0=1024 1=1 5=1 6=262144 +Eltwise res4a 2 1 res4a_branch1_scale4a_branch1 res4a_branch2c_scale4a_branch2c res4a 0=1 +ReLU res4a_relu 1 1 res4a res4a_res4a_relu +Split splitncnn_8 1 2 res4a_res4a_relu res4a_res4a_relu_splitncnn_0 res4a_res4a_relu_splitncnn_1 +Convolution res4b_branch2a 1 1 res4a_res4a_relu_splitncnn_1 res4b_branch2a_res4b_branch2a_relu 0=256 1=1 5=1 6=262144 9=1 +Convolution res4b_branch2b 1 1 res4b_branch2a_res4b_branch2a_relu res4b_branch2b_res4b_branch2b_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4b_branch2c 1 1 res4b_branch2b_res4b_branch2b_relu res4b_branch2c_scale4b_branch2c 0=1024 1=1 5=1 6=262144 +Eltwise res4b 2 1 res4a_res4a_relu_splitncnn_0 res4b_branch2c_scale4b_branch2c res4b 0=1 +ReLU res4b_relu 1 1 res4b res4b_res4b_relu +Split splitncnn_9 1 2 res4b_res4b_relu res4b_res4b_relu_splitncnn_0 res4b_res4b_relu_splitncnn_1 +Convolution res4c_branch2a 1 1 res4b_res4b_relu_splitncnn_1 res4c_branch2a_res4c_branch2a_relu 0=256 1=1 5=1 6=262144 9=1 +Convolution res4c_branch2b 1 1 res4c_branch2a_res4c_branch2a_relu res4c_branch2b_res4c_branch2b_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4c_branch2c 1 1 res4c_branch2b_res4c_branch2b_relu res4c_branch2c_scale4c_branch2c 0=1024 1=1 5=1 6=262144 +Eltwise res4c 2 1 res4b_res4b_relu_splitncnn_0 res4c_branch2c_scale4c_branch2c res4c 0=1 +ReLU res4c_relu 1 1 res4c res4c_res4c_relu +Split splitncnn_10 1 2 res4c_res4c_relu res4c_res4c_relu_splitncnn_0 res4c_res4c_relu_splitncnn_1 +Convolution res4d_branch2a 1 1 res4c_res4c_relu_splitncnn_1 res4d_branch2a_res4d_branch2a_relu 0=256 1=1 5=1 6=262144 9=1 +Convolution res4d_branch2b 1 1 res4d_branch2a_res4d_branch2a_relu res4d_branch2b_res4d_branch2b_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4d_branch2c 1 1 res4d_branch2b_res4d_branch2b_relu res4d_branch2c_scale4d_branch2c 0=1024 1=1 5=1 6=262144 +Eltwise res4d 2 1 res4c_res4c_relu_splitncnn_0 res4d_branch2c_scale4d_branch2c res4d 0=1 +ReLU res4d_relu 1 1 res4d res4d_res4d_relu +Split splitncnn_11 1 2 res4d_res4d_relu res4d_res4d_relu_splitncnn_0 res4d_res4d_relu_splitncnn_1 +Convolution res4e_branch2a 1 1 res4d_res4d_relu_splitncnn_1 res4e_branch2a_res4e_branch2a_relu 0=256 1=1 5=1 6=262144 9=1 +Convolution res4e_branch2b 1 1 res4e_branch2a_res4e_branch2a_relu res4e_branch2b_res4e_branch2b_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4e_branch2c 1 1 res4e_branch2b_res4e_branch2b_relu res4e_branch2c_scale4e_branch2c 0=1024 1=1 5=1 6=262144 +Eltwise res4e 2 1 res4d_res4d_relu_splitncnn_0 res4e_branch2c_scale4e_branch2c res4e 0=1 +ReLU res4e_relu 1 1 res4e res4e_res4e_relu +Split splitncnn_12 1 2 res4e_res4e_relu res4e_res4e_relu_splitncnn_0 res4e_res4e_relu_splitncnn_1 +Convolution res4f_branch2a 1 1 res4e_res4e_relu_splitncnn_1 res4f_branch2a_res4f_branch2a_relu 0=256 1=1 5=1 6=262144 9=1 +Convolution res4f_branch2b 1 1 res4f_branch2a_res4f_branch2a_relu res4f_branch2b_res4f_branch2b_relu 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution res4f_branch2c 1 1 res4f_branch2b_res4f_branch2b_relu res4f_branch2c_scale4f_branch2c 0=1024 1=1 5=1 6=262144 +Eltwise res4f 2 1 res4e_res4e_relu_splitncnn_0 res4f_branch2c_scale4f_branch2c res4f 0=1 +ReLU res4f_relu 1 1 res4f res4f_res4f_relu +Split splitncnn_13 1 2 res4f_res4f_relu res4f_res4f_relu_splitncnn_0 res4f_res4f_relu_splitncnn_1 +Convolution res5a_branch1 1 1 res4f_res4f_relu_splitncnn_1 res5a_branch1_scale5a_branch1 0=2048 1=1 3=2 5=1 6=2097152 +Convolution res5a_branch2a 1 1 res4f_res4f_relu_splitncnn_0 res5a_branch2a_res5a_branch2a_relu 0=512 1=1 3=2 5=1 6=524288 9=1 +Convolution res5a_branch2b 1 1 res5a_branch2a_res5a_branch2a_relu res5a_branch2b_res5a_branch2b_relu 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution res5a_branch2c 1 1 res5a_branch2b_res5a_branch2b_relu res5a_branch2c_scale5a_branch2c 0=2048 1=1 5=1 6=1048576 +Eltwise res5a 2 1 res5a_branch1_scale5a_branch1 res5a_branch2c_scale5a_branch2c res5a 0=1 +ReLU res5a_relu 1 1 res5a res5a_res5a_relu +Split splitncnn_14 1 2 res5a_res5a_relu res5a_res5a_relu_splitncnn_0 res5a_res5a_relu_splitncnn_1 +Convolution res5b_branch2a 1 1 res5a_res5a_relu_splitncnn_1 res5b_branch2a_res5b_branch2a_relu 0=512 1=1 5=1 6=1048576 9=1 +Convolution res5b_branch2b 1 1 res5b_branch2a_res5b_branch2a_relu res5b_branch2b_res5b_branch2b_relu 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution res5b_branch2c 1 1 res5b_branch2b_res5b_branch2b_relu res5b_branch2c_scale5b_branch2c 0=2048 1=1 5=1 6=1048576 +Eltwise res5b 2 1 res5a_res5a_relu_splitncnn_0 res5b_branch2c_scale5b_branch2c res5b 0=1 +ReLU res5b_relu 1 1 res5b res5b_res5b_relu +Split splitncnn_15 1 2 res5b_res5b_relu res5b_res5b_relu_splitncnn_0 res5b_res5b_relu_splitncnn_1 +Convolution res5c_branch2a 1 1 res5b_res5b_relu_splitncnn_1 res5c_branch2a_res5c_branch2a_relu 0=512 1=1 5=1 6=1048576 9=1 +Convolution res5c_branch2b 1 1 res5c_branch2a_res5c_branch2a_relu res5c_branch2b_res5c_branch2b_relu 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution res5c_branch2c 1 1 res5c_branch2b_res5c_branch2b_relu res5c_branch2c_scale5c_branch2c 0=2048 1=1 5=1 6=1048576 +Eltwise res5c 2 1 res5b_res5b_relu_splitncnn_0 res5c_branch2c_scale5c_branch2c res5c 0=1 +ReLU res5c_relu 1 1 res5c res5c_res5c_relu +Pooling pool5 1 1 res5c_res5c_relu pool5 0=1 1=7 +InnerProduct fc1000 1 1 pool5 fc1000 0=1000 1=1 2=2048000 +Softmax prob 1 1 fc1000 prob diff --git a/benchmark/shufflenet.param b/benchmark/shufflenet.param index eb61a8fad..aa250cd4e 100644 --- a/benchmark/shufflenet.param +++ b/benchmark/shufflenet.param @@ -1,236 +1,121 @@ 7767517 -234 250 -Input data 0 1 data 0=224 1=224 2=3 -Convolution conv1 1 1 data conv1 0=24 1=3 2=1 3=2 4=1 5=0 6=648 -BatchNorm conv1_bn 1 1 conv1 conv1_conv1_bn 0=24 -Scale conv1_scale 1 1 conv1_conv1_bn conv1_conv1_scale 0=24 1=1 -ReLU conv1_relu 1 1 conv1_conv1_scale conv1_conv1_relu -Pooling pool1 1 1 conv1_conv1_relu pool1 0=0 1=3 2=2 3=0 4=0 -Split splitncnn_0 1 2 pool1 pool1_splitncnn_0 pool1_splitncnn_1 -Pooling resx1_match_conv 1 1 pool1_splitncnn_1 resx1_match_conv 0=1 1=3 2=2 3=0 4=0 -Convolution resx1_conv1 1 1 pool1_splitncnn_0 resx1_conv1 0=54 1=1 2=1 3=1 4=0 5=0 6=1296 -BatchNorm resx1_conv1_bn 1 1 resx1_conv1 resx1_conv1_resx1_conv1_bn 0=54 -Scale resx1_conv1_scale 1 1 resx1_conv1_resx1_conv1_bn resx1_conv1_resx1_conv1_scale 0=54 1=1 -ReLU resx1_conv1_relu 1 1 resx1_conv1_resx1_conv1_scale resx1_conv1_resx1_conv1_relu -ConvolutionDepthWise resx1_conv2 1 1 resx1_conv1_resx1_conv1_relu resx1_conv2 0=54 1=3 2=1 3=2 4=1 5=0 6=486 7=54 -BatchNorm resx1_conv2_bn 1 1 resx1_conv2 resx1_conv2_resx1_conv2_bn 0=54 -Scale resx1_conv2_scale 1 1 resx1_conv2_resx1_conv2_bn resx1_conv2_resx1_conv2_scale 0=54 1=1 -ConvolutionDepthWise resx1_conv3 1 1 resx1_conv2_resx1_conv2_scale resx1_conv3 0=216 1=1 2=1 3=1 4=0 5=0 6=3888 7=3 -BatchNorm resx1_conv3_bn 1 1 resx1_conv3 resx1_conv3_resx1_conv3_bn 0=216 -Scale resx1_conv3_scale 1 1 resx1_conv3_resx1_conv3_bn resx1_conv3_resx1_conv3_scale 0=216 1=1 -Concat resx1_concat 2 1 resx1_match_conv resx1_conv3_resx1_conv3_scale resx1_concat 0=0 -ReLU resx1_concat_relu 1 1 resx1_concat resx1_concat_resx1_concat_relu -Split splitncnn_1 1 2 resx1_concat_resx1_concat_relu resx1_concat_resx1_concat_relu_splitncnn_0 resx1_concat_resx1_concat_relu_splitncnn_1 -ConvolutionDepthWise resx2_conv1 1 1 resx1_concat_resx1_concat_relu_splitncnn_1 resx2_conv1 0=60 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx2_conv1_bn 1 1 resx2_conv1 resx2_conv1_resx2_conv1_bn 0=60 -Scale resx2_conv1_scale 1 1 resx2_conv1_resx2_conv1_bn resx2_conv1_resx2_conv1_scale 0=60 1=1 -ReLU resx2_conv1_relu 1 1 resx2_conv1_resx2_conv1_scale resx2_conv1_resx2_conv1_relu -ShuffleChannel shuffle2 1 1 resx2_conv1_resx2_conv1_relu shuffle2 0=3 -ConvolutionDepthWise resx2_conv2 1 1 shuffle2 resx2_conv2 0=60 1=3 2=1 3=1 4=1 5=0 6=540 7=60 -BatchNorm resx2_conv2_bn 1 1 resx2_conv2 resx2_conv2_resx2_conv2_bn 0=60 -Scale resx2_conv2_scale 1 1 resx2_conv2_resx2_conv2_bn resx2_conv2_resx2_conv2_scale 0=60 1=1 -ConvolutionDepthWise resx2_conv3 1 1 resx2_conv2_resx2_conv2_scale resx2_conv3 0=240 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx2_conv3_bn 1 1 resx2_conv3 resx2_conv3_resx2_conv3_bn 0=240 -Scale resx2_conv3_scale 1 1 resx2_conv3_resx2_conv3_bn resx2_conv3_resx2_conv3_scale 0=240 1=1 -Eltwise resx2_elewise 2 1 resx1_concat_resx1_concat_relu_splitncnn_0 resx2_conv3_resx2_conv3_scale resx2_elewise 0=1 -23301=0 -ReLU resx2_elewise_relu 1 1 resx2_elewise resx2_elewise_resx2_elewise_relu -Split splitncnn_2 1 2 resx2_elewise_resx2_elewise_relu resx2_elewise_resx2_elewise_relu_splitncnn_0 resx2_elewise_resx2_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx3_conv1 1 1 resx2_elewise_resx2_elewise_relu_splitncnn_1 resx3_conv1 0=60 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx3_conv1_bn 1 1 resx3_conv1 resx3_conv1_resx3_conv1_bn 0=60 -Scale resx3_conv1_scale 1 1 resx3_conv1_resx3_conv1_bn resx3_conv1_resx3_conv1_scale 0=60 1=1 -ReLU resx3_conv1_relu 1 1 resx3_conv1_resx3_conv1_scale resx3_conv1_resx3_conv1_relu -ShuffleChannel shuffle3 1 1 resx3_conv1_resx3_conv1_relu shuffle3 0=3 -ConvolutionDepthWise resx3_conv2 1 1 shuffle3 resx3_conv2 0=60 1=3 2=1 3=1 4=1 5=0 6=540 7=60 -BatchNorm resx3_conv2_bn 1 1 resx3_conv2 resx3_conv2_resx3_conv2_bn 0=60 -Scale resx3_conv2_scale 1 1 resx3_conv2_resx3_conv2_bn resx3_conv2_resx3_conv2_scale 0=60 1=1 -ConvolutionDepthWise resx3_conv3 1 1 resx3_conv2_resx3_conv2_scale resx3_conv3 0=240 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx3_conv3_bn 1 1 resx3_conv3 resx3_conv3_resx3_conv3_bn 0=240 -Scale resx3_conv3_scale 1 1 resx3_conv3_resx3_conv3_bn resx3_conv3_resx3_conv3_scale 0=240 1=1 -Eltwise resx3_elewise 2 1 resx2_elewise_resx2_elewise_relu_splitncnn_0 resx3_conv3_resx3_conv3_scale resx3_elewise 0=1 -23301=0 -ReLU resx3_elewise_relu 1 1 resx3_elewise resx3_elewise_resx3_elewise_relu -Split splitncnn_3 1 2 resx3_elewise_resx3_elewise_relu resx3_elewise_resx3_elewise_relu_splitncnn_0 resx3_elewise_resx3_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx4_conv1 1 1 resx3_elewise_resx3_elewise_relu_splitncnn_1 resx4_conv1 0=60 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx4_conv1_bn 1 1 resx4_conv1 resx4_conv1_resx4_conv1_bn 0=60 -Scale resx4_conv1_scale 1 1 resx4_conv1_resx4_conv1_bn resx4_conv1_resx4_conv1_scale 0=60 1=1 -ReLU resx4_conv1_relu 1 1 resx4_conv1_resx4_conv1_scale resx4_conv1_resx4_conv1_relu -ShuffleChannel shuffle4 1 1 resx4_conv1_resx4_conv1_relu shuffle4 0=3 -ConvolutionDepthWise resx4_conv2 1 1 shuffle4 resx4_conv2 0=60 1=3 2=1 3=1 4=1 5=0 6=540 7=60 -BatchNorm resx4_conv2_bn 1 1 resx4_conv2 resx4_conv2_resx4_conv2_bn 0=60 -Scale resx4_conv2_scale 1 1 resx4_conv2_resx4_conv2_bn resx4_conv2_resx4_conv2_scale 0=60 1=1 -ConvolutionDepthWise resx4_conv3 1 1 resx4_conv2_resx4_conv2_scale resx4_conv3 0=240 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx4_conv3_bn 1 1 resx4_conv3 resx4_conv3_resx4_conv3_bn 0=240 -Scale resx4_conv3_scale 1 1 resx4_conv3_resx4_conv3_bn resx4_conv3_resx4_conv3_scale 0=240 1=1 -Eltwise resx4_elewise 2 1 resx3_elewise_resx3_elewise_relu_splitncnn_0 resx4_conv3_resx4_conv3_scale resx4_elewise 0=1 -23301=0 -ReLU resx4_elewise_relu 1 1 resx4_elewise resx4_elewise_resx4_elewise_relu -Split splitncnn_4 1 2 resx4_elewise_resx4_elewise_relu resx4_elewise_resx4_elewise_relu_splitncnn_0 resx4_elewise_resx4_elewise_relu_splitncnn_1 -Pooling resx5_match_conv 1 1 resx4_elewise_resx4_elewise_relu_splitncnn_1 resx5_match_conv 0=1 1=3 2=2 3=0 4=0 -ConvolutionDepthWise resx5_conv1 1 1 resx4_elewise_resx4_elewise_relu_splitncnn_0 resx5_conv1 0=60 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx5_conv1_bn 1 1 resx5_conv1 resx5_conv1_resx5_conv1_bn 0=60 -Scale resx5_conv1_scale 1 1 resx5_conv1_resx5_conv1_bn resx5_conv1_resx5_conv1_scale 0=60 1=1 -ReLU resx5_conv1_relu 1 1 resx5_conv1_resx5_conv1_scale resx5_conv1_resx5_conv1_relu -ShuffleChannel shuffle5 1 1 resx5_conv1_resx5_conv1_relu shuffle5 0=3 -ConvolutionDepthWise resx5_conv2 1 1 shuffle5 resx5_conv2 0=60 1=3 2=1 3=2 4=1 5=0 6=540 7=60 -BatchNorm resx5_conv2_bn 1 1 resx5_conv2 resx5_conv2_resx5_conv2_bn 0=60 -Scale resx5_conv2_scale 1 1 resx5_conv2_resx5_conv2_bn resx5_conv2_resx5_conv2_scale 0=60 1=1 -ConvolutionDepthWise resx5_conv3 1 1 resx5_conv2_resx5_conv2_scale resx5_conv3 0=240 1=1 2=1 3=1 4=0 5=0 6=4800 7=3 -BatchNorm resx5_conv3_bn 1 1 resx5_conv3 resx5_conv3_resx5_conv3_bn 0=240 -Scale resx5_conv3_scale 1 1 resx5_conv3_resx5_conv3_bn resx5_conv3_resx5_conv3_scale 0=240 1=1 -Concat resx5_concat 2 1 resx5_match_conv resx5_conv3_resx5_conv3_scale resx5_concat 0=0 -ReLU resx5_concat_relu 1 1 resx5_concat resx5_concat_resx5_concat_relu -Split splitncnn_5 1 2 resx5_concat_resx5_concat_relu resx5_concat_resx5_concat_relu_splitncnn_0 resx5_concat_resx5_concat_relu_splitncnn_1 -ConvolutionDepthWise resx6_conv1 1 1 resx5_concat_resx5_concat_relu_splitncnn_1 resx6_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx6_conv1_bn 1 1 resx6_conv1 resx6_conv1_resx6_conv1_bn 0=120 -Scale resx6_conv1_scale 1 1 resx6_conv1_resx6_conv1_bn resx6_conv1_resx6_conv1_scale 0=120 1=1 -ReLU resx6_conv1_relu 1 1 resx6_conv1_resx6_conv1_scale resx6_conv1_resx6_conv1_relu -ShuffleChannel shuffle6 1 1 resx6_conv1_resx6_conv1_relu shuffle6 0=3 -ConvolutionDepthWise resx6_conv2 1 1 shuffle6 resx6_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx6_conv2_bn 1 1 resx6_conv2 resx6_conv2_resx6_conv2_bn 0=120 -Scale resx6_conv2_scale 1 1 resx6_conv2_resx6_conv2_bn resx6_conv2_resx6_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx6_conv3 1 1 resx6_conv2_resx6_conv2_scale resx6_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx6_conv3_bn 1 1 resx6_conv3 resx6_conv3_resx6_conv3_bn 0=480 -Scale resx6_conv3_scale 1 1 resx6_conv3_resx6_conv3_bn resx6_conv3_resx6_conv3_scale 0=480 1=1 -Eltwise resx6_elewise 2 1 resx5_concat_resx5_concat_relu_splitncnn_0 resx6_conv3_resx6_conv3_scale resx6_elewise 0=1 -23301=0 -ReLU resx6_elewise_relu 1 1 resx6_elewise resx6_elewise_resx6_elewise_relu -Split splitncnn_6 1 2 resx6_elewise_resx6_elewise_relu resx6_elewise_resx6_elewise_relu_splitncnn_0 resx6_elewise_resx6_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx7_conv1 1 1 resx6_elewise_resx6_elewise_relu_splitncnn_1 resx7_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx7_conv1_bn 1 1 resx7_conv1 resx7_conv1_resx7_conv1_bn 0=120 -Scale resx7_conv1_scale 1 1 resx7_conv1_resx7_conv1_bn resx7_conv1_resx7_conv1_scale 0=120 1=1 -ReLU resx7_conv1_relu 1 1 resx7_conv1_resx7_conv1_scale resx7_conv1_resx7_conv1_relu -ShuffleChannel shuffle7 1 1 resx7_conv1_resx7_conv1_relu shuffle7 0=3 -ConvolutionDepthWise resx7_conv2 1 1 shuffle7 resx7_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx7_conv2_bn 1 1 resx7_conv2 resx7_conv2_resx7_conv2_bn 0=120 -Scale resx7_conv2_scale 1 1 resx7_conv2_resx7_conv2_bn resx7_conv2_resx7_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx7_conv3 1 1 resx7_conv2_resx7_conv2_scale resx7_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx7_conv3_bn 1 1 resx7_conv3 resx7_conv3_resx7_conv3_bn 0=480 -Scale resx7_conv3_scale 1 1 resx7_conv3_resx7_conv3_bn resx7_conv3_resx7_conv3_scale 0=480 1=1 -Eltwise resx7_elewise 2 1 resx6_elewise_resx6_elewise_relu_splitncnn_0 resx7_conv3_resx7_conv3_scale resx7_elewise 0=1 -23301=0 -ReLU resx7_elewise_relu 1 1 resx7_elewise resx7_elewise_resx7_elewise_relu -Split splitncnn_7 1 2 resx7_elewise_resx7_elewise_relu resx7_elewise_resx7_elewise_relu_splitncnn_0 resx7_elewise_resx7_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx8_conv1 1 1 resx7_elewise_resx7_elewise_relu_splitncnn_1 resx8_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx8_conv1_bn 1 1 resx8_conv1 resx8_conv1_resx8_conv1_bn 0=120 -Scale resx8_conv1_scale 1 1 resx8_conv1_resx8_conv1_bn resx8_conv1_resx8_conv1_scale 0=120 1=1 -ReLU resx8_conv1_relu 1 1 resx8_conv1_resx8_conv1_scale resx8_conv1_resx8_conv1_relu -ShuffleChannel shuffle8 1 1 resx8_conv1_resx8_conv1_relu shuffle8 0=3 -ConvolutionDepthWise resx8_conv2 1 1 shuffle8 resx8_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx8_conv2_bn 1 1 resx8_conv2 resx8_conv2_resx8_conv2_bn 0=120 -Scale resx8_conv2_scale 1 1 resx8_conv2_resx8_conv2_bn resx8_conv2_resx8_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx8_conv3 1 1 resx8_conv2_resx8_conv2_scale resx8_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx8_conv3_bn 1 1 resx8_conv3 resx8_conv3_resx8_conv3_bn 0=480 -Scale resx8_conv3_scale 1 1 resx8_conv3_resx8_conv3_bn resx8_conv3_resx8_conv3_scale 0=480 1=1 -Eltwise resx8_elewise 2 1 resx7_elewise_resx7_elewise_relu_splitncnn_0 resx8_conv3_resx8_conv3_scale resx8_elewise 0=1 -23301=0 -ReLU resx8_elewise_relu 1 1 resx8_elewise resx8_elewise_resx8_elewise_relu -Split splitncnn_8 1 2 resx8_elewise_resx8_elewise_relu resx8_elewise_resx8_elewise_relu_splitncnn_0 resx8_elewise_resx8_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx9_conv1 1 1 resx8_elewise_resx8_elewise_relu_splitncnn_1 resx9_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx9_conv1_bn 1 1 resx9_conv1 resx9_conv1_resx9_conv1_bn 0=120 -Scale resx9_conv1_scale 1 1 resx9_conv1_resx9_conv1_bn resx9_conv1_resx9_conv1_scale 0=120 1=1 -ReLU resx9_conv1_relu 1 1 resx9_conv1_resx9_conv1_scale resx9_conv1_resx9_conv1_relu -ShuffleChannel shuffle9 1 1 resx9_conv1_resx9_conv1_relu shuffle9 0=3 -ConvolutionDepthWise resx9_conv2 1 1 shuffle9 resx9_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx9_conv2_bn 1 1 resx9_conv2 resx9_conv2_resx9_conv2_bn 0=120 -Scale resx9_conv2_scale 1 1 resx9_conv2_resx9_conv2_bn resx9_conv2_resx9_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx9_conv3 1 1 resx9_conv2_resx9_conv2_scale resx9_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx9_conv3_bn 1 1 resx9_conv3 resx9_conv3_resx9_conv3_bn 0=480 -Scale resx9_conv3_scale 1 1 resx9_conv3_resx9_conv3_bn resx9_conv3_resx9_conv3_scale 0=480 1=1 -Eltwise resx9_elewise 2 1 resx8_elewise_resx8_elewise_relu_splitncnn_0 resx9_conv3_resx9_conv3_scale resx9_elewise 0=1 -23301=0 -ReLU resx9_elewise_relu 1 1 resx9_elewise resx9_elewise_resx9_elewise_relu -Split splitncnn_9 1 2 resx9_elewise_resx9_elewise_relu resx9_elewise_resx9_elewise_relu_splitncnn_0 resx9_elewise_resx9_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx10_conv1 1 1 resx9_elewise_resx9_elewise_relu_splitncnn_1 resx10_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx10_conv1_bn 1 1 resx10_conv1 resx10_conv1_resx10_conv1_bn 0=120 -Scale resx10_conv1_scale 1 1 resx10_conv1_resx10_conv1_bn resx10_conv1_resx10_conv1_scale 0=120 1=1 -ReLU resx10_conv1_relu 1 1 resx10_conv1_resx10_conv1_scale resx10_conv1_resx10_conv1_relu -ShuffleChannel shuffle10 1 1 resx10_conv1_resx10_conv1_relu shuffle10 0=3 -ConvolutionDepthWise resx10_conv2 1 1 shuffle10 resx10_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx10_conv2_bn 1 1 resx10_conv2 resx10_conv2_resx10_conv2_bn 0=120 -Scale resx10_conv2_scale 1 1 resx10_conv2_resx10_conv2_bn resx10_conv2_resx10_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx10_conv3 1 1 resx10_conv2_resx10_conv2_scale resx10_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx10_conv3_bn 1 1 resx10_conv3 resx10_conv3_resx10_conv3_bn 0=480 -Scale resx10_conv3_scale 1 1 resx10_conv3_resx10_conv3_bn resx10_conv3_resx10_conv3_scale 0=480 1=1 -Eltwise resx10_elewise 2 1 resx9_elewise_resx9_elewise_relu_splitncnn_0 resx10_conv3_resx10_conv3_scale resx10_elewise 0=1 -23301=0 -ReLU resx10_elewise_relu 1 1 resx10_elewise resx10_elewise_resx10_elewise_relu -Split splitncnn_10 1 2 resx10_elewise_resx10_elewise_relu resx10_elewise_resx10_elewise_relu_splitncnn_0 resx10_elewise_resx10_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx11_conv1 1 1 resx10_elewise_resx10_elewise_relu_splitncnn_1 resx11_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx11_conv1_bn 1 1 resx11_conv1 resx11_conv1_resx11_conv1_bn 0=120 -Scale resx11_conv1_scale 1 1 resx11_conv1_resx11_conv1_bn resx11_conv1_resx11_conv1_scale 0=120 1=1 -ReLU resx11_conv1_relu 1 1 resx11_conv1_resx11_conv1_scale resx11_conv1_resx11_conv1_relu -ShuffleChannel shuffle11 1 1 resx11_conv1_resx11_conv1_relu shuffle11 0=3 -ConvolutionDepthWise resx11_conv2 1 1 shuffle11 resx11_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx11_conv2_bn 1 1 resx11_conv2 resx11_conv2_resx11_conv2_bn 0=120 -Scale resx11_conv2_scale 1 1 resx11_conv2_resx11_conv2_bn resx11_conv2_resx11_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx11_conv3 1 1 resx11_conv2_resx11_conv2_scale resx11_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx11_conv3_bn 1 1 resx11_conv3 resx11_conv3_resx11_conv3_bn 0=480 -Scale resx11_conv3_scale 1 1 resx11_conv3_resx11_conv3_bn resx11_conv3_resx11_conv3_scale 0=480 1=1 -Eltwise resx11_elewise 2 1 resx10_elewise_resx10_elewise_relu_splitncnn_0 resx11_conv3_resx11_conv3_scale resx11_elewise 0=1 -23301=0 -ReLU resx11_elewise_relu 1 1 resx11_elewise resx11_elewise_resx11_elewise_relu -Split splitncnn_11 1 2 resx11_elewise_resx11_elewise_relu resx11_elewise_resx11_elewise_relu_splitncnn_0 resx11_elewise_resx11_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx12_conv1 1 1 resx11_elewise_resx11_elewise_relu_splitncnn_1 resx12_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx12_conv1_bn 1 1 resx12_conv1 resx12_conv1_resx12_conv1_bn 0=120 -Scale resx12_conv1_scale 1 1 resx12_conv1_resx12_conv1_bn resx12_conv1_resx12_conv1_scale 0=120 1=1 -ReLU resx12_conv1_relu 1 1 resx12_conv1_resx12_conv1_scale resx12_conv1_resx12_conv1_relu -ShuffleChannel shuffle12 1 1 resx12_conv1_resx12_conv1_relu shuffle12 0=3 -ConvolutionDepthWise resx12_conv2 1 1 shuffle12 resx12_conv2 0=120 1=3 2=1 3=1 4=1 5=0 6=1080 7=120 -BatchNorm resx12_conv2_bn 1 1 resx12_conv2 resx12_conv2_resx12_conv2_bn 0=120 -Scale resx12_conv2_scale 1 1 resx12_conv2_resx12_conv2_bn resx12_conv2_resx12_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx12_conv3 1 1 resx12_conv2_resx12_conv2_scale resx12_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx12_conv3_bn 1 1 resx12_conv3 resx12_conv3_resx12_conv3_bn 0=480 -Scale resx12_conv3_scale 1 1 resx12_conv3_resx12_conv3_bn resx12_conv3_resx12_conv3_scale 0=480 1=1 -Eltwise resx12_elewise 2 1 resx11_elewise_resx11_elewise_relu_splitncnn_0 resx12_conv3_resx12_conv3_scale resx12_elewise 0=1 -23301=0 -ReLU resx12_elewise_relu 1 1 resx12_elewise resx12_elewise_resx12_elewise_relu -Split splitncnn_12 1 2 resx12_elewise_resx12_elewise_relu resx12_elewise_resx12_elewise_relu_splitncnn_0 resx12_elewise_resx12_elewise_relu_splitncnn_1 -Pooling resx13_match_conv 1 1 resx12_elewise_resx12_elewise_relu_splitncnn_1 resx13_match_conv 0=1 1=3 2=2 3=0 4=0 -ConvolutionDepthWise resx13_conv1 1 1 resx12_elewise_resx12_elewise_relu_splitncnn_0 resx13_conv1 0=120 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx13_conv1_bn 1 1 resx13_conv1 resx13_conv1_resx13_conv1_bn 0=120 -Scale resx13_conv1_scale 1 1 resx13_conv1_resx13_conv1_bn resx13_conv1_resx13_conv1_scale 0=120 1=1 -ReLU resx13_conv1_relu 1 1 resx13_conv1_resx13_conv1_scale resx13_conv1_resx13_conv1_relu -ShuffleChannel shuffle13 1 1 resx13_conv1_resx13_conv1_relu shuffle13 0=3 -ConvolutionDepthWise resx13_conv2 1 1 shuffle13 resx13_conv2 0=120 1=3 2=1 3=2 4=1 5=0 6=1080 7=120 -BatchNorm resx13_conv2_bn 1 1 resx13_conv2 resx13_conv2_resx13_conv2_bn 0=120 -Scale resx13_conv2_scale 1 1 resx13_conv2_resx13_conv2_bn resx13_conv2_resx13_conv2_scale 0=120 1=1 -ConvolutionDepthWise resx13_conv3 1 1 resx13_conv2_resx13_conv2_scale resx13_conv3 0=480 1=1 2=1 3=1 4=0 5=0 6=19200 7=3 -BatchNorm resx13_conv3_bn 1 1 resx13_conv3 resx13_conv3_resx13_conv3_bn 0=480 -Scale resx13_conv3_scale 1 1 resx13_conv3_resx13_conv3_bn resx13_conv3_resx13_conv3_scale 0=480 1=1 -Concat resx13_concat 2 1 resx13_match_conv resx13_conv3_resx13_conv3_scale resx13_concat 0=0 -ReLU resx13_concat_relu 1 1 resx13_concat resx13_concat_resx13_concat_relu -Split splitncnn_13 1 2 resx13_concat_resx13_concat_relu resx13_concat_resx13_concat_relu_splitncnn_0 resx13_concat_resx13_concat_relu_splitncnn_1 -ConvolutionDepthWise resx14_conv1 1 1 resx13_concat_resx13_concat_relu_splitncnn_1 resx14_conv1 0=240 1=1 2=1 3=1 4=0 5=0 6=76800 7=3 -BatchNorm resx14_conv1_bn 1 1 resx14_conv1 resx14_conv1_resx14_conv1_bn 0=240 -Scale resx14_conv1_scale 1 1 resx14_conv1_resx14_conv1_bn resx14_conv1_resx14_conv1_scale 0=240 1=1 -ReLU resx14_conv1_relu 1 1 resx14_conv1_resx14_conv1_scale resx14_conv1_resx14_conv1_relu -ShuffleChannel shuffle14 1 1 resx14_conv1_resx14_conv1_relu shuffle14 0=3 -ConvolutionDepthWise resx14_conv2 1 1 shuffle14 resx14_conv2 0=240 1=3 2=1 3=1 4=1 5=0 6=2160 7=240 -BatchNorm resx14_conv2_bn 1 1 resx14_conv2 resx14_conv2_resx14_conv2_bn 0=240 -Scale resx14_conv2_scale 1 1 resx14_conv2_resx14_conv2_bn resx14_conv2_resx14_conv2_scale 0=240 1=1 -ConvolutionDepthWise resx14_conv3 1 1 resx14_conv2_resx14_conv2_scale resx14_conv3 0=960 1=1 2=1 3=1 4=0 5=0 6=76800 7=3 -BatchNorm resx14_conv3_bn 1 1 resx14_conv3 resx14_conv3_resx14_conv3_bn 0=960 -Scale resx14_conv3_scale 1 1 resx14_conv3_resx14_conv3_bn resx14_conv3_resx14_conv3_scale 0=960 1=1 -Eltwise resx14_elewise 2 1 resx13_concat_resx13_concat_relu_splitncnn_0 resx14_conv3_resx14_conv3_scale resx14_elewise 0=1 -23301=0 -ReLU resx14_elewise_relu 1 1 resx14_elewise resx14_elewise_resx14_elewise_relu -Split splitncnn_14 1 2 resx14_elewise_resx14_elewise_relu resx14_elewise_resx14_elewise_relu_splitncnn_0 resx14_elewise_resx14_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx15_conv1 1 1 resx14_elewise_resx14_elewise_relu_splitncnn_1 resx15_conv1 0=240 1=1 2=1 3=1 4=0 5=0 6=76800 7=3 -BatchNorm resx15_conv1_bn 1 1 resx15_conv1 resx15_conv1_resx15_conv1_bn 0=240 -Scale resx15_conv1_scale 1 1 resx15_conv1_resx15_conv1_bn resx15_conv1_resx15_conv1_scale 0=240 1=1 -ReLU resx15_conv1_relu 1 1 resx15_conv1_resx15_conv1_scale resx15_conv1_resx15_conv1_relu -ShuffleChannel shuffle15 1 1 resx15_conv1_resx15_conv1_relu shuffle15 0=3 -ConvolutionDepthWise resx15_conv2 1 1 shuffle15 resx15_conv2 0=240 1=3 2=1 3=1 4=1 5=0 6=2160 7=240 -BatchNorm resx15_conv2_bn 1 1 resx15_conv2 resx15_conv2_resx15_conv2_bn 0=240 -Scale resx15_conv2_scale 1 1 resx15_conv2_resx15_conv2_bn resx15_conv2_resx15_conv2_scale 0=240 1=1 -ConvolutionDepthWise resx15_conv3 1 1 resx15_conv2_resx15_conv2_scale resx15_conv3 0=960 1=1 2=1 3=1 4=0 5=0 6=76800 7=3 -BatchNorm resx15_conv3_bn 1 1 resx15_conv3 resx15_conv3_resx15_conv3_bn 0=960 -Scale resx15_conv3_scale 1 1 resx15_conv3_resx15_conv3_bn resx15_conv3_resx15_conv3_scale 0=960 1=1 -Eltwise resx15_elewise 2 1 resx14_elewise_resx14_elewise_relu_splitncnn_0 resx15_conv3_resx15_conv3_scale resx15_elewise 0=1 -23301=0 -ReLU resx15_elewise_relu 1 1 resx15_elewise resx15_elewise_resx15_elewise_relu -Split splitncnn_15 1 2 resx15_elewise_resx15_elewise_relu resx15_elewise_resx15_elewise_relu_splitncnn_0 resx15_elewise_resx15_elewise_relu_splitncnn_1 -ConvolutionDepthWise resx16_conv1 1 1 resx15_elewise_resx15_elewise_relu_splitncnn_1 resx16_conv1 0=240 1=1 2=1 3=1 4=0 5=0 6=76800 7=3 -BatchNorm resx16_conv1_bn 1 1 resx16_conv1 resx16_conv1_resx16_conv1_bn 0=240 -Scale resx16_conv1_scale 1 1 resx16_conv1_resx16_conv1_bn resx16_conv1_resx16_conv1_scale 0=240 1=1 -ReLU resx16_conv1_relu 1 1 resx16_conv1_resx16_conv1_scale resx16_conv1_resx16_conv1_relu -ShuffleChannel shuffle16 1 1 resx16_conv1_resx16_conv1_relu shuffle16 0=3 -ConvolutionDepthWise resx16_conv2 1 1 shuffle16 resx16_conv2 0=240 1=3 2=1 3=1 4=1 5=0 6=2160 7=240 -BatchNorm resx16_conv2_bn 1 1 resx16_conv2 resx16_conv2_resx16_conv2_bn 0=240 -Scale resx16_conv2_scale 1 1 resx16_conv2_resx16_conv2_bn resx16_conv2_resx16_conv2_scale 0=240 1=1 -ConvolutionDepthWise resx16_conv3 1 1 resx16_conv2_resx16_conv2_scale resx16_conv3 0=960 1=1 2=1 3=1 4=0 5=0 6=76800 7=3 -BatchNorm resx16_conv3_bn 1 1 resx16_conv3 resx16_conv3_resx16_conv3_bn 0=960 -Scale resx16_conv3_scale 1 1 resx16_conv3_resx16_conv3_bn resx16_conv3_resx16_conv3_scale 0=960 1=1 -Eltwise resx16_elewise 2 1 resx15_elewise_resx15_elewise_relu_splitncnn_0 resx16_conv3_resx16_conv3_scale resx16_elewise 0=1 -23301=0 -ReLU resx16_elewise_relu 1 1 resx16_elewise resx16_elewise_resx16_elewise_relu -Pooling pool_ave 1 1 resx16_elewise_resx16_elewise_relu pool_ave 0=1 1=0 2=1 3=0 4=1 -Convolution fc1000 1 1 pool_ave fc1000 0=1000 1=1 2=1 3=1 4=0 5=1 6=960000 +119 135 +Input data 0 1 data 0=224 1=224 2=3 +Convolution conv1 1 1 data conv1_conv1_relu 0=24 1=3 3=2 4=1 5=1 6=648 9=1 +Pooling pool1 1 1 conv1_conv1_relu pool1 1=3 2=2 +Split splitncnn_0 1 2 pool1 pool1_splitncnn_0 pool1_splitncnn_1 +Pooling resx1_match_conv 1 1 pool1_splitncnn_1 resx1_match_conv 0=1 1=3 2=2 +Convolution resx1_conv1 1 1 pool1_splitncnn_0 resx1_conv1_resx1_conv1_relu 0=54 1=1 5=1 6=1296 9=1 +ConvolutionDepthWise resx1_conv2 1 1 resx1_conv1_resx1_conv1_relu resx1_conv2_resx1_conv2_scale 0=54 1=3 3=2 4=1 5=1 6=486 7=54 +ConvolutionDepthWise resx1_conv3 1 1 resx1_conv2_resx1_conv2_scale resx1_conv3_resx1_conv3_scale 0=216 1=1 5=1 6=3888 7=3 +Concat resx1_concat 2 1 resx1_match_conv resx1_conv3_resx1_conv3_scale resx1_concat +ReLU resx1_concat_relu 1 1 resx1_concat resx1_concat_resx1_concat_relu +Split splitncnn_1 1 2 resx1_concat_resx1_concat_relu resx1_concat_resx1_concat_relu_splitncnn_0 resx1_concat_resx1_concat_relu_splitncnn_1 +ConvolutionDepthWise resx2_conv1 1 1 resx1_concat_resx1_concat_relu_splitncnn_1 resx2_conv1_resx2_conv1_relu 0=60 1=1 5=1 6=4800 7=3 9=1 +ShuffleChannel shuffle2 1 1 resx2_conv1_resx2_conv1_relu shuffle2 0=3 +ConvolutionDepthWise resx2_conv2 1 1 shuffle2 resx2_conv2_resx2_conv2_scale 0=60 1=3 4=1 5=1 6=540 7=60 +ConvolutionDepthWise resx2_conv3 1 1 resx2_conv2_resx2_conv2_scale resx2_conv3_resx2_conv3_scale 0=240 1=1 5=1 6=4800 7=3 +Eltwise resx2_elewise 2 1 resx1_concat_resx1_concat_relu_splitncnn_0 resx2_conv3_resx2_conv3_scale resx2_elewise 0=1 +ReLU resx2_elewise_relu 1 1 resx2_elewise resx2_elewise_resx2_elewise_relu +Split splitncnn_2 1 2 resx2_elewise_resx2_elewise_relu resx2_elewise_resx2_elewise_relu_splitncnn_0 resx2_elewise_resx2_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx3_conv1 1 1 resx2_elewise_resx2_elewise_relu_splitncnn_1 resx3_conv1_resx3_conv1_relu 0=60 1=1 5=1 6=4800 7=3 9=1 +ShuffleChannel shuffle3 1 1 resx3_conv1_resx3_conv1_relu shuffle3 0=3 +ConvolutionDepthWise resx3_conv2 1 1 shuffle3 resx3_conv2_resx3_conv2_scale 0=60 1=3 4=1 5=1 6=540 7=60 +ConvolutionDepthWise resx3_conv3 1 1 resx3_conv2_resx3_conv2_scale resx3_conv3_resx3_conv3_scale 0=240 1=1 5=1 6=4800 7=3 +Eltwise resx3_elewise 2 1 resx2_elewise_resx2_elewise_relu_splitncnn_0 resx3_conv3_resx3_conv3_scale resx3_elewise 0=1 +ReLU resx3_elewise_relu 1 1 resx3_elewise resx3_elewise_resx3_elewise_relu +Split splitncnn_3 1 2 resx3_elewise_resx3_elewise_relu resx3_elewise_resx3_elewise_relu_splitncnn_0 resx3_elewise_resx3_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx4_conv1 1 1 resx3_elewise_resx3_elewise_relu_splitncnn_1 resx4_conv1_resx4_conv1_relu 0=60 1=1 5=1 6=4800 7=3 9=1 +ShuffleChannel shuffle4 1 1 resx4_conv1_resx4_conv1_relu shuffle4 0=3 +ConvolutionDepthWise resx4_conv2 1 1 shuffle4 resx4_conv2_resx4_conv2_scale 0=60 1=3 4=1 5=1 6=540 7=60 +ConvolutionDepthWise resx4_conv3 1 1 resx4_conv2_resx4_conv2_scale resx4_conv3_resx4_conv3_scale 0=240 1=1 5=1 6=4800 7=3 +Eltwise resx4_elewise 2 1 resx3_elewise_resx3_elewise_relu_splitncnn_0 resx4_conv3_resx4_conv3_scale resx4_elewise 0=1 +ReLU resx4_elewise_relu 1 1 resx4_elewise resx4_elewise_resx4_elewise_relu +Split splitncnn_4 1 2 resx4_elewise_resx4_elewise_relu resx4_elewise_resx4_elewise_relu_splitncnn_0 resx4_elewise_resx4_elewise_relu_splitncnn_1 +Pooling resx5_match_conv 1 1 resx4_elewise_resx4_elewise_relu_splitncnn_1 resx5_match_conv 0=1 1=3 2=2 +ConvolutionDepthWise resx5_conv1 1 1 resx4_elewise_resx4_elewise_relu_splitncnn_0 resx5_conv1_resx5_conv1_relu 0=60 1=1 5=1 6=4800 7=3 9=1 +ShuffleChannel shuffle5 1 1 resx5_conv1_resx5_conv1_relu shuffle5 0=3 +ConvolutionDepthWise resx5_conv2 1 1 shuffle5 resx5_conv2_resx5_conv2_scale 0=60 1=3 3=2 4=1 5=1 6=540 7=60 +ConvolutionDepthWise resx5_conv3 1 1 resx5_conv2_resx5_conv2_scale resx5_conv3_resx5_conv3_scale 0=240 1=1 5=1 6=4800 7=3 +Concat resx5_concat 2 1 resx5_match_conv resx5_conv3_resx5_conv3_scale resx5_concat +ReLU resx5_concat_relu 1 1 resx5_concat resx5_concat_resx5_concat_relu +Split splitncnn_5 1 2 resx5_concat_resx5_concat_relu resx5_concat_resx5_concat_relu_splitncnn_0 resx5_concat_resx5_concat_relu_splitncnn_1 +ConvolutionDepthWise resx6_conv1 1 1 resx5_concat_resx5_concat_relu_splitncnn_1 resx6_conv1_resx6_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle6 1 1 resx6_conv1_resx6_conv1_relu shuffle6 0=3 +ConvolutionDepthWise resx6_conv2 1 1 shuffle6 resx6_conv2_resx6_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx6_conv3 1 1 resx6_conv2_resx6_conv2_scale resx6_conv3_resx6_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx6_elewise 2 1 resx5_concat_resx5_concat_relu_splitncnn_0 resx6_conv3_resx6_conv3_scale resx6_elewise 0=1 +ReLU resx6_elewise_relu 1 1 resx6_elewise resx6_elewise_resx6_elewise_relu +Split splitncnn_6 1 2 resx6_elewise_resx6_elewise_relu resx6_elewise_resx6_elewise_relu_splitncnn_0 resx6_elewise_resx6_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx7_conv1 1 1 resx6_elewise_resx6_elewise_relu_splitncnn_1 resx7_conv1_resx7_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle7 1 1 resx7_conv1_resx7_conv1_relu shuffle7 0=3 +ConvolutionDepthWise resx7_conv2 1 1 shuffle7 resx7_conv2_resx7_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx7_conv3 1 1 resx7_conv2_resx7_conv2_scale resx7_conv3_resx7_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx7_elewise 2 1 resx6_elewise_resx6_elewise_relu_splitncnn_0 resx7_conv3_resx7_conv3_scale resx7_elewise 0=1 +ReLU resx7_elewise_relu 1 1 resx7_elewise resx7_elewise_resx7_elewise_relu +Split splitncnn_7 1 2 resx7_elewise_resx7_elewise_relu resx7_elewise_resx7_elewise_relu_splitncnn_0 resx7_elewise_resx7_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx8_conv1 1 1 resx7_elewise_resx7_elewise_relu_splitncnn_1 resx8_conv1_resx8_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle8 1 1 resx8_conv1_resx8_conv1_relu shuffle8 0=3 +ConvolutionDepthWise resx8_conv2 1 1 shuffle8 resx8_conv2_resx8_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx8_conv3 1 1 resx8_conv2_resx8_conv2_scale resx8_conv3_resx8_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx8_elewise 2 1 resx7_elewise_resx7_elewise_relu_splitncnn_0 resx8_conv3_resx8_conv3_scale resx8_elewise 0=1 +ReLU resx8_elewise_relu 1 1 resx8_elewise resx8_elewise_resx8_elewise_relu +Split splitncnn_8 1 2 resx8_elewise_resx8_elewise_relu resx8_elewise_resx8_elewise_relu_splitncnn_0 resx8_elewise_resx8_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx9_conv1 1 1 resx8_elewise_resx8_elewise_relu_splitncnn_1 resx9_conv1_resx9_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle9 1 1 resx9_conv1_resx9_conv1_relu shuffle9 0=3 +ConvolutionDepthWise resx9_conv2 1 1 shuffle9 resx9_conv2_resx9_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx9_conv3 1 1 resx9_conv2_resx9_conv2_scale resx9_conv3_resx9_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx9_elewise 2 1 resx8_elewise_resx8_elewise_relu_splitncnn_0 resx9_conv3_resx9_conv3_scale resx9_elewise 0=1 +ReLU resx9_elewise_relu 1 1 resx9_elewise resx9_elewise_resx9_elewise_relu +Split splitncnn_9 1 2 resx9_elewise_resx9_elewise_relu resx9_elewise_resx9_elewise_relu_splitncnn_0 resx9_elewise_resx9_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx10_conv1 1 1 resx9_elewise_resx9_elewise_relu_splitncnn_1 resx10_conv1_resx10_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle10 1 1 resx10_conv1_resx10_conv1_relu shuffle10 0=3 +ConvolutionDepthWise resx10_conv2 1 1 shuffle10 resx10_conv2_resx10_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx10_conv3 1 1 resx10_conv2_resx10_conv2_scale resx10_conv3_resx10_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx10_elewise 2 1 resx9_elewise_resx9_elewise_relu_splitncnn_0 resx10_conv3_resx10_conv3_scale resx10_elewise 0=1 +ReLU resx10_elewise_relu 1 1 resx10_elewise resx10_elewise_resx10_elewise_relu +Split splitncnn_10 1 2 resx10_elewise_resx10_elewise_relu resx10_elewise_resx10_elewise_relu_splitncnn_0 resx10_elewise_resx10_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx11_conv1 1 1 resx10_elewise_resx10_elewise_relu_splitncnn_1 resx11_conv1_resx11_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle11 1 1 resx11_conv1_resx11_conv1_relu shuffle11 0=3 +ConvolutionDepthWise resx11_conv2 1 1 shuffle11 resx11_conv2_resx11_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx11_conv3 1 1 resx11_conv2_resx11_conv2_scale resx11_conv3_resx11_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx11_elewise 2 1 resx10_elewise_resx10_elewise_relu_splitncnn_0 resx11_conv3_resx11_conv3_scale resx11_elewise 0=1 +ReLU resx11_elewise_relu 1 1 resx11_elewise resx11_elewise_resx11_elewise_relu +Split splitncnn_11 1 2 resx11_elewise_resx11_elewise_relu resx11_elewise_resx11_elewise_relu_splitncnn_0 resx11_elewise_resx11_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx12_conv1 1 1 resx11_elewise_resx11_elewise_relu_splitncnn_1 resx12_conv1_resx12_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle12 1 1 resx12_conv1_resx12_conv1_relu shuffle12 0=3 +ConvolutionDepthWise resx12_conv2 1 1 shuffle12 resx12_conv2_resx12_conv2_scale 0=120 1=3 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx12_conv3 1 1 resx12_conv2_resx12_conv2_scale resx12_conv3_resx12_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Eltwise resx12_elewise 2 1 resx11_elewise_resx11_elewise_relu_splitncnn_0 resx12_conv3_resx12_conv3_scale resx12_elewise 0=1 +ReLU resx12_elewise_relu 1 1 resx12_elewise resx12_elewise_resx12_elewise_relu +Split splitncnn_12 1 2 resx12_elewise_resx12_elewise_relu resx12_elewise_resx12_elewise_relu_splitncnn_0 resx12_elewise_resx12_elewise_relu_splitncnn_1 +Pooling resx13_match_conv 1 1 resx12_elewise_resx12_elewise_relu_splitncnn_1 resx13_match_conv 0=1 1=3 2=2 +ConvolutionDepthWise resx13_conv1 1 1 resx12_elewise_resx12_elewise_relu_splitncnn_0 resx13_conv1_resx13_conv1_relu 0=120 1=1 5=1 6=19200 7=3 9=1 +ShuffleChannel shuffle13 1 1 resx13_conv1_resx13_conv1_relu shuffle13 0=3 +ConvolutionDepthWise resx13_conv2 1 1 shuffle13 resx13_conv2_resx13_conv2_scale 0=120 1=3 3=2 4=1 5=1 6=1080 7=120 +ConvolutionDepthWise resx13_conv3 1 1 resx13_conv2_resx13_conv2_scale resx13_conv3_resx13_conv3_scale 0=480 1=1 5=1 6=19200 7=3 +Concat resx13_concat 2 1 resx13_match_conv resx13_conv3_resx13_conv3_scale resx13_concat +ReLU resx13_concat_relu 1 1 resx13_concat resx13_concat_resx13_concat_relu +Split splitncnn_13 1 2 resx13_concat_resx13_concat_relu resx13_concat_resx13_concat_relu_splitncnn_0 resx13_concat_resx13_concat_relu_splitncnn_1 +ConvolutionDepthWise resx14_conv1 1 1 resx13_concat_resx13_concat_relu_splitncnn_1 resx14_conv1_resx14_conv1_relu 0=240 1=1 5=1 6=76800 7=3 9=1 +ShuffleChannel shuffle14 1 1 resx14_conv1_resx14_conv1_relu shuffle14 0=3 +ConvolutionDepthWise resx14_conv2 1 1 shuffle14 resx14_conv2_resx14_conv2_scale 0=240 1=3 4=1 5=1 6=2160 7=240 +ConvolutionDepthWise resx14_conv3 1 1 resx14_conv2_resx14_conv2_scale resx14_conv3_resx14_conv3_scale 0=960 1=1 5=1 6=76800 7=3 +Eltwise resx14_elewise 2 1 resx13_concat_resx13_concat_relu_splitncnn_0 resx14_conv3_resx14_conv3_scale resx14_elewise 0=1 +ReLU resx14_elewise_relu 1 1 resx14_elewise resx14_elewise_resx14_elewise_relu +Split splitncnn_14 1 2 resx14_elewise_resx14_elewise_relu resx14_elewise_resx14_elewise_relu_splitncnn_0 resx14_elewise_resx14_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx15_conv1 1 1 resx14_elewise_resx14_elewise_relu_splitncnn_1 resx15_conv1_resx15_conv1_relu 0=240 1=1 5=1 6=76800 7=3 9=1 +ShuffleChannel shuffle15 1 1 resx15_conv1_resx15_conv1_relu shuffle15 0=3 +ConvolutionDepthWise resx15_conv2 1 1 shuffle15 resx15_conv2_resx15_conv2_scale 0=240 1=3 4=1 5=1 6=2160 7=240 +ConvolutionDepthWise resx15_conv3 1 1 resx15_conv2_resx15_conv2_scale resx15_conv3_resx15_conv3_scale 0=960 1=1 5=1 6=76800 7=3 +Eltwise resx15_elewise 2 1 resx14_elewise_resx14_elewise_relu_splitncnn_0 resx15_conv3_resx15_conv3_scale resx15_elewise 0=1 +ReLU resx15_elewise_relu 1 1 resx15_elewise resx15_elewise_resx15_elewise_relu +Split splitncnn_15 1 2 resx15_elewise_resx15_elewise_relu resx15_elewise_resx15_elewise_relu_splitncnn_0 resx15_elewise_resx15_elewise_relu_splitncnn_1 +ConvolutionDepthWise resx16_conv1 1 1 resx15_elewise_resx15_elewise_relu_splitncnn_1 resx16_conv1_resx16_conv1_relu 0=240 1=1 5=1 6=76800 7=3 9=1 +ShuffleChannel shuffle16 1 1 resx16_conv1_resx16_conv1_relu shuffle16 0=3 +ConvolutionDepthWise resx16_conv2 1 1 shuffle16 resx16_conv2_resx16_conv2_scale 0=240 1=3 4=1 5=1 6=2160 7=240 +ConvolutionDepthWise resx16_conv3 1 1 resx16_conv2_resx16_conv2_scale resx16_conv3_resx16_conv3_scale 0=960 1=1 5=1 6=76800 7=3 +Eltwise resx16_elewise 2 1 resx15_elewise_resx15_elewise_relu_splitncnn_0 resx16_conv3_resx16_conv3_scale resx16_elewise 0=1 +ReLU resx16_elewise_relu 1 1 resx16_elewise resx16_elewise_resx16_elewise_relu +Pooling pool_ave 1 1 resx16_elewise_resx16_elewise_relu pool_ave 0=1 4=1 +Convolution fc1000 1 1 pool_ave fc1000 0=1000 1=1 5=1 6=960000 diff --git a/benchmark/squeezenet.param b/benchmark/squeezenet.param index 2b0ddaabb..10103821c 100644 --- a/benchmark/squeezenet.param +++ b/benchmark/squeezenet.param @@ -1,77 +1,50 @@ 7767517 -75 83 -Input data 0 1 data 0=3 1=227 2=227 -Convolution conv1 1 1 data conv1 0=64 1=3 2=1 3=2 4=0 5=1 6=1728 -ReLU relu_conv1 1 1 conv1 conv1_relu_conv1 -Pooling pool1 1 1 conv1_relu_conv1 pool1 0=0 1=3 2=2 3=0 4=0 -Convolution fire2/squeeze1x1 1 1 pool1 fire2/squeeze1x1 0=16 1=1 2=1 3=1 4=0 5=1 6=1024 -ReLU fire2/relu_squeeze1x1 1 1 fire2/squeeze1x1 fire2/squeeze1x1_fire2/relu_squeeze1x1 -Split splitncnn_0 1 2 fire2/squeeze1x1_fire2/relu_squeeze1x1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 -Convolution fire2/expand1x1 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 fire2/expand1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=1024 -ReLU fire2/relu_expand1x1 1 1 fire2/expand1x1 fire2/expand1x1_fire2/relu_expand1x1 -Convolution fire2/expand3x3 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/expand3x3 0=64 1=3 2=1 3=1 4=1 5=1 6=9216 -ReLU fire2/relu_expand3x3 1 1 fire2/expand3x3 fire2/expand3x3_fire2/relu_expand3x3 -Concat fire2/concat 2 1 fire2/expand1x1_fire2/relu_expand1x1 fire2/expand3x3_fire2/relu_expand3x3 fire2/concat 0=0 -Convolution fire3/squeeze1x1 1 1 fire2/concat fire3/squeeze1x1 0=16 1=1 2=1 3=1 4=0 5=1 6=2048 -ReLU fire3/relu_squeeze1x1 1 1 fire3/squeeze1x1 fire3/squeeze1x1_fire3/relu_squeeze1x1 -Split splitncnn_1 1 2 fire3/squeeze1x1_fire3/relu_squeeze1x1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 -Convolution fire3/expand1x1 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 fire3/expand1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=1024 -ReLU fire3/relu_expand1x1 1 1 fire3/expand1x1 fire3/expand1x1_fire3/relu_expand1x1 -Convolution fire3/expand3x3 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/expand3x3 0=64 1=3 2=1 3=1 4=1 5=1 6=9216 -ReLU fire3/relu_expand3x3 1 1 fire3/expand3x3 fire3/expand3x3_fire3/relu_expand3x3 -Concat fire3/concat 2 1 fire3/expand1x1_fire3/relu_expand1x1 fire3/expand3x3_fire3/relu_expand3x3 fire3/concat 0=0 -Pooling pool3 1 1 fire3/concat pool3 0=0 1=3 2=2 3=0 4=0 -Convolution fire4/squeeze1x1 1 1 pool3 fire4/squeeze1x1 0=32 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU fire4/relu_squeeze1x1 1 1 fire4/squeeze1x1 fire4/squeeze1x1_fire4/relu_squeeze1x1 -Split splitncnn_2 1 2 fire4/squeeze1x1_fire4/relu_squeeze1x1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 -Convolution fire4/expand1x1 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 fire4/expand1x1 0=128 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU fire4/relu_expand1x1 1 1 fire4/expand1x1 fire4/expand1x1_fire4/relu_expand1x1 -Convolution fire4/expand3x3 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/expand3x3 0=128 1=3 2=1 3=1 4=1 5=1 6=36864 -ReLU fire4/relu_expand3x3 1 1 fire4/expand3x3 fire4/expand3x3_fire4/relu_expand3x3 -Concat fire4/concat 2 1 fire4/expand1x1_fire4/relu_expand1x1 fire4/expand3x3_fire4/relu_expand3x3 fire4/concat 0=0 -Convolution fire5/squeeze1x1 1 1 fire4/concat fire5/squeeze1x1 0=32 1=1 2=1 3=1 4=0 5=1 6=8192 -ReLU fire5/relu_squeeze1x1 1 1 fire5/squeeze1x1 fire5/squeeze1x1_fire5/relu_squeeze1x1 -Split splitncnn_3 1 2 fire5/squeeze1x1_fire5/relu_squeeze1x1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 -Convolution fire5/expand1x1 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 fire5/expand1x1 0=128 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU fire5/relu_expand1x1 1 1 fire5/expand1x1 fire5/expand1x1_fire5/relu_expand1x1 -Convolution fire5/expand3x3 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/expand3x3 0=128 1=3 2=1 3=1 4=1 5=1 6=36864 -ReLU fire5/relu_expand3x3 1 1 fire5/expand3x3 fire5/expand3x3_fire5/relu_expand3x3 -Concat fire5/concat 2 1 fire5/expand1x1_fire5/relu_expand1x1 fire5/expand3x3_fire5/relu_expand3x3 fire5/concat 0=0 -Pooling pool5 1 1 fire5/concat pool5 0=0 1=3 2=2 3=0 4=0 -Convolution fire6/squeeze1x1 1 1 pool5 fire6/squeeze1x1 0=48 1=1 2=1 3=1 4=0 5=1 6=12288 -ReLU fire6/relu_squeeze1x1 1 1 fire6/squeeze1x1 fire6/squeeze1x1_fire6/relu_squeeze1x1 -Split splitncnn_4 1 2 fire6/squeeze1x1_fire6/relu_squeeze1x1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 -Convolution fire6/expand1x1 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 fire6/expand1x1 0=192 1=1 2=1 3=1 4=0 5=1 6=9216 -ReLU fire6/relu_expand1x1 1 1 fire6/expand1x1 fire6/expand1x1_fire6/relu_expand1x1 -Convolution fire6/expand3x3 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/expand3x3 0=192 1=3 2=1 3=1 4=1 5=1 6=82944 -ReLU fire6/relu_expand3x3 1 1 fire6/expand3x3 fire6/expand3x3_fire6/relu_expand3x3 -Concat fire6/concat 2 1 fire6/expand1x1_fire6/relu_expand1x1 fire6/expand3x3_fire6/relu_expand3x3 fire6/concat 0=0 -Convolution fire7/squeeze1x1 1 1 fire6/concat fire7/squeeze1x1 0=48 1=1 2=1 3=1 4=0 5=1 6=18432 -ReLU fire7/relu_squeeze1x1 1 1 fire7/squeeze1x1 fire7/squeeze1x1_fire7/relu_squeeze1x1 -Split splitncnn_5 1 2 fire7/squeeze1x1_fire7/relu_squeeze1x1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 -Convolution fire7/expand1x1 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 fire7/expand1x1 0=192 1=1 2=1 3=1 4=0 5=1 6=9216 -ReLU fire7/relu_expand1x1 1 1 fire7/expand1x1 fire7/expand1x1_fire7/relu_expand1x1 -Convolution fire7/expand3x3 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/expand3x3 0=192 1=3 2=1 3=1 4=1 5=1 6=82944 -ReLU fire7/relu_expand3x3 1 1 fire7/expand3x3 fire7/expand3x3_fire7/relu_expand3x3 -Concat fire7/concat 2 1 fire7/expand1x1_fire7/relu_expand1x1 fire7/expand3x3_fire7/relu_expand3x3 fire7/concat 0=0 -Convolution fire8/squeeze1x1 1 1 fire7/concat fire8/squeeze1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=24576 -ReLU fire8/relu_squeeze1x1 1 1 fire8/squeeze1x1 fire8/squeeze1x1_fire8/relu_squeeze1x1 -Split splitncnn_6 1 2 fire8/squeeze1x1_fire8/relu_squeeze1x1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 -Convolution fire8/expand1x1 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 fire8/expand1x1 0=256 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU fire8/relu_expand1x1 1 1 fire8/expand1x1 fire8/expand1x1_fire8/relu_expand1x1 -Convolution fire8/expand3x3 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/expand3x3 0=256 1=3 2=1 3=1 4=1 5=1 6=147456 -ReLU fire8/relu_expand3x3 1 1 fire8/expand3x3 fire8/expand3x3_fire8/relu_expand3x3 -Concat fire8/concat 2 1 fire8/expand1x1_fire8/relu_expand1x1 fire8/expand3x3_fire8/relu_expand3x3 fire8/concat 0=0 -Convolution fire9/squeeze1x1 1 1 fire8/concat fire9/squeeze1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU fire9/relu_squeeze1x1 1 1 fire9/squeeze1x1 fire9/squeeze1x1_fire9/relu_squeeze1x1 -Split splitncnn_7 1 2 fire9/squeeze1x1_fire9/relu_squeeze1x1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 -Convolution fire9/expand1x1 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 fire9/expand1x1 0=256 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU fire9/relu_expand1x1 1 1 fire9/expand1x1 fire9/expand1x1_fire9/relu_expand1x1 -Convolution fire9/expand3x3 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/expand3x3 0=256 1=3 2=1 3=1 4=1 5=1 6=147456 -ReLU fire9/relu_expand3x3 1 1 fire9/expand3x3 fire9/expand3x3_fire9/relu_expand3x3 -Concat fire9/concat 2 1 fire9/expand1x1_fire9/relu_expand1x1 fire9/expand3x3_fire9/relu_expand3x3 fire9/concat 0=0 -Dropout drop9 1 1 fire9/concat fire9/concat_drop9 -Convolution conv10 1 1 fire9/concat_drop9 conv10 0=1000 1=1 2=1 3=1 4=1 5=1 6=512000 -ReLU relu_conv10 1 1 conv10 conv10_relu_conv10 -Pooling pool10 1 1 conv10_relu_conv10 pool10 0=1 1=0 2=1 3=0 4=1 -Softmax prob 1 1 pool10 prob 0=0 +48 56 +Input data 0 1 data 0=3 1=227 2=227 +Convolution conv1 1 1 data conv1_relu_conv1 0=64 1=3 3=2 5=1 6=1728 9=1 +Pooling pool1 1 1 conv1_relu_conv1 pool1 1=3 2=2 +Convolution fire2/squeeze1x1 1 1 pool1 fire2/squeeze1x1_fire2/relu_squeeze1x1 0=16 1=1 5=1 6=1024 9=1 +Split splitncnn_0 1 2 fire2/squeeze1x1_fire2/relu_squeeze1x1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 +Convolution fire2/expand1x1 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 fire2/expand1x1_fire2/relu_expand1x1 0=64 1=1 5=1 6=1024 9=1 +Convolution fire2/expand3x3 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/expand3x3_fire2/relu_expand3x3 0=64 1=3 4=1 5=1 6=9216 9=1 +Concat fire2/concat 2 1 fire2/expand1x1_fire2/relu_expand1x1 fire2/expand3x3_fire2/relu_expand3x3 fire2/concat +Convolution fire3/squeeze1x1 1 1 fire2/concat fire3/squeeze1x1_fire3/relu_squeeze1x1 0=16 1=1 5=1 6=2048 9=1 +Split splitncnn_1 1 2 fire3/squeeze1x1_fire3/relu_squeeze1x1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 +Convolution fire3/expand1x1 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 fire3/expand1x1_fire3/relu_expand1x1 0=64 1=1 5=1 6=1024 9=1 +Convolution fire3/expand3x3 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/expand3x3_fire3/relu_expand3x3 0=64 1=3 4=1 5=1 6=9216 9=1 +Concat fire3/concat 2 1 fire3/expand1x1_fire3/relu_expand1x1 fire3/expand3x3_fire3/relu_expand3x3 fire3/concat +Pooling pool3 1 1 fire3/concat pool3 1=3 2=2 +Convolution fire4/squeeze1x1 1 1 pool3 fire4/squeeze1x1_fire4/relu_squeeze1x1 0=32 1=1 5=1 6=4096 9=1 +Split splitncnn_2 1 2 fire4/squeeze1x1_fire4/relu_squeeze1x1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 +Convolution fire4/expand1x1 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 fire4/expand1x1_fire4/relu_expand1x1 0=128 1=1 5=1 6=4096 9=1 +Convolution fire4/expand3x3 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/expand3x3_fire4/relu_expand3x3 0=128 1=3 4=1 5=1 6=36864 9=1 +Concat fire4/concat 2 1 fire4/expand1x1_fire4/relu_expand1x1 fire4/expand3x3_fire4/relu_expand3x3 fire4/concat +Convolution fire5/squeeze1x1 1 1 fire4/concat fire5/squeeze1x1_fire5/relu_squeeze1x1 0=32 1=1 5=1 6=8192 9=1 +Split splitncnn_3 1 2 fire5/squeeze1x1_fire5/relu_squeeze1x1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 +Convolution fire5/expand1x1 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 fire5/expand1x1_fire5/relu_expand1x1 0=128 1=1 5=1 6=4096 9=1 +Convolution fire5/expand3x3 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/expand3x3_fire5/relu_expand3x3 0=128 1=3 4=1 5=1 6=36864 9=1 +Concat fire5/concat 2 1 fire5/expand1x1_fire5/relu_expand1x1 fire5/expand3x3_fire5/relu_expand3x3 fire5/concat +Pooling pool5 1 1 fire5/concat pool5 1=3 2=2 +Convolution fire6/squeeze1x1 1 1 pool5 fire6/squeeze1x1_fire6/relu_squeeze1x1 0=48 1=1 5=1 6=12288 9=1 +Split splitncnn_4 1 2 fire6/squeeze1x1_fire6/relu_squeeze1x1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 +Convolution fire6/expand1x1 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 fire6/expand1x1_fire6/relu_expand1x1 0=192 1=1 5=1 6=9216 9=1 +Convolution fire6/expand3x3 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/expand3x3_fire6/relu_expand3x3 0=192 1=3 4=1 5=1 6=82944 9=1 +Concat fire6/concat 2 1 fire6/expand1x1_fire6/relu_expand1x1 fire6/expand3x3_fire6/relu_expand3x3 fire6/concat +Convolution fire7/squeeze1x1 1 1 fire6/concat fire7/squeeze1x1_fire7/relu_squeeze1x1 0=48 1=1 5=1 6=18432 9=1 +Split splitncnn_5 1 2 fire7/squeeze1x1_fire7/relu_squeeze1x1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 +Convolution fire7/expand1x1 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 fire7/expand1x1_fire7/relu_expand1x1 0=192 1=1 5=1 6=9216 9=1 +Convolution fire7/expand3x3 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/expand3x3_fire7/relu_expand3x3 0=192 1=3 4=1 5=1 6=82944 9=1 +Concat fire7/concat 2 1 fire7/expand1x1_fire7/relu_expand1x1 fire7/expand3x3_fire7/relu_expand3x3 fire7/concat +Convolution fire8/squeeze1x1 1 1 fire7/concat fire8/squeeze1x1_fire8/relu_squeeze1x1 0=64 1=1 5=1 6=24576 9=1 +Split splitncnn_6 1 2 fire8/squeeze1x1_fire8/relu_squeeze1x1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 +Convolution fire8/expand1x1 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 fire8/expand1x1_fire8/relu_expand1x1 0=256 1=1 5=1 6=16384 9=1 +Convolution fire8/expand3x3 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/expand3x3_fire8/relu_expand3x3 0=256 1=3 4=1 5=1 6=147456 9=1 +Concat fire8/concat 2 1 fire8/expand1x1_fire8/relu_expand1x1 fire8/expand3x3_fire8/relu_expand3x3 fire8/concat +Convolution fire9/squeeze1x1 1 1 fire8/concat fire9/squeeze1x1_fire9/relu_squeeze1x1 0=64 1=1 5=1 6=32768 9=1 +Split splitncnn_7 1 2 fire9/squeeze1x1_fire9/relu_squeeze1x1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 +Convolution fire9/expand1x1 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 fire9/expand1x1_fire9/relu_expand1x1 0=256 1=1 5=1 6=16384 9=1 +Convolution fire9/expand3x3 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/expand3x3_fire9/relu_expand3x3 0=256 1=3 4=1 5=1 6=147456 9=1 +Concat fire9/concat 2 1 fire9/expand1x1_fire9/relu_expand1x1 fire9/expand3x3_fire9/relu_expand3x3 fire9/concat_drop9 +Convolution conv10 1 1 fire9/concat_drop9 conv10_relu_conv10 0=1000 1=1 4=1 5=1 6=512000 9=1 +Pooling pool10 1 1 conv10_relu_conv10 pool10 0=1 4=1 +Softmax prob 1 1 pool10 prob diff --git a/benchmark/squeezenet_ssd.param b/benchmark/squeezenet_ssd.param index 4cd54d2e0..457393d7a 100644 --- a/benchmark/squeezenet_ssd.param +++ b/benchmark/squeezenet_ssd.param @@ -1,181 +1,121 @@ 7767517 -179 212 -Input data 0 1 data 0=227 1=227 2=3 -Split splitncnn_0 1 7 data data_splitncnn_0 data_splitncnn_1 data_splitncnn_2 data_splitncnn_3 data_splitncnn_4 data_splitncnn_5 data_splitncnn_6 -Convolution conv1 1 1 data_splitncnn_6 conv1 0=64 1=3 2=1 3=2 4=0 5=1 6=1728 -ReLU relu_conv1 1 1 conv1 conv1_relu_conv1 -Pooling pool1 1 1 conv1_relu_conv1 pool1 0=0 1=3 2=2 3=0 4=0 -Convolution fire2/squeeze1x1 1 1 pool1 fire2/squeeze1x1 0=16 1=1 2=1 3=1 4=0 5=1 6=1024 -ReLU fire2/relu_squeeze1x1 1 1 fire2/squeeze1x1 fire2/squeeze1x1_fire2/relu_squeeze1x1 -Split splitncnn_1 1 2 fire2/squeeze1x1_fire2/relu_squeeze1x1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 -Convolution fire2/expand1x1 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 fire2/expand1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=1024 -ReLU fire2/relu_expand1x1 1 1 fire2/expand1x1 fire2/expand1x1_fire2/relu_expand1x1 -Convolution fire2/expand3x3 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/expand3x3 0=64 1=3 2=1 3=1 4=1 5=1 6=9216 -ReLU fire2/relu_expand3x3 1 1 fire2/expand3x3 fire2/expand3x3_fire2/relu_expand3x3 -Concat fire2/concat 2 1 fire2/expand1x1_fire2/relu_expand1x1 fire2/expand3x3_fire2/relu_expand3x3 fire2/concat 0=0 -Convolution fire3/squeeze1x1 1 1 fire2/concat fire3/squeeze1x1 0=16 1=1 2=1 3=1 4=0 5=1 6=2048 -ReLU fire3/relu_squeeze1x1 1 1 fire3/squeeze1x1 fire3/squeeze1x1_fire3/relu_squeeze1x1 -Split splitncnn_2 1 2 fire3/squeeze1x1_fire3/relu_squeeze1x1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 -Convolution fire3/expand1x1 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 fire3/expand1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=1024 -ReLU fire3/relu_expand1x1 1 1 fire3/expand1x1 fire3/expand1x1_fire3/relu_expand1x1 -Convolution fire3/expand3x3 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/expand3x3 0=64 1=3 2=1 3=1 4=1 5=1 6=9216 -ReLU fire3/relu_expand3x3 1 1 fire3/expand3x3 fire3/expand3x3_fire3/relu_expand3x3 -Concat fire3/concat 2 1 fire3/expand1x1_fire3/relu_expand1x1 fire3/expand3x3_fire3/relu_expand3x3 fire3/concat 0=0 -Pooling pool3 1 1 fire3/concat pool3 0=0 1=3 2=2 3=0 4=0 -Convolution fire4/squeeze1x1 1 1 pool3 fire4/squeeze1x1 0=32 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU fire4/relu_squeeze1x1 1 1 fire4/squeeze1x1 fire4/squeeze1x1_fire4/relu_squeeze1x1 -Split splitncnn_3 1 2 fire4/squeeze1x1_fire4/relu_squeeze1x1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 -Convolution fire4/expand1x1 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 fire4/expand1x1 0=128 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU fire4/relu_expand1x1 1 1 fire4/expand1x1 fire4/expand1x1_fire4/relu_expand1x1 -Convolution fire4/expand3x3 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/expand3x3 0=128 1=3 2=1 3=1 4=1 5=1 6=36864 -ReLU fire4/relu_expand3x3 1 1 fire4/expand3x3 fire4/expand3x3_fire4/relu_expand3x3 -Concat fire4/concat 2 1 fire4/expand1x1_fire4/relu_expand1x1 fire4/expand3x3_fire4/relu_expand3x3 fire4/concat 0=0 -Convolution fire5/squeeze1x1 1 1 fire4/concat fire5/squeeze1x1 0=32 1=1 2=1 3=1 4=0 5=1 6=8192 -ReLU fire5/relu_squeeze1x1 1 1 fire5/squeeze1x1 fire5/squeeze1x1_fire5/relu_squeeze1x1 -Split splitncnn_4 1 2 fire5/squeeze1x1_fire5/relu_squeeze1x1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 -Convolution fire5/expand1x1 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 fire5/expand1x1 0=128 1=1 2=1 3=1 4=0 5=1 6=4096 -ReLU fire5/relu_expand1x1 1 1 fire5/expand1x1 fire5/expand1x1_fire5/relu_expand1x1 -Convolution fire5/expand3x3 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/expand3x3 0=128 1=3 2=1 3=1 4=1 5=1 6=36864 -ReLU fire5/relu_expand3x3 1 1 fire5/expand3x3 fire5/expand3x3_fire5/relu_expand3x3 -Concat fire5/concat 2 1 fire5/expand1x1_fire5/relu_expand1x1 fire5/expand3x3_fire5/relu_expand3x3 fire5/concat 0=0 -Split splitncnn_5 1 2 fire5/concat fire5/concat_splitncnn_0 fire5/concat_splitncnn_1 -Pooling pool5 1 1 fire5/concat_splitncnn_1 pool5 0=0 1=3 2=2 3=0 4=0 -Convolution fire6/squeeze1x1 1 1 pool5 fire6/squeeze1x1 0=48 1=1 2=1 3=1 4=0 5=1 6=12288 -ReLU fire6/relu_squeeze1x1 1 1 fire6/squeeze1x1 fire6/squeeze1x1_fire6/relu_squeeze1x1 -Split splitncnn_6 1 2 fire6/squeeze1x1_fire6/relu_squeeze1x1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 -Convolution fire6/expand1x1 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 fire6/expand1x1 0=192 1=1 2=1 3=1 4=0 5=1 6=9216 -ReLU fire6/relu_expand1x1 1 1 fire6/expand1x1 fire6/expand1x1_fire6/relu_expand1x1 -Convolution fire6/expand3x3 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/expand3x3 0=192 1=3 2=1 3=1 4=1 5=1 6=82944 -ReLU fire6/relu_expand3x3 1 1 fire6/expand3x3 fire6/expand3x3_fire6/relu_expand3x3 -Concat fire6/concat 2 1 fire6/expand1x1_fire6/relu_expand1x1 fire6/expand3x3_fire6/relu_expand3x3 fire6/concat 0=0 -Convolution fire7/squeeze1x1 1 1 fire6/concat fire7/squeeze1x1 0=48 1=1 2=1 3=1 4=0 5=1 6=18432 -ReLU fire7/relu_squeeze1x1 1 1 fire7/squeeze1x1 fire7/squeeze1x1_fire7/relu_squeeze1x1 -Split splitncnn_7 1 2 fire7/squeeze1x1_fire7/relu_squeeze1x1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 -Convolution fire7/expand1x1 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 fire7/expand1x1 0=192 1=1 2=1 3=1 4=0 5=1 6=9216 -ReLU fire7/relu_expand1x1 1 1 fire7/expand1x1 fire7/expand1x1_fire7/relu_expand1x1 -Convolution fire7/expand3x3 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/expand3x3 0=192 1=3 2=1 3=1 4=1 5=1 6=82944 -ReLU fire7/relu_expand3x3 1 1 fire7/expand3x3 fire7/expand3x3_fire7/relu_expand3x3 -Concat fire7/concat 2 1 fire7/expand1x1_fire7/relu_expand1x1 fire7/expand3x3_fire7/relu_expand3x3 fire7/concat 0=0 -Convolution fire8/squeeze1x1 1 1 fire7/concat fire8/squeeze1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=24576 -ReLU fire8/relu_squeeze1x1 1 1 fire8/squeeze1x1 fire8/squeeze1x1_fire8/relu_squeeze1x1 -Split splitncnn_8 1 2 fire8/squeeze1x1_fire8/relu_squeeze1x1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 -Convolution fire8/expand1x1 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 fire8/expand1x1 0=256 1=1 2=1 3=1 4=0 5=1 6=16384 -ReLU fire8/relu_expand1x1 1 1 fire8/expand1x1 fire8/expand1x1_fire8/relu_expand1x1 -Convolution fire8/expand3x3 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/expand3x3 0=256 1=3 2=1 3=1 4=1 5=1 6=147456 -ReLU fire8/relu_expand3x3 1 1 fire8/expand3x3 fire8/expand3x3_fire8/relu_expand3x3 -Concat fire8/concat 2 1 fire8/expand1x1_fire8/relu_expand1x1 fire8/expand3x3_fire8/relu_expand3x3 fire8/concat 0=0 -Convolution fire9/squeeze1x1 1 1 fire8/concat fire9/squeeze1x1 0=64 1=1 2=1 3=1 4=0 5=1 6=32768 -ReLU fire9/relu_squeeze1x1 1 1 fire9/squeeze1x1 fire9/squeeze1x1_fire9/relu_squeeze1x1 -Split splitncnn_9 1 2 fire9/squeeze1x1_fire9/relu_squeeze1x1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 -Convolution fire9/expand1x1 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 fire9/expand1x1 0=256 1=1 2=1 3=1 4=0 5=1 6=16384 -BatchNorm fire9/expand1x1/bn 1 1 fire9/expand1x1 fire9/expand1x1_fire9/expand1x1/bn 0=256 -Scale fire9/expand1x1/scale 1 1 fire9/expand1x1_fire9/expand1x1/bn fire9/expand1x1_fire9/expand1x1/scale 0=256 1=1 -ReLU fire9/relu_expand1x1 1 1 fire9/expand1x1_fire9/expand1x1/scale fire9/expand1x1_fire9/relu_expand1x1 -Convolution fire9/expand3x3 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/expand3x3 0=256 1=3 2=1 3=1 4=1 5=1 6=147456 -BatchNorm fire9/expand3x3/bn 1 1 fire9/expand3x3 fire9/expand3x3_fire9/expand3x3/bn 0=256 -Scale fire9/expand3x3/scale 1 1 fire9/expand3x3_fire9/expand3x3/bn fire9/expand3x3_fire9/expand3x3/scale 0=256 1=1 -ReLU fire9/relu_expand3x3 1 1 fire9/expand3x3_fire9/expand3x3/scale fire9/expand3x3_fire9/relu_expand3x3 -Concat fire9/concat 2 1 fire9/expand1x1_fire9/relu_expand1x1 fire9/expand3x3_fire9/relu_expand3x3 fire9/concat 0=0 -Split splitncnn_10 1 4 fire9/concat fire9/concat_splitncnn_0 fire9/concat_splitncnn_1 fire9/concat_splitncnn_2 fire9/concat_splitncnn_3 -Pooling pool9 1 1 fire9/concat_splitncnn_3 pool9 0=0 1=3 2=2 3=0 4=0 -Convolution fire10/squeeze1x1 1 1 pool9 fire10/squeeze1x1 0=96 1=1 2=1 3=1 4=0 5=1 6=49152 -BatchNorm fire10/squeeze1x1/bn 1 1 fire10/squeeze1x1 fire10/squeeze1x1_fire10/squeeze1x1/bn 0=96 -Scale fire10/squeeze1x1/scale 1 1 fire10/squeeze1x1_fire10/squeeze1x1/bn fire10/squeeze1x1_fire10/squeeze1x1/scale 0=96 1=1 -ReLU fire10/relu_squeeze1x1 1 1 fire10/squeeze1x1_fire10/squeeze1x1/scale fire10/squeeze1x1_fire10/relu_squeeze1x1 -Split splitncnn_11 1 2 fire10/squeeze1x1_fire10/relu_squeeze1x1 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_0 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_1 -Convolution fire10/expand1x1 1 1 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_1 fire10/expand1x1 0=384 1=1 2=1 3=1 4=0 5=1 6=36864 -BatchNorm fire10/expand1x1/bn 1 1 fire10/expand1x1 fire10/expand1x1_fire10/expand1x1/bn 0=384 -Scale fire10/expand1x1/scale 1 1 fire10/expand1x1_fire10/expand1x1/bn fire10/expand1x1_fire10/expand1x1/scale 0=384 1=1 -ReLU fire10/relu_expand1x1 1 1 fire10/expand1x1_fire10/expand1x1/scale fire10/expand1x1_fire10/relu_expand1x1 -Convolution fire10/expand3x3 1 1 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_0 fire10/expand3x3 0=384 1=3 2=1 3=1 4=1 5=1 6=331776 -BatchNorm fire10/expand3x3/bn 1 1 fire10/expand3x3 fire10/expand3x3_fire10/expand3x3/bn 0=384 -Scale fire10/expand3x3/scale 1 1 fire10/expand3x3_fire10/expand3x3/bn fire10/expand3x3_fire10/expand3x3/scale 0=384 1=1 -ReLU fire10/relu_expand3x3 1 1 fire10/expand3x3_fire10/expand3x3/scale fire10/expand3x3_fire10/relu_expand3x3 -Concat fire10/concat 2 1 fire10/expand1x1_fire10/relu_expand1x1 fire10/expand3x3_fire10/relu_expand3x3 fire10/concat 0=0 -Split splitncnn_12 1 4 fire10/concat fire10/concat_splitncnn_0 fire10/concat_splitncnn_1 fire10/concat_splitncnn_2 fire10/concat_splitncnn_3 -Pooling pool10 1 1 fire10/concat_splitncnn_3 pool10 0=0 1=3 2=2 3=0 4=0 -Convolution fire11/squeeze1x1 1 1 pool10 fire11/squeeze1x1 0=96 1=1 2=1 3=1 4=0 5=1 6=73728 -BatchNorm fire11/squeeze1x1/bn 1 1 fire11/squeeze1x1 fire11/squeeze1x1_fire11/squeeze1x1/bn 0=96 -Scale fire11/squeeze1x1/scale 1 1 fire11/squeeze1x1_fire11/squeeze1x1/bn fire11/squeeze1x1_fire11/squeeze1x1/scale 0=96 1=1 -ReLU fire11/relu_squeeze1x1 1 1 fire11/squeeze1x1_fire11/squeeze1x1/scale fire11/squeeze1x1_fire11/relu_squeeze1x1 -Split splitncnn_13 1 2 fire11/squeeze1x1_fire11/relu_squeeze1x1 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_0 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_1 -Convolution fire11/expand1x1 1 1 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_1 fire11/expand1x1 0=384 1=1 2=1 3=1 4=0 5=1 6=36864 -BatchNorm fire11/expand1x1/bn 1 1 fire11/expand1x1 fire11/expand1x1_fire11/expand1x1/bn 0=384 -Scale fire11/expand1x1/scale 1 1 fire11/expand1x1_fire11/expand1x1/bn fire11/expand1x1_fire11/expand1x1/scale 0=384 1=1 -ReLU fire11/relu_expand1x1 1 1 fire11/expand1x1_fire11/expand1x1/scale fire11/expand1x1_fire11/relu_expand1x1 -Convolution fire11/expand3x3 1 1 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_0 fire11/expand3x3 0=384 1=3 2=1 3=1 4=1 5=1 6=331776 -BatchNorm fire11/expand3x3/bn 1 1 fire11/expand3x3 fire11/expand3x3_fire11/expand3x3/bn 0=384 -Scale fire11/expand3x3/scale 1 1 fire11/expand3x3_fire11/expand3x3/bn fire11/expand3x3_fire11/expand3x3/scale 0=384 1=1 -ReLU fire11/relu_expand3x3 1 1 fire11/expand3x3_fire11/expand3x3/scale fire11/expand3x3_fire11/relu_expand3x3 -Concat fire11/concat 2 1 fire11/expand1x1_fire11/relu_expand1x1 fire11/expand3x3_fire11/relu_expand3x3 fire11/concat 0=0 -Split splitncnn_14 1 4 fire11/concat fire11/concat_splitncnn_0 fire11/concat_splitncnn_1 fire11/concat_splitncnn_2 fire11/concat_splitncnn_3 -Convolution conv12_1 1 1 fire11/concat_splitncnn_3 conv12_1 0=128 1=1 2=1 3=1 4=0 5=0 6=98304 -BatchNorm conv12_1/bn 1 1 conv12_1 conv12_1_conv12_1/bn 0=128 -Scale conv12_1/scale 1 1 conv12_1_conv12_1/bn conv12_1_conv12_1/scale 0=128 1=1 -ReLU conv12_1/relu 1 1 conv12_1_conv12_1/scale conv12_1_conv12_1/relu -Convolution conv12_2 1 1 conv12_1_conv12_1/relu conv12_2 0=256 1=3 2=1 3=2 4=1 5=0 6=294912 -BatchNorm conv12_2/bn 1 1 conv12_2 conv12_2_conv12_2/bn 0=256 -Scale conv12_2/scale 1 1 conv12_2_conv12_2/bn conv12_2_conv12_2/scale 0=256 1=1 -ReLU conv12_2/relu 1 1 conv12_2_conv12_2/scale conv12_2_conv12_2/relu -Split splitncnn_15 1 4 conv12_2_conv12_2/relu conv12_2_conv12_2/relu_splitncnn_0 conv12_2_conv12_2/relu_splitncnn_1 conv12_2_conv12_2/relu_splitncnn_2 conv12_2_conv12_2/relu_splitncnn_3 -Convolution conv13_1 1 1 conv12_2_conv12_2/relu_splitncnn_3 conv13_1 0=64 1=1 2=1 3=1 4=0 5=0 6=16384 -BatchNorm conv13_1/bn 1 1 conv13_1 conv13_1_conv13_1/bn 0=64 -Scale conv13_1/scale 1 1 conv13_1_conv13_1/bn conv13_1_conv13_1/scale 0=64 1=1 -ReLU conv13_1/relu 1 1 conv13_1_conv13_1/scale conv13_1_conv13_1/relu -Convolution conv13_2 1 1 conv13_1_conv13_1/relu conv13_2 0=128 1=3 2=1 3=2 4=1 5=0 6=73728 -BatchNorm conv13_2/bn 1 1 conv13_2 conv13_2_conv13_2/bn 0=128 -Scale conv13_2/scale 1 1 conv13_2_conv13_2/bn conv13_2_conv13_2/scale 0=128 1=1 -ReLU conv13_2/relu 1 1 conv13_2_conv13_2/scale conv13_2_conv13_2/relu -Split splitncnn_16 1 3 conv13_2_conv13_2/relu conv13_2_conv13_2/relu_splitncnn_0 conv13_2_conv13_2/relu_splitncnn_1 conv13_2_conv13_2/relu_splitncnn_2 -BatchNorm fire5/bn 1 1 fire5/concat_splitncnn_0 fire5/normal 0=256 -Scale fire5/scale 1 1 fire5/normal fire5/normal_fire5/scale 0=256 1=1 -Split splitncnn_17 1 3 fire5/normal_fire5/scale fire5/normal_fire5/scale_splitncnn_0 fire5/normal_fire5/scale_splitncnn_1 fire5/normal_fire5/scale_splitncnn_2 -Convolution fire5_mbox_loc 1 1 fire5/normal_fire5/scale_splitncnn_2 fire5_mbox_loc 0=16 1=3 2=1 3=1 4=1 5=1 6=36864 -Permute fire5_mbox_loc_perm 1 1 fire5_mbox_loc fire5_mbox_loc_perm 0=3 -Flatten fire5_mbox_loc_flat 1 1 fire5_mbox_loc_perm fire5_mbox_loc_flat -Convolution fire5_mbox_conf 1 1 fire5/normal_fire5/scale_splitncnn_1 fire5_mbox_conf 0=84 1=3 2=1 3=1 4=1 5=1 6=193536 -Permute fire5_mbox_conf_perm 1 1 fire5_mbox_conf fire5_mbox_conf_perm 0=3 -Flatten fire5_mbox_conf_flat 1 1 fire5_mbox_conf_perm fire5_mbox_conf_flat -PriorBox fire5_mbox_priorbox 2 1 fire5/normal_fire5/scale_splitncnn_0 data_splitncnn_5 fire5_mbox_priorbox -23300=1,21.000000 -23301=1,45.000000 -23302=1,2.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=8.000000 12=8.000000 13=0.500000 -Convolution fire9_mbox_loc 1 1 fire9/concat_splitncnn_2 fire9_mbox_loc 0=24 1=3 2=1 3=1 4=1 5=1 6=110592 -Permute fire9_mbox_loc_perm 1 1 fire9_mbox_loc fire9_mbox_loc_perm 0=3 -Flatten fire9_mbox_loc_flat 1 1 fire9_mbox_loc_perm fire9_mbox_loc_flat -Convolution fire9_mbox_conf 1 1 fire9/concat_splitncnn_1 fire9_mbox_conf 0=126 1=3 2=1 3=1 4=1 5=1 6=580608 -Permute fire9_mbox_conf_perm 1 1 fire9_mbox_conf fire9_mbox_conf_perm 0=3 -Flatten fire9_mbox_conf_flat 1 1 fire9_mbox_conf_perm fire9_mbox_conf_flat -PriorBox fire9_mbox_priorbox 2 1 fire9/concat_splitncnn_0 data_splitncnn_4 fire9_mbox_priorbox -23300=1,45.000000 -23301=1,99.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=16.000000 12=16.000000 13=0.500000 -Convolution fire10_mbox_loc 1 1 fire10/concat_splitncnn_2 fire10_mbox_loc 0=24 1=3 2=1 3=1 4=1 5=1 6=165888 -Permute fire10_mbox_loc_perm 1 1 fire10_mbox_loc fire10_mbox_loc_perm 0=3 -Flatten fire10_mbox_loc_flat 1 1 fire10_mbox_loc_perm fire10_mbox_loc_flat -Convolution fire10_mbox_conf 1 1 fire10/concat_splitncnn_1 fire10_mbox_conf 0=126 1=3 2=1 3=1 4=1 5=1 6=870912 -Permute fire10_mbox_conf_perm 1 1 fire10_mbox_conf fire10_mbox_conf_perm 0=3 -Flatten fire10_mbox_conf_flat 1 1 fire10_mbox_conf_perm fire10_mbox_conf_flat -PriorBox fire10_mbox_priorbox 2 1 fire10/concat_splitncnn_0 data_splitncnn_3 fire10_mbox_priorbox -23300=1,99.000000 -23301=1,153.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=32.000000 12=32.000000 13=0.500000 -Convolution fire11_mbox_loc 1 1 fire11/concat_splitncnn_2 fire11_mbox_loc 0=24 1=3 2=1 3=1 4=1 5=1 6=165888 -Permute fire11_mbox_loc_perm 1 1 fire11_mbox_loc fire11_mbox_loc_perm 0=3 -Flatten fire11_mbox_loc_flat 1 1 fire11_mbox_loc_perm fire11_mbox_loc_flat -Convolution fire11_mbox_conf 1 1 fire11/concat_splitncnn_1 fire11_mbox_conf 0=126 1=3 2=1 3=1 4=1 5=1 6=870912 -Permute fire11_mbox_conf_perm 1 1 fire11_mbox_conf fire11_mbox_conf_perm 0=3 -Flatten fire11_mbox_conf_flat 1 1 fire11_mbox_conf_perm fire11_mbox_conf_flat -PriorBox fire11_mbox_priorbox 2 1 fire11/concat_splitncnn_0 data_splitncnn_2 fire11_mbox_priorbox -23300=1,153.000000 -23301=1,207.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=64.000000 12=64.000000 13=0.500000 -Convolution conv12_2_mbox_loc 1 1 conv12_2_conv12_2/relu_splitncnn_2 conv12_2_mbox_loc 0=24 1=3 2=1 3=1 4=1 5=1 6=55296 -Permute conv12_2_mbox_loc_perm 1 1 conv12_2_mbox_loc conv12_2_mbox_loc_perm 0=3 -Flatten conv12_2_mbox_loc_flat 1 1 conv12_2_mbox_loc_perm conv12_2_mbox_loc_flat -Convolution conv12_2_mbox_conf 1 1 conv12_2_conv12_2/relu_splitncnn_1 conv12_2_mbox_conf 0=126 1=3 2=1 3=1 4=1 5=1 6=290304 -Permute conv12_2_mbox_conf_perm 1 1 conv12_2_mbox_conf conv12_2_mbox_conf_perm 0=3 -Flatten conv12_2_mbox_conf_flat 1 1 conv12_2_mbox_conf_perm conv12_2_mbox_conf_flat -PriorBox conv12_2_mbox_priorbox 2 1 conv12_2_conv12_2/relu_splitncnn_0 data_splitncnn_1 conv12_2_mbox_priorbox -23300=1,207.000000 -23301=1,261.000000 -23302=2,2.000000,3.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=100.000000 12=100.000000 13=0.500000 -Convolution conv13_2_mbox_loc 1 1 conv13_2_conv13_2/relu_splitncnn_2 conv13_2_mbox_loc 0=16 1=3 2=1 3=1 4=1 5=1 6=18432 -Permute conv13_2_mbox_loc_perm 1 1 conv13_2_mbox_loc conv13_2_mbox_loc_perm 0=3 -Flatten conv13_2_mbox_loc_flat 1 1 conv13_2_mbox_loc_perm conv13_2_mbox_loc_flat -Convolution conv13_2_mbox_conf 1 1 conv13_2_conv13_2/relu_splitncnn_1 conv13_2_mbox_conf 0=84 1=3 2=1 3=1 4=1 5=1 6=96768 -Permute conv13_2_mbox_conf_perm 1 1 conv13_2_mbox_conf conv13_2_mbox_conf_perm 0=3 -Flatten conv13_2_mbox_conf_flat 1 1 conv13_2_mbox_conf_perm conv13_2_mbox_conf_flat -PriorBox conv13_2_mbox_priorbox 2 1 conv13_2_conv13_2/relu_splitncnn_0 data_splitncnn_0 conv13_2_mbox_priorbox -23300=1,261.000000 -23301=1,315.000000 -23302=1,2.000000 3=0.100000 4=0.100000 5=0.200000 6=0.200000 7=1 8=0 9=-233 10=-233 11=300.000000 12=300.000000 13=0.500000 -Concat mbox_loc 6 1 fire5_mbox_loc_flat fire9_mbox_loc_flat fire10_mbox_loc_flat fire11_mbox_loc_flat conv12_2_mbox_loc_flat conv13_2_mbox_loc_flat mbox_loc 0=0 -Concat mbox_conf 6 1 fire5_mbox_conf_flat fire9_mbox_conf_flat fire10_mbox_conf_flat fire11_mbox_conf_flat conv12_2_mbox_conf_flat conv13_2_mbox_conf_flat mbox_conf 0=0 -Concat mbox_priorbox 6 1 fire5_mbox_priorbox fire9_mbox_priorbox fire10_mbox_priorbox fire11_mbox_priorbox conv12_2_mbox_priorbox conv13_2_mbox_priorbox mbox_priorbox 0=1 -Reshape mbox_conf_reshape 1 1 mbox_conf mbox_conf_reshape 0=21 1=-1 2=-233 3=0 -Softmax mbox_conf_softmax 1 1 mbox_conf_reshape mbox_conf_softmax 0=1 1=1 -Flatten mbox_conf_flatten 1 1 mbox_conf_softmax mbox_conf_flatten -DetectionOutput detection_out 3 1 mbox_loc mbox_conf_flatten mbox_priorbox detection_out 0=21 1=0.450000 2=100 3=100 4=0.250000 +119 152 +Input data 0 1 data 0=227 1=227 2=3 +Split splitncnn_0 1 7 data data_splitncnn_0 data_splitncnn_1 data_splitncnn_2 data_splitncnn_3 data_splitncnn_4 data_splitncnn_5 data_splitncnn_6 +Convolution conv1 1 1 data_splitncnn_6 conv1_relu_conv1 0=64 1=3 3=2 5=1 6=1728 9=1 +Pooling pool1 1 1 conv1_relu_conv1 pool1 1=3 2=2 +Convolution fire2/squeeze1x1 1 1 pool1 fire2/squeeze1x1_fire2/relu_squeeze1x1 0=16 1=1 5=1 6=1024 9=1 +Split splitncnn_1 1 2 fire2/squeeze1x1_fire2/relu_squeeze1x1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 +Convolution fire2/expand1x1 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_1 fire2/expand1x1_fire2/relu_expand1x1 0=64 1=1 5=1 6=1024 9=1 +Convolution fire2/expand3x3 1 1 fire2/squeeze1x1_fire2/relu_squeeze1x1_splitncnn_0 fire2/expand3x3_fire2/relu_expand3x3 0=64 1=3 4=1 5=1 6=9216 9=1 +Concat fire2/concat 2 1 fire2/expand1x1_fire2/relu_expand1x1 fire2/expand3x3_fire2/relu_expand3x3 fire2/concat +Convolution fire3/squeeze1x1 1 1 fire2/concat fire3/squeeze1x1_fire3/relu_squeeze1x1 0=16 1=1 5=1 6=2048 9=1 +Split splitncnn_2 1 2 fire3/squeeze1x1_fire3/relu_squeeze1x1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 +Convolution fire3/expand1x1 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_1 fire3/expand1x1_fire3/relu_expand1x1 0=64 1=1 5=1 6=1024 9=1 +Convolution fire3/expand3x3 1 1 fire3/squeeze1x1_fire3/relu_squeeze1x1_splitncnn_0 fire3/expand3x3_fire3/relu_expand3x3 0=64 1=3 4=1 5=1 6=9216 9=1 +Concat fire3/concat 2 1 fire3/expand1x1_fire3/relu_expand1x1 fire3/expand3x3_fire3/relu_expand3x3 fire3/concat +Pooling pool3 1 1 fire3/concat pool3 1=3 2=2 +Convolution fire4/squeeze1x1 1 1 pool3 fire4/squeeze1x1_fire4/relu_squeeze1x1 0=32 1=1 5=1 6=4096 9=1 +Split splitncnn_3 1 2 fire4/squeeze1x1_fire4/relu_squeeze1x1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 +Convolution fire4/expand1x1 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_1 fire4/expand1x1_fire4/relu_expand1x1 0=128 1=1 5=1 6=4096 9=1 +Convolution fire4/expand3x3 1 1 fire4/squeeze1x1_fire4/relu_squeeze1x1_splitncnn_0 fire4/expand3x3_fire4/relu_expand3x3 0=128 1=3 4=1 5=1 6=36864 9=1 +Concat fire4/concat 2 1 fire4/expand1x1_fire4/relu_expand1x1 fire4/expand3x3_fire4/relu_expand3x3 fire4/concat +Convolution fire5/squeeze1x1 1 1 fire4/concat fire5/squeeze1x1_fire5/relu_squeeze1x1 0=32 1=1 5=1 6=8192 9=1 +Split splitncnn_4 1 2 fire5/squeeze1x1_fire5/relu_squeeze1x1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 +Convolution fire5/expand1x1 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_1 fire5/expand1x1_fire5/relu_expand1x1 0=128 1=1 5=1 6=4096 9=1 +Convolution fire5/expand3x3 1 1 fire5/squeeze1x1_fire5/relu_squeeze1x1_splitncnn_0 fire5/expand3x3_fire5/relu_expand3x3 0=128 1=3 4=1 5=1 6=36864 9=1 +Concat fire5/concat 2 1 fire5/expand1x1_fire5/relu_expand1x1 fire5/expand3x3_fire5/relu_expand3x3 fire5/concat +Split splitncnn_5 1 2 fire5/concat fire5/concat_splitncnn_0 fire5/concat_splitncnn_1 +Pooling pool5 1 1 fire5/concat_splitncnn_1 pool5 1=3 2=2 +Convolution fire6/squeeze1x1 1 1 pool5 fire6/squeeze1x1_fire6/relu_squeeze1x1 0=48 1=1 5=1 6=12288 9=1 +Split splitncnn_6 1 2 fire6/squeeze1x1_fire6/relu_squeeze1x1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 +Convolution fire6/expand1x1 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_1 fire6/expand1x1_fire6/relu_expand1x1 0=192 1=1 5=1 6=9216 9=1 +Convolution fire6/expand3x3 1 1 fire6/squeeze1x1_fire6/relu_squeeze1x1_splitncnn_0 fire6/expand3x3_fire6/relu_expand3x3 0=192 1=3 4=1 5=1 6=82944 9=1 +Concat fire6/concat 2 1 fire6/expand1x1_fire6/relu_expand1x1 fire6/expand3x3_fire6/relu_expand3x3 fire6/concat +Convolution fire7/squeeze1x1 1 1 fire6/concat fire7/squeeze1x1_fire7/relu_squeeze1x1 0=48 1=1 5=1 6=18432 9=1 +Split splitncnn_7 1 2 fire7/squeeze1x1_fire7/relu_squeeze1x1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 +Convolution fire7/expand1x1 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_1 fire7/expand1x1_fire7/relu_expand1x1 0=192 1=1 5=1 6=9216 9=1 +Convolution fire7/expand3x3 1 1 fire7/squeeze1x1_fire7/relu_squeeze1x1_splitncnn_0 fire7/expand3x3_fire7/relu_expand3x3 0=192 1=3 4=1 5=1 6=82944 9=1 +Concat fire7/concat 2 1 fire7/expand1x1_fire7/relu_expand1x1 fire7/expand3x3_fire7/relu_expand3x3 fire7/concat +Convolution fire8/squeeze1x1 1 1 fire7/concat fire8/squeeze1x1_fire8/relu_squeeze1x1 0=64 1=1 5=1 6=24576 9=1 +Split splitncnn_8 1 2 fire8/squeeze1x1_fire8/relu_squeeze1x1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 +Convolution fire8/expand1x1 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_1 fire8/expand1x1_fire8/relu_expand1x1 0=256 1=1 5=1 6=16384 9=1 +Convolution fire8/expand3x3 1 1 fire8/squeeze1x1_fire8/relu_squeeze1x1_splitncnn_0 fire8/expand3x3_fire8/relu_expand3x3 0=256 1=3 4=1 5=1 6=147456 9=1 +Concat fire8/concat 2 1 fire8/expand1x1_fire8/relu_expand1x1 fire8/expand3x3_fire8/relu_expand3x3 fire8/concat +Convolution fire9/squeeze1x1 1 1 fire8/concat fire9/squeeze1x1_fire9/relu_squeeze1x1 0=64 1=1 5=1 6=32768 9=1 +Split splitncnn_9 1 2 fire9/squeeze1x1_fire9/relu_squeeze1x1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 +Convolution fire9/expand1x1 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_1 fire9/expand1x1_fire9/relu_expand1x1 0=256 1=1 5=1 6=16384 9=1 +Convolution fire9/expand3x3 1 1 fire9/squeeze1x1_fire9/relu_squeeze1x1_splitncnn_0 fire9/expand3x3_fire9/relu_expand3x3 0=256 1=3 4=1 5=1 6=147456 9=1 +Concat fire9/concat 2 1 fire9/expand1x1_fire9/relu_expand1x1 fire9/expand3x3_fire9/relu_expand3x3 fire9/concat +Split splitncnn_10 1 4 fire9/concat fire9/concat_splitncnn_0 fire9/concat_splitncnn_1 fire9/concat_splitncnn_2 fire9/concat_splitncnn_3 +Pooling pool9 1 1 fire9/concat_splitncnn_3 pool9 1=3 2=2 +Convolution fire10/squeeze1x1 1 1 pool9 fire10/squeeze1x1_fire10/relu_squeeze1x1 0=96 1=1 5=1 6=49152 9=1 +Split splitncnn_11 1 2 fire10/squeeze1x1_fire10/relu_squeeze1x1 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_0 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_1 +Convolution fire10/expand1x1 1 1 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_1 fire10/expand1x1_fire10/relu_expand1x1 0=384 1=1 5=1 6=36864 9=1 +Convolution fire10/expand3x3 1 1 fire10/squeeze1x1_fire10/relu_squeeze1x1_splitncnn_0 fire10/expand3x3_fire10/relu_expand3x3 0=384 1=3 4=1 5=1 6=331776 9=1 +Concat fire10/concat 2 1 fire10/expand1x1_fire10/relu_expand1x1 fire10/expand3x3_fire10/relu_expand3x3 fire10/concat +Split splitncnn_12 1 4 fire10/concat fire10/concat_splitncnn_0 fire10/concat_splitncnn_1 fire10/concat_splitncnn_2 fire10/concat_splitncnn_3 +Pooling pool10 1 1 fire10/concat_splitncnn_3 pool10 1=3 2=2 +Convolution fire11/squeeze1x1 1 1 pool10 fire11/squeeze1x1_fire11/relu_squeeze1x1 0=96 1=1 5=1 6=73728 9=1 +Split splitncnn_13 1 2 fire11/squeeze1x1_fire11/relu_squeeze1x1 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_0 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_1 +Convolution fire11/expand1x1 1 1 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_1 fire11/expand1x1_fire11/relu_expand1x1 0=384 1=1 5=1 6=36864 9=1 +Convolution fire11/expand3x3 1 1 fire11/squeeze1x1_fire11/relu_squeeze1x1_splitncnn_0 fire11/expand3x3_fire11/relu_expand3x3 0=384 1=3 4=1 5=1 6=331776 9=1 +Concat fire11/concat 2 1 fire11/expand1x1_fire11/relu_expand1x1 fire11/expand3x3_fire11/relu_expand3x3 fire11/concat +Split splitncnn_14 1 4 fire11/concat fire11/concat_splitncnn_0 fire11/concat_splitncnn_1 fire11/concat_splitncnn_2 fire11/concat_splitncnn_3 +Convolution conv12_1 1 1 fire11/concat_splitncnn_3 conv12_1_conv12_1/relu 0=128 1=1 5=1 6=98304 9=1 +Convolution conv12_2 1 1 conv12_1_conv12_1/relu conv12_2_conv12_2/relu 0=256 1=3 3=2 4=1 5=1 6=294912 9=1 +Split splitncnn_15 1 4 conv12_2_conv12_2/relu conv12_2_conv12_2/relu_splitncnn_0 conv12_2_conv12_2/relu_splitncnn_1 conv12_2_conv12_2/relu_splitncnn_2 conv12_2_conv12_2/relu_splitncnn_3 +Convolution conv13_1 1 1 conv12_2_conv12_2/relu_splitncnn_3 conv13_1_conv13_1/relu 0=64 1=1 5=1 6=16384 9=1 +Convolution conv13_2 1 1 conv13_1_conv13_1/relu conv13_2_conv13_2/relu 0=128 1=3 3=2 4=1 5=1 6=73728 9=1 +Split splitncnn_16 1 3 conv13_2_conv13_2/relu conv13_2_conv13_2/relu_splitncnn_0 conv13_2_conv13_2/relu_splitncnn_1 conv13_2_conv13_2/relu_splitncnn_2 +BatchNorm fire5/bn 1 1 fire5/concat_splitncnn_0 fire5/normal_fire5/scale 0=256 +Split splitncnn_17 1 3 fire5/normal_fire5/scale fire5/normal_fire5/scale_splitncnn_0 fire5/normal_fire5/scale_splitncnn_1 fire5/normal_fire5/scale_splitncnn_2 +Convolution fire5_mbox_loc 1 1 fire5/normal_fire5/scale_splitncnn_2 fire5_mbox_loc 0=16 1=3 4=1 5=1 6=36864 +Permute fire5_mbox_loc_perm 1 1 fire5_mbox_loc fire5_mbox_loc_perm 0=3 +Flatten fire5_mbox_loc_flat 1 1 fire5_mbox_loc_perm fire5_mbox_loc_flat +Convolution fire5_mbox_conf 1 1 fire5/normal_fire5/scale_splitncnn_1 fire5_mbox_conf 0=84 1=3 4=1 5=1 6=193536 +Permute fire5_mbox_conf_perm 1 1 fire5_mbox_conf fire5_mbox_conf_perm 0=3 +Flatten fire5_mbox_conf_flat 1 1 fire5_mbox_conf_perm fire5_mbox_conf_flat +PriorBox fire5_mbox_priorbox 2 1 fire5/normal_fire5/scale_splitncnn_0 data_splitncnn_5 fire5_mbox_priorbox -23300=1,1101529088 -23301=1,1110704128 -23302=1,1073741824 9=-233 10=-233 11=8.000000 12=8.000000 13=0.500000 +Convolution fire9_mbox_loc 1 1 fire9/concat_splitncnn_2 fire9_mbox_loc 0=24 1=3 4=1 5=1 6=110592 +Permute fire9_mbox_loc_perm 1 1 fire9_mbox_loc fire9_mbox_loc_perm 0=3 +Flatten fire9_mbox_loc_flat 1 1 fire9_mbox_loc_perm fire9_mbox_loc_flat +Convolution fire9_mbox_conf 1 1 fire9/concat_splitncnn_1 fire9_mbox_conf 0=126 1=3 4=1 5=1 6=580608 +Permute fire9_mbox_conf_perm 1 1 fire9_mbox_conf fire9_mbox_conf_perm 0=3 +Flatten fire9_mbox_conf_flat 1 1 fire9_mbox_conf_perm fire9_mbox_conf_flat +PriorBox fire9_mbox_priorbox 2 1 fire9/concat_splitncnn_0 data_splitncnn_4 fire9_mbox_priorbox -23300=1,1110704128 -23301=1,1120272384 -23302=2,1073741824,1077936128 9=-233 10=-233 11=16.000000 12=16.000000 13=0.500000 +Convolution fire10_mbox_loc 1 1 fire10/concat_splitncnn_2 fire10_mbox_loc 0=24 1=3 4=1 5=1 6=165888 +Permute fire10_mbox_loc_perm 1 1 fire10_mbox_loc fire10_mbox_loc_perm 0=3 +Flatten fire10_mbox_loc_flat 1 1 fire10_mbox_loc_perm fire10_mbox_loc_flat +Convolution fire10_mbox_conf 1 1 fire10/concat_splitncnn_1 fire10_mbox_conf 0=126 1=3 4=1 5=1 6=870912 +Permute fire10_mbox_conf_perm 1 1 fire10_mbox_conf fire10_mbox_conf_perm 0=3 +Flatten fire10_mbox_conf_flat 1 1 fire10_mbox_conf_perm fire10_mbox_conf_flat +PriorBox fire10_mbox_priorbox 2 1 fire10/concat_splitncnn_0 data_splitncnn_3 fire10_mbox_priorbox -23300=1,1120272384 -23301=1,1125711872 -23302=2,1073741824,1077936128 9=-233 10=-233 11=32.000000 12=32.000000 13=0.500000 +Convolution fire11_mbox_loc 1 1 fire11/concat_splitncnn_2 fire11_mbox_loc 0=24 1=3 4=1 5=1 6=165888 +Permute fire11_mbox_loc_perm 1 1 fire11_mbox_loc fire11_mbox_loc_perm 0=3 +Flatten fire11_mbox_loc_flat 1 1 fire11_mbox_loc_perm fire11_mbox_loc_flat +Convolution fire11_mbox_conf 1 1 fire11/concat_splitncnn_1 fire11_mbox_conf 0=126 1=3 4=1 5=1 6=870912 +Permute fire11_mbox_conf_perm 1 1 fire11_mbox_conf fire11_mbox_conf_perm 0=3 +Flatten fire11_mbox_conf_flat 1 1 fire11_mbox_conf_perm fire11_mbox_conf_flat +PriorBox fire11_mbox_priorbox 2 1 fire11/concat_splitncnn_0 data_splitncnn_2 fire11_mbox_priorbox -23300=1,1125711872 -23301=1,1129250816 -23302=2,1073741824,1077936128 9=-233 10=-233 11=64.000000 12=64.000000 13=0.500000 +Convolution conv12_2_mbox_loc 1 1 conv12_2_conv12_2/relu_splitncnn_2 conv12_2_mbox_loc 0=24 1=3 4=1 5=1 6=55296 +Permute conv12_2_mbox_loc_perm 1 1 conv12_2_mbox_loc conv12_2_mbox_loc_perm 0=3 +Flatten conv12_2_mbox_loc_flat 1 1 conv12_2_mbox_loc_perm conv12_2_mbox_loc_flat +Convolution conv12_2_mbox_conf 1 1 conv12_2_conv12_2/relu_splitncnn_1 conv12_2_mbox_conf 0=126 1=3 4=1 5=1 6=290304 +Permute conv12_2_mbox_conf_perm 1 1 conv12_2_mbox_conf conv12_2_mbox_conf_perm 0=3 +Flatten conv12_2_mbox_conf_flat 1 1 conv12_2_mbox_conf_perm conv12_2_mbox_conf_flat +PriorBox conv12_2_mbox_priorbox 2 1 conv12_2_conv12_2/relu_splitncnn_0 data_splitncnn_1 conv12_2_mbox_priorbox -23300=1,1129250816 -23301=1,1132625920 -23302=2,1073741824,1077936128 9=-233 10=-233 11=100.000000 12=100.000000 13=0.500000 +Convolution conv13_2_mbox_loc 1 1 conv13_2_conv13_2/relu_splitncnn_2 conv13_2_mbox_loc 0=16 1=3 4=1 5=1 6=18432 +Permute conv13_2_mbox_loc_perm 1 1 conv13_2_mbox_loc conv13_2_mbox_loc_perm 0=3 +Flatten conv13_2_mbox_loc_flat 1 1 conv13_2_mbox_loc_perm conv13_2_mbox_loc_flat +Convolution conv13_2_mbox_conf 1 1 conv13_2_conv13_2/relu_splitncnn_1 conv13_2_mbox_conf 0=84 1=3 4=1 5=1 6=96768 +Permute conv13_2_mbox_conf_perm 1 1 conv13_2_mbox_conf conv13_2_mbox_conf_perm 0=3 +Flatten conv13_2_mbox_conf_flat 1 1 conv13_2_mbox_conf_perm conv13_2_mbox_conf_flat +PriorBox conv13_2_mbox_priorbox 2 1 conv13_2_conv13_2/relu_splitncnn_0 data_splitncnn_0 conv13_2_mbox_priorbox -23300=1,1132625920 -23301=1,1134395392 -23302=1,1073741824 9=-233 10=-233 11=300.000000 12=300.000000 13=0.500000 +Concat mbox_loc 6 1 fire5_mbox_loc_flat fire9_mbox_loc_flat fire10_mbox_loc_flat fire11_mbox_loc_flat conv12_2_mbox_loc_flat conv13_2_mbox_loc_flat mbox_loc +Concat mbox_conf 6 1 fire5_mbox_conf_flat fire9_mbox_conf_flat fire10_mbox_conf_flat fire11_mbox_conf_flat conv12_2_mbox_conf_flat conv13_2_mbox_conf_flat mbox_conf +Concat mbox_priorbox 6 1 fire5_mbox_priorbox fire9_mbox_priorbox fire10_mbox_priorbox fire11_mbox_priorbox conv12_2_mbox_priorbox conv13_2_mbox_priorbox mbox_priorbox 0=1 +Reshape mbox_conf_reshape 1 1 mbox_conf mbox_conf_reshape 0=21 1=-1 +Softmax mbox_conf_softmax 1 1 mbox_conf_reshape mbox_conf_softmax 0=1 1=1 +Flatten mbox_conf_flatten 1 1 mbox_conf_softmax mbox_conf_flatten +DetectionOutput detection_out 3 1 mbox_loc mbox_conf_flatten mbox_priorbox detection_out 0=21 1=0.450000 2=100 4=0.250000 diff --git a/benchmark/vgg16.param b/benchmark/vgg16.param index bc3ecb9bc..f43434cbd 100644 --- a/benchmark/vgg16.param +++ b/benchmark/vgg16.param @@ -1,42 +1,27 @@ 7767517 -40 40 -Input data 0 1 data 0=3 1=224 2=224 -Convolution conv1_1 1 1 data conv1_1 0=64 1=3 2=1 3=1 4=1 5=1 6=1728 -ReLU relu1_1 1 1 conv1_1 conv1_1_relu1_1 -Convolution conv1_2 1 1 conv1_1_relu1_1 conv1_2 0=64 1=3 2=1 3=1 4=1 5=1 6=36864 -ReLU relu1_2 1 1 conv1_2 conv1_2_relu1_2 -Pooling pool1 1 1 conv1_2_relu1_2 pool1 0=0 1=2 2=2 3=0 4=0 -Convolution conv2_1 1 1 pool1 conv2_1 0=128 1=3 2=1 3=1 4=1 5=1 6=73728 -ReLU relu2_1 1 1 conv2_1 conv2_1_relu2_1 -Convolution conv2_2 1 1 conv2_1_relu2_1 conv2_2 0=128 1=3 2=1 3=1 4=1 5=1 6=147456 -ReLU relu2_2 1 1 conv2_2 conv2_2_relu2_2 -Pooling pool2 1 1 conv2_2_relu2_2 pool2 0=0 1=2 2=2 3=0 4=0 -Convolution conv3_1 1 1 pool2 conv3_1 0=256 1=3 2=1 3=1 4=1 5=1 6=294912 -ReLU relu3_1 1 1 conv3_1 conv3_1_relu3_1 -Convolution conv3_2 1 1 conv3_1_relu3_1 conv3_2 0=256 1=3 2=1 3=1 4=1 5=1 6=589824 -ReLU relu3_2 1 1 conv3_2 conv3_2_relu3_2 -Convolution conv3_3 1 1 conv3_2_relu3_2 conv3_3 0=256 1=3 2=1 3=1 4=1 5=1 6=589824 -ReLU relu3_3 1 1 conv3_3 conv3_3_relu3_3 -Pooling pool3 1 1 conv3_3_relu3_3 pool3 0=0 1=2 2=2 3=0 4=0 -Convolution conv4_1 1 1 pool3 conv4_1 0=512 1=3 2=1 3=1 4=1 5=1 6=1179648 -ReLU relu4_1 1 1 conv4_1 conv4_1_relu4_1 -Convolution conv4_2 1 1 conv4_1_relu4_1 conv4_2 0=512 1=3 2=1 3=1 4=1 5=1 6=2359296 -ReLU relu4_2 1 1 conv4_2 conv4_2_relu4_2 -Convolution conv4_3 1 1 conv4_2_relu4_2 conv4_3 0=512 1=3 2=1 3=1 4=1 5=1 6=2359296 -ReLU relu4_3 1 1 conv4_3 conv4_3_relu4_3 -Pooling pool4 1 1 conv4_3_relu4_3 pool4 0=0 1=2 2=2 3=0 4=0 -Convolution conv5_1 1 1 pool4 conv5_1 0=512 1=3 2=1 3=1 4=1 5=1 6=2359296 -ReLU relu5_1 1 1 conv5_1 conv5_1_relu5_1 -Convolution conv5_2 1 1 conv5_1_relu5_1 conv5_2 0=512 1=3 2=1 3=1 4=1 5=1 6=2359296 -ReLU relu5_2 1 1 conv5_2 conv5_2_relu5_2 -Convolution conv5_3 1 1 conv5_2_relu5_2 conv5_3 0=512 1=3 2=1 3=1 4=1 5=1 6=2359296 -ReLU relu5_3 1 1 conv5_3 conv5_3_relu5_3 -Pooling pool5 1 1 conv5_3_relu5_3 pool5 0=0 1=2 2=2 3=0 4=0 -InnerProduct fc6 1 1 pool5 fc6 0=4096 1=1 2=102760448 -ReLU relu6 1 1 fc6 fc6_relu6 -Dropout drop6 1 1 fc6_relu6 fc6_drop6 0=0.500000 -InnerProduct fc7 1 1 fc6_drop6 fc7 0=4096 1=1 2=16777216 -ReLU relu7 1 1 fc7 fc7_relu7 -Dropout drop7 1 1 fc7_relu7 fc7_drop7 0=0.500000 -InnerProduct fc8 1 1 fc7_drop7 fc8 0=1000 1=1 2=4096000 -Softmax prob 1 1 fc8 prob 0=0 +25 25 +Input data 0 1 data 0=3 1=224 2=224 +Convolution conv1_1 1 1 data conv1_1_relu1_1 0=64 1=3 4=1 5=1 6=1728 9=1 +Convolution conv1_2 1 1 conv1_1_relu1_1 conv1_2_relu1_2 0=64 1=3 4=1 5=1 6=36864 9=1 +Pooling pool1 1 1 conv1_2_relu1_2 pool1 1=2 2=2 +Convolution conv2_1 1 1 pool1 conv2_1_relu2_1 0=128 1=3 4=1 5=1 6=73728 9=1 +Convolution conv2_2 1 1 conv2_1_relu2_1 conv2_2_relu2_2 0=128 1=3 4=1 5=1 6=147456 9=1 +Pooling pool2 1 1 conv2_2_relu2_2 pool2 1=2 2=2 +Convolution conv3_1 1 1 pool2 conv3_1_relu3_1 0=256 1=3 4=1 5=1 6=294912 9=1 +Convolution conv3_2 1 1 conv3_1_relu3_1 conv3_2_relu3_2 0=256 1=3 4=1 5=1 6=589824 9=1 +Convolution conv3_3 1 1 conv3_2_relu3_2 conv3_3_relu3_3 0=256 1=3 4=1 5=1 6=589824 9=1 +Pooling pool3 1 1 conv3_3_relu3_3 pool3 1=2 2=2 +Convolution conv4_1 1 1 pool3 conv4_1_relu4_1 0=512 1=3 4=1 5=1 6=1179648 9=1 +Convolution conv4_2 1 1 conv4_1_relu4_1 conv4_2_relu4_2 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution conv4_3 1 1 conv4_2_relu4_2 conv4_3_relu4_3 0=512 1=3 4=1 5=1 6=2359296 9=1 +Pooling pool4 1 1 conv4_3_relu4_3 pool4 1=2 2=2 +Convolution conv5_1 1 1 pool4 conv5_1_relu5_1 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution conv5_2 1 1 conv5_1_relu5_1 conv5_2_relu5_2 0=512 1=3 4=1 5=1 6=2359296 9=1 +Convolution conv5_3 1 1 conv5_2_relu5_2 conv5_3_relu5_3 0=512 1=3 4=1 5=1 6=2359296 9=1 +Pooling pool5 1 1 conv5_3_relu5_3 pool5 1=2 2=2 +InnerProduct fc6 1 1 pool5 fc6_relu6 0=4096 1=1 2=102760448 9=1 +Dropout drop6 1 1 fc6_relu6 fc6_drop6 0=0.500000 +InnerProduct fc7 1 1 fc6_drop6 fc7_relu7 0=4096 1=1 2=16777216 9=1 +Dropout drop7 1 1 fc7_relu7 fc7_drop7 0=0.500000 +InnerProduct fc8 1 1 fc7_drop7 fc8 0=1000 1=1 2=4096000 +Softmax prob 1 1 fc8 prob diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index baed08d66..75dcb7f0e 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -15,3 +15,11 @@ target_link_libraries(ncnn2mem PRIVATE ncnn) if(NCNN_VULKAN) target_link_libraries(ncnn2mem PRIVATE ${Vulkan_LIBRARY}) endif() + +add_executable(ncnnoptimize ncnnoptimize.cpp) + +target_link_libraries(ncnnoptimize PRIVATE ncnn) + +if(NCNN_VULKAN) + target_link_libraries(ncnnoptimize PRIVATE ${Vulkan_LIBRARY}) +endif()