许可证: 其他
语言:
- 英语
- 西班牙语
- 法语
- 德语
- 俄语
- 中文
评估指标:
- ROC曲线下面积
任务标签: 语音活动检测
库名称: nemo
标签:
- 多语言
- MarbleNet
- PyTorch
- 语音
- 音频
- VAD
- ONNX
- ONNX运行时
帧级VAD多语言MarbleNet v2.0
描述:
帧级VAD多语言MarbleNet v2.0是一个用于语音活动检测(VAD)的卷积神经网络,作为语音识别和说话人日志系统的前置模块。该帧级模型可为每20毫秒音频帧输出语音概率。模型参数量仅91.5K,具有轻量高效的特点,适合实时应用场景。
为降低误报率(模型在无语音时错误检测到语音的情况),训练过程中引入了白噪声和真实环境噪声扰动,并对音频音量进行了动态调整。训练数据还包含咳嗽、笑声、呼吸等非语音样本,以增强模型对语音/非语音的区分能力。
核心特性
- 轻量化设计,仅91.5K参数
- 强抗误报能力
- 每20毫秒帧级语音概率输出
- 支持中文、英语、法语、德语、俄语、西班牙语
本模型已开放商用授权。
许可条款:
使用本模型需遵守NVIDIA开放模型许可协议。
部署范围:
全球可用
适用场景:
开发者、语音处理工程师和AI研究人员可将其作为语音处理流程的初始模块。
参考文献:
[1] Jia, Fei等."MarbleNet:用于语音活动检测的深度一维时域-通道可分离卷积神经网络"ICASSP 2021 IEEE声学、语音与信号处理国际会议论文集
[2] NVIDIA NeMo工具包
模型架构:
架构类型: 卷积神经网络(CNN)
网络架构: MarbleNet
参数量: 91.5K
输入:
输入类型: 音频
输入格式: .wav文件
输入维度: 一维
其他特性: 16kHz单声道音频,无需预处理
输出:
输出类型: 每20毫秒帧的语音概率序列
输出格式: 浮点数组
输出维度: 一维
后处理建议: 可进行平滑处理(减少概率突变)和阈值判定(如概率>0.5判为语音帧)
本AI模型专为NVIDIA GPU加速系统优化设计。通过利用CUDA核心和软件框架,相比纯CPU方案可获得显著的训练/推理加速。
使用方法:
需安装NVIDIA NeMo工具包:
pip install -U nemo_toolkit['asr']
自动加载模型
import torch
import nemo.collections.asr as nemo_asr
vad_model = nemo_asr.models.EncDecFrameClassificationModel.from_pretrained("nvidia/frame_vad_multilingual_marblenet_v2.0")
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
vad_model = vad_model.to(device).eval()
PyTorch推理示例
import librosa
audio, _ = librosa.load("sample.wav", sr=16000, mono=True)
inputs = torch.tensor(audio).unsqueeze(0).float()
with torch.no_grad():
outputs = vad_model(input_signal=inputs.to(device)).cpu()
ONNX导出与推理
torch.onnx.export(vad_model.cpu(), inputs, "model.onnx")
ort_session = onnxruntime.InferenceSession("model.onnx")
ort_outputs = ort_session.run(None, {"input": inputs.numpy()})
生成RTTM文件
python nemo/examples/asr/speech_classification/frame_vad_infer.py \
--config-path="../conf/vad" \
--config-name="frame_vad_infer_postprocess.yaml" \
vad.model_path="nvidia/frame_vad_multilingual_marblenet_v2.0"
软件集成:
运行时引擎: NeMo-2.3.0
支持硬件架构:
- NVIDIA安培/布莱克威尔/ Jetson/霍珀/拉芙莱斯/帕斯卡/图灵/伏特架构
操作系统支持:
模型版本:
帧级VAD多语言MarbleNet v2.0
训练数据:
数据集:
- ICSI/AMI(英)
- MLS(法/西)
- MCV7(德/俄)
- Aishell2(中)等
数据量: 2600小时真实数据+1000小时合成数据+330小时噪声数据
测试数据:
约100小时多语言(中/英/法/德/俄/西)音频
评估数据:
约182小时多语言(中/英)音频,含VoxConverse/AMI/AISHELL4等数据集
性能指标(ROC-AUC):
评估集 |
得分 |
VoxConverse-test |
96.65 |
AMI-test |
96.25 |
AISHELL4-test |
92.27 |
伦理考量:
NVIDIA遵循可信AI开发准则,建议开发者根据具体应用场景进行伦理审查。模型可能存在未覆盖语言/口音的性能下降风险。完整伦理评估参见模型卡片++。
偏差控制:
通过添加噪声扰动和音量变化降低误报率,训练数据包含丰富非语音样本。评估指标包含误报率监测。
隐私安全:
训练数据已脱敏处理,符合隐私法规要求。数据集定期审查并保留完整溯源记录。
安全限制:
禁止用于生物识别/关键基础设施等高风险场景,使用需遵守[NVIDIA开放模型许可协议]。