v0.4.0: full-convergence checkpoints (S_safe = X + 2 epochs), TFLite exports, and updated evaluation archives
Browse files- README.md +19 -19
- config.json +13 -11
- eval_results.json +502 -165
- flax_model.msgpack +1 -1
- model.safetensors +1 -1
README.md
CHANGED
|
@@ -35,15 +35,15 @@ metrics:
|
|
| 35 |
> - **ATP** (pooling head repurposed from a *language identification* paper): *Attentive Temporal Pooling for Conformer-based Streaming Language Identification in Long-form Speech* ([arXiv:2202.12163](https://arxiv.org/abs/2202.12163))
|
| 36 |
> - **PFAS**: *Parameter-Free Attentive Scoring for Speaker Verification* ([arXiv:2203.05642](https://arxiv.org/abs/2203.05642))
|
| 37 |
>
|
| 38 |
-
> The experiments in those papers were run on Google-internal infrastructure and data, not with this library. **This is a
|
| 39 |
|
| 40 |
## Training Budget (read this first)
|
| 41 |
|
| 42 |
-
This model was trained for **400 gradient steps** with mini-batches of 32 utterances (8 speakers x 4 utterances), i.e.
|
| 43 |
|
| 44 |
-
**Training-crop provenance.** This checkpoint was trained with
|
| 45 |
|
| 46 |
-
For orientation only: published ECAPA-TDNN systems trained on VoxCeleb2-dev reach about 0.9% EER on the full VoxCeleb1-O list (Desplanques et al., 2020), and sub-1M-parameter systems about 2% (Wang et al., EfficientTDNN, 2022). The
|
| 47 |
|
| 48 |
## Model Summary
|
| 49 |
|
|
@@ -60,8 +60,8 @@ For orientation only: published ECAPA-TDNN systems trained on VoxCeleb2-dev reac
|
|
| 60 |
| **Verification Scorer** | Cosine similarity (`cosine`) |
|
| 61 |
| **Output Representation Dim** | `128` |
|
| 62 |
| **Inference Parameters (encoder + scoring head; excludes training-only classifier weights)** | `693,126` |
|
| 63 |
-
| **Training Data** | LibriSpeech only (232 speakers) |
|
| 64 |
-
| **Training Steps / Batch** | `400` steps x 32 utterances, seed 42 |
|
| 65 |
| **Audio Frontend** | `80`-dim natural-log Mel @ `16000` Hz + frame-level energy VAD + CMVN (`flaxspeaker.AudioFrontend`; **not** a Hugging Face `AutoFeatureExtractor`) |
|
| 66 |
|
| 67 |
## Model Files Included
|
|
@@ -75,7 +75,7 @@ For orientation only: published ECAPA-TDNN systems trained on VoxCeleb2-dev reac
|
|
| 75 |
|
| 76 |
### Python API (from Hugging Face Hub or Local Directory)
|
| 77 |
|
| 78 |
-
Requires `flaxspeaker >= 0.
|
| 79 |
|
| 80 |
```python
|
| 81 |
from flaxspeaker import load_pretrained
|
|
@@ -101,12 +101,12 @@ Trial lists are 50/50 target/impostor over held-out speakers (LibriSpeech 40, CN
|
|
| 101 |
|
| 102 |
| Evaluation Split | Trials | EER (%) | 95% Bootstrap CI (%) | minDCF@0.01 | minDCF@0.10 | ROC-AUC |
|
| 103 |
| :--- | :---: | :---: | :---: | :---: | :---: | :---: |
|
| 104 |
-
| **LibriSpeech (English Read)** | 3,000 | **
|
| 105 |
-
| **CN-Celeb2 (Chinese Multi-Genre)** | 3,000 | **
|
| 106 |
-
| **VoxCeleb1 (In-the-Wild Celebrity)** | 2,000 | **
|
| 107 |
-
| **Universal Pooled (All 3 Domains)** | 8,000 | **
|
| 108 |
-
| **Universal Macro-Average (3 Domains)** | — | **
|
| 109 |
-
| **VoxCeleb1-O 10-speaker subset** (see caveat) | 2,500 | **
|
| 110 |
|
| 111 |
Caveat: VoxCeleb1-O **10-speaker subset**: the official `veri_test2.txt` list filtered to trials whose enrollment and test speakers are both among the 10 held-out evaluation speakers (2,500 trials, ~72% target). **Not comparable to published VoxCeleb1-O numbers**; the other 30 of the 40 official test speakers are used as training data by `vox_*` and `univ_*` models.
|
| 112 |
|
|
@@ -114,17 +114,17 @@ Caveat: VoxCeleb1-O **10-speaker subset**: the official `veri_test2.txt` list fi
|
|
| 114 |
|
| 115 |
| Evaluation Split | Trials | 3-Utt EER (%) | 95% Bootstrap CI (%) | minDCF@0.01 | ROC-AUC |
|
| 116 |
| :--- | :---: | :---: | :---: | :---: | :---: |
|
| 117 |
-
| **LibriSpeech (3-Utt)** | 1,000 | **
|
| 118 |
-
| **CN-Celeb2 (3-Utt)** | 1,000 | **25.
|
| 119 |
-
| **VoxCeleb1 (3-Utt)** | 1,000 | **
|
| 120 |
-
| **Universal Pooled (3-Utt)** | 3,000 | **18.
|
| 121 |
-
| **Universal Macro-Average (3-Utt)** | — | **17.
|
| 122 |
|
| 123 |
Single seed; the 95% bootstrap CIs resample trials (not speakers). Differences below about 1% absolute EER between FlaxSpeaker checkpoints are within the seed-to-seed variation measured in `pretrained_models/r2_seed_and_control_results.json` (see the GitHub README) and should not be interpreted as rankings.
|
| 124 |
|
| 125 |
## Deviations from the Source Papers
|
| 126 |
|
| 127 |
-
- **Training regime**: 400 gradient steps x 32 utterances (N = 8 speakers x M = 4) on <= 25 utterances/speaker from
|
| 128 |
- **Augmentation**: synthetic log-Mel-domain noise + one-tap smoothing (`specaug.apply_feature_mtr_augmentation`), not waveform MTR with recorded noise/RIR corpora.
|
| 129 |
- **Conformer**: parallel linear + Conv1D stem, no positional encoding, 2 blocks x 128-D, 4 heads, kernel 15, mask-aware GroupNorm(2), no dropout, multi-layer feature aggregation; the Google papers use 12 x 512 blocks, 4-8 heads, kernel 32, relative positional encoding and dropout.
|
| 130 |
- **ATP pooling**: 4 heads with a tanh bottleneck (128-D) and `subspace_heads = True`; the papers use a single head with a linear-sigmoid weight (`attention_dim = 0`). Note that arXiv:2202.12163 is a language-identification paper whose pooling head is repurposed here.
|
|
|
|
| 35 |
> - **ATP** (pooling head repurposed from a *language identification* paper): *Attentive Temporal Pooling for Conformer-based Streaming Language Identification in Long-form Speech* ([arXiv:2202.12163](https://arxiv.org/abs/2202.12163))
|
| 36 |
> - **PFAS**: *Parameter-Free Attentive Scoring for Speaker Verification* ([arXiv:2203.05642](https://arxiv.org/abs/2203.05642))
|
| 37 |
>
|
| 38 |
+
> The experiments in those papers were run on Google-internal infrastructure and data, not with this library. **This is a converged small-corpus benchmark checkpoint (2,400 steps / ~13.27 epochs on 5,788 utterances from 232 speakers), not a full-corpus reproduction of the papers' large-scale results** -- see *Training budget* and *Deviations from the source papers* below.
|
| 39 |
|
| 40 |
## Training Budget (read this first)
|
| 41 |
|
| 42 |
+
This model was trained to convergence for **2,400 gradient steps** (`S_safe = X + 2 epochs` safety margin, warmup `240` steps) with mini-batches of 32 utterances (8 speakers x 4 utterances), i.e. **~13.27 epochs** over the 5,788-utterance LibriSpeech training pool (232 speakers), on a CPU workstation with seed 42. Across the training trajectory, in-domain LibriSpeech EER progressed from step `400`: **13.07%** (1-utt) / **7.90%** (3-utt) -> step `2000` (knee): **7.57%** (1-utt) / **4.30%** (3-utt) -> step `2400` (final): **7.87%** (1-utt) / **4.60%** (3-utt) (Universal Pooled final: **20.70%** 1-utt / **18.20%** 3-utt). While training loss and validation EER have reached their small-corpus convergence plateau on this 232-speaker open split (<= 25 utterances/speaker), absolute EERs remain bounded by training speaker diversity compared to industrial benchmarks trained on thousands of speakers (see below).
|
| 43 |
|
| 44 |
+
**Training-crop provenance.** This checkpoint was trained with `U(90, 180)`-frame variable-length crops and an exact validity mask (the current pipeline default); the shipped `config.json` / YAML (`variable_length_training: true`) describes the released weights. Step-0 loss fingerprint at the released seed (`scripts/fingerprint_released_checkpoints.py`, `pretrained_models/step0_fingerprints.json`): archived `2.1332`; current code with fixed 180-frame crops `2.09`, with `U(90, 180)` crops `2.1332` (match: `variable`). Evaluating the released weights with the current code reproduces the archived metrics in `eval_results.json`. At the converged `S_safe` budget, the seed-to-seed standard deviation of pooled 1-utt EER across seeds 0-2 is 0.08-0.41 % absolute (`pretrained_models/r2_seed_and_control_results.json`), while the 8,000-trial 95 % bootstrap CI half-width is ~0.8 %.
|
| 45 |
|
| 46 |
+
For orientation only: published ECAPA-TDNN systems trained on VoxCeleb2-dev reach about 0.9% EER on the full VoxCeleb1-O list (Desplanques et al., 2020), and sub-1M-parameter systems about 2% (Wang et al., EfficientTDNN, 2022). The checkpoints released here are trained to convergence (including a +2-epoch safety margin) on the self-contained 381-speaker (<=25 utterances/speaker) benchmark corpus rather than VoxCeleb2-dev (5,994 speakers, ~1.1M utterances), and are intended for controlled relative comparisons within the FlaxSpeaker benchmark, not as state-of-the-art models trained on thousand-speaker corpora.
|
| 47 |
|
| 48 |
## Model Summary
|
| 49 |
|
|
|
|
| 60 |
| **Verification Scorer** | Cosine similarity (`cosine`) |
|
| 61 |
| **Output Representation Dim** | `128` |
|
| 62 |
| **Inference Parameters (encoder + scoring head; excludes training-only classifier weights)** | `693,126` |
|
| 63 |
+
| **Training Data** | LibriSpeech only (232 speakers, 5,788 utterances) |
|
| 64 |
+
| **Training Steps / Batch** | `2,400` steps x 32 utterances (~13.27 epochs), seed 42 |
|
| 65 |
| **Audio Frontend** | `80`-dim natural-log Mel @ `16000` Hz + frame-level energy VAD + CMVN (`flaxspeaker.AudioFrontend`; **not** a Hugging Face `AutoFeatureExtractor`) |
|
| 66 |
|
| 67 |
## Model Files Included
|
|
|
|
| 75 |
|
| 76 |
### Python API (from Hugging Face Hub or Local Directory)
|
| 77 |
|
| 78 |
+
Requires `flaxspeaker >= 0.4.0` (`pip install -U flaxspeaker`) for full `margin_warmup_steps` config compatibility with the v0.4.0 converged checkpoints (`>= 0.3.0` introduced `load_pretrained`; the legacy `0.2.0` wheel cannot load Hub checkpoints).
|
| 79 |
|
| 80 |
```python
|
| 81 |
from flaxspeaker import load_pretrained
|
|
|
|
| 101 |
|
| 102 |
| Evaluation Split | Trials | EER (%) | 95% Bootstrap CI (%) | minDCF@0.01 | minDCF@0.10 | ROC-AUC |
|
| 103 |
| :--- | :---: | :---: | :---: | :---: | :---: | :---: |
|
| 104 |
+
| **LibriSpeech (English Read)** | 3,000 | **7.87%** | [6.88, 8.85] | 0.6067 | 0.3727 | 0.9761 |
|
| 105 |
+
| **CN-Celeb2 (Chinese Multi-Genre)** | 3,000 | **29.43%** | [27.70, 30.90] | 0.9980 | 0.9400 | 0.7878 |
|
| 106 |
+
| **VoxCeleb1 (In-the-Wild Celebrity)** | 2,000 | **26.30%** | [24.45, 28.58] | 0.8970 | 0.8220 | 0.8184 |
|
| 107 |
+
| **Universal Pooled (All 3 Domains)** | 8,000 | **20.70%** | [19.88, 21.64] | 0.9930 | 0.8000 | 0.8787 |
|
| 108 |
+
| **Universal Macro-Average (3 Domains)** | — | **21.20%** | — | 0.8339 | 0.7116 | 0.8608 |
|
| 109 |
+
| **VoxCeleb1-O 10-speaker subset** (see caveat) | 2,500 | **29.96%** | [27.65, 32.15] | 0.9816 | 0.8884 | 0.7831 |
|
| 110 |
|
| 111 |
Caveat: VoxCeleb1-O **10-speaker subset**: the official `veri_test2.txt` list filtered to trials whose enrollment and test speakers are both among the 10 held-out evaluation speakers (2,500 trials, ~72% target). **Not comparable to published VoxCeleb1-O numbers**; the other 30 of the 40 official test speakers are used as training data by `vox_*` and `univ_*` models.
|
| 112 |
|
|
|
|
| 114 |
|
| 115 |
| Evaluation Split | Trials | 3-Utt EER (%) | 95% Bootstrap CI (%) | minDCF@0.01 | ROC-AUC |
|
| 116 |
| :--- | :---: | :---: | :---: | :---: | :---: |
|
| 117 |
+
| **LibriSpeech (3-Utt)** | 1,000 | **4.60%** | [3.25, 6.00] | 0.4800 | 0.9903 |
|
| 118 |
+
| **CN-Celeb2 (3-Utt)** | 1,000 | **25.20%** | [22.60, 27.95] | 0.9360 | 0.8397 |
|
| 119 |
+
| **VoxCeleb1 (3-Utt)** | 1,000 | **22.30%** | [19.85, 24.90] | 0.7720 | 0.8691 |
|
| 120 |
+
| **Universal Pooled (3-Utt)** | 3,000 | **18.20%** | [16.70, 19.48] | 0.9127 | 0.9127 |
|
| 121 |
+
| **Universal Macro-Average (3-Utt)** | — | **17.37%** | — | 0.7293 | 0.8997 |
|
| 122 |
|
| 123 |
Single seed; the 95% bootstrap CIs resample trials (not speakers). Differences below about 1% absolute EER between FlaxSpeaker checkpoints are within the seed-to-seed variation measured in `pretrained_models/r2_seed_and_control_results.json` (see the GitHub README) and should not be interpreted as rankings.
|
| 124 |
|
| 125 |
## Deviations from the Source Papers
|
| 126 |
|
| 127 |
+
- **Training regime**: 2,400 gradient steps x 32 utterances (N = 8 speakers x M = 4, ~13.27 epochs) on <= 25 utterances/speaker from 232 speakers (5,788 utterances); the source papers train for ~500k steps with N = 16-64 / M = 8-10 on thousands of speakers.
|
| 128 |
- **Augmentation**: synthetic log-Mel-domain noise + one-tap smoothing (`specaug.apply_feature_mtr_augmentation`), not waveform MTR with recorded noise/RIR corpora.
|
| 129 |
- **Conformer**: parallel linear + Conv1D stem, no positional encoding, 2 blocks x 128-D, 4 heads, kernel 15, mask-aware GroupNorm(2), no dropout, multi-layer feature aggregation; the Google papers use 12 x 512 blocks, 4-8 heads, kernel 32, relative positional encoding and dropout.
|
| 130 |
- **ATP pooling**: 4 heads with a tanh bottleneck (128-D) and `subspace_heads = True`; the papers use a single head with a linear-sigmoid weight (`attention_dim = 0`). Note that arXiv:2202.12163 is a language-identification paper whose pooling head is repurposed here.
|
config.json
CHANGED
|
@@ -66,6 +66,7 @@
|
|
| 66 |
"ge2e_split_batch": false,
|
| 67 |
"loss_type": "ge2e_softmax",
|
| 68 |
"margin": 0.2,
|
|
|
|
| 69 |
"multi_row_window": 0,
|
| 70 |
"num_speakers_per_batch": 8,
|
| 71 |
"num_utts_per_speaker": 4,
|
|
@@ -213,7 +214,7 @@
|
|
| 213 |
"use_positional_encoding": false
|
| 214 |
},
|
| 215 |
"use_transformer": false,
|
| 216 |
-
"variable_length_training":
|
| 217 |
},
|
| 218 |
"train": {
|
| 219 |
"batch_size": 32,
|
|
@@ -232,6 +233,7 @@
|
|
| 232 |
"ge2e_split_batch": false,
|
| 233 |
"loss_type": "ge2e_softmax",
|
| 234 |
"margin": 0.2,
|
|
|
|
| 235 |
"multi_row_window": 0,
|
| 236 |
"num_speakers_per_batch": 8,
|
| 237 |
"num_utts_per_speaker": 4,
|
|
@@ -249,7 +251,7 @@
|
|
| 249 |
"min_learning_rate": 1.5e-05,
|
| 250 |
"num_processes": 4,
|
| 251 |
"num_spks_per_batch": 8,
|
| 252 |
-
"num_steps":
|
| 253 |
"num_utts_per_spk": 4,
|
| 254 |
"optimizer": "adamw",
|
| 255 |
"save_model_frequency": 0,
|
|
@@ -267,7 +269,7 @@
|
|
| 267 |
"use_specaug": true
|
| 268 |
},
|
| 269 |
"triplet_alpha": 0.1,
|
| 270 |
-
"warmup_steps":
|
| 271 |
"waveform_aug": {
|
| 272 |
"aug_prob": 0.35,
|
| 273 |
"enabled": true,
|
|
@@ -306,17 +308,17 @@
|
|
| 306 |
"scoring_type": "cosine",
|
| 307 |
"seq_len": 180,
|
| 308 |
"size_variant": "tiny",
|
| 309 |
-
"transformers_version": "5.17.0",
|
| 310 |
"training_provenance": {
|
| 311 |
-
"variable_length_training_actual":
|
| 312 |
-
"crop_frames": 180,
|
| 313 |
-
"training_code": "
|
| 314 |
-
"step0_fingerprint_match": "
|
| 315 |
-
"released_initial_loss": 2.
|
| 316 |
"head_fixed_step0_loss": 2.09,
|
| 317 |
"head_variable_step0_loss": 2.1332,
|
| 318 |
-
"fingerprint_code_commit": "
|
| 319 |
"fingerprint_source": "pretrained_models/step0_fingerprints.json",
|
| 320 |
"note": "How the released weights were actually trained. Evaluating the released weights with the current code reproduces the archived metrics; re-training the shipped recipe reproduces the archived step-0 loss only under 'crop_frames'. See README.md 'Training-crop provenance'."
|
| 321 |
-
}
|
|
|
|
| 322 |
}
|
|
|
|
| 66 |
"ge2e_split_batch": false,
|
| 67 |
"loss_type": "ge2e_softmax",
|
| 68 |
"margin": 0.2,
|
| 69 |
+
"margin_warmup_steps": 0,
|
| 70 |
"multi_row_window": 0,
|
| 71 |
"num_speakers_per_batch": 8,
|
| 72 |
"num_utts_per_speaker": 4,
|
|
|
|
| 214 |
"use_positional_encoding": false
|
| 215 |
},
|
| 216 |
"use_transformer": false,
|
| 217 |
+
"variable_length_training": true
|
| 218 |
},
|
| 219 |
"train": {
|
| 220 |
"batch_size": 32,
|
|
|
|
| 233 |
"ge2e_split_batch": false,
|
| 234 |
"loss_type": "ge2e_softmax",
|
| 235 |
"margin": 0.2,
|
| 236 |
+
"margin_warmup_steps": 0,
|
| 237 |
"multi_row_window": 0,
|
| 238 |
"num_speakers_per_batch": 8,
|
| 239 |
"num_utts_per_speaker": 4,
|
|
|
|
| 251 |
"min_learning_rate": 1.5e-05,
|
| 252 |
"num_processes": 4,
|
| 253 |
"num_spks_per_batch": 8,
|
| 254 |
+
"num_steps": 2400,
|
| 255 |
"num_utts_per_spk": 4,
|
| 256 |
"optimizer": "adamw",
|
| 257 |
"save_model_frequency": 0,
|
|
|
|
| 269 |
"use_specaug": true
|
| 270 |
},
|
| 271 |
"triplet_alpha": 0.1,
|
| 272 |
+
"warmup_steps": 240,
|
| 273 |
"waveform_aug": {
|
| 274 |
"aug_prob": 0.35,
|
| 275 |
"enabled": true,
|
|
|
|
| 308 |
"scoring_type": "cosine",
|
| 309 |
"seq_len": 180,
|
| 310 |
"size_variant": "tiny",
|
|
|
|
| 311 |
"training_provenance": {
|
| 312 |
+
"variable_length_training_actual": true,
|
| 313 |
+
"crop_frames": "90-180",
|
| 314 |
+
"training_code": "9accf95 (2026-10-18) or later: variable_length_training honoured by the benchmark driver (T ~ U(min_seq_len, seq_len) crops with an exact validity mask)",
|
| 315 |
+
"step0_fingerprint_match": "variable",
|
| 316 |
+
"released_initial_loss": 2.1332,
|
| 317 |
"head_fixed_step0_loss": 2.09,
|
| 318 |
"head_variable_step0_loss": 2.1332,
|
| 319 |
+
"fingerprint_code_commit": "9b091a5+dirty",
|
| 320 |
"fingerprint_source": "pretrained_models/step0_fingerprints.json",
|
| 321 |
"note": "How the released weights were actually trained. Evaluating the released weights with the current code reproduces the archived metrics; re-training the shipped recipe reproduces the archived step-0 loss only under 'crop_frames'. See README.md 'Training-crop provenance'."
|
| 322 |
+
},
|
| 323 |
+
"transformers_version": "5.17.0"
|
| 324 |
}
|
eval_results.json
CHANGED
|
@@ -8,158 +8,455 @@
|
|
| 8 |
"scoring_type": "cosine",
|
| 9 |
"embedding_dim": 128,
|
| 10 |
"num_parameters": 693126,
|
| 11 |
-
"num_steps":
|
| 12 |
-
"
|
| 13 |
-
"
|
| 14 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 15 |
"in_domain_eval": {
|
| 16 |
-
"eer": 0.
|
| 17 |
-
"eer_percent":
|
| 18 |
-
"eer_ci95_low_percent":
|
| 19 |
-
"eer_ci95_high_percent":
|
| 20 |
-
"eer_threshold": 0.
|
| 21 |
-
"min_dcf_001": 0.
|
| 22 |
-
"min_dcf_005": 0.
|
| 23 |
-
"min_dcf_01": 0.
|
| 24 |
-
"roc_auc": 0.
|
| 25 |
"num_trials": 3000,
|
| 26 |
"num_unique_utterances": 999,
|
| 27 |
-
"latency_ms_per_utterance":
|
| 28 |
-
"eval_time_sec":
|
| 29 |
"scoring_type": "cosine"
|
| 30 |
},
|
| 31 |
"multi_enroll_3utt_eval": {
|
| 32 |
-
"eer": 0.
|
| 33 |
-
"eer_percent":
|
| 34 |
-
"eer_ci95_low_percent":
|
| 35 |
-
"eer_ci95_high_percent":
|
| 36 |
-
"eer_threshold": 0.
|
| 37 |
-
"min_dcf_001": 0.
|
| 38 |
-
"min_dcf_005": 0.
|
| 39 |
-
"min_dcf_01": 0.
|
| 40 |
-
"roc_auc": 0.
|
| 41 |
"num_trials": 1000
|
| 42 |
},
|
| 43 |
-
"cross_dataset_eval": {
|
| 44 |
-
"cnceleb2_zero_shot": {
|
| 45 |
-
"eer": 0.30000000000000004,
|
| 46 |
-
"eer_percent": 30.0,
|
| 47 |
-
"eer_ci95_low_percent": 28.6492,
|
| 48 |
-
"eer_ci95_high_percent": 31.8667,
|
| 49 |
-
"eer_threshold": 0.6296399831771851,
|
| 50 |
-
"min_dcf_001": 0.9993,
|
| 51 |
-
"min_dcf_005": 0.9993,
|
| 52 |
-
"min_dcf_01": 0.9547,
|
| 53 |
-
"roc_auc": 0.7787,
|
| 54 |
-
"num_trials": 3000,
|
| 55 |
-
"num_unique_utterances": 739,
|
| 56 |
-
"latency_ms_per_utterance": 17.479,
|
| 57 |
-
"eval_time_sec": 14.073,
|
| 58 |
-
"scoring_type": "cosine"
|
| 59 |
-
},
|
| 60 |
-
"vox1_o_10spk_subset": {
|
| 61 |
-
"eer": 0.28655661768000884,
|
| 62 |
-
"eer_percent": 28.6557,
|
| 63 |
-
"eer_ci95_low_percent": 26.5857,
|
| 64 |
-
"eer_ci95_high_percent": 30.6141,
|
| 65 |
-
"eer_threshold": 0.5835728645324707,
|
| 66 |
-
"min_dcf_001": 0.9838,
|
| 67 |
-
"min_dcf_005": 0.9334,
|
| 68 |
-
"min_dcf_01": 0.9193,
|
| 69 |
-
"roc_auc": 0.7962,
|
| 70 |
-
"num_trials": 2500,
|
| 71 |
-
"num_unique_utterances": 937,
|
| 72 |
-
"latency_ms_per_utterance": 4.532,
|
| 73 |
-
"eval_time_sec": 4.8,
|
| 74 |
-
"scoring_type": "cosine",
|
| 75 |
-
"num_target_trials": 1789,
|
| 76 |
-
"num_impostor_trials": 711,
|
| 77 |
-
"num_eval_speakers": 10,
|
| 78 |
-
"protocol": "veri_test2_10spk_subset_2500trials",
|
| 79 |
-
"vad_energy_db_threshold": 26.0
|
| 80 |
-
}
|
| 81 |
-
},
|
| 82 |
-
"config_yaml": "configs/ls_conformer_tiny_ge2e.yml",
|
| 83 |
"multi_domain_eval": {
|
| 84 |
"domains_1utt": {
|
| 85 |
"librispeech": {
|
| 86 |
-
"eer": 0.
|
| 87 |
-
"eer_percent":
|
| 88 |
-
"eer_ci95_low_percent":
|
| 89 |
-
"eer_ci95_high_percent":
|
| 90 |
-
"eer_threshold": 0.
|
| 91 |
-
"min_dcf_001": 0.
|
| 92 |
-
"min_dcf_005": 0.
|
| 93 |
-
"min_dcf_01": 0.
|
| 94 |
-
"roc_auc": 0.
|
| 95 |
"num_trials": 3000,
|
| 96 |
"num_unique_utterances": 999,
|
| 97 |
-
"latency_ms_per_utterance":
|
| 98 |
-
"eval_time_sec":
|
| 99 |
"scoring_type": "cosine"
|
| 100 |
},
|
| 101 |
"cnceleb2": {
|
| 102 |
-
"eer": 0.
|
| 103 |
-
"eer_percent":
|
| 104 |
-
"eer_ci95_low_percent":
|
| 105 |
-
"eer_ci95_high_percent":
|
| 106 |
-
"eer_threshold": 0.
|
| 107 |
-
"min_dcf_001": 0.
|
| 108 |
-
"min_dcf_005": 0.
|
| 109 |
-
"min_dcf_01": 0.
|
| 110 |
-
"roc_auc": 0.
|
| 111 |
"num_trials": 3000,
|
| 112 |
"num_unique_utterances": 739,
|
| 113 |
-
"latency_ms_per_utterance":
|
| 114 |
-
"eval_time_sec":
|
| 115 |
"scoring_type": "cosine"
|
| 116 |
},
|
| 117 |
"voxceleb1": {
|
| 118 |
-
"eer": 0.
|
| 119 |
-
"eer_percent":
|
| 120 |
-
"eer_ci95_low_percent":
|
| 121 |
-
"eer_ci95_high_percent":
|
| 122 |
-
"eer_threshold": 0.
|
| 123 |
-
"min_dcf_001": 0.
|
| 124 |
-
"min_dcf_005": 0.
|
| 125 |
-
"min_dcf_01": 0.
|
| 126 |
-
"roc_auc": 0.
|
| 127 |
"num_trials": 2000,
|
| 128 |
"num_unique_utterances": 250,
|
| 129 |
-
"latency_ms_per_utterance":
|
| 130 |
-
"eval_time_sec":
|
| 131 |
"scoring_type": "cosine"
|
| 132 |
},
|
| 133 |
"universal_pooled": {
|
| 134 |
-
"eer": 0.
|
| 135 |
-
"eer_percent":
|
| 136 |
-
"eer_ci95_low_percent":
|
| 137 |
-
"eer_ci95_high_percent":
|
| 138 |
-
"eer_threshold": 0.
|
| 139 |
-
"min_dcf_001": 0.
|
| 140 |
-
"min_dcf_005": 0.
|
| 141 |
-
"min_dcf_01": 0.
|
| 142 |
-
"roc_auc": 0.
|
| 143 |
"num_trials": 8000,
|
| 144 |
"num_unique_utterances": 1988,
|
| 145 |
"latency_ms_per_utterance": 0.0,
|
| 146 |
-
"eval_time_sec":
|
| 147 |
"scoring_type": "cosine"
|
| 148 |
},
|
| 149 |
"vox1_o_10spk_subset": {
|
| 150 |
-
"eer": 0.
|
| 151 |
-
"eer_percent":
|
| 152 |
-
"eer_ci95_low_percent":
|
| 153 |
-
"eer_ci95_high_percent":
|
| 154 |
-
"eer_threshold": 0.
|
| 155 |
-
"min_dcf_001": 0.
|
| 156 |
-
"min_dcf_005": 0.
|
| 157 |
-
"min_dcf_01": 0.
|
| 158 |
-
"roc_auc": 0.
|
| 159 |
"num_trials": 2500,
|
| 160 |
"num_unique_utterances": 937,
|
| 161 |
-
"latency_ms_per_utterance": 4.
|
| 162 |
-
"eval_time_sec": 4.
|
| 163 |
"scoring_type": "cosine",
|
| 164 |
"num_target_trials": 1789,
|
| 165 |
"num_impostor_trials": 711,
|
|
@@ -169,73 +466,113 @@
|
|
| 169 |
}
|
| 170 |
},
|
| 171 |
"universal_macro_avg_1utt": {
|
| 172 |
-
"eer_percent":
|
| 173 |
-
"min_dcf_001": 0.
|
| 174 |
-
"min_dcf_01": 0.
|
| 175 |
-
"roc_auc": 0.
|
| 176 |
},
|
| 177 |
"domains_3utt": {
|
| 178 |
"librispeech": {
|
| 179 |
-
"eer": 0.
|
| 180 |
-
"eer_percent":
|
| 181 |
-
"eer_ci95_low_percent":
|
| 182 |
-
"eer_ci95_high_percent":
|
| 183 |
-
"eer_threshold": 0.
|
| 184 |
-
"min_dcf_001": 0.
|
| 185 |
-
"min_dcf_005": 0.
|
| 186 |
-
"min_dcf_01": 0.
|
| 187 |
-
"roc_auc": 0.
|
| 188 |
"num_trials": 1000
|
| 189 |
},
|
| 190 |
"cnceleb2": {
|
| 191 |
-
"eer": 0.
|
| 192 |
-
"eer_percent": 25.
|
| 193 |
-
"eer_ci95_low_percent":
|
| 194 |
-
"eer_ci95_high_percent":
|
| 195 |
-
"eer_threshold": 0.
|
| 196 |
-
"min_dcf_001": 0.
|
| 197 |
-
"min_dcf_005": 0.
|
| 198 |
-
"min_dcf_01": 0.
|
| 199 |
-
"roc_auc": 0.
|
| 200 |
"num_trials": 1000
|
| 201 |
},
|
| 202 |
"voxceleb1": {
|
| 203 |
-
"eer": 0.
|
| 204 |
-
"eer_percent":
|
| 205 |
-
"eer_ci95_low_percent": 19.
|
| 206 |
-
"eer_ci95_high_percent":
|
| 207 |
-
"eer_threshold": 0.
|
| 208 |
-
"min_dcf_001": 0.
|
| 209 |
-
"min_dcf_005": 0.
|
| 210 |
-
"min_dcf_01": 0.
|
| 211 |
-
"roc_auc": 0.
|
| 212 |
"num_trials": 1000
|
| 213 |
},
|
| 214 |
"universal_pooled": {
|
| 215 |
-
"eer": 0.
|
| 216 |
-
"eer_percent": 18.
|
| 217 |
-
"eer_ci95_low_percent": 16.
|
| 218 |
-
"eer_ci95_high_percent": 19.
|
| 219 |
-
"eer_threshold": 0.
|
| 220 |
-
"min_dcf_001": 0.
|
| 221 |
-
"min_dcf_005": 0.
|
| 222 |
-
"min_dcf_01": 0.
|
| 223 |
-
"roc_auc": 0.
|
| 224 |
"num_trials": 3000
|
| 225 |
}
|
| 226 |
},
|
| 227 |
"universal_macro_avg_3utt": {
|
| 228 |
-
"eer_percent": 17.
|
| 229 |
-
"min_dcf_001": 0.
|
| 230 |
-
"min_dcf_01": 0.
|
| 231 |
-
"roc_auc": 0.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 232 |
}
|
| 233 |
},
|
|
|
|
| 234 |
"hf_pretrained_dir": "pretrained_models/ls_conformer_tiny_ge2e",
|
| 235 |
"hf_repo_id": "wq2012/ls_conformer_tiny_ge2e",
|
| 236 |
"hf_url": "https://huggingface.co/wq2012/ls_conformer_tiny_ge2e",
|
| 237 |
"hf_collection_url": "https://huggingface.co/collections/wq2012/flaxspeaker",
|
| 238 |
-
"vox1_o_10spk_subset_eer_percent":
|
| 239 |
-
"vox1_o_10spk_subset_min_dcf_001": 0.
|
| 240 |
-
"vox1_o_10spk_subset_roc_auc": 0.
|
| 241 |
}
|
|
|
|
| 8 |
"scoring_type": "cosine",
|
| 9 |
"embedding_dim": 128,
|
| 10 |
"num_parameters": 693126,
|
| 11 |
+
"num_steps": 2400,
|
| 12 |
+
"knee_step": 2000,
|
| 13 |
+
"safety_margin_steps": 400,
|
| 14 |
+
"warmup_steps": 240,
|
| 15 |
+
"margin_warmup_steps": 0,
|
| 16 |
+
"train_epochs": 13.27,
|
| 17 |
+
"train_time_sec": 742.39,
|
| 18 |
+
"initial_loss": 2.1332,
|
| 19 |
+
"final_loss": 0.2095,
|
| 20 |
+
"final_loss_last_20": 0.2049,
|
| 21 |
+
"loss_curve_100": [
|
| 22 |
+
{
|
| 23 |
+
"step": 100,
|
| 24 |
+
"epochs": 0.55,
|
| 25 |
+
"mean_loss_last_100": 1.4005,
|
| 26 |
+
"step_loss": 1.1362
|
| 27 |
+
},
|
| 28 |
+
{
|
| 29 |
+
"step": 200,
|
| 30 |
+
"epochs": 1.11,
|
| 31 |
+
"mean_loss_last_100": 0.9651,
|
| 32 |
+
"step_loss": 0.9078
|
| 33 |
+
},
|
| 34 |
+
{
|
| 35 |
+
"step": 300,
|
| 36 |
+
"epochs": 1.66,
|
| 37 |
+
"mean_loss_last_100": 0.8555,
|
| 38 |
+
"step_loss": 0.6599
|
| 39 |
+
},
|
| 40 |
+
{
|
| 41 |
+
"step": 400,
|
| 42 |
+
"epochs": 2.21,
|
| 43 |
+
"mean_loss_last_100": 0.6899,
|
| 44 |
+
"step_loss": 0.7487
|
| 45 |
+
},
|
| 46 |
+
{
|
| 47 |
+
"step": 500,
|
| 48 |
+
"epochs": 2.76,
|
| 49 |
+
"mean_loss_last_100": 0.6756,
|
| 50 |
+
"step_loss": 0.5935
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"step": 600,
|
| 54 |
+
"epochs": 3.32,
|
| 55 |
+
"mean_loss_last_100": 0.5563,
|
| 56 |
+
"step_loss": 0.2987
|
| 57 |
+
},
|
| 58 |
+
{
|
| 59 |
+
"step": 700,
|
| 60 |
+
"epochs": 3.87,
|
| 61 |
+
"mean_loss_last_100": 0.5475,
|
| 62 |
+
"step_loss": 0.9328
|
| 63 |
+
},
|
| 64 |
+
{
|
| 65 |
+
"step": 800,
|
| 66 |
+
"epochs": 4.42,
|
| 67 |
+
"mean_loss_last_100": 0.4753,
|
| 68 |
+
"step_loss": 0.7237
|
| 69 |
+
},
|
| 70 |
+
{
|
| 71 |
+
"step": 900,
|
| 72 |
+
"epochs": 4.98,
|
| 73 |
+
"mean_loss_last_100": 0.4726,
|
| 74 |
+
"step_loss": 0.465
|
| 75 |
+
},
|
| 76 |
+
{
|
| 77 |
+
"step": 1000,
|
| 78 |
+
"epochs": 5.53,
|
| 79 |
+
"mean_loss_last_100": 0.3988,
|
| 80 |
+
"step_loss": 0.3727
|
| 81 |
+
},
|
| 82 |
+
{
|
| 83 |
+
"step": 1100,
|
| 84 |
+
"epochs": 6.08,
|
| 85 |
+
"mean_loss_last_100": 0.3754,
|
| 86 |
+
"step_loss": 0.3667
|
| 87 |
+
},
|
| 88 |
+
{
|
| 89 |
+
"step": 1200,
|
| 90 |
+
"epochs": 6.63,
|
| 91 |
+
"mean_loss_last_100": 0.3834,
|
| 92 |
+
"step_loss": 0.3186
|
| 93 |
+
},
|
| 94 |
+
{
|
| 95 |
+
"step": 1300,
|
| 96 |
+
"epochs": 7.19,
|
| 97 |
+
"mean_loss_last_100": 0.3611,
|
| 98 |
+
"step_loss": 0.2688
|
| 99 |
+
},
|
| 100 |
+
{
|
| 101 |
+
"step": 1400,
|
| 102 |
+
"epochs": 7.74,
|
| 103 |
+
"mean_loss_last_100": 0.3126,
|
| 104 |
+
"step_loss": 0.3597
|
| 105 |
+
},
|
| 106 |
+
{
|
| 107 |
+
"step": 1500,
|
| 108 |
+
"epochs": 8.29,
|
| 109 |
+
"mean_loss_last_100": 0.2897,
|
| 110 |
+
"step_loss": 0.4084
|
| 111 |
+
},
|
| 112 |
+
{
|
| 113 |
+
"step": 1600,
|
| 114 |
+
"epochs": 8.85,
|
| 115 |
+
"mean_loss_last_100": 0.2738,
|
| 116 |
+
"step_loss": 0.1689
|
| 117 |
+
},
|
| 118 |
+
{
|
| 119 |
+
"step": 1700,
|
| 120 |
+
"epochs": 9.4,
|
| 121 |
+
"mean_loss_last_100": 0.3008,
|
| 122 |
+
"step_loss": 0.5918
|
| 123 |
+
},
|
| 124 |
+
{
|
| 125 |
+
"step": 1800,
|
| 126 |
+
"epochs": 9.95,
|
| 127 |
+
"mean_loss_last_100": 0.2531,
|
| 128 |
+
"step_loss": 0.0934
|
| 129 |
+
},
|
| 130 |
+
{
|
| 131 |
+
"step": 1900,
|
| 132 |
+
"epochs": 10.5,
|
| 133 |
+
"mean_loss_last_100": 0.2542,
|
| 134 |
+
"step_loss": 0.2018
|
| 135 |
+
},
|
| 136 |
+
{
|
| 137 |
+
"step": 2000,
|
| 138 |
+
"epochs": 11.06,
|
| 139 |
+
"mean_loss_last_100": 0.2307,
|
| 140 |
+
"step_loss": 0.2308
|
| 141 |
+
},
|
| 142 |
+
{
|
| 143 |
+
"step": 2100,
|
| 144 |
+
"epochs": 11.61,
|
| 145 |
+
"mean_loss_last_100": 0.2365,
|
| 146 |
+
"step_loss": 0.4082
|
| 147 |
+
},
|
| 148 |
+
{
|
| 149 |
+
"step": 2200,
|
| 150 |
+
"epochs": 12.16,
|
| 151 |
+
"mean_loss_last_100": 0.2227,
|
| 152 |
+
"step_loss": 0.8825
|
| 153 |
+
},
|
| 154 |
+
{
|
| 155 |
+
"step": 2300,
|
| 156 |
+
"epochs": 12.72,
|
| 157 |
+
"mean_loss_last_100": 0.2235,
|
| 158 |
+
"step_loss": 0.338
|
| 159 |
+
},
|
| 160 |
+
{
|
| 161 |
+
"step": 2400,
|
| 162 |
+
"epochs": 13.27,
|
| 163 |
+
"mean_loss_last_100": 0.2095,
|
| 164 |
+
"step_loss": 0.1908
|
| 165 |
+
}
|
| 166 |
+
],
|
| 167 |
+
"convergence_checkpoints": {
|
| 168 |
+
"step_400": {
|
| 169 |
+
"step": 400,
|
| 170 |
+
"epochs": 2.21,
|
| 171 |
+
"mean_loss_last_100": 0.6899,
|
| 172 |
+
"in_domain_1utt_eer_percent": 13.0667,
|
| 173 |
+
"in_domain_3utt_eer_percent": 7.9,
|
| 174 |
+
"pooled_1utt_eer_percent": 24.475,
|
| 175 |
+
"pooled_3utt_eer_percent": 19.2667,
|
| 176 |
+
"macro_avg_1utt_eer_percent": 22.71,
|
| 177 |
+
"macro_avg_3utt_eer_percent": 18.1,
|
| 178 |
+
"domains_1utt_eer_percent": {
|
| 179 |
+
"librispeech": 13.0667,
|
| 180 |
+
"cnceleb2": 32.3667,
|
| 181 |
+
"voxceleb1": 22.7
|
| 182 |
+
},
|
| 183 |
+
"domains_3utt_eer_percent": {
|
| 184 |
+
"librispeech": 7.9,
|
| 185 |
+
"cnceleb2": 27.2,
|
| 186 |
+
"voxceleb1": 19.2
|
| 187 |
+
},
|
| 188 |
+
"in_domain_1utt_full": {
|
| 189 |
+
"eer": 0.13066666666666668,
|
| 190 |
+
"eer_percent": 13.0667,
|
| 191 |
+
"eer_ci95_low_percent": 11.7333,
|
| 192 |
+
"eer_ci95_high_percent": 14.3,
|
| 193 |
+
"eer_threshold": 0.8140120506286621,
|
| 194 |
+
"min_dcf_001": 0.8767,
|
| 195 |
+
"min_dcf_005": 0.7193,
|
| 196 |
+
"min_dcf_01": 0.5693,
|
| 197 |
+
"roc_auc": 0.9476,
|
| 198 |
+
"num_trials": 3000,
|
| 199 |
+
"num_unique_utterances": 999,
|
| 200 |
+
"latency_ms_per_utterance": 8.931,
|
| 201 |
+
"eval_time_sec": 9.801,
|
| 202 |
+
"scoring_type": "cosine"
|
| 203 |
+
},
|
| 204 |
+
"in_domain_3utt_full": {
|
| 205 |
+
"eer": 0.07899999999999999,
|
| 206 |
+
"eer_percent": 7.9,
|
| 207 |
+
"eer_ci95_low_percent": 6.1,
|
| 208 |
+
"eer_ci95_high_percent": 9.6525,
|
| 209 |
+
"eer_threshold": 0.8586741089820862,
|
| 210 |
+
"min_dcf_001": 0.434,
|
| 211 |
+
"min_dcf_005": 0.386,
|
| 212 |
+
"min_dcf_01": 0.304,
|
| 213 |
+
"roc_auc": 0.98,
|
| 214 |
+
"num_trials": 1000
|
| 215 |
+
},
|
| 216 |
+
"universal_macro_avg_1utt": {
|
| 217 |
+
"eer_percent": 22.71,
|
| 218 |
+
"min_dcf_001": 0.9242,
|
| 219 |
+
"min_dcf_01": 0.782,
|
| 220 |
+
"roc_auc": 0.8475
|
| 221 |
+
},
|
| 222 |
+
"universal_macro_avg_3utt": {
|
| 223 |
+
"eer_percent": 18.1,
|
| 224 |
+
"min_dcf_001": 0.7467,
|
| 225 |
+
"min_dcf_01": 0.662,
|
| 226 |
+
"roc_auc": 0.8928
|
| 227 |
+
}
|
| 228 |
+
},
|
| 229 |
+
"step_X_knee": {
|
| 230 |
+
"step": 2000,
|
| 231 |
+
"epochs": 11.06,
|
| 232 |
+
"mean_loss_last_100": 0.2307,
|
| 233 |
+
"in_domain_1utt_eer_percent": 7.5667,
|
| 234 |
+
"in_domain_3utt_eer_percent": 4.3,
|
| 235 |
+
"pooled_1utt_eer_percent": 20.7875,
|
| 236 |
+
"pooled_3utt_eer_percent": 18.2667,
|
| 237 |
+
"macro_avg_1utt_eer_percent": 21.13,
|
| 238 |
+
"macro_avg_3utt_eer_percent": 17.63,
|
| 239 |
+
"domains_1utt_eer_percent": {
|
| 240 |
+
"librispeech": 7.5667,
|
| 241 |
+
"cnceleb2": 30.0667,
|
| 242 |
+
"voxceleb1": 25.75
|
| 243 |
+
},
|
| 244 |
+
"domains_3utt_eer_percent": {
|
| 245 |
+
"librispeech": 4.3,
|
| 246 |
+
"cnceleb2": 25.9,
|
| 247 |
+
"voxceleb1": 22.7
|
| 248 |
+
},
|
| 249 |
+
"in_domain_1utt_full": {
|
| 250 |
+
"eer": 0.07566666666666669,
|
| 251 |
+
"eer_percent": 7.5667,
|
| 252 |
+
"eer_ci95_low_percent": 6.5667,
|
| 253 |
+
"eer_ci95_high_percent": 8.5333,
|
| 254 |
+
"eer_threshold": 0.544470489025116,
|
| 255 |
+
"min_dcf_001": 0.6467,
|
| 256 |
+
"min_dcf_005": 0.5007,
|
| 257 |
+
"min_dcf_01": 0.388,
|
| 258 |
+
"roc_auc": 0.9743,
|
| 259 |
+
"num_trials": 3000,
|
| 260 |
+
"num_unique_utterances": 999,
|
| 261 |
+
"latency_ms_per_utterance": 7.254,
|
| 262 |
+
"eval_time_sec": 7.936,
|
| 263 |
+
"scoring_type": "cosine"
|
| 264 |
+
},
|
| 265 |
+
"in_domain_3utt_full": {
|
| 266 |
+
"eer": 0.04300000000000002,
|
| 267 |
+
"eer_percent": 4.3,
|
| 268 |
+
"eer_ci95_low_percent": 2.8475,
|
| 269 |
+
"eer_ci95_high_percent": 5.5525,
|
| 270 |
+
"eer_threshold": 0.592853307723999,
|
| 271 |
+
"min_dcf_001": 0.484,
|
| 272 |
+
"min_dcf_005": 0.232,
|
| 273 |
+
"min_dcf_01": 0.172,
|
| 274 |
+
"roc_auc": 0.9904,
|
| 275 |
+
"num_trials": 1000
|
| 276 |
+
},
|
| 277 |
+
"universal_macro_avg_1utt": {
|
| 278 |
+
"eer_percent": 21.13,
|
| 279 |
+
"min_dcf_001": 0.83,
|
| 280 |
+
"min_dcf_01": 0.7309,
|
| 281 |
+
"roc_auc": 0.8574
|
| 282 |
+
},
|
| 283 |
+
"universal_macro_avg_3utt": {
|
| 284 |
+
"eer_percent": 17.63,
|
| 285 |
+
"min_dcf_001": 0.7433,
|
| 286 |
+
"min_dcf_01": 0.5833,
|
| 287 |
+
"roc_auc": 0.8967
|
| 288 |
+
}
|
| 289 |
+
},
|
| 290 |
+
"step_S_safe_final": {
|
| 291 |
+
"step": 2400,
|
| 292 |
+
"epochs": 13.27,
|
| 293 |
+
"mean_loss_last_100": 0.2095,
|
| 294 |
+
"in_domain_1utt_eer_percent": 7.8667,
|
| 295 |
+
"in_domain_3utt_eer_percent": 4.6,
|
| 296 |
+
"pooled_1utt_eer_percent": 20.7,
|
| 297 |
+
"pooled_3utt_eer_percent": 18.2,
|
| 298 |
+
"macro_avg_1utt_eer_percent": 21.2,
|
| 299 |
+
"macro_avg_3utt_eer_percent": 17.37,
|
| 300 |
+
"domains_1utt_eer_percent": {
|
| 301 |
+
"librispeech": 7.8667,
|
| 302 |
+
"cnceleb2": 29.4333,
|
| 303 |
+
"voxceleb1": 26.3
|
| 304 |
+
},
|
| 305 |
+
"domains_3utt_eer_percent": {
|
| 306 |
+
"librispeech": 4.6,
|
| 307 |
+
"cnceleb2": 25.2,
|
| 308 |
+
"voxceleb1": 22.3
|
| 309 |
+
},
|
| 310 |
+
"in_domain_1utt_full": {
|
| 311 |
+
"eer": 0.07866666666666666,
|
| 312 |
+
"eer_percent": 7.8667,
|
| 313 |
+
"eer_ci95_low_percent": 6.8825,
|
| 314 |
+
"eer_ci95_high_percent": 8.8508,
|
| 315 |
+
"eer_threshold": 0.5138107538223267,
|
| 316 |
+
"min_dcf_001": 0.6067,
|
| 317 |
+
"min_dcf_005": 0.464,
|
| 318 |
+
"min_dcf_01": 0.3727,
|
| 319 |
+
"roc_auc": 0.9761,
|
| 320 |
+
"num_trials": 3000,
|
| 321 |
+
"num_unique_utterances": 999,
|
| 322 |
+
"latency_ms_per_utterance": 7.903,
|
| 323 |
+
"eval_time_sec": 8.598,
|
| 324 |
+
"scoring_type": "cosine"
|
| 325 |
+
},
|
| 326 |
+
"in_domain_3utt_full": {
|
| 327 |
+
"eer": 0.04600000000000002,
|
| 328 |
+
"eer_percent": 4.6,
|
| 329 |
+
"eer_ci95_low_percent": 3.2475,
|
| 330 |
+
"eer_ci95_high_percent": 6.0,
|
| 331 |
+
"eer_threshold": 0.5838436484336853,
|
| 332 |
+
"min_dcf_001": 0.48,
|
| 333 |
+
"min_dcf_005": 0.248,
|
| 334 |
+
"min_dcf_01": 0.194,
|
| 335 |
+
"roc_auc": 0.9903,
|
| 336 |
+
"num_trials": 1000
|
| 337 |
+
},
|
| 338 |
+
"universal_macro_avg_1utt": {
|
| 339 |
+
"eer_percent": 21.2,
|
| 340 |
+
"min_dcf_001": 0.8339,
|
| 341 |
+
"min_dcf_01": 0.7116,
|
| 342 |
+
"roc_auc": 0.8608
|
| 343 |
+
},
|
| 344 |
+
"universal_macro_avg_3utt": {
|
| 345 |
+
"eer_percent": 17.37,
|
| 346 |
+
"min_dcf_001": 0.7293,
|
| 347 |
+
"min_dcf_01": 0.584,
|
| 348 |
+
"roc_auc": 0.8997
|
| 349 |
+
}
|
| 350 |
+
}
|
| 351 |
+
},
|
| 352 |
"in_domain_eval": {
|
| 353 |
+
"eer": 0.07866666666666666,
|
| 354 |
+
"eer_percent": 7.8667,
|
| 355 |
+
"eer_ci95_low_percent": 6.8825,
|
| 356 |
+
"eer_ci95_high_percent": 8.8508,
|
| 357 |
+
"eer_threshold": 0.5138107538223267,
|
| 358 |
+
"min_dcf_001": 0.6067,
|
| 359 |
+
"min_dcf_005": 0.464,
|
| 360 |
+
"min_dcf_01": 0.3727,
|
| 361 |
+
"roc_auc": 0.9761,
|
| 362 |
"num_trials": 3000,
|
| 363 |
"num_unique_utterances": 999,
|
| 364 |
+
"latency_ms_per_utterance": 7.903,
|
| 365 |
+
"eval_time_sec": 8.598,
|
| 366 |
"scoring_type": "cosine"
|
| 367 |
},
|
| 368 |
"multi_enroll_3utt_eval": {
|
| 369 |
+
"eer": 0.04600000000000002,
|
| 370 |
+
"eer_percent": 4.6,
|
| 371 |
+
"eer_ci95_low_percent": 3.2475,
|
| 372 |
+
"eer_ci95_high_percent": 6.0,
|
| 373 |
+
"eer_threshold": 0.5838436484336853,
|
| 374 |
+
"min_dcf_001": 0.48,
|
| 375 |
+
"min_dcf_005": 0.248,
|
| 376 |
+
"min_dcf_01": 0.194,
|
| 377 |
+
"roc_auc": 0.9903,
|
| 378 |
"num_trials": 1000
|
| 379 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 380 |
"multi_domain_eval": {
|
| 381 |
"domains_1utt": {
|
| 382 |
"librispeech": {
|
| 383 |
+
"eer": 0.07866666666666666,
|
| 384 |
+
"eer_percent": 7.8667,
|
| 385 |
+
"eer_ci95_low_percent": 6.8825,
|
| 386 |
+
"eer_ci95_high_percent": 8.8508,
|
| 387 |
+
"eer_threshold": 0.5138107538223267,
|
| 388 |
+
"min_dcf_001": 0.6067,
|
| 389 |
+
"min_dcf_005": 0.464,
|
| 390 |
+
"min_dcf_01": 0.3727,
|
| 391 |
+
"roc_auc": 0.9761,
|
| 392 |
"num_trials": 3000,
|
| 393 |
"num_unique_utterances": 999,
|
| 394 |
+
"latency_ms_per_utterance": 7.903,
|
| 395 |
+
"eval_time_sec": 8.598,
|
| 396 |
"scoring_type": "cosine"
|
| 397 |
},
|
| 398 |
"cnceleb2": {
|
| 399 |
+
"eer": 0.29433333333333334,
|
| 400 |
+
"eer_percent": 29.4333,
|
| 401 |
+
"eer_ci95_low_percent": 27.6983,
|
| 402 |
+
"eer_ci95_high_percent": 30.9017,
|
| 403 |
+
"eer_threshold": 0.5394164323806763,
|
| 404 |
+
"min_dcf_001": 0.998,
|
| 405 |
+
"min_dcf_005": 0.9933,
|
| 406 |
+
"min_dcf_01": 0.94,
|
| 407 |
+
"roc_auc": 0.7878,
|
| 408 |
"num_trials": 3000,
|
| 409 |
"num_unique_utterances": 739,
|
| 410 |
+
"latency_ms_per_utterance": 7.865,
|
| 411 |
+
"eval_time_sec": 6.479,
|
| 412 |
"scoring_type": "cosine"
|
| 413 |
},
|
| 414 |
"voxceleb1": {
|
| 415 |
+
"eer": 0.263,
|
| 416 |
+
"eer_percent": 26.3,
|
| 417 |
+
"eer_ci95_low_percent": 24.45,
|
| 418 |
+
"eer_ci95_high_percent": 28.5762,
|
| 419 |
+
"eer_threshold": 0.4254768192768097,
|
| 420 |
+
"min_dcf_001": 0.897,
|
| 421 |
+
"min_dcf_005": 0.837,
|
| 422 |
+
"min_dcf_01": 0.822,
|
| 423 |
+
"roc_auc": 0.8184,
|
| 424 |
"num_trials": 2000,
|
| 425 |
"num_unique_utterances": 250,
|
| 426 |
+
"latency_ms_per_utterance": 7.682,
|
| 427 |
+
"eval_time_sec": 2.356,
|
| 428 |
"scoring_type": "cosine"
|
| 429 |
},
|
| 430 |
"universal_pooled": {
|
| 431 |
+
"eer": 0.20699999999999996,
|
| 432 |
+
"eer_percent": 20.7,
|
| 433 |
+
"eer_ci95_low_percent": 19.875,
|
| 434 |
+
"eer_ci95_high_percent": 21.6381,
|
| 435 |
+
"eer_threshold": 0.5001381635665894,
|
| 436 |
+
"min_dcf_001": 0.993,
|
| 437 |
+
"min_dcf_005": 0.8802,
|
| 438 |
+
"min_dcf_01": 0.8,
|
| 439 |
+
"roc_auc": 0.8787,
|
| 440 |
"num_trials": 8000,
|
| 441 |
"num_unique_utterances": 1988,
|
| 442 |
"latency_ms_per_utterance": 0.0,
|
| 443 |
+
"eval_time_sec": 1.5,
|
| 444 |
"scoring_type": "cosine"
|
| 445 |
},
|
| 446 |
"vox1_o_10spk_subset": {
|
| 447 |
+
"eer": 0.2995933895135061,
|
| 448 |
+
"eer_percent": 29.9593,
|
| 449 |
+
"eer_ci95_low_percent": 27.6502,
|
| 450 |
+
"eer_ci95_high_percent": 32.1457,
|
| 451 |
+
"eer_threshold": 0.466065913438797,
|
| 452 |
+
"min_dcf_001": 0.9816,
|
| 453 |
+
"min_dcf_005": 0.9165,
|
| 454 |
+
"min_dcf_01": 0.8884,
|
| 455 |
+
"roc_auc": 0.7831,
|
| 456 |
"num_trials": 2500,
|
| 457 |
"num_unique_utterances": 937,
|
| 458 |
+
"latency_ms_per_utterance": 4.503,
|
| 459 |
+
"eval_time_sec": 4.771,
|
| 460 |
"scoring_type": "cosine",
|
| 461 |
"num_target_trials": 1789,
|
| 462 |
"num_impostor_trials": 711,
|
|
|
|
| 466 |
}
|
| 467 |
},
|
| 468 |
"universal_macro_avg_1utt": {
|
| 469 |
+
"eer_percent": 21.2,
|
| 470 |
+
"min_dcf_001": 0.8339,
|
| 471 |
+
"min_dcf_01": 0.7116,
|
| 472 |
+
"roc_auc": 0.8608
|
| 473 |
},
|
| 474 |
"domains_3utt": {
|
| 475 |
"librispeech": {
|
| 476 |
+
"eer": 0.04600000000000002,
|
| 477 |
+
"eer_percent": 4.6,
|
| 478 |
+
"eer_ci95_low_percent": 3.2475,
|
| 479 |
+
"eer_ci95_high_percent": 6.0,
|
| 480 |
+
"eer_threshold": 0.5838436484336853,
|
| 481 |
+
"min_dcf_001": 0.48,
|
| 482 |
+
"min_dcf_005": 0.248,
|
| 483 |
+
"min_dcf_01": 0.194,
|
| 484 |
+
"roc_auc": 0.9903,
|
| 485 |
"num_trials": 1000
|
| 486 |
},
|
| 487 |
"cnceleb2": {
|
| 488 |
+
"eer": 0.252,
|
| 489 |
+
"eer_percent": 25.2,
|
| 490 |
+
"eer_ci95_low_percent": 22.6,
|
| 491 |
+
"eer_ci95_high_percent": 27.9525,
|
| 492 |
+
"eer_threshold": 0.6346871256828308,
|
| 493 |
+
"min_dcf_001": 0.936,
|
| 494 |
+
"min_dcf_005": 0.918,
|
| 495 |
+
"min_dcf_01": 0.81,
|
| 496 |
+
"roc_auc": 0.8397,
|
| 497 |
"num_trials": 1000
|
| 498 |
},
|
| 499 |
"voxceleb1": {
|
| 500 |
+
"eer": 0.22299999999999998,
|
| 501 |
+
"eer_percent": 22.3,
|
| 502 |
+
"eer_ci95_low_percent": 19.8475,
|
| 503 |
+
"eer_ci95_high_percent": 24.9,
|
| 504 |
+
"eer_threshold": 0.5039066076278687,
|
| 505 |
+
"min_dcf_001": 0.772,
|
| 506 |
+
"min_dcf_005": 0.768,
|
| 507 |
+
"min_dcf_01": 0.748,
|
| 508 |
+
"roc_auc": 0.8691,
|
| 509 |
"num_trials": 1000
|
| 510 |
},
|
| 511 |
"universal_pooled": {
|
| 512 |
+
"eer": 0.18200000000000002,
|
| 513 |
+
"eer_percent": 18.2,
|
| 514 |
+
"eer_ci95_low_percent": 16.6983,
|
| 515 |
+
"eer_ci95_high_percent": 19.4842,
|
| 516 |
+
"eer_threshold": 0.5760137438774109,
|
| 517 |
+
"min_dcf_001": 0.9127,
|
| 518 |
+
"min_dcf_005": 0.7153,
|
| 519 |
+
"min_dcf_01": 0.644,
|
| 520 |
+
"roc_auc": 0.9127,
|
| 521 |
"num_trials": 3000
|
| 522 |
}
|
| 523 |
},
|
| 524 |
"universal_macro_avg_3utt": {
|
| 525 |
+
"eer_percent": 17.37,
|
| 526 |
+
"min_dcf_001": 0.7293,
|
| 527 |
+
"min_dcf_01": 0.584,
|
| 528 |
+
"roc_auc": 0.8997
|
| 529 |
+
}
|
| 530 |
+
},
|
| 531 |
+
"cross_dataset_eval": {
|
| 532 |
+
"vox1_o_10spk_subset": {
|
| 533 |
+
"eer": 0.2995933895135061,
|
| 534 |
+
"eer_percent": 29.9593,
|
| 535 |
+
"eer_ci95_low_percent": 27.6502,
|
| 536 |
+
"eer_ci95_high_percent": 32.1457,
|
| 537 |
+
"eer_threshold": 0.466065913438797,
|
| 538 |
+
"min_dcf_001": 0.9816,
|
| 539 |
+
"min_dcf_005": 0.9165,
|
| 540 |
+
"min_dcf_01": 0.8884,
|
| 541 |
+
"roc_auc": 0.7831,
|
| 542 |
+
"num_trials": 2500,
|
| 543 |
+
"num_unique_utterances": 937,
|
| 544 |
+
"latency_ms_per_utterance": 4.503,
|
| 545 |
+
"eval_time_sec": 4.771,
|
| 546 |
+
"scoring_type": "cosine",
|
| 547 |
+
"num_target_trials": 1789,
|
| 548 |
+
"num_impostor_trials": 711,
|
| 549 |
+
"num_eval_speakers": 10,
|
| 550 |
+
"protocol": "veri_test2_10spk_subset_2500trials",
|
| 551 |
+
"vad_energy_db_threshold": 26.0
|
| 552 |
+
},
|
| 553 |
+
"cnceleb2_zero_shot": {
|
| 554 |
+
"eer": 0.29433333333333334,
|
| 555 |
+
"eer_percent": 29.4333,
|
| 556 |
+
"eer_ci95_low_percent": 27.6983,
|
| 557 |
+
"eer_ci95_high_percent": 30.9017,
|
| 558 |
+
"eer_threshold": 0.5394164323806763,
|
| 559 |
+
"min_dcf_001": 0.998,
|
| 560 |
+
"min_dcf_005": 0.9933,
|
| 561 |
+
"min_dcf_01": 0.94,
|
| 562 |
+
"roc_auc": 0.7878,
|
| 563 |
+
"num_trials": 3000,
|
| 564 |
+
"num_unique_utterances": 739,
|
| 565 |
+
"latency_ms_per_utterance": 7.865,
|
| 566 |
+
"eval_time_sec": 6.479,
|
| 567 |
+
"scoring_type": "cosine"
|
| 568 |
}
|
| 569 |
},
|
| 570 |
+
"config_yaml": "configs/ls_conformer_tiny_ge2e.yml",
|
| 571 |
"hf_pretrained_dir": "pretrained_models/ls_conformer_tiny_ge2e",
|
| 572 |
"hf_repo_id": "wq2012/ls_conformer_tiny_ge2e",
|
| 573 |
"hf_url": "https://huggingface.co/wq2012/ls_conformer_tiny_ge2e",
|
| 574 |
"hf_collection_url": "https://huggingface.co/collections/wq2012/flaxspeaker",
|
| 575 |
+
"vox1_o_10spk_subset_eer_percent": 29.9593,
|
| 576 |
+
"vox1_o_10spk_subset_min_dcf_001": 0.9816,
|
| 577 |
+
"vox1_o_10spk_subset_roc_auc": 0.7831
|
| 578 |
}
|
flax_model.msgpack
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 2775358
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:afe65a4da6b04b5941e4a9e15112df0c9583567ddeb894ade1aa898e30b1431b
|
| 3 |
size 2775358
|
model.safetensors
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 2781184
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:33a5749411fbd920ad0e17ee7eeeb8d5ff3715bc755db821d8da9127e4e0c39d
|
| 3 |
size 2781184
|