英伟达发布了一款叫 Nemotron 3 Diarization 的模型,专门解决一个问题:一段对话里,到底是谁在说话。模型参数量约1亿,权重免费开放,最多能区分八位说话人,还能识别出多人同时开口的情况。
它同时支持录音文件和实时音频。说话人越多、背景噪声越重、混响越明显,错误率就会往上走。搭配 Parakeet 这类语音识别系统使用时,它可以输出带说话人标签的转写文本,但标签是匿名的,比如 "speaker_2" 这种形式。
打开网易新闻 查看精彩图片
缓冲区的取舍
实时处理时,音频缓冲区可以设成四个档位,从 30.4 秒一路缩到 0.32 秒。缓冲区越短,延迟越低,但准确率通常会跟着下降。这是一道摆在开发者面前的取舍题:要更快的响应,还是要更稳的识别。
在 VoiceArena 的 Diarization-Bench 测试集上,这个模型目前排在第一位,错误率 14.72%,排在第二的系统是 19.3%。这个测试集的标准相当严格——重叠语音会被计入评分,说话人切换时哪怕只有极小的错位,也会被算作错误。
和前代比,误差降了四成
和它的前代模型 Streaming Sortformer 相比,在 1.04 秒缓冲区的设置下,新模型在八个测试场景里的错误率平均下降了 41%。
把这几组数字放在一起看,能看出英伟达这次的动作指向哪里。1亿参数不算大,权重免费开放,意味着它可以被塞进对算力敏感的场景里;八人区分和重叠语音检测,对应的是会议、访谈、客服录音这类真实音频环境;而 0.32 秒的短缓冲区选项,则是在往实时交互的方向靠。
语音分离本身不是新问题,难的是在多人、有噪声、有混响的条件下保持稳定,同时还要跑得够快。这次公布的错误率数据和缓冲区档位,基本就是围绕这两个约束在做平衡。
热门跟贴