Frame-VAD Multilingual MarbleNet v2.0 is a convolutional neural network for voice activity detection (VAD) that serves as the first step for Speech Recognition and Speaker Diarization. It is a frame-based model that outputs a speech probability for each 20 millisecond frame of the input audio. The model has 91.5K parameters, making it lightweight and efficient for real-time applications.
To reduce false positive errors — cases where the model incorrectly detects speech when none is present — the model was trained with white noise and real-word noise perturbations. During training, the volume of audios was also varied. Additionally, the training data includes non-speech audio samples to help the model distinguish between speech and non-speech sounds (such as coughing, laughter, and breathing, etc.)
Key Features
Lightweight model with only 91.5K parameters
Robust against false positive errors
Outputs speech probability for each 20 ms audio frame
Multilingual support: Chinese, English, French, German, Russian, and Spanish
Input Type(s): Audio Input Format: .wav files Input Parameters: 1D Other Properties Related to Input: 16000 Hz Mono-channel Audio, Pre-Processing Not Needed
Output:
Output Type(s): Sequence of speech probabilities for each 20 millisecond frame Output Format: Float Array Output Parameters: 1D Other Properties Related to Output: May need post-processing, such as smoothing, which reduces sudden fluctuations in detected speech probability for more natural transitions, and thresholding, which sets a cutoff value to determine whether a frame contains speech based on probability (e.g., classifying frames above 0.5 as speech and others as silence or noise).
Our AI models are designed and/or optimized to run on NVIDIA GPU-accelerated systems. By leveraging NVIDIA’s hardware (e.g. GPU cores) and software frameworks (e.g., CUDA libraries), the model achieves faster training and inference times compared to CPU-only solutions.
How to Use the Model:
To train, fine-tune or play with the model you will need to install NVIDIA NeMo.
pip install -U nemo_toolkit['asr']
The model is available for use in the NeMo toolkit [2], and can be used as a pre-trained checkpoint for inference.
Automatically load the model
python
1import torch
2import nemo.collections.asr as nemo_asr
3vad_model = nemo_asr.models.EncDecFrameClassificationModel.from_pretrained(model_name="nvidia/frame_vad_multilingual_marblenet_v2.0")45# Move the model to GPU if available6device = torch.device("cuda"if torch.cuda.is_available()else"cpu")7vad_model = vad_model.to(device)8vad_model.eval()
1import onnxruntime
23# Load the ONNX model4session = onnxruntime.InferenceSession(5 ONNX_EXPORT_PATH,6 providers=["CPUExecutionProvider"]7)89# Prepare input for ONNX Runtime10ort_inputs ={11input.name: inputs[input.name].numpy()12forinputin session.get_inputs()13}1415# Run inference16onnx_outputs = session.run(None, ort_inputs)[0]
RTTM Output from Frame-Level Speech Predictions
To generate RTTM (Rich Transcription Time Marked) files from audio using the pretrained model:
bash
1python <NEMO_ROOT>/examples/asr/speech_classification/frame_vad_infer.py \2 --config-path="../conf/vad"\3 --config-name="frame_vad_infer_postprocess.yaml"\4 vad.model_path="nvidia/frame_vad_multilingual_marblenet_v2.0"\5 vad.parameters.shift_length_in_sec=0.02\6 prepare_manifest.auto_split=True \7 prepare_manifest.split_duration=7200\8input_manifest=<Path of manifest file of evaluation data, where audio files should have unique names>\9out_manifest_filepath=<Path of output manifest file>
Properties:
Around 182 hours of multilingual (Chinese, English) audio data
Inference:
Engine: NVIDIA NeMo Test Hardware:
RTX 5000
A100
V100
Performance:
The ROC-AUC performance is listed in the following table. A higher ROC-AUC indicates better performance.
Eval Dataset
ROC-AUC
VoxConverse-test
96.65
VoxConverse-dev
97.59
AMI-test
96.25
Earnings21
97.11
AISHELL4-test
92.27
CH109
94.44
AVA-SPEECH
95.26
Ethical Considerations
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal model team to ensure this model meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
For more detailed information on ethical considerations for this model, please see the Model Card++ Explainability, Bias, Safety & Security, and Privacy Subcards here.
Please report security vulnerabilities or NVIDIA AI Concerns here.
Bias
Field
Response
Participation considerations from adversely impacted groups protected classes in model design and testing:
None
Measures taken to mitigate against unwanted bias:
To reduce false positive errors — cases where the model incorrectly detects speech when none is present — the model was trained with white noise and real-word noise perturbations. During training, the volume of audios was also varied. Additionally, the training data includes non-speech audio samples to help the model distinguish between speech and non-speech sounds (such as coughing, laughter, and breathing, etc.)
Bias Metric (If Measured):
False Positive Rate
Explainability
Field
Response
Intended Domain:
Voice Activity Detection (VAD)
Model Type:
Convolutional Neural Network (CNN)
Intended Users:
Developers, Speech Processing Engineers, AI Researchers
Output:
Sequence of speech probabilities for each 20 millisecond audio frame
Describe how the model works:
The model processes input audio by extracting spectrogram features, which are then passed through MarbleNet—a lightweight CNN-based model designed for VAD. The CNN learns to detect patterns associated with speech activity and outputs a probability score indicating the presence of speech in each 20 millisecond frame
Name the adversely impacted groups this has been tested to deliver comparable outcomes regardless of:
Not Applicable
Technical Limitations:
The model operates on 20 millisecond frames. While it supports longer frames by breaking them into smaller segments, it does not support outputs with a finer granularity than 20 milliseconds.
Verified to have met prescribed NVIDIA quality standards:
While the model was trained on a limited number of languages, including Chinese, English, French, Spanish, German, and Russian, the model may experience a degradation in quality for languages and accents that are not included in the training dataset
List types of specific high-risk AI systems, if any, in which the model can be integrated: Select from the following: [Biometrics] OR [Critical infrastructure] OR [Machinery and Robotics] OR [Medical Devices] OR [Vehicles] OR [Aviation] OR [Education and vocational training] OR [Employment and Workers Management]
The Principle of least privilege (PoLP) is applied limiting access for dataset generation and model development. Restrictions enforce dataset access during training, and dataset license constraints adhered to.