## 3 Proposed Vision-Based Arching Detection Method
### CNN for Slab Arching Detection  
CNN is one of the widely utilized deep learning networks proposed by [PERSON] et al. [54]. It is good at detecting tiny and meaningful spatial features and has the characteristics of sparse weights [55]. In general, CNN is applied to computer vision areas, such as image classification [56] and object detection [57]. Therefore, it is also suitable for the vision-based slab arching detection problem in this paper.  
CNN is a stacked architecture employing multiple layers, mainly including convolutional layers, pooling layers, and fully connected layers. The convolutional layer uses a series of kernels to perceive different local features, which can be integrated to form the feature maps expressing global information. Through parameter sharing, the amount of computation can be greatly reduced. The pooling layer is applied to reducing the size of feature maps and ignoring the minute variation by merging local information, thereby filtering out the noise in the original data and preventing over-fitting. After several  
Figure 8: Series-image conversion method.  
Figure 9: Data augmentation through horizontal flipping.  
alternating convolutional-pooling layers, the fully connected layers are used for the final classification based on the extracted features of the previous layers.  
Figure 10 shows the final architecture of the CNN detection model. Some parameters of the model are determined through the trial method, and the details are shown in Section 4.1. Firstly, the images are resized to 60 pixel \(\times\) 60 pixel \(\times\) 3 channel before inputting to the first convolutional layer. Then, three sets of convolutional-pooling layers are employed for feature extraction. The kernel sizes of convolutional and pooling layers are \(5\times 5\) and \(2\times 2\), respectively. The rectified linear units (ReLU) [58] is selected as the activate function following the convolution layer, thus performing a nonlinear transformation on the data space. Moreover, max pooling is adopted in the pooling layers. From the first convolutional layer to the last pooling layer, the sizes of the feature maps are reduced from \(56\times 56\) to \(4\times 4\).  
Next, the feature maps of the last pooling layer are flattened as a 1D vector and fed into the fully connected layers. The softmax classifier is utilized to compute the predicted probability of each pattern and obtain the final output, as shown in Equation (5).  
\[S_{k}^{n}=P(\text{prediction}=k|X_{n})=\frac{\exp(V_{k}^{n})}{\sum_{k=1}^{K}\exp (V_{k}^{n})} \tag{5}\]  
where \(S_{k}^{n}\) is the \(k\)th component for the output vector of sample \(X_{n}\); \(P(\text{prediction}=k|X_{n})\) represents the predicted probability that sample \(X_{n}\) belongs to pattern \(k\). \(V_{k}^{n}\) denotes the \(k\)th component for the feature vector of sample \(X_{n}\) before softmax processing. \(K\) is the number of patterns (i.e., the number of components for the output vector).  
During the training process, the \"dropout\" method is utilized to reduce overfitting in the fully connected layers, and the dropout rate is set to 0.5. Adam optimizer and exponential decay learning rate are chosen to train the model. The initial learning rate is set to 0.001, and the decay rate is 0.95. The loss function is the sum of cross-entropy loss and \(L_{2}\) regularization loss, which is expressed as follows.  
\[Loss=-\frac{1}{N}[\sum_{n=1}^{N}\sum_{k=1}^{K}y_{k}^{n}\log(S_{k}^{n})]+\alpha \|w\|_{2}^{2} \tag{6}\]  
where \(Loss\) represents the loss function, and \(N\) represents the number of samples in a batch (the batch size is 32). \(y_{k}^{n}\) is the \(k\)th component for the label of sample \(X_{n}\). \(w\) represents the collection of model parameters considering regularization. \(\alpha\) is the regularization rate, which is set to 0.001.