MarbleNet-3x2x64 Tajik VAD (Saidzoda Lab)
A NeMo MarbleNet (segment-level speech/non-speech classifier) trained from scratch on Tajik speech + MUSAN noise/music, for use as the VAD front-end in the Tajik voice-agent pipeline.
Result
Head-to-head vs. Silero-VAD on the same 3498 held-out-narrator segments:
| model | accuracy | precision | recall | F1 | miss rate | false-alarm rate |
|---|---|---|---|---|---|---|
| MarbleNet (this model) | 0.998 | 0.9989 | 0.9971 | 0.998 | 0.0029 | 0.0011 |
| Silero-VAD | 0.972 | 0.972 | 0.972 | 0.972 | 0.028 | 0.028 |
See marblenet_vs_silero.json in this repo for the full confusion-matrix breakdown.
Caveat (documented at eval time): the reference label ultimately traces to a Silero-VAD + SNR diarization pipeline for the speech class, not independent human annotation — MUSAN background segments are unambiguous negatives. Both systems are scored against the identical reference on the identical segments, so the head-to-head comparison is fair even though the reference itself has this provenance.
Training
- Architecture: MarbleNet 3x2x64 (NeMo
EncDecClassificationModel), 16kHz, MFCC front-end (64 mels/mfcc), trained from scratch (no pretrained init). - 100 epochs, batch_size=128, SGD, lr=0.01.
- Labels:
background,speech. - Hardware: 1x H100 (Nvidia Brev).
Files
marblenet_tajik_vad.nemo— self-contained NeMo archive (config + weights, best/last checkpoint: val_loss=0.0056 @ epoch 99/100). Load directly with:
import nemo.collections.asr as nemo_asr
model = nemo_asr.models.EncDecClassificationModel.restore_from("marblenet_tajik_vad.nemo")
marblenet_vs_silero.json— the full eval comparison above.
License
Apache-2.0.
This repo is public but gated (manual approval), per Saidzoda Lab policy.