---
title: 'Sub-center ArcFace: Enhanced Angular Margin'
url: https://www.emergentmind.com/topics/sub-center-arcface
type: topic
---

# Sub-center ArcFace: Enhanced Angular Margin

Sub-center ArcFace is a robust extension of the ArcFace additive angular margin loss, designed to address class heterogeneity and label noise in large-scale face recognition and speaker verification tasks. Rather than associating each class with a single prototype on the hypersphere, sub-center ArcFace assigns multiple learnable sub-centers per class, enabling the model to explain intra-class variability, absorb mislabeled or noisy samples, and automatically isolate outlier distributions for downstream data cleaning and relabeling [1801.07698].

## 1. Mathematical Formulation

Let $x_i \in \mathbb{R}^d$ (or $\mathbf{e}_i$) be the $L_2$-normalized feature embedding of the $i$-th sample ($\|x_i\|_2=1$). For each class $j \in \{1, \ldots, N\}$, define $K$ normalized sub-centers $W_{j,1}, ..., W_{j,K} \in \mathbb{R}^d$ ($\|W_{j,k}\|_2=1$). Let $s > 0$ be a fixed scale and $m > 0$ the additive angular margin.

The sub-center ArcFace loss is given by:
\[
\mathcal{L}_{\text{sub-Arc}} =
-\frac{1}{M} \sum_{i=1}^M \log
\frac{
\exp\big( s \cdot \cos(\theta_{i, y_i} + m) \big)
}{
\exp\big( s \cdot \cos(\theta_{i, y_i} + m) \big)
+
\sum_{j \ne y_i} \exp\big( s \cdot S_{i,j} \big)
}
\]
where $S_{i,j} = \max_{k=1,\ldots,K} W_{j,k}^\top x_i$, and $\theta_{i,j} = \arccos(S_{i,j})$ [1801.07698, 2210.05092, 2603.24432].

The angular margin $m$ is applied only to the logit corresponding to the ground-truth class's dominant sub-center. For each sample and class, the maximum cosine similarity over all sub-centers serves as the effective logit.

## 2. Training Mechanism and Sub-center Assignment

For each mini-batch and each class $j$, compute the set of inner products $W_{j,k}^\top x_i$ for $k=1,\ldots,K$. For each class $j$, select the sub-center $k_j^*$ yielding the highest score: $k_j^* = \arg\max_k W_{j,k}^\top x_i$.

- **Forward pass:** Retain $S_{i, j} = \max_k W_{j,k}^\top x_i$ for all classes $j$.
- **Backward pass:** Only the “winning” sub-center $W_{j,k_j^*}$ receives the gradient update for sample $i$; all others remain unchanged for that sample [1801.07698, 2603.24432].
- **After convergence:** For data cleaning, retain only the “dominant” sub-center (majority assigned) per class and discard samples whose angle to the dominant center exceeds a threshold (e.g., $75^\circ$).

This mechanism operates identically for all classes, regardless of whether they are the correct label or impostors, ensuring true sample-cluster associations drive the update.

## 3. Role of Dominant and Non-dominant Sub-centers in Noise Isolation

The sub-center scheme divides each class into $K$ clusters on the unit hypersphere. In noisy datasets, the majority of clean data for class $j$ forms a tight cluster around one dominant sub-center, while hard, atypical, or mislabeled samples are drawn toward non-dominant sub-centers.

After model convergence:
- Dominant sub-center: Represents the clean, well-aligned core of each class.
- Non-dominant sub-centers: Absorb ambiguous or mislabeled outliers, effectively separating label noise from useful data [1801.07698, 2210.05092].

This separation allows automatic data purification by pruning samples distant from the dominant sub-center, and retraining on the resulting cleaned dataset yields substantial generalization improvements.

## 4. Geometric Interpretation on the Hypersphere

