# GCN-Former: A Method for Action Recognition Using Graph Convolutional Networks and Transformer
## 3 Experiments
### Experiment Details  
All experiments were conducted on an RTX 3080 TI GPU using the PyTorch 1.13.1 version deep learning framework. Our model was trained using Stochastic Gradient Descent (SGD) with a momentum of 0.9 and weight decay of 0.0004 to prevent overfitting. The number of training epochs was set to 140, and a warm-up strategy [34] was applied during the first five epochs to stabilize the training process. The learning rate was set to 0.01, and it was decayed by a factor of 0.1 at epochs 110 and 120. For both NTU RGB+D and NTU RGB+D 120, the batch size was set to 64, with each sample containing 64 frames. Since the sequences in the UT Kinect dataset contain very few frames, we designed two ways to generate the training set: sampling and interpolation. For longer sequences (i.e., the length of the sequence is greater than 64), we randomly chose 64 frames; for the other sequences, we calculated the mean of two adjacent frames and inserted it into the sequence as a new frame, eventually forming a sequence of 54 frames. For all the sequences, we repeated this operation two times to generate the training set.  
Data preprocessing followed the approach outlined in [35]. Sequence-level translation based on the first frame was performed to be invariant to the initial position. If a frame contained two people, the frame was divided into two frames by making each frame contain one human skeleton. During training, we evenly split the entire skeleton sequence into 20 clips and randomly selected one frame from each clip to obtain a new sequence of 20 frames. During testing, we randomly created five new sequences and used the average score to predict the category. During training, we performed data argumentation by randomly rotating the 3D skeleton to a certain degree at the sequence level in order to be robust to view changes. For the (CS setting), NTU 120 and UT-Kinect datasets, we randomly selected  
STGCN method and the BlockGCN method with the highest accuracy. The evaluation indicators used AUC and G-mean to analyze the performance differences in each model in different action categories in detail. The specific results are summarized in Table 2.  
The experimental results show that in simpler action categories such as \"Walk\", all three models achieved satisfactory recognition results; however, for easily confused action pairs, such as \"Sit down\" and \"Standup\", and \"Push\" and \"Pull\", the recognition performance of all models decreased significantly. For the action types \"Wave Hands\" and \"Clap Hands\" with high-frequency periodic characteristics, the method combined with Transformer temporal modeling proposed in this study showed superior recognition ability compared with the other two methods. In terms of the AUC indicator of Wave Hands action recognition, the proposed method achieved a 0.95% improvement compared to the BlockGCN method. Especially when processing the long-time action \"Carry\", this model achieved a better result than the BlockGCN method, with an AUC improvement of 4.3% and a G-mean improvement of 4.18%. This shows that the proposed model architecture has obvious performance advantages in handling action recognition tasks involving long time sequences and can more effectively capture and understand long-range dependencies in complex action patterns. Compared with the BlockGCN method, the method proposed in this paper achieved an improvement of 0.46% and 0.44% in the average AUC and G-mean indicators, respectively, further verifying its effectiveness and advancement in action recognition tasks.