# Real-Time Motion Detection Network Based on Single Linear Bottleneck and Pooling Compensation
## 3 Methods
### Single Linear Bottleneck  
The single-linear bottleneck operator is mainly used to reduce the computational load of the model. Its structure is shown in Figure 2b. First, the channel dimension is reduced by the \(1\times 1\) convolution. Then the feature map is passed through the \(3\times 3\) depth-wise separable convolution. Finally the channel dimension is restored by the \(1\times 1\) convolution. The nonlinear activation function ReLU is used at the bottleneck, and the other bottleneck is linear. Therefore, it is called the single-linear bottleneck structure. The design idea of the single-linear bottleneck structure will be described in details below.  
[PERSON] et al. [37] used the bottleneck structure to reduce the computational load of the model. However, subsequent study [24] showed that using ReLU for nonlinear activation in the bottleneck layer may lead to loss of information, especially in low-dimensional space. Considering that if the number of channels is increased in the bottleneck layer, the amount  
Figure 1: Overview of our MDNet-LBPC. The single-linear bottleneck operator is used to reduce the computational complexity of the model. The polling compensation mechanism is used to reduce information loss caused by channel compression. “Conv” indicates convolution operation, “Down” indicates maxpooling and upsampling operation. “SPP” indicates spatial pyramid pooling layer.  
Figure 2: Invert linear bottleneck [24] and Single linear bottleneck comparison diagram. (**a**) Invert linear bottleneck. (**b**) single linear bottleneck.  
of computation will increase. [PERSON] et al. [38] used an appropriate number of ReLUs to ensure the nonlinearity of the feature space, and the remaining ReLUs can be removed to improve network performance. [PERSON] et al. [39] set ReLU within residual units by creating identity paths. On this basis, we think that ReLU can be placed in the bottleneck structure channel recovery, which can maintain a certain nonlinearity and prevent excessive information loss. The proposed single linear bottleneck is denoted as \(\Phi(x)\), which can be represented by the Equation (1). \(A\cdot N\) represents the linear conversion \(A:\mathbb{R}^{s\times s\times k}\rightarrow\mathbb{R}^{s_{1}\times s_{1} \times(tk)}\), \(B\) is a nonlinear transformation with \(B:\mathbb{R}^{s_{1}\times s_{1}\times(tk)}\rightarrow\mathbb{R}^{s_{1}\times s _{1}\times k^{\prime}}\), where \(t\) is the channel reduction factor.  
\[\Phi(x)=[A\cdot N\circ B]x \tag{1}\]  
The detailed structure of this block is shown in Table 1. During the operation, the number of channels is reduced from \(k\) to \(tk\), and then expanded to \(k^{\prime}\).  
Formal comparison MobileNetV2 [24] is shown in Figure 2, Figure 2a is the inverted residual linear bottleneck structure. Compared with the inverted residual linear bottleneck, both bottleneck ends are linearly processed. However, the single-linear bottleneck structure only keeps one bottleneck end linear. Furthermore, compared to MobileNetV2 [24], which can only use depth-wise separable convolutions to reduce computation, our single-linear bottleneck operator simultaneously reduces computation by channel narrowing and using depth-wise separable convolutions.