Update README.md
Browse files
README.md
CHANGED
|
@@ -86,7 +86,9 @@ On first run, the model will automatically download the SSL encoder `facebook/wa
|
|
| 86 |
| [XSLS](https://github.com/QiShanZhang/SLSforASVspoof-2021-DF) | 0.231 | 7.714 | 4.220 | 17.688 | 33.951 | 7.453 |
|
| 87 |
| [TCM-ADD](https://github.com/ductuantruong/tcm_add) | **0.152** | 6.655 | 3.444 | 19.505 | 35.252 | 7.767 |
|
| 88 |
| [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 |
|
| 89 |
-
|
|
|
|
|
|
|
|
| 90 |
|
| 91 |
## Quickstart
|
| 92 |
|
|
@@ -159,14 +161,14 @@ print({"score_bonafide": score_bonafide, "score_spoof": score_spoof})
|
|
| 159 |
|
| 160 |
In `model.py`, the `SpectraAASIST3` class provides `classify()` with a **default threshold** chosen as an “optimal” value for the original setting:
|
| 161 |
|
| 162 |
-
- **Default threshold**: `-1.
|
| 163 |
- **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.
|
| 164 |
|
| 165 |
Example:
|
| 166 |
|
| 167 |
```python
|
| 168 |
with torch.inference_mode():
|
| 169 |
-
pred = model.classify(audio.to(device), threshold=-1.
|
| 170 |
```
|
| 171 |
|
| 172 |
### Tuning the threshold via EER (typical workflow)
|
|
|
|
| 86 |
| [XSLS](https://github.com/QiShanZhang/SLSforASVspoof-2021-DF) | 0.231 | 7.714 | 4.220 | 17.688 | 33.951 | 7.453 |
|
| 87 |
| [TCM-ADD](https://github.com/ductuantruong/tcm_add) | **0.152** | 6.655 | 3.444 | 19.505 | 35.252 | 7.767 |
|
| 88 |
| [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 |
|
| 89 |
+
| [Spectra-0](https://huggingface.co/lab260/spectra_0) | 0.181 | 6.475 | 5.410 | 14.426 | **14.716** | 1.026 |
|
| 90 |
+
| **[Spectra-AASIST](https://huggingface.co/lab260/Spectra-AASIST)** | 0.159 | 5.164 | 2.568 | 14.056 | 15.205 | 1.461 |
|
| 91 |
+
| **Spectra-AASIST3** | 0.723 | **4.506** | **1.998** | **13.82** | 15.187 | **0.961** |
|
| 92 |
|
| 93 |
## Quickstart
|
| 94 |
|
|
|
|
| 161 |
|
| 162 |
In `model.py`, the `SpectraAASIST3` class provides `classify()` with a **default threshold** chosen as an “optimal” value for the original setting:
|
| 163 |
|
| 164 |
+
- **Default threshold**: `-1.460938` (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.460938) # 1=bonafide, 0=spoof
|
| 172 |
```
|
| 173 |
|
| 174 |
### Tuning the threshold via EER (typical workflow)
|