# Citywide Cellular Traffic Prediction Based on a Hybrid Spatiotemporal Network
## 3 Cellular Traffic Prediction Model
### Deformable Convolution  
In recent years, convolutional neural networks have achieved excellent performance in many image fields with their good feature extraction ability and end-to-end learning. The convolution in the network samples different regions of the input image and then convolves the sampled information as an output. This convolution operation determines that the geometric deformation capability of the model does not come from the network, but from the diversity of the dataset. For example, assume that \(Q\) represents the receptive field area covered by the convolution kernel, in a 3 \(\times\) 3 convolution kernel, \(Q\) = (1,1), (1,0),..., (0,1), (1,1). For any pixel point \(P_{0}\) on the feature map, the standard convolution method is as follows:  
\[y\left(P_{0}\right)=\sum_{P_{n}\in Q}W\left(P_{n}\right)\cdot x\left(P_{0}+P_{ n}\right) \tag{3}\]  
Because the ordinary convolution method has limited adaptability to the complex spatial correlation of cellular network traffic, we introduced a deformable convolution to the model. The process of deformable convolution is to add an offset variable \(\Delta P_{n}\) at each sampling point position. \(\Delta P_{n}\) can be continuously learned and adaptively changed according to the current image content. This means that the convolution kernel is not limited to a fixed position sampling method, but can search for the region of interest near the current position for sampling. Thus, the convolution kernel improves the feature extraction capability for complex spaces. The following is the calculation process of the deformable convolution:  
\[y\left(P_{0}\right)=\sum_{P_{n}\in Q}W\left(P_{n}\right)\cdot x\left(P_{0}+P_{ n}+\Delta P_{n}\right) \tag{4}\]  
The traditional convolution window only needs to train the pixel weight parameters of each convolution window. The deformable convolutional network must add some parameters to train the shape of the convolution window, that is the offset vector of each pixel. The offset field in Figure 6 is the additional parameter to be trained, and its size is the same as the input picture size. The convolution window slides on the offset field to achieve the effect of convolution pixel offset and optimize the sampling points. It can be seen from the above analysis that if \(\Delta P_{n}\) = 0, the deformable convolution becomes a normal convolution, and there is no improvement in performance. In the process of predicting cellular  
Figure 6: Illustration of a 3 \(\times\) 3 deformable convolution. network traffic, an ordinary convolution can only extract features for a fixed size range. The deformable convolution can extend the feature extraction range to more effective areas around by learning the offset variable \(\Delta P_{n}\). In this training process, the model can be offset from the area calculated by the common convolution kernel to other areas with more correlation and effectively avoids interference from uncorrelated spatial features, thus improving the predictive performance of cellular traffic. In summary, to improve the spatial feature extraction ability of the model, a deformable convolution unit is added to each layer (DenseBlock) in the DenseNet. As shown in Figure 7, the original DenseBlock consists of a batch normalization layer, a rectified linear units (ReLU) layer, and a 3 \(\times\) 3 convolution layer. The improvement of this paper is to change the 3 \(\times\) 3 convolution layer to a 1 \(\times\) 1 size, which is used to shape the data of the current DenseBlock, then access the batch normalization(BN) layer, the ReLU layer, and the deformable convolution layer in turn. Since the traditional DenseBlock reuses the features of all previous layers, the deeper DenseBlock requires more parameters. Adding a 1 \(\times\) 1 convolution layer can integrate input features into low dimensions and reduce the number of model parameters. We replaced the improved DenseBlock in the three-tier DenseNet, and the model parameters dropped from 230 thousand to 170 thousand.