All features and sub-center weights are constrained to the unit hypersphere in $\mathbb{R}^d$. Each class is no longer a single point, but a constellation of $K$ points. The intra-class angular distribution, potentially multi-modal due to pose, lighting, or noise, is modeled as a mixture of clusters.

The margin $m$ is still enforced at the angular (geodesic) level between the sample and its closest sub-center, which enhances inter-class discrimination while permitting within-class diversity [1801.07698].

## 5. Applications: Face Recognition, Speaker Verification, and Noisy Data Regimes

Sub-center ArcFace was initially developed for deep face recognition under massive label noise (e.g., web-scraped MS1M-V0 at 50% label noise) [1801.07698]. Its utility in noisy or poorly-labeled settings has led to adoption in speaker verification, especially under semi-supervised domain adaptation schemes with clustering-derived pseudo-labels.

- **Face Recognition:** Training ResNet-50 with Sub-center ArcFace ($K=3$) raises TPR@FPR=$10^{-4}$ on IJB-C from $90.3\%$ (ArcFace) to $93.7\%$ (+$3.4\%$). Automatic cleaning with sub-center-based hard pruning and re-training pushes performance to $95.9\%$, nearly matching models trained with fully human-labeled data.
- **Speaker Verification:** In domain adaptation on pseudo-labeled CN-Celeb, switching from ArcFace to Sub-center ArcFace reduced EER by approximately $9.2\%$ (from $10.726\%$ to $9.735\%$) and further improvements were achieved by combining with AS-Norm and QMF back-ends [2210.05092, 2603.24432].
- **Curriculum Learning:** Recent systems leverage the dominant sub-center cosine as a per-sample confidence score to rank and schedule training examples (easy/medium/hard) for adaptive curriculum loss weighting [2603.24432].

## 6. Implementation Details, Hyper-parameters, and Empirical Findings

<table>
  <thead>
    <tr>
      <th>Parameter</th>
      <th>Typical Value</th>
      <th>Significance</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Sub-centers per class ($K$)</td>
      <td>3</td>
      <td>Isolates dominant and outlier modes; $K > 5$ usually hurts</td>
    </tr>
    <tr>
      <td>Scale ($s$)</td>
      <td>32 (speaker), 64 (face)</td>
      <td>Inherited from ArcFace for margin sharpness</td>
    </tr>
    <tr>
      <td>Angular margin ($m$)</td>
      <td>0.2–0.5</td>
      <td>Greater $m$ strengthens decision boundaries</td>
    </tr>
    <tr>
      <td>Angle threshold ($\alpha$)</td>
      <td>75° (for data cleaning)</td>
      <td>Robust to pruning high-confidence noise & outliers</td>
    </tr>
  </tbody>
</table>

Other implementation notes:
- Only max-pooling over sub-centers (not softmax-weighted pooling) yielded optimal results [1801.07698].
- Second-round clustering and fine-tuning in semi-supervised settings may degrade final accuracy [2210.05092].
- In curriculum approaches, per-sample confidence $s_i$ is tracked via moving average and standard deviation; tiered weights are adaptively scheduled [2603.24432].

## 7. Limitations and Practical Recommendations

Sub-center ArcFace requires tuning of $K$; over-fragmenting classes diminishes the model's ability to aggregate sufficient samples per prototype. Empirically, $K=3$ generally suffices for most heterogeneity found in unconstrained visual and signal datasets. Combining sub-center ArcFace with strong domain adaptation or quality control back-ends (e.g., AS-Norm, QMF) is recommended in cross-domain or semi-supervised workflows. Over-iterating clustering and fine-tuning cycles can harm the learned representations; a single round is generally sufficient [2210.05092].

Sub-center ArcFace presents a modular, generalizable technique for robustifying angular margin losses under label noise, with demonstrated gains across face and speaker recognition benchmarks [1801.07698, 2603.24432, 2210.05092].

Source: https://www.emergentmind.com/topics/sub-center-arcface