Part Number:TDA2SX
Hi everyone,
I have model trained in Caffe framework and want to convert it using TIDL converter. From TIDL documentation I read that dense convolution flow is supported for only 1x1 and 3x3 kernels with stride = 1
and dilation =1. Also I read about conv2DKernelType parameter for conversion process: conv2DKernelType can be either 0 or 1 for each layer. Default value is 0 for all the layers. Set it to 0 to use sparse convolution, otherwise, set it to 1 to use dense convolution.
In prototxt file of my model, I noticed that stride is set to 2.
So, if conv2DKernelType is by default 0, sparse convolution is used for all layers, there shouldn't be any limitations regarding above mentioned, right? I also tested version where I set conv2DKernelType values for layers to 1, to use dense convolution, which is clearly not supported and I got the same output like for sparse convolution.
So my question is, can we influence type of convolution with conv2DKernelType parameter?
Another thing I noticed is that when processing sample frame some negative values could be seen for sparsity attribute. Can someone explain what this attribute mean and why there are negative values?
Layer 1 : Out Q : 28 , TIDL_ConvolutionLayer, PASSED #MMACs = 19.44, 12.87, Sparsity : 33.80
Layer 2 : Out Q : 11 , TIDL_ConvolutionLayer, PASSED #MMACs = 6.48, 6.48, Sparsity : 0.00
Layer 3 : Out Q : 3 , TIDL_ConvolutionLayer, PASSED #MMACs = 46.08, 27.54, Sparsity : 40.23
Layer 4 : Out Q : 9 , TIDL_ConvolutionLayer, PASSED #MMACs = 3.24, 3.24, Sparsity : 0.00
Layer 5 : Out Q : 4 , TIDL_ConvolutionLayer, PASSED #MMACs = 46.08, 49.81, Sparsity : -8.11
Layer 6 : Out Q : 17 , TIDL_ConvolutionLayer, PASSED #MMACs = 6.48, 6.48, Sparsity : 0.00
Layer 7 : Out Q : 27 , TIDL_ConvolutionLayer, PASSED #MMACs = 92.16, 100.10, Sparsity : -8.62
Layer 8 : Out Q : 53 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.66, 1.66, Sparsity : 0.00
Layer 9 : Out Q : 51 , TIDL_ConvolutionLayer, PASSED #MMACs = 47.32, 53.86, Sparsity : -13.82
Layer 10 : Out Q : 62 , TIDL_ConvolutionLayer, PASSED #MMACs = 3.33, 3.33, Sparsity : 0.00
Layer 11 : Out Q : 87 , TIDL_ConvolutionLayer, PASSED #MMACs = 94.63, 106.89, Sparsity : -12.95
Layer 12 : Out Q : 74 , TIDL_ConvolutionLayer, PASSED #MMACs = 0.83, 0.83, Sparsity : 0.00
Layer 13 : Out Q : 126 , TIDL_ConvolutionLayer, PASSED #MMACs = 47.32, 47.28, Sparsity : 0.07
Layer 14 : Out Q : 136 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.66, 1.66, Sparsity : 0.00
Layer 15 : Out Q : 195 , TIDL_ConvolutionLayer, PASSED #MMACs = 94.63, 94.55, Sparsity : 0.09
Layer 16 : Out Q : 39 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.66, 1.66, Sparsity : 0.00
Layer 17 : Out Q : 278 , TIDL_ConvolutionLayer, PASSED #MMACs = 94.63, 94.47, Sparsity : 0.18
Layer 18 : Out Q : 333 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.66, 1.66, Sparsity : 0.00
Layer 19 : Out Q : 399 , TIDL_ConvolutionLayer, PASSED #MMACs = 94.63, 94.26, Sparsity : 0.40
Layer 20 : Out Q : 527 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.66, 1.66, Sparsity : 0.00
Layer 21 : Out Q : 473 , TIDL_ConvolutionLayer, PASSED #MMACs = 94.63, 94.39, Sparsity : 0.25
Layer 22 : Out Q : 392 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.66, 1.66, Sparsity : 0.00
Layer 23 : Out Q : 604 , TIDL_ConvolutionLayer, PASSED #MMACs = 94.63, 93.11, Sparsity : 1.61
Layer 24 : Out Q : 368 , TIDL_ConvolutionLayer, PASSED #MMACs = 0.46, 0.46, Sparsity : 0.00
Layer 25 : Out Q : 1064 , TIDL_ConvolutionLayer, PASSED #MMACs = 52.43, 51.40, Sparsity : 1.96
Layer 26 : Out Q : 980 , TIDL_ConvolutionLayer, PASSED #MMACs = 0.92, 0.92, Sparsity : 0.00
Layer 27 : Out Q : 898 , TIDL_ConvolutionLayer, PASSED #MMACs = 104.86, 96.04, Sparsity : 8.41
Layer 28 : Out Q : 2131 , TIDL_ConvolutionLayer, PASSED #MMACs = 26.21, 23.14, Sparsity : 11.72
Layer 29 : Out Q : 2516 , TIDL_ConvolutionLayer, PASSED #MMACs = 29.49, 21.24, Sparsity : 27.97
Layer 30 : Out Q : 6026 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.64, 1.64, Sparsity : 0.05
Layer 31 : Out Q : 3333 , TIDL_ConvolutionLayer, PASSED #MMACs = 2.65, 2.52, Sparsity : 5.17
Layer 32 : Out Q : 6666 , TIDL_ConvolutionLayer, PASSED #MMACs = 0.29, 0.29, Sparsity : 1.09
Layer 33 : Out Q : 5288 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.18, 0.90, Sparsity : 23.39
Layer 34 : Out Q : 6182 , TIDL_ConvolutionLayer, PASSED #MMACs = 0.07, 0.07, Sparsity : 0.27
Layer 35 : Out Q : 5659 , TIDL_ConvolutionLayer, PASSED #MMACs = 0.07, 0.03, Sparsity : 58.08
Layer 36 : Out Q : 274 , TIDL_ConvolutionLayer, PASSED #MMACs = 2.22, 2.79, Sparsity : -25.91
Layer 37 :TIDL_FlattenLayer, PASSED #MMACs = 0.00, 0.00, Sparsity : 0.00
Layer 38 : Out Q : 771 , TIDL_ConvolutionLayer, PASSED #MMACs = 1.11, 1.11, Sparsity : 0.00
Thanks in advanse,
Sasa