Update README.md
Browse files
README.md
CHANGED
|
@@ -78,14 +78,17 @@ On first run, the model will automatically download the SSL encoder `facebook/wa
|
|
| 78 |
|
| 79 |
## Evaluation Results
|
| 80 |
|
| 81 |
-
| Model | ASVspoof19 LA | ASVspoof21 LA | ASVspoof21 DF | ASVspoof5 | ADD2022 | In-the-Wild |
|
| 82 |
|-----------|--------|--------|--------|--------|--------|--------|
|
| 83 |
| [Res2TCNGuard](https://github.com/mtuciru/Res2TCNGuard) | 7.487 | 19.130 | 19.883 | 37.620 | 49.538 | 49.246 |
|
| 84 |
| [AASIST3](https://huggingface.co/lab260/AASIST3) | 27.585 | 37.407 | 33.099 | 41.001 | 47.192 | 39.626 |
|
| 85 |
| [XSLS](https://github.com/QiShanZhang/SLSforASVspoof-2021-DF) | 0.231 | 7.714 | 4.220 | 17.688 | 33.951 | 7.453 |
|
| 86 |
| [TCM-ADD](https://github.com/ductuantruong/tcm_add) | **0.152** | 6.655 | 3.444 | 19.505 | 35.252 | 7.767 |
|
| 87 |
| [DF Arena 1B](https://huggingface.co/Speech-Arena-2025/DF_Arena_1B_V_1) | 43.793 | 40.137 | 42.994 | 35.333 | 42.139 | 17.598 |
|
| 88 |
-
|
|
|
|
|
|
|
|
|
|
|
| 89 |
|
| 90 |
## Quickstart
|
| 91 |
|
|
@@ -158,14 +161,14 @@ print({"score_bonafide": score_bonafide, "score_spoof": score_spoof})
|
|
| 158 |
|
| 159 |
In `model.py`, the `SpectraAASIST` class provides `classify()` with a **default threshold** chosen as an “optimal” value for the original setting:
|
| 160 |
|
| 161 |
-
- **Default threshold**: `-1.
|
| 162 |
- **Note**: this threshold **may not be optimal** on a different dataset/domain. It’s recommended to tune the threshold on your dataset using **EER** (Equal Error Rate) or a target FAR/FRR.
|
| 163 |
|
| 164 |
Example:
|
| 165 |
|
| 166 |
```python
|
| 167 |
with torch.inference_mode():
|
| 168 |
-
pred = model.classify(audio.to(device), threshold=-1.
|
| 169 |
```
|
| 170 |
|
| 171 |
### Tuning the threshold via EER (typical workflow)
|
|
|
|
| 78 |
|
| 79 |
## Evaluation Results
|
| 80 |
|
| 81 |
+
| Model | ASVspoof19 LA | ASVspoof21 LA | ASVspoof21 DF | ASVspoof5 | ADD2022 | In-the-Wild |
|
| 82 |
|-----------|--------|--------|--------|--------|--------|--------|
|
| 83 |
| [Res2TCNGuard](https://github.com/mtuciru/Res2TCNGuard) | 7.487 | 19.130 | 19.883 | 37.620 | 49.538 | 49.246 |
|
| 84 |
| [AASIST3](https://huggingface.co/lab260/AASIST3) | 27.585 | 37.407 | 33.099 | 41.001 | 47.192 | 39.626 |
|
| 85 |
| [XSLS](https://github.com/QiShanZhang/SLSforASVspoof-2021-DF) | 0.231 | 7.714 | 4.220 | 17.688 | 33.951 | 7.453 |
|
| 86 |
| [TCM-ADD](https://github.com/ductuantruong/tcm_add) | **0.152** | 6.655 | 3.444 | 19.505 | 35.252 | 7.767 |
|
| 87 |
| [DF Arena 1B](https://huggingface.co/Speech-Arena-2025/DF_Arena_1B_V_1) | 43.793 | 40.137 | 42.994 | 35.333 | 42.139 | 17.598 |
|
| 88 |
+
| [Spectra-0](https://huggingface.co/lab260/spectra_0) | 0.181 | 6.475 | 5.410 | 14.426 | **14.716** | 1.026 |
|
| 89 |
+
| **[Spectra-AASIST3](https://huggingface.co/lab260/Spectra-AASIST3)** | 0.723 | **4.506** | **1.998** | **13.82** | 15.187 | **0.961** |
|
| 90 |
+
| **Spectra-AASIST** | 0.159 | 5.164 | 2.568 | 14.056 | 15.205 | 1.461 |
|
| 91 |
+
|
| 92 |
|
| 93 |
## Quickstart
|
| 94 |
|
|
|
|
| 161 |
|
| 162 |
In `model.py`, the `SpectraAASIST` class provides `classify()` with a **default threshold** chosen as an “optimal” value for the original setting:
|
| 163 |
|
| 164 |
+
- **Default threshold**: `-1.140625` (it thresholds `logit_bonafide = logits[:, 1]`)
|
| 165 |
- **Note**: this threshold **may not be optimal** on a different dataset/domain. It’s recommended to tune the threshold on your dataset using **EER** (Equal Error Rate) or a target FAR/FRR.
|
| 166 |
|
| 167 |
Example:
|
| 168 |
|
| 169 |
```python
|
| 170 |
with torch.inference_mode():
|
| 171 |
+
pred = model.classify(audio.to(device), threshold=-1.140625) # 1=bonafide, 0=spoof
|
| 172 |
```
|
| 173 |
|
| 174 |
### Tuning the threshold via EER (typical workflow)
|