两天star量破千:OpenAI的Whisper被蒸馏后,语音识别数倍加速

模型小了,幻觉还减轻了。

前段时间,「霉霉大秀中文」的视频在各个社交媒体走红,随后又出现了「郭德纲大秀英语」等类似视频。这些视频很多都出自一个名叫「HeyGen」的 AI 应用之手。不过,从 HeyGen 现在的火爆程度来看,想用它制作类似视频可能要排很久。好在,这并不是唯一的制作方法。懂技术的小伙伴也可以寻找其他替代方案,比如语音转文字模型 Whisper、文字翻译 GPT、声音克隆 + 生成音频 so-vits-svc、生成符合音频的嘴型视频 GeneFace++dengdeng。

其中,这个语音转文字的 Whisper 模型非常好用。Whisper 是 OpenAI 研发并开源的一个自动语音识别 (ASR,Automatic Speech Recognition)模型,他们通过从网络上收集了 68 万小时的多语言(98 种语言)和多任务(multitask)监督数据对 Whisper 进行了训练。OpenAI 认为使用这样一个庞大而多样的数据集,可以提高模型对口音、背景噪音 和技术术语的识别能力。除了可以用于语音识别 ,Whisper 还能实现多种语言的转录,以及将这些语言翻译成英语。目前,Whisper 已经有了很多变体,也成为很多 AI 应用构建时的必要组件。

最近,来自 HuggingFace 的团队提出了一种新变体 ------ Distil-Whisper。这个变体是 Whisper 模型的蒸馏版,特点是模型小、速度快,而且准确度还很高,非常适合在要求低延迟或资源有限的环境中运行。不过,与能够处理多种语言的原始 Whisper 模型不同,Distil-Whisper 只能处理英文。

论文地址:arxiv.org/pdf/2311.00...

具体来说,Distil-Whisper 有两个版本,参数 量分别为 756M(distil-large-v2)和 394M(distil-medium.en)。

与 OpenAI 的 Whisper-large-v2 相比,756M 版本的 distil-large-v2 参数量减少了一半还多,但实现了 6 倍的加速,而且在准确程度上非常接近 Whisper-large-v2,在短音频的 Word Error Rate(WER)这个指标上相差在 1% 以内,甚至在长音频上优于 Whisper-large-v2。这是因为通过仔细的数据选择和过滤,Whisper 的稳健性得以保持,幻觉得以减少。

网页版Whisper与Distil-Whisper速度的直观对比。图源:twitter.com/xenovacom/s...

所以,虽然刚刚发布两三天,Distil-Whisper 的 star 量已经破千。

此外,有项测试结果表明,在处理 150 分钟的音频时,Distil-Whisper 的速度可以达到 Faster-Whisper 的 2.5 倍。

测试链接:github.com/Vaibhavs10/...

那么,这么好的结果是怎么实现的呢?作者在论文中表示,他们利用伪标签技术构建了一个大规模开源数据集,然后利用这个数据集将 Whisper 模型蒸馏成了 Distil-Whisper。利用简单的 WER 启发式,他们只选择质量最高的伪标签进行训练。

下图 1 展示了 Distil-Whisper 的架构。研究者通过从教师模型中复制整个编码器来初始化学生模型,并在训练过程中冻结它。他们通过复制第一个和最后一个解码器层,从 OpenAI 的 Whisper-medium.en 和 Whisper-large-v2 模型中蒸馏出 2 层解码器检查点,分别取名为 distil-medium.en 和 distil-large-v2。

蒸馏得到的模型的维度细节如表 3 所示。

在数据方面,模型在 9 个不同的开源数据集(见表 2)上训练了 22,000 小时。伪标签由 Whisper 生成。重要的是,他们使用了 WER 过滤器,只有 WER 得分超过 10% 的标签才会被保留。作者表示,这是保持性能的关键!

下表 5 展示了 Distil-Whisper 的主要性能结果。

作者表示,冻结编码器的操作使得 Distil-Whisper 在对抗噪声时非常稳健。如下图所示,Distil-Whisper 遵循与 Whisper 相似的鲁棒性曲线,在噪声条件下优于 Wav2vec2 等其他模型。

此外,在处理比较长的音频文件时,与 Whisper 相比,Distil-Whisper 还有效减少了幻觉,作者认为这主要归功于 WER 过滤。

通过共享相同的编码器,Distil-Whisper 可以与 Whisper 配对进行推测解码(Speculative Decoding)。这样,在参数 仅增加 8% 的情况下,速度提高了 2 倍,同时输出结果与 Whisper 完全相同。

更多细节请参见原文。

相关推荐
冬奇Lab2 天前
一天一个开源项目(第37篇):awesome-selfhosted - 自托管软件资源集合
开源·自动化运维·资讯
冬奇Lab3 天前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab4 天前
一天一个开源项目(第35篇):GitHub Store - 跨平台的 GitHub Releases 应用商店
开源·github·资讯
冬奇Lab6 天前
一天一个开源项目(第33篇):MyCodeAgent - 面向学习的 Claude Code 风格代码代理框架
人工智能·开源·资讯
冬奇Lab7 天前
一天一个开源项目(第32篇):Edit-Banana - 让不可编辑的图表变成可编辑,SAM3+多模态大模型驱动
人工智能·开源·资讯
冬奇Lab10 天前
一天一个开源项目(第29篇):Open-AutoGLM - 用自然语言操控手机的 Phone Agent 框架
人工智能·开源·资讯
冬奇Lab12 天前
一天一个开源项目(第27篇):Awesome AI Coding - 一站式 AI 编程资源导航
人工智能·开源·资讯
冬奇Lab13 天前
一天一个开源项目(第26篇):ZeroClaw - 零开销、全 Rust 的自主 AI 助手基础设施,与 OpenClaw 的关系与对比
人工智能·开源·资讯
冬奇Lab14 天前
一天一个开源项目(第25篇):Clawra - 为 OpenClaw 赋予「自拍」能力的 Skill
人工智能·开源·资讯
冬奇Lab15 天前
一天一个开源项目(第24篇):OpenClawInstaller - 一键部署私人 AI 助手 OpenClaw
人工智能·开源·资讯