## 3 Methods  
### Preliminaries  
Deep learning methods have been used to model and represent graph data. Traditional neural networks are limited to processing Euclidean data. By using representational learning, graph neural networks have generalized deep learning models to show good performance on structured graph data [37]. Graph neural network (GNN) models have been shown to be a powerful family of networks that learn representations by aggregating features of entities and neighbors [38]. The extension of neural networks to data with graph structures is a new topic in deep learning research, and the application of convolutional and recurrent neural networks to graph is widely mentioned. Graph Convolutional Network (GCN), as an extension of convolutional neural networks to graph structures, is a general and effective framework for learning graph-structured data representations. In skeletal data action recognition, the human body is considered as a hinge system consisting of joints and bones and is represented as a skeletal graph. We use \(G_{t}=(V_{t},A_{t})\) to denote the skeleton data at \(t\) frame, where \(V_{t}=\{V_{t}^{i}\}_{i=1}^{N}\) represents the set of all \(N\) joints and \(A_{t}\) represents the joint-adjacency edges set. Define the neighboring set of \(V_{t}^{i}\) as \(\mathcal{N}(V_{t}^{i})=\{V_{t}^{j}|d(V_{t}^{i},V_{t}^{j})\leq D\}\), where \(d(V_{t}^{i},V_{t}^{j})\) is the shortest path distance from \(V_{t}^{i}\) to \(V_{t}^{j}\). In addition, A predefined labelling function \(\mathbf{I}:V_{t}\rightarrow\{1,2,\ldots,k\}\) sets the label \(\{1,2,\ldots,K\}\) for each node \(V_{t}^{i}\in V_{t}\) in the graph, which divides the neighboring set \(\mathcal{N}(V_{t}^{i})\) into a fixed number of \(K\) subsets. The graph convolution is calculated in the form of  
\[\mathbf{Y}(V_{t}^{i})=\sum_{V_{t}^{i}\in\mathcal{N}(V_{t}^{i})}\frac{1}{Z_{t} ^{i}(V_{t}^{i})}\mathbf{X}(V_{t}^{i})\mathbf{W}(\mathbf{I}(V_{t}^{i})) \tag{1}\]  
where \(\mathbf{X}(V_{t}^{j})\) denotes the feature representation of node \(V_{t}^{j}\), \(\mathbf{W}(\cdot)\) is the weight parameters assigned by the weight function according to the label of each node. \(Z_{t}^{i}(V_{t}^{i})\) is the number of elements in the subset where the node is located, which is used to normalize the feature representation. The representation of \(V_{t}^{i}\) after the graph convolution is denoted as \(\mathbf{Y}(V_{t}^{i})\). Using the adjacency matrix, the Equation (1) can be expressed as:  
\[\mathbf{Y}(V_{t}^{i})=\sum_{k=1}^{K}\Lambda_{k}^{-\frac{1}{2}}\mathbf{A_{k}} \Lambda_{k}^{-\frac{1}{2}}\mathbf{X}\mathbf{W_{k}} \tag{2}\]  
where \(\mathbf{A_{k}}\) is the adjacency matrix formed by the nodes labeled \(k\in\{1,2,\ldots,K\}\) in the spatial configuration and \(\lambda_{k}^{ii}=\sum_{j}\mathbf{A}_{k}^{ij}\) is the degree matrix of the adjacency matrix. In our work, we partition the neighboring sets of nodes based on the shortest path distance between them, which is similar to the relative distance used in convolutional neural networks. The partition function can be expressed as \(\mathbf{I}_{t}^{i}(V_{t}^{j})=d(V_{t}^{i},V_{t}^{j})\). When the neighbouring set is defined as the shortest path less than 2, it is possible to give a matrix representation of each subset after partitioning in a simpler way, such as [17]. In this paper, we give how to generate the adjacency matrix representation of the partitioned subsets under arbitrary distance settings. We define the polynomial of the adjacency matrix \(A_{t}\) as \(\phi_{k}(A_{t})\), where \(k\) is the number of highest terms. When \(k=0\), we have \(\phi_{k}(A_{t})=I\) for the unit matrix, indicating that the neighboring nodes of each joint are only itself; when \(k=1\), we have \(\phi_{k}(A_{t})=A_{t}\) indicating that the neighboring nodes of each joint are constructed according to the body structure \(A_{t}\).