IEEE/ICACT20230038 Slide.05        [Big Slide]       [YouTube] Oral Presentation
On this basis, we take two dynamic components: 1) Layer skipping; 2) Dynamic pruning. Each stage contains multiple convolutional blocks, and the layer skipping module is embedded before each stage. The layer gate generates 1-bit data according to the input of the convolution block, and determines whether to skip the current convolution block. Dynamic pruning is used before convolutional layers. The Channel gate is embedded before the convolutional layer. According to the input, several bits of data are generated to determine whether each channel will be pruned. The layer gate and channel gate use Global Average Pooling (GAP) for dimensionality reduction. After two MLPs, the hard-sigmoid function is used to restrict the vector's range to (0,1). Finally, the vector is binary quantized to 0 or 1. In dynamic pruning, there are many ways to generate channel weights. Some works generate the weights taking the feature maps of each layer as the input. Some builds an additional decision network and take the input picture as input. We take a mixed approach. The input feature is sent to channel gate A, which is located before the first layer of one or several convolutional blocks. Gate B takes the output of the previous gate as its input. The network is divided into multiple subsets by channel gate A.

[Go to Next Slide]
Select Voice: