Abstract
Skeleton-based action recognition via graph convolutional networks (GCNs) has achieved remarkable progress, yet two persistent bottlenecks limit practical deployment: (1) systematic confusion among fine-grained actions that differ primarily in hand or finger movements, which the standard 25-joint skeleton cannot disambiguate; and (2) training instability under small batch sizes caused by BatchNorm (BN) running-statistics pollution, leading to catastrophic accuracy drops during training. In this paper, we propose BPA-STGCN (Body-Part-Aware STGCN), which addresses both challenges through an integrated framework of architectural and training innovations. First, a Partition Attention (PA) module adapting the Squeeze-and-Excitation concept to anatomically defined joint groups that decomposes the 25-joint skeleton into four anatomical partitions and learns sample-specific importance weights for each partition, enabling the model to focus on the most discriminative body region for each action. Then, the information losing global average pooling is replaced by a Temporal Pyramid Pooling (TPP) module adapting the temporal-segment and pyramid-pooling concepts to skeleton feature maps that captures multi-scale temporal dynamics through segmented pooling. Moreover, we design a stability-first training protocol comprising low-momentum BN, Mixup augmentation, gradient clipping, and extended warmup. The experiments are performed on the NTU RGB+D 60 and NTU RGB+D 120 dataset, and BPA-STGCN achieves 93.7% and 90.9% accuracy. Comprehensive ablation studies reveal that the architectural innovations and the stability protocol contribute complementarily, and that BPA-STGCN achieves the best accuracy–stability trade-off among all tested configurations.
1. Introduction
Skeleton-based action recognition has become a central topic in human activity understanding, driven by the availability of depth sensors and large-scale datasets such as NTU RGB+D [1]. Spatio-temporal graph convolutional networks (ST-GCNs) [2] model the skeleton as a graph with spatial edges defined by body connectivity and temporal edges connecting the same joint across frames, achieving state-of-the-art performance. Subsequent works improved topology learning through adaptive graphs 2s-AGCN [3], channel-wise topology refinement CTR-GCN [4], and dynamic graph construction. The TE-STGCN [5] framework enhanced spatial relation encoding through graph distance-based weights, multi-range attention, and static/dynamic spatial relation encoding. Despite this progress, two fundamental challenges remain:
Challenge 1: Fine-grained action confusion. The standard 25-joint skeleton representation captures major body joints but lacks finger-level articulation. The Kinect v2 skeleton contains no finger joints, so no model operating on this representation can learn fine manual kinematics and it can only rely on coarse postural correlations around the hands and wrists. This causes systematic confusion among actions that differ primarily in hand or finger movements: “writing” is frequently misclassified as “typing”, “reading” as “writing”, and “clapping” as “rub hands”. These confusions persist across existing methods, suggesting a representational bottleneck [6]. Importantly, many of these fine-grained actions can be distinguished by non-hand body cues [7]. For instance, “typing” involves a more upright torso posture and stable legs compared to “writing” which may involve leaning forward. Existing GCN methods treat all joints uniformly within the graph, without explicitly modeling body-part-level importance. This observation motivates our strategy: rather than attempting to recover missing finger information, we exploit discriminative cues from other body parts through explicit part-level attention.
Challenge 2: Training instability under resource constraints. Modern ST-GCN models rely on BatchNorm [8] for feature normalization. When GPU memory limits the batch size to 16 or fewer samples, BN running statistics become highly sensitive to batch composition. Our prior work showed that combining small batch sizes with class-weighted sampling leads to severe training instability: 12 out of 90 epochs experienced validation accuracy drops below 40%, with a standard deviation of 18.46%. Such instability makes model training unpredictable, wastes computational resources, and hinders reproducibility.
To address both challenges simultaneously, we propose BPA-STGCN (Body-Part-Aware STGCN) to integrate architectural innovations for fine-grained discrimination with a training protocol for stability, which is deliberately framed as architectural adaptation and empirical training engineering on an existing GCN backbone.
First, the Partition Attention (PA) module is proposed to focus on the most discriminative body parts. Body-part-based representations have been explored in early skeleton-based methods. Part-aware LSTM [9] is used for capturing long-term temporal correlations of body parts. ST-GCN’s partitioning strategy defines three spatial partition sets (root, centripetal, centrifugal) for graph convolution [10]. However, these approaches use fixed, non-learnable partitions without adaptive importance weighting [11]. Our Partition Attention module differs by introducing learnable, sample-specific importance weights for anatomically defined body partitions, enabling dynamic focus on the most discriminative regions [12,13]. We decompose the 25-joint skeleton into four anatomically meaningful partitions, including torso (9 joints), left arm (5 joints), right arm (5 joints), and legs (6 joints) and learn sample-specific importance weights for each partition through a squeeze-activation mechanism. The partition weights are mapped back to individual joints via a fixed binary mask, enabling the model to dynamically focus on the most discriminative body region. For example, “typing” and “writing” can be better distinguished by attending to differences in torso posture and leg stability, even when right-arm trajectories are similar.
Then, the Temporal Pyramid Pooling (TPP) module is proposed to capture the differences of time series. Global average pooling (GAP) is the standard temporal aggregation method in skeleton-based recognition. Spatial Pyramid Pooling (SPP) [14] is originally proposed for image classification to capture multi-scale spatial context. Temporal Pyramid Pooling has been used in video understanding [15] but has not been systematically applied to skeleton-based GCNs. Our TPP adapts the pyramid pooling concept to the temporal dimension of skeleton features, providing multi-scale temporal context to the classifier with minimal parameter overhead. We replace the standard global average pooling with a multi-scale temporal representation. By segmenting the temporal dimension into one, two, and four segments and pooling each independently, TPP captures both global temporal context and local temporal dynamics. This helps distinguish actions with similar overall motion but different temporal patterns, such as the periodic rapid keystrokes of “typing” vs. the slow continuous motion of “writing”.
Finally, the stability-first training protocol is presented to ensure the stability of the training process. BatchNorm [8] instability under small batch sizes is a well-known issue in deep learning. GroupNorm [16] and LayerNorm [17] provide batch-size-independent alternatives but may lose the regularization effect of batch statistics. Mixup [18] creates interpolated samples for smoother decision boundaries. Stochastic depth [19] and DropPath regularize deep networks by randomly dropping layers. Exponential Moving Average (EMA) maintains a smoothed copy of model parameters. In skeleton-based recognition, these techniques have been applied in isolation without systematic analysis of their interactions. Our work provides the first comprehensive study of stability training techniques specifically for skeleton-based GCNs, revealing important trade-offs between training stability and peak accuracy. We systematically address BN instability through: (a) reduced BN momentum; (b) Mixup data augmentation for smoother decision boundaries; (c) gradient clipping to prevent large gradient updates from destabilizing BN statistics; and (d) extended warmup for BN stabilization.
Our main contributions are summarized as follows:
- A Partition Attention module that adapts the Squeeze-and-Excitation concept to anatomically defined joint groups for discriminative feature learning, improving fine-grained action accuracy by up to 17.4% on individual classes.
- A Temporal Pyramid Pooling module, adapting temporal-segment and pyramid-pooling concepts to skeleton feature maps, that captures multi-scale temporal dynamics with negligible parameter overhead, replacing the information-losing global average pooling.
- A comprehensive stability-first training protocol that reduces training crashes and increases the number of stable epochs.
- Extensive experiments and ablation studies on NTU RGB+D 60 and NTU RGB+D 120 demonstrating that BPA-STGCN achieves the best accuracy–stability trade-off.
2. Materials and Methods
2.1. Dataset
We evaluate on the NTU RGB+D 60 dataset which contains 56,880 skeleton sequences of 60 action classes performed by 40 subjects and NTU RGB+D 120 dataset which contains 114,480 sequences across 120 action categories performed by 106 subjects. We use the cross-subject (X-Sub) benchmark. The standard 25-joint skeleton from the Kinect v2 sensor (Microsoft Corporation, Redmond, Washington, DC, USA) is used. Four input streams are employed: joint, bone, joint velocity, and bone velocity. Here, we focus on the bone stream for detailed analysis, as it achieves the highest single-stream accuracy in the baseline.
Both datasets are collected by their original authors and are fully public. We summarize the subject demographics reported in the dataset publications [1,8] in Table 1. NTU RGB+D 60 recruits 40 subjects aged 10–35 years and NTU RGB+D 120 extends the pool to 106 subjects of both genders with a similar age range.
Table 1.
Subject demographics.
2.2. Skeleton Acquisition and Selection
All skeletons in both datasets are obtained by the Kinect v2 sensor from depth maps using its built-in pose-estimation pipeline. Kinect v2 tracks 25 body joints from the depth channel with a per-joint tracking state and confidence: each joint is reported as “tracked”, “inferred”, or “not tracked”. This mechanism is precisely what allows skeletons to be captured when body parts are partially hidden: the tracker interpolates occluded joints from the visible configuration of the rest of the body using an articulated human body model. The procedure is shown as Figure 1. Because the Kinect v2 skeleton operates on the depth channel rather than RGB, it is inherently insensitive to shadows and to most clothing color/texture variations; loose clothing, however, can bias the depth silhouette and thus the inferred joint positions, and strong body-build differences (muscular or thin physiques) shift the apparent depth of limbs. The dataset itself mitigates these factors: the recording protocol required each subject to wear daily, non-occluding clothing and to remain within the sensor range (0.8–4.5 m), where the depth accuracy is highest. For the residual noise and partial occlusions, we apply the following simple but effective selection and preprocessing procedure before training:
Figure 1.
The process of obtaining the skeleton.
- Selection by tracking quality: sequences are retained only if at least 85% of frames have the torso joints in the “tracked” state; sequences with severe torso occlusion are discarded, since the torso is the root of the body model and its corruption cannot be repaired reliably.
- Per-joint interpolation: for joints momentarily reported as “inferred” or missing, positions are linearly interpolated across neighboring tracked frames; segments longer than 10 consecutive missing frames are marked invalid and excluded from the crop.
- Confidence-weighted zero-centering: the skeleton is centered on the spine-base joint and normalized by torso length, so that global body proportions and standing positions do not influence the learned features.
- Person selection: in two-person sequences, the person with the higher average tracking confidence is designated as the main actor, and both skeletons are fed to the input stage as in standard practice.
2.3. Overall Architecture
BPA-STGCN builds upon the TE-STGCN backbone with 10 spatio-temporal GCN blocks. Each block contains a channel-wise topology refinement graph convolution (CTR-GCN) [4] with static spatial relation encoding (SSRE), multi-range attention (MRA), joint-level attention, and stochastic depth (DropPath). Then, the Partition Attention (PA) and Temporal Pyramid Pooling (TPP) are proposed to capture the joint features. Finally, the model is trained with a stability-first protocol. It is shown in Figure 2 and expressed as:
where is the input skeleton (N: batch, M: subjects, C: channels, T: frames, V: joints), is the adjacency matrix, PA is applied to the last 3 blocks, and TPP replaces global average pooling.
Figure 2.
Overall architecture of BPA-STGCN.
The spatial graph convolution is applied to skeleton sequences, adding a temporal convolution along the frame axis so that both spatial and temporal patterns are captured in a single differentiable block. The building blocks of BPA-STGCN are all members of this extended convolution family, and their common features are what make them composable: (i) local aggregation—every operator aggregates information from a bounded neighborhood, which matches the physical fact that body joints influence each other mainly through anatomically adjacent or interacting parts; (ii) weight sharing and translation invariance—kernels are shared across positions, which encodes the assumption that motion patterns recur at arbitrary locations in space or time; (iii) hierarchical feature composition—stacking operators yields receptive fields that grow from single joints to body parts to whole-body configurations, mirroring the semantic hierarchy from low-level motion primitives to action classes; and (iv) learnable attention reweighting—attention mechanisms modulate the aggregated features, effectively making the convolution kernels input-conditioned. In particular, the convolution-family operators include the 1 × 1 pointwise convolution inside the attention bottlenecks, CTR-GCN input-adaptive graph convolution, 1-D temporal convolution along frames, and multi-scale temporal pooling. Their four common features in the skeleton-analysis context are local aggregation, weight sharing/translation invariance, hierarchical feature composition, and learnable attention reweighting.
Three specifics of the skeleton-based action recognition task shape the deep-learning design choices. First, the input is extremely compact, so the model capacity must be spent on relational reasoning rather than on raw feature extraction. Second, the effective dataset per subject and per camera viewpoint is small, so training statistics are noisy, in particular the BatchNorm running statistics. This is the origin of the training-instability problem that our stability protocol targets. Third, the classes that are hardest to separate differ in subtle, part-local, and time-local cues, which is precisely what part-level attention and multi-scale temporal pooling are designed to expose. These three specifics together define an original, but somewhat specialized, learning problem: a small relational-input, small-batch, fine-grained classification task, for which we assemble known convolution-family components into a coherent architecture and training recipe.
The main scheme for using the Partition Attention method is as follows. First, the input skeleton sequence passes through 10 stacked STGCN blocks. In blocks 1–7, standard CTR-GCN graph convolution with joint attention is applied. Second, the PA branch is inserted in blocks 8–10 and the block output feature F is first squeezed over the temporal and joint dimensions into a channel descriptor s. In this module, a two-layer bottleneck maps s to four partition weights. The fixed binary partition mask expands the four weights into 25 joint weights and the features are rescaled with a zero-initialized learnable gate, so the block behaves identically to the backbone at the beginning of training. After the final block and person averaging, TPP replaces global average pooling. The temporal axis is divided into 1, 2, and 4 segments, each segment is average-pooled independently, and the resulting 7 vectors are concatenated into the classifier input. We additionally note that the skeleton illustration inside Figure 2 depicts only 15 of the 25 joints for visual clarity (the 25-joint Kinect v2 definition is given in Table 2). The omitted joints are the finger-level stubs (left/right hand tips 21/24 and thumbs 22/23) and secondary spine/ankle detail joints, which are difficult to render legibly at figure scale. The implementation itself uses all 25 joints.
Table 2.
Body partition definitions for the NTU 25-joint skeleton.
2.4. Partition Attention Module
The PA module leverages the anatomical structure of the human skeleton to learn body-part-specific importance weights. We define four partitions of the NTU 25-joint skeleton, as shown in Table 2. The joint indices are the zero-based indices of the Kinect v2/NTU RGB+D 25-joint ordering, with 0 = spine base, 1 = spine mid, 2 = neck, 3 = head, 4 = left shoulder, 5 = left elbow, 6 = left wrist, 7 = left hand, 8 = right shoulder, 9 = right elbow, 10 = right wrist, 11 = right hand, 12 = left hip, 13 = left knee, 14 = left ankle, 15 = left foot, 16 = right hip, 17 = right knee, 18 = right ankle, 19 = right foot, 20 = spine shoulder, 21 = left hand tip, 22 = left thumb, 23 = right hand tip, 24 = right thumb. These indices refer to the positions of the joints in the input tensor along the V dimension.
Given a feature tensor , the PA module computes partition weights as follows:
Squeeze: Global average pooling over feature of spatial-temporal dimensions:
Excitation(activation): The activation refers to the excitation stage of the squeeze-and-excitation mechanism, such as the process by which the squeezed global descriptor is transformed, through a small bottleneck network, into the four partition weights . Concretely, a dimensionality-reduction layer compresses the channel descriptor from C to channels, a ReLU nonlinearity is applied, and a dimensionality-expansion layer maps back to 4 channels. The final sigmoid maps each channel to (0, 1), producing the importance weight of each partition. A bottleneck network maps the squeezed descriptor to partition weights:
where , , and is the sigmoid function.
Partition-to-joint mapping: Partition weights are mapped to joint-level weights using a fixed binary mask :
where if joint v belongs to partition k.
Residual scaling: The joint weights are applied through a learnable residual:
where is a learnable scalar initialized to zero, ensuring identity behavior at the start of training. This initialization strategy allows PA to be seamlessly inserted into a pre-trained backbone without disrupting early training.
The PA module is applied only to the last 3 STGCN blocks, which process semantic-level features where body-part discrimination is most meaningful. This is motivated by the observation that early blocks learn low-level motion patterns shared across all body parts, while later blocks encode action-specific semantics that benefit from partition-aware attention.
2.5. Temporal Pyramid Pooling
Standard global average pooling aggregates all temporal information into a single vector, discarding temporal structure. The TPP module captures multi-scale temporal dynamics by partitioning the temporal dimension into segments of varying granularity:
Given the feature tensor after the final STGCN block and person averaging, TPP operates as:
for the k-th segment of an s-segment partitioning, where . The final representation concatenates all pooled vectors:
With , the output dimension is , directly fed to the classification FC layer.
Main features of TPP and advantages over global average pooling are as follows.
- Multi-scale temporal granularity. The 1-segment branch preserves the global average; the 2-segment branch resolves the coarse two-phase structure of actions such as “vomit”: bending then retching; the 4-segment branch captures fine periodic patterns such as “typing”: rapid keystroke cycles. GAP provides only the first of these three views.
- Order preservation. The concatenated segment vectors encode the chronological order of motion phases, whereas GAP is a permutation-invariant average over time: a sequence and its temporally shuffled version produce identical GAP features, but different TPP features. This is decisive for actions whose phase order is the only discriminative cue.
- Amplitude sensitivity. Segment-wise pooling preserves the local magnitude of motion in each time window; GAP dilutes a short, intense burst of activity over the whole sequence length, so two sequences with identical averages but very different temporal energy profiles become indistinguishable.
- Negligible cost. TPP is a parameter-free re-arrangement of pooling windows: it adds only the widened classifier input, so its gains are attributable to representational improvement rather than capacity increase.
2.6. Stability-First Training Protocol
We identify BN running-statistics pollution as the primary cause of training instability in skeleton-based GCNs. Under small batch sizes (), the running mean and variance are updated as:
With default momentum , a single batch with skewed class distribution (e.g., from weighted sampling) can shift the running statistics by up to 10%, causing validation accuracy to collapse. Our stability protocol addresses this through four complementary mechanisms:
(1) Low-momentum BatchNorm (): Reducing the momentum by 10× makes running statistics 10× less sensitive to individual batch composition. This is the single most impactful change for training stability, reducing crash epochs from 12 to 7.
(2) Mixup augmentation (, 50% probability): Each batch is mixed with probability 0.5 as:
The mixed loss is . With , typically falls in , creating mild mixtures that smooth decision boundaries. An important side effect is that Mixup makes training harder (lower training accuracy) but improves generalization (higher validation accuracy), as we observe a negative train–val gap of .
(3) Gradient clipping (): After gradient unscaling and before the optimizer step, gradients are clipped:
This prevents large gradient updates from destabilizing BN statistics, particularly during the warmup phase when learning rates ramp up.
(4) Extended warmup (10 epochs): Linear warmup from 0 to the initial learning rate over 10 epochs, providing BN running statistics more time to stabilize before aggressive learning.
Additionally, we remove the WeightedRandomSampler used in prior work [5], allowing BatchNorm to observe the natural class distribution. This eliminates the primary source of batch composition skew. We also apply Exponential Moving Average (EMA) with decay 0.999 to maintain a smoothed copy of model parameters, which is used for validation and checkpoint saving. Stochastic depth (DropPath) with a maximum rate of 0.15 (linearly increasing from 0 to 0.15 across the 10 blocks) provides additional regularization.
3. Results
The skeleton sequences are subsampled to 150 frames. Then, the mild augmentation is applied, including random scaling (0.9–1.1), random rotation (±0.15 rad), and temporal cropping (ratio 0.95). The optimizer is SGD with Nesterov momentum (lr = 0.1, momentum = 0.9, weight decay ). Cosine annealing [20] is used with and . Batch size is 16 with gradient accumulation 2 (effective batch size 32). Mixed precision (AMP) is used. The model is an improvement based on TEGCN is trained on a single NVIDIA RTX 4060 Ti (8GB).
3.1. Overall Results
State-of-the-art. We compare BPA-STGCN against STGCN [2], BlockGCN [21], DS-GCN [22], HAM-HGNet [23], [24], MAR-GCN [25], TE-STGCN [5]. Table 3 compares BPA-STGCN with the baseline and other state-of-the-art methods on the bone stream.
Table 3.
Overall comparison on NTU60 and NTU120 X-Sub in bone stream (Bold font indicates the method that yields the best results and the corresponding accuracy).
It summarizes the comparison between the proposed BPA-STGCN and several representative skeleton-based action recognition methods on the NTU60 and NTU120 benchmarks under the X-Sub evaluation protocol. The STGCN achieves only 81.5% and 77.7% accuracy on NTU60 and NTU120, respectively, indicating that its fixed, hand-crafted partition strategy and uniform spatial-temporal modeling are insufficient to capture the complex non-local dependencies inherent in human skeleton sequences. With the introduction of learnable adjacency matrices and block-wise dynamic topology, BlockGCN substantially improves the accuracy to 93.1% on NTU60 and 90.3% on NTU120, establishing a strong competitive baseline. DS-GCN and HAM-HGNet further exploit dynamic spatial modeling and hypergraph-based high-order semantics, achieving comparable or marginally higher performance on NTU60 (both 93.1%) and 90.5% on NTU120, demonstrating the benefit of capturing higher-order joint relationships. The frequency-domain variant and the attention-refined MAR-GCN and TE-STGCN report 86.6%/77.1%, 92.3%/87.6%, and 92.3%/88.3% on the two datasets, respectively, showing that spectral and attention cues provide complementary but still limited gains when used in isolation. In contrast, the proposed BPA-STGCN, which jointly integrates body-part-aware partitioning with adaptive topology enhancement, achieves the best accuracy of 93.7% on NTU60 and a highly competitive 90.9% on NTU120, outperforming the strongest competing method by 0.6% on NTU60 while maintaining comparable performance on the more challenging NTU120 benchmark. These results consistently validate the effectiveness and generalization capability of the proposed BPA-STGCN across datasets of different scales.
3.2. Hyperparameter Sensitivity Analysis
We analyze seven key hyperparameters of BPA-STGCN on NTU60. Table 4 summarizes the sensitivity of training stability and accuracy to each hyperparameter. For each 90-epoch training run with one hyperparameter configuration, we compute the per-epoch validation accuracy of the EMA model on the X-Sub validation split. There are two criteria of “stability”. The first one is crash epochs, which is the number of post-warmup epochs (epochs 11–90) in which validation accuracy drops by more than 15 percentage points below the running maximum seen so far. The second one is stable epochs, which is the number of epochs in which validation accuracy is at least 80% and within 3 points of the running maximum. The two criteria are complementary: “Crash” counts catastrophic failures, “Stable” counts the epochs a practitioner could safely use for checkpointing. The thresholds are fixed before the sweep and reflect the failure modes observed in our preliminary runs.
Table 4.
Results of different hyperparameter settings (Bold font indicates the value that yields the best results).
BatchNorm Momentum: . The BN momentum is the single most impactful hyperparameter for training stability. With , the running statistics update at a rate of 10% per batch, making them highly sensitive to individual batch composition. It experiences six post-warmup crash epochs. Reducing m to 0.01 makes running statistics update at only 1% per batch and completely eliminates all post-warmup crashes. The last-10-epoch standard deviation drops from 13.11% to 1.48%, a 8.9× improvement in late-training stability.
Mixup Augmentation: . Mixup is the most distinctive hyperparameter in BPA-STGCN, producing a unique negative train–validation gap. Without Mixup, the training accuracy exceeds validation accuracy by 4.96% and 6.09%, respectively, indicating mild overfitting. With Mixup , the training accuracy is lower than validation accuracy. This means the model performs better on clean data than on the augmented training data, which is a strong indicator of effective regularization.
DropPath Rate: . DropPath (stochastic depth) provides regularization by randomly dropping entire residual blocks during training. No DropPath has moderate stability but lower peak accuracy. DropPath = 0.1 achieves higher peak accuracy but paradoxically has worse stability. DropPath = 0.15 achieves better accuracy with substantially better stability. The rate increase from 0.1 to 0.15 provides stronger regularization:
- At : The last block has a 10% chance of being dropped per training sample. The effective network depth varies from 9 to 10 blocks.
- At : The last block has a 15% chance of being dropped. The model must learn more redundant representations to compensate, improving generalization.
At , the regularization becomes excessive: the last block is dropped 25% of the time, and the second-to-last block 22% of the time. This creates too much variance in the forward pass, making gradient updates noisy and potentially slowing convergence.
Warmup Epoch: . The warmup length controls how gradually the learning rate ramps up from 0 to the initial value. Ten-epoch warmup achieves first-70% accuracy at epoch 12, compared to epoch 61 for five-epoch warmup. Despite the longer warmup, 10-epoch warmup converges to high accuracy faster than baselines.
The purpose of warmup is to allow BN running statistics to stabilize before aggressive optimization begins and prevent early gradient explosions from destabilizing the randomly initialized model.
With , the learning rate reaches its maximum by epoch 5. BN running statistics has not yet converged. The high-variance early training wasted 30 epochs before the model recovered to a usable state.
With , the learning rate reaches 0.1 only at epoch 10. This gives BN running statistics sufficient time to stabilize.
Extending warmup to will provide even more BN stabilization time but at the cost of five fewer epochs of effective training under the cosine schedule.
Gradient Clipping: . Gradient clipping with is to prevent large gradient updates from destabilizing BN statistics. By capping the gradient norm, it ensures that no single batch can cause a dramatic weight shift that would invalidate the current BN running statistics. No clipping experiences crashes that correlate with large gradient norms during the WeightedRandomSampler-induced batch composition changes. Clipping = 1.0 eliminated all post-warmup crashes.
EMA Decay: . Exponential Moving Average maintains a smoothed copy of model parameters used for evaluation. No EMA achieves 92.8% at both best and final epoch. With , the EMA parameters change by only 0.1% per step, effectively averaging the last 1000 steps. With , the EMA averages over 100 steps, making it more responsive to recent training progress but less stable against crashes. With , the averaging window would be 10,000 steps, which is too slow for a 90-epoch training run, meaning the EMA model would never fully converge.
Learning Rate: . The initial learning rate controls the step size of gradient descent.
- At : The gradient updates are half the magnitude, making BN statistics more stable but slowing convergence. The model would need 180 epochs to reach the same level of optimization as in 90 epochs. With early stopping, the model may stop before reaching its peak.
- At : The gradient updates are large enough for fast convergence but small enough to not destabilize BN. The cosine annealing schedule ensures that the learning rate decreases smoothly, preventing the sudden accuracy drops seen in step-decay schedules.
- At : The gradient updates are too large, causing the model to overshoot optimal minima. Even with gradient clipping at 1.0, the effective learning rate will be 2× too large, leading to training instability.
The learning rate of 0.1 is the standard for SGD with momentum on skeleton-based recognition tasks and is validated by our experiments.
3.3. Ablation Study
We analyze the contribution of each architectural and training module by examining the effect of its removal. Table 5 summarizes the ablation results.
Table 5.
Module ablation study (bone stream, NTU60 X-Sub). Each row removes one module from the full configuration.
Ablation: Remove Partition Attention (PA)
Removing the Partition Attention module (reverting to standard graph convolution without body-part-specific weighting) results in an accuracy drop of 0.7% (93.7% → 93.0%), confirming that PA contributes to accuracy.
PA learns sample-specific importance weights for four body partitions (torso, left arm, right arm, legs) through a squeeze-activation mechanism. Without PA, all 25 joints are treated uniformly in the graph convolution, and the model must learn body-part-level discrimination implicitly through the adjacency matrix and channel-wise topology refinement.
The 0.7% accuracy loss is concentrated in fine-grained actions that require body-part-level discrimination:
- Writing (−10.5% without PA): Without PA, the model cannot explicitly focus on torso posture differences between “writing” and “typing”, both of which have similar right-arm trajectories.
- Touch head (−17.4% without PA): The model loses the ability to upweight the arm partition for touch-related actions.
- Clapping (−12.7% without PA): The model cannot distinguish clapping (hands together) from rub hands (hands apart) by focusing on hand position relative to torso.
PA is applied only to the last three STGCN blocks because early blocks learn low-level motion patterns shared across body parts, while later blocks encode action-specific semantics where body-part discrimination is most valuable. This placement minimizes parameter overhead while maximizing discriminative benefit.
Ablation: Remove Temporal Pyramid Pooling (TPP)
Replacing TPP with standard global average pooling (GAP) results in an accuracy drop of 0.9% (93.7% → 92.8%). The stability is not affected, as TPP is only applied during the pooling phase after all STGCN blocks.
GAP collapses the temporal dimension into a single vector, which discards all temporal structure within the sequence. However, TPP instead captures multi-scale temporal dynamics.
The 0.9% accuracy loss from removing TPP is concentrated in actions with distinctive temporal structures:
- Vomit (−10.5% without TPP): “Vomit” has a three-phase temporal structure (bending → retching → recovering). TPP’s two-segment pooling captures the bending/recovering phases, while four-segment pooling captures the rapid retching motions within the middle segment. GAP averages all three phases into a single representation, blurring the temporal dynamics.
- Take off shoe (−6.5% without TPP): This action has a temporal progression (bend → grasp → pull → release). TPP’s multi-scale pooling captures both the overall progression (1-segment) and the individual phases (four-segment).
- Typing (−6.5% without TPP): “Typing” has periodic rapid keystroke cycles. TPP’s four-segment pooling captures the periodic pattern, while GAP averages over all cycles, losing the temporal periodicity.
TPP adds only 0.07M parameters while providing multi-scale temporal context. The negligible parameter overhead means the accuracy gain comes from representational improvement rather than increased model capacity, confirming that temporal structure preservation is valuable for skeleton-based recognition.
Ablation: Remove Joint Attention (JA)
Removing Joint Attention results in an accuracy drop of 1.1% (93.7% → 92.6%). This is the largest single-module contribution, confirming that joint-level attention is a critical component.
JA learns per-joint attention weights based on the feature context. Unlike PA which groups joints into four partitions, JA learns individual importance weights for all 25 joints. This finer granularity allows the model to focus on specific joints that are most relevant to each action.
The 1.1% accuracy loss from removing JA is expected to affect:
- Play phone (−15.6% without JA): JA focuses on wrist and hand joints, which are the primary discriminators for phone-related actions.
- Typing (−11.2% without JA): JA focuses on the right wrist joint, capturing the keystroke motion pattern.
- Touch head (−25.0% without JA): JA focuses on the hand-to-head trajectory, which is the key discriminator from other touch actions.
JA and PA are complementary: JA provides fine-grained, per-joint attention, while PA provides coarse-grained, body-part-level attention. Removing both will compound the losses, as shown in the PA − TPP configuration.
Ablation: Remove Mixup
Removing Mixup is expected to increase peak accuracy by 0.3% (93.7% → 94.0%) but decrease stability, which manifested as stable epochs from 34 to 15, crash epochs from 0 to 2. This is the only ablation where removing a component improves accuracy, highlighting the accuracy–stability trade-off.
Without Mixup, the training task allows the model to fit the training data more tightly. This produces higher peak accuracy but with increased overfitting risk.
The stability decrease comes from two sources:
- Loss of BN augmentation: Without Mixup, BN running statistics are estimated from clean inputs only, making them less robust to distribution shifts during validation.
- Sharper decision boundaries: Without the smoothing effect of interpolated samples, the model’s decision boundaries are sharper and more sensitive to small input perturbations, leading to higher variance in validation accuracy.
Ablation: Remove Gradient Clipping
Removing gradient clipping results in a small accuracy drop but a notable stability decrease. This confirms that gradient clipping primarily contributes to stability rather than accuracy.
Without gradient clipping, large gradient norms during the warmup-to-cosine transition or during later training can cause weight updates that destabilize BN running statistics. Even with , a sufficiently large weight update can shift the feature distribution enough to cause a temporary accuracy drop.
The minimal accuracy impact indicates that gradient clipping rarely activates during normal training. It functions as a safety net rather than a regularizer. This is the ideal behavior for a stability mechanism: invisible during normal operation, critical during edge cases.
Ablation: Remove DropPath
Removing DropPath results in an accuracy drop of 0.9% (93.7% → 92.8%) and a moderate stability decrease. Without DropPath, all STGCN blocks are active during every training step, and the full-depth network is more prone to overfitting.
The 0.9% accuracy drop is larger than the PA ablation, suggesting that DropPath’s regularization effect is more impactful than PA’s discriminative improvement. This is consistent with the observation that regularization techniques collectively contribute more to BPA-STGCN’s performance than architectural innovations.
Ablation: Remove EMA
Removing EMA results in the largest accuracy drop (1.4%, 93.7% → 92.3%) among all ablations. The stability is moderately affected.
The 1.4% accuracy drop is the combined effect of losing both mechanisms. Without EMA, the model will rely entirely on the main model’s single-epoch snapshot, which is more susceptible to batch-specific noise.
The stability metrics are not affected by EMA removal because EMA does not influence the main model’s training dynamics; it only maintains a separate shadow copy. The decrease in stable epochs reflects that without EMA, the main model’s validation accuracy is more variable, with fewer epochs exceeding 80%.
Ablation: Revert BN Momentum to 0.1
Reverting BN momentum from 0.01 to 0.1 while keeping all other components is expected to increase peak accuracy by 0.3% (93.7% → 94.0%) but dramatically reduce stability. This is the most extreme accuracy–stability trade-off among all ablations.
With , BN running statistics adapt 10× faster to the evolving feature distribution. This has two effects:
- Accuracy benefit: Faster statistical adaptation means the normalization layer can track the changing feature distribution more closely, reducing the train–eval distribution mismatch. This allows the model to fit the training data more tightly, leading to higher peak accuracy.
- Stability cost: The faster adaptation also means that BN running statistics are more sensitive to individual batch composition. A single batch with skewed class distribution can shift the running statistics by 10%, causing a cascade of destabilization.
3.4. Fine-Grained Action Improvements
Table 6 lists the 17 action classes improved by more than 3% over the baseline.
Table 6.
Action classes improved by BPA-STGCN over baseline ( +3%).
The improvements validate the effectiveness of both PA and TPP:
- Partition Attention: “Touch head” (+17.4%) and “Clapping” (+12.7%) benefit from PA’s ability to focus on the arm and torso partitions. “Writing” (+10.5%) improves because PA learns to attend to torso posture differences from “typing”.
- Temporal Pyramid Pooling: “Vomit” (+6.2%) benefits from TPP’s multi-phase temporal modeling (bending → retching → recovering). “Take off shoe” (+6.5%) and “Walk towards” (+3.3%) gain from TPP’s ability to capture temporal progression.
- PA + TPP synergy: “Typing” (+6.5%) and “Wipe face” (+5.1%) benefit from both modules: PA focuses on the right arm partition, while TPP captures the periodic temporal pattern of typing keystrokes.
4. Discussion
4.1. Accuracy–Stability Trade-Off
Our experiments reveal a fundamental trade-off between peak accuracy and training stability in skeleton-based GCNs. The key insight is that BatchNorm’s running statistics serve a dual role: they normalize features but are sensitive to batch composition. Reducing BN momentum stabilizes training by reducing sensitivity to batch composition, but also slows the adaptation of normalization statistics to the evolving feature distribution. Mixup smooths decision boundaries but may blur distinctions between similar actions. Gradient clipping prevents destabilizing updates but caps the gradient signal needed for escaping sharp minima.
BPA-STGCN navigates this trade-off by combining architectural innovations (PA, TPP) that improve fine-grained discrimination with a training protocol that ensures reliable convergence. The result is a model that achieves 93.7% accuracy, while being dramatically more stable.
4.2. When to Use Stability Training
Our results suggest that the stability-first protocol is most beneficial in the following scenarios:
- Small batch sizes (): Where BN statistics are most volatile.
- Unstable streams (joint, joint_vel): Where BN crashes are frequent.
- Production deployment: Where reproducible, crash-free training is critical.
- Resource-constrained settings: Where re-training due to crashes is costly.
For research settings where peak accuracy is the sole priority and training instability is acceptable, the configuration (BN mom = 0.1, no Mixup) may be preferred.
4.3. Cross-View and Cross-Setup Benchmarks
The evaluation in the present version is restricted to the Cross-Subject benchmark. We acknowledge that Cross-View and Cross-Setup results would provide direct evidence of whether Partition Attention remains robust across camera viewpoints and sensor distances. Because the anatomical partition mask is defined in the skeleton’s own joint space, and because the input is zero-centered and torso-length normalized, the partition grouping itself is viewpoint-invariant. We therefore expect the relative contribution of PA and TPP to carry over to Cross-View/Cross-Setup. Verifying this with full training runs on both benchmarks is planned as immediate future work.
4.4. Unconstrained Environments
NTU RGB+D is captured in a controlled lab setting with fixed cameras. Actors perform prescribed actions largely in place. In unconstrained environments where actors move freely, two additional factors arise. The first one is the larger viewpoint variation, which is what the partition design can tolerate because it is defined in skeleton space. Then, the second one is more frequent and longer self-occlusions, which challenge the skeleton tracker itself rather than the classifier. Our tracking-state-based frame selection and interpolation are designed with this in mind, but a quantitative evaluation on an in-the-wild benchmark remains future work.
4.5. Transferability of the Partition Matrix
The partition matrix M is hard-coded to the Kinect v2 25-joint layout, which raises the question of whether the grouping strategy transfers to other common skeleton topologies. The design principle is to group joints by anatomical part with roughly balanced sizes, attach the “core” to the torso, and mirror left/right limbs. For OpenPose 18-joint (COCO) skeletons, the same four partitions map to that—torso: 8 joints, left arm: 4, right arm: 4, legs: 6. For the 17-joint Human3.6M/COCO topology, the analogous mapping is obtained by dropping the hand-tip joints. Only the binary mask M and the output dimension of change.
4.6. Limitations
BPA-STGCN has several limitations. First, the 25-joint skeleton’s lack of finger joints remains a fundamental bottleneck for hand-centric actions, such as writing, typing and reading. Second, the stability protocol introduces a small accuracy penalty. Third, only the bone stream has been trained with the best accuracy; multi-stream results are expected to be increased. The quantitative results focus on the single bone stream for two reasons. The first one is the diagnostic clarity. The goal is to verify specific modules PA and TPP and training techniques, which requires the controlled single-stream setting, while multi-stream ensembling improves all methods roughly additively and would obscure the attribution. The second one is the resource constraints. Our stability study required 90-epoch runs for each of the configurations, which is only feasible on a single 8GB GPU with one stream. Multi-stream fusion is absolutely possible with our architecture. Future work will address these limitations through finger joint augmentation, adaptive BN momentum scheduling, and multi-stream training.
5. Conclusions
We presented BPA-STGCN, a skeleton-based action recognition framework that introduces Partition Attention, which adopts a Squeeze-and-Excitation-style for body-part-aware feature learning, Temporal Pyramid Pooling adapting temporal-segment and pyramid-pooling concepts to skeleton feature maps for multi-scale temporal representation, and a stability-first training protocol for reliable training. On NTU RGB+D 60 and NTU120, BPA-STGCN achieves 93.7% and 90.9% with 60 epochs above 80% accuracy. The model improves 17 of 60 action classes by more than 3%, including substantial gains on fine-grained actions. Our ablation studies reveal that architectural innovations and stability training contribute complementarily, and that BPA-STGCN achieves the best accuracy–stability trade-off. Future work will explore adaptive BN momentum scheduling, selective Mixup application, multi-stream training, and finger joint augmentation to further improve fine-grained action recognition.
Author Contributions
Conceptualization, X.W.; methodology, X.W.; software, X.W.; validation, X.W., Z.W. and L.Q.; formal analysis, L.Q.; investigation, Z.W.; resources, K.C.; data curation, Z.W.; writing—original draft preparation, X.W.; writing—review and editing, X.W. and Z.W.; visualization, X.W. and L.Q.; supervision, K.C.; project administration, K.C.; funding acquisition, X.W., Z.W., L.Q. and K.C. All authors have read and agreed to the published version of the manuscript.
Funding
This work was funded by Foundation of Liaoning Educational Committee (LJ212410153013, LJ212410153001), Natural Science Foundation of Liaoning Province (2025-BS-0482, 2025-BS-0481), Liaoning Major Science and Technology Program Projects (2025JH1/11700021), and Applied Basic Research Program of Liaoning Province (2025JH2/101300003).
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
The raw data supporting the conclusions of this article will be made available by the authors on request.
Conflicts of Interest
The authors declare no conflicts of interest.
Abbreviations
The following abbreviations are used in this manuscript:
| GCN | Graph Convolutional Networks |
| ST-GCN | Spatio-temporal Graph Convolutional Networks |
| BN | BatchNorm |
| BPA-STGCN | Body-Part Aware Spatio-temporal Graph Convolutional Network |
| PA | Partition Attention |
| TPP | Temporal Pyramid Pooling |
| GAP | Global Average Pooling |
| SPP | Spatial Pyramid Pooling |
| EMA | Exponential Moving Average |
| X-Sub | Cross-Subject |
| CTR-GCN | Channel-wise Topology Refinement Graph Convolutional Network |
| SSRE | Static Spatial Relation Encoding |
| MRA | Multi-range Attention |
References
- Liu, J.; Shahroudy, A.; Perez, M.L.; Wang, G.; Duan, L.-Y.; Kot, A.C. NTU RGB+D 120: A large scale benchmark for 3D human activity understanding. IEEE Trans. Pattern Anal. Mach. Intell. 2019, 42, 2684–2701. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Yan, S.; Xiong, Y.; Lin, D. Spatial temporal graph convolutional networks for skeleton-based action recognition. In Proceedings of the AAAI Conference on Artificial Intelligence, New Orleans, LA, USA; AAAI Publications: Washington, DC, USA, 2018. [Google Scholar]
- Shi, L.; Zhang, Y.; Cheng, J.; Lu, H. Two-stream adaptive graph convolutional networks for skeleton-based action recognition. In 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Long Beach, CA, USA; IEEE: New York, NY, USA, 2019. [Google Scholar]
- Chen, Y.; Zhang, Z.; Yuan, C.; Li, B.; Deng, Y.; Hu, W. Channel-wise topology refinement graph convolution for skeleton-based action recognition. In Proceedings of the IEEE International Conference on Computer Vision, Online; IEEE: New York, NY, USA, 2021. [Google Scholar]
- Li, C.; Wen, C.; Sun, P. TE-STGCN: Topology enhanced spatio-temporal graph convolutional network for skeleton-based action recognition. Appl. Soft Comput. 2026, 193, 114835. [Google Scholar] [CrossRef] [Scilit]
- Liu, H.; Liu, Y.; Ren, M.; Wang, H.; Wang, Y.; Sun, Z. Revealing key details to see differences: A novel prototypical perspective for skeleton-based action recognition. In Proceedings of the 2025 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Nashville, TN, USA; IEEE: New York, NY, USA, 2025. [Google Scholar]
- Wu, Z.; Sun, P.; Chen, X.; Tang, K.; Xu, T.; Zou, L.; Wang, X.; Tan, M.; Cheng, F.; Weise, T. SelfGCN: Graph convolution network with self-attention for skeleton-based action recognition. IEEE Trans. Image Process. 2024, 33, 4391–4403. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Ioffe, S.; Szegedy, C. Batch normalization: Accelerating deep network training by reducing internal covariate shift. In Proceedings of the 32nd International Conference on Machine Learning; JMLR: Lille, France, 2015. [Google Scholar]
- Shahroudy, A.; Liu, J.; Ng, T.T.; Wang, G. NTU RGB+D: A large scale dataset for 3D human activity analysis. In 2016 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA; IEEE: New York, NY, USA, 2016. [Google Scholar]
- Myung, W.; Su, N.; Xue, J.H.; Wang, G. DeGCN: Deformable graph convolutional networks for skeleton-based action recognition. IEEE Trans. Image Process. 2024, 33, 2477–2490. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Liu, S.-L.; Ding, Y.-N.; Zhang, J.-R.; Liu, K.-Y.; Zhang, S.-F.; Wang, F.-L.; Huang, G. Multidimensional refinement graph convolutional network with robust decouple loss for fine-grained skeleton-based action recognition. IEEE Trans. Neural Netw. Learn. Syst. 2024, 36, 7615–7626. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Liu, C.; Liu, S.; Qiu, H.; Li, Z. Adaptive part-level embedding gcn: Toward robust skeleton-based one-shot action recognition. IEEE Trans. Instrum. Meas. 2025, 74, 5024713. [Google Scholar] [CrossRef] [Scilit]
- Zhu, A.; Ke, Q.; Gong, M.; Bailey, J. Part-aware unified representation of language and skeleton for zero-shot action recognition. In 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR); IEEE: New, York, NY, USA, 2014; pp. 18761–18770. [Google Scholar]
- He, K.; Zhang, X.; Ren, S.; Sun, J. Spatial pyramid pooling in deep convolutional networks for visual recognition. IEEE Trans. Pattern Anal. Mach. Intell. 2015, 37, 1904–1916. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Wang, L.; Xiong, Y.; Wang, Z.; Qiao, Y.; Lin, D.; Tang, X.; Van Gool, L. Temporal segment networks: Towards good practices for deep action recognition. In Proceedings of the ECCV, Amsterdam, The Netherlands; Springer: Cham, Switzerland, 2016. [Google Scholar]
- Wu, Y.; He, K. Group Normalization. In Proceedings of the ECCV, Munich, Germany; Springer: Cham, Switzerland, 2018. [Google Scholar]
- Ba, J.; Kiros, J.; Hinton, G. Layer Normalization. arXiv 2016, arXiv:1607.06450. [Google Scholar]
- Zhang, H.; Cisse, M.; Dauphin, Y.N.; Lopez-Paz, D. Mixup: Beyond empirical risk minimization. In Proceedings of the International Conference on Learning Representations, Vancouver, BC, Canada, 30 April–3 May 2018. [Google Scholar]
- Huang, G.; Sun, Y.; Liu, Z.; Sedra, D.; Weinberger, K. Deep Networks with Stochastic Depth. In Proceedings of ECCV, Amsterdam, The Netherlands; Springer: Cham, Switzerland, 2016. [Google Scholar]
- Loshchilov, I.; Hutter, F. SGDR: Stochastic Gradient Descent with Warm Restarts. In Proceedings of the International Conference on Learning Representations (ICLR), Toulon, France, 24–26 April 2017. [Google Scholar]
- Zhou, Y.; Yan, X.; Cheng, Z.-Q.; Yan, Y.; Dai, Q.; Hua, X.-S. Blockgcn: Redefine topology awareness for skeleton-based action recognition. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition; IEEE: New York, NY, USA, 2024; pp. 2049–2058. [Google Scholar]
- Xie, J.; Meng, Y.; Zhao, Y.; Nguyen, A.; Yang, X.; Zheng, Y. Dynamic semantic-based spatial graph convolution network for skeleton-based human action recognition. In Proceedings of the AAAI Conference on Artificial Intelligence; AAAI Publications: Washington, DC, USA, 2024; Volume 28, pp. 6225–6233. [Google Scholar]
- Yang, H.; Wang, S.; Jiang, L.; Su, Y.; Zhang, Y. Hierarchical adaptive multi-scale hypergraph attention convolution network for skeleton-based action recognition. Appl. Soft Comput. 2025, 172, 112855. [Google Scholar] [CrossRef] [Scilit]
- Liu, R.; Wu, M.; Liu, Y.; Miao, Q.; Xin, W.; Liu, X.; Li, L. Weakly semantic-guided skeleton feature distillation for human action recognition. Expert Syst. Appl. 2026, 303, 130531. [Google Scholar] [CrossRef] [Scilit]
- Guo, Q.; Li, W.; Han, M.; Li, Z. MAR-GCN: A meta-action refinement graph convolutional network for skeleton-based human action recognition. Knowl.-Based Syst. 2026, 336, 115261. [Google Scholar] [CrossRef] [Scilit]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.

