--- license: apache-2.0 tags: - speaker-recognition - uncertainty - speaker-verification - speech - voxceleb --- # 🎙️ Uncertainty-Aware Speaker Recognition This project provides uncertainty-aware speaker recognition models based on ECAPA-TDNN, ResNet34, and ReDimNet-B2. The core idea is to estimate the uncertainty of speaker embeddings and use it during representation learning, classification, and verification scoring. This allows the model to distinguish between reliable and unreliable speech segments, improving robustness in both in-domain and cross-domain speaker verification. The implementation is based on the following two works: - [$\mathcal{U}^3$-xi: Pushing the Boundaries of Speaker Recognition via Incorporating Uncertainty](https://arxiv.org/abs/2601.15719) - [Towards Robust Uncertainty-Aware Speaker Modeling](https://arxiv.org/abs/2607.04937) The current release focuses on uncertainty-aware speaker embedding learning and speaker verification. The implementation is based on the [WeSpeaker](https://github.com/wenet-e2e/wespeaker) codebase. ## ✨ Key Highlights The main components of this project include: - **Uncertainty-aware speaker embedding learning** - **Uncertainty estimation based on multi-view self-attention** - **Uncertainty-aware pooling and classification** - **Inter- and intra-speaker-aware uncertainty modeling** - **Uncertainty-aware cosine scoring** > **Note:** The current repository provides the implementation of > inter-/intra-speaker-aware uncertainty softmax. The > Uncertainty-Calibrated Domain Adaptation (UCDA) method is described in the > paper but is not currently included in this release. ## 📦 Installation Clone the repository and install the dependencies: ```bash git clone https://github.com/mrjunjieli/wespeaker_u_cube.git cd wespeaker_u_cube pip install -r requirements.txt pip install -e . ``` If you plan to use SpeechBrain interfaces or recipes: ```bash pip install speechbrain ``` ## 🏋️ Training The VoxCeleb experiments are located in: ```text examples/voxceleb/v2 ``` An example training command is: ```bash cd examples/voxceleb/v2 bash run.sh \ --stage 1 \ --stop_stage 5 \ --config conf/ecapa_tdnn_u_cube.yaml ``` Available uncertainty-aware configurations include: ```text conf/ecapa_tdnn_u_cube.yaml conf/resnet_u_cube.yaml conf/redimnet_u_cube.yaml ``` For inter-/intra-speaker-aware uncertainty modeling, use the corresponding projection types implemented in `wespeaker/models/projections.py`: ```text arc_margin_uncertainty_inter_intra add_margin_uncertainty_inter_intra sphereface2_uncertainty_arcguide ``` ## 📊 Results
Model # Param. Loss Uncertainty-aware cosine score In-domain Cross-domain
Vox1-O Vox1-E Vox1-H RI (%) CNCeleb RI (%)
EER minDCF EER minDCF EER minDCF EER minDCF
ECAPA5126.19 MAAM-SoftmaxNo1.0690.1221.2090.1362.3100.226Benchmark15.3140.633Benchmark
UAAM-SoftmaxNo0.8560.1091.0640.1211.9820.19513.5713.7060.6087.23
Yes0.7820.1001.0160.1151.8880.18718.6410.2711.000-12.52
UAAM-Softmax inter-intraNo0.9360.1021.0500.1221.9780.19513.4013.9740.5818.48
Yes0.8400.0860.9650.1101.8330.18921.2210.7810.835-1.16
AM-SoftmaxNo1.0050.1071.2060.1332.2540.221Benchmark14.1620.611Benchmark
UAM-Softmax inter-intraNo0.8880.0991.0760.1191.9730.18611.4612.4360.55310.84
Yes0.8080.0840.9910.1091.7940.17819.469.4111.000-15.03
SphereFace2No0.9630.1081.1210.1251.9670.199Benchmark12.5820.573Benchmark
USphereFace2 inter-intraNo0.8560.1041.0350.1191.9180.1965.2112.2650.5503.27
Yes0.7390.1020.9650.1081.7710.17812.8110.5600.6243.59
ResNet346.63 MAAM-SoftmaxNo0.8670.0911.0490.1211.9600.192Benchmark11.0900.488Benchmark
UAAM-SoftmaxNo0.8880.0850.9000.0991.7120.1759.6811.7320.513-5.46
Yes0.8670.0780.8680.0951.6410.17213.2910.0820.541-0.89
UAAM-Softmax inter-intraNo0.9040.0700.9330.0981.6580.16513.0612.1160.505-6.37
Yes0.8130.0750.8470.0911.5320.16717.129.6310.5391.35
USphereFace2No1.4830.1481.4510.1562.1120.206-36.0011.4410.512-4.04
Yes1.3400.1561.3570.1501.9860.193-30.1910.9490.499-0.49
ReDimNet-B24.89 MAAM-SoftmaxNo0.7820.0640.9070.0971.6670.162Benchmark12.3850.552Benchmark
UAAM-SoftmaxNo0.6490.0730.8010.0891.5320.1536.0913.4640.552-4.36
Yes0.6060.0650.7790.0911.4940.1579.129.4791.000-28.85
UAAM-Softmax inter-intraNo0.6860.0700.8020.0901.5360.1516.0612.1320.5164.28
Yes0.6270.0640.7580.0881.4340.15310.848.6070.838-10.65
USphereFace2 inter-intraNo0.6220.0520.7760.0851.4400.14614.9212.0810.5154.58
Yes0.6220.0510.7740.0841.4330.14515.5611.8990.5066.13
## 📚 Citation If you use this project, please cite the following papers: ```bibtex @article{li2026ucubexi, title={{U^3}-xi: Pushing the Boundaries of Speaker Recognition via Incorporating Uncertainty}, author={Li, Junjie and Lee, Kong Aik}, journal={arXiv preprint arXiv:2601.15719}, year={2026} } ``` ```bibtex @article{li2026robust, author = {Junjie Li and Yang Xiao and Kong Aik Lee}, title = {Towards Robust Uncertainty-Aware Speaker Modeling}, journal = {arXiv preprint arXiv:2607.04937}, year = {2026}, url = {https://arxiv.org/abs/2607.04937} } ``` ## 📧 Contact For questions, please contact: junjie98.li@connect.polyu.hk