Projection Pursuit CPCANet for Domain Generalization
Yu-Hsi Chen, Abd-Krim Seghouane
cs.CV
2026-07-24
PP-CPCANet swaps CPCANet's rank-deficient batch covariance for a covariance-free Stiefel-manifold basis, lifting VMamba-B average accuracy from 76.6% to 77.2% on four DG benchmarks.
Domain Generalization (DG) aims to make models robust to distribution shifts unseen at training time. CPCANet is a recent geometric-alignment route: it performs batch-wise Common Principal Component Analysis (CPCA) to extract cross-domain-invariant structure. The problem is mini-batch training: the feature dimension p far exceeds the batch size n, the covariance matrix is rank-deficient, the principal components are poorly estimated, and the representation has to be truncated, throwing away information.
PP-CPCANet (Projection Pursuit CPCANet) bypasses covariance estimation with a covariance-free framework. Instead of estimating batch covariance, it learns a global orthogonal basis on the Stiefel manifold (the space of matrices with orthonormal columns), jointly optimized with the network parameters via the Cayley transform so the basis stays orthogonal. Concretely, an unconstrained vector is mapped to a skew-symmetric matrix and then to an orthogonal basis through the Cayley transform.
It adds a symmetry-breaking objective: the projection dimensions get monotonically decreasing weights (proportional to [d, d−1 down to 1]), pushing variance onto the first few components. For robustness it uses a detached-median L1 dispersion objective: for each projection dimension it takes the median of the batch's projected values with stop-gradient as an anchor, then computes a weighted sum of absolute deviations from that anchor. Stop-gradient keeps the anchor from drifting with optimization, and L1 makes the objective insensitive to outliers.
On four DG benchmarks (PACS, VLCS, OfficeHome, TerraIncognita) with the VMamba-B backbone:
| Benchmark | PP-CPCANet-B | CPCANet-B |
| PACS | 93.6 | 93.2 |
| VLCS | 91.7 | 87.8 |
| OfficeHome | 79.3 | 79.7 |
| TerraIncognita | 57.7 | 57.7 |
| Average | 77.2 | 76.6 |
The gain is concentrated on VLCS (+3.9); on OfficeHome it is actually slightly worse (79.3 vs 79.7). Changing the backbone makes it less flattering: on ResNet-50 the average is 69.2, slightly below CPCANet's 69.5; on VMamba-S it is 76.2 vs 76.1, essentially tied. Ablation shows the optimal projection dimension is d1 = 128 and the optimal cascade depth is T = 1, with T of 2 or more giving no gain or degrading. Memory is lower in most configurations and training is more stable.
For anyone working on domain generalization, especially along the CPCANet geometric-alignment route, PP-CPCANet fixes the hard problem of estimating covariance unreliably under small batches and removes the need to truncate the representation, with more stable training to boot. But the honest read is that the average gain is about 0.6 points (76.6 rising to 77.2) and is backbone-dependent, even slightly negative on ResNet-50. It reads more like an engineering fix that lets CPCANet run stably on modern large backbones than a paradigm shift. That T = 1 already tops out and depth gives nothing also signals limited expressive capacity.
The authors note that the shallow T = 1 configuration is best and that adding depth gives nothing or degrades, which is awkward for a network whose selling point is its cascade. Two things stand out after reading: the gain is concentrated on a single benchmark (VLCS) while the other three are flat or slightly down, so the SOTA claim is not fully supported; and on ResNet-50 it underperforms the original method, and the method's adaptability across backbones is not explained. The paper also does not give a detailed compute-cost comparison with CPCANet, only noting lower memory in most configurations.