模型简述
FunAudioLLM 是阿里巴巴通义实验室推出并开源的一个语音技术框架,旨在增强人类与大型语言模型(LLMs)之间的自然语音交互体验。该框架的核心在于两大创新模型:SenseVoice和CosyVoice,它们分别负责语音理解和语音生成,为语音处理领域带来了革命性的变革。
SenseVoice
SenseVoice是一个功能强大的语音理解模型,支持多种语音处理任务,包括:
- 自动语音识别(ASR):将语音转换为文本,支持超过50种语言,特别是在中文和粤语识别上提升显著。
- 语言识别(LID):识别语音所属的语言。
- 语音情绪识别(SER):识别说话人的情绪,能够在多项测试中达到和超过目前最佳情感识别模型的效果。
- 音频事件检测(AED):识别语音中的特定事件,如音乐、掌声、笑声、哭声、咳嗽、喷嚏等。
SenseVoice模型分为两个版本:
- SenseVoice-Small:非自回归编码器模型,采用内存增强的自注意力网络(SAN-M)架构,具有快速推理的能力,推理延迟极低,适用于实时语音交互应用。
- SenseVoice-Large:自回归编码器-解码器模型,采用Transformer架构,具有高精度识别的能力,支持超过50种语言的语音识别。
CosyVoice
CosyVoice是一个功能强大的语音生成模型,可以生成自然流畅的语音,并支持多种语言、音色、说话风格和说话人身份的控制。其主要特点包括:
- 多语言语音生成:支持中英日粤韩等多种语言的语音生成,合成效果显著优于传统语音合成模型。
- 高效模拟:仅需3至10秒的原始音频,即可生成高度逼真的模拟音色,包括韵律、情感等细节。
- 跨语言生成:在跨语种的语音合成中表现出色。
- 细粒度控制:支持以富文本或自然语言的形式,对生成语音的情感、韵律进行细粒度的控制。
CosyVoice模型还具备零样本学习和跨语言语音克隆的能力,可以通过少量参考语音进行语音克隆,甚至将语音克隆到不同的语言中。
数据集
- SenseVoice 训练数据
SenseVoice-Small 模型使用了大约 30 万小时的语音数据,涵盖了中文、粤语、英文、日语和韩语 5 种语言。SenseVoice-Large 模型在 SenseVoice-Small 的基础上,又增加了 10 万小时的多样化多语言数据,以增强其多语言能力。
为了获得丰富的语音识别标签,SenseVoice 模型使用了开源的音频事件检测 (AED) 和语音情绪识别 (SER) 模型来生成伪标签,从而构建了一个包含大量丰富语音识别标签的数据集。其中,AED 数据集包含 1.5 亿条记录,SER 数据集包含 3000 万条记录。
- CosyVoice 训练数据
CosyVoice 模型使用了包含多种语言的语音数据集,用于训练语音生成模型。在数据收集过程中,使用了专门的工具进行语音检测、信噪比 (SNR) 估计、说话人分割和分离等操作。然后,使用 SenseVoice-Large 和 Paraformer 模型生成伪文本标签,并通过强制对齐 (FA) 模型进行优化,以提高标签的准确性和消除低质量数据。
CosyVoice-instruct 模型使用了指令训练数据,对 CosyVoice-base 模型进行微调,以增强其指令遵循能力。指令训练数据分为三种类型:说话人身份、说话风格和副语言特征,分别用于控制语音输出的各个方面。
多语言语音识别
使用字符错误率(CER)来评估模型在五种语言上的表现:中文、粤语、日语、韩语和泰语,以及使用词错误率(WER)来评估所有其他语言。
- 识别准确率:SenseVoice-S 和 SenseVoice-L 在大多数测试集上均优于 Whisper 对应模型,尤其是在 Cantonese 和其他低资源语言上表现更佳。
- 识别效率:SenseVoice-S 采用非自回归架构,具有极低的推理延迟,比 Whisper-small 快 5 倍以上,比 Whisper-L-V3 快 15 倍以上。
语音情绪识别
在7个流行的情绪识别数据集上评估了SenseVoice的SER能力,包括CREMA-D、MELD、IEMOCAP、MSP-Podcast、CASIA、MER2023和ESD。这些语料库涵盖了中文和英文,以及表演、电视剧和日常对话等场景。我们报告了未加权平均准确率(UA)、加权平均准确率(WA)、宏观F1得分(F1)和加权平均F1(WF1)。
- 识别准确率:SenseVoice 在 7 个流行的情绪识别数据集上均取得了良好的性能,无需针对目标领域进行微调即可获得高准确率。
- 与其他模型的比较:SenseVoice-Large 在几乎所有数据集上都取得了最佳结果,SenseVoice-Small 也优于其他基线模型。
音频事件检测
SenseVoice-Small和SenseVoice-Large模型都能够对语音中的音频事件进行分类,包括音乐、掌声和笑声。SenseVoice-L可以进一步预测音频事件的开始和结束位置,而SenseVoice-Small只能预测音频中发生了什么,每个话语最多一个事件。SenseVoice-Small可以检测更多种类的事件,例如咳嗽、打喷嚏、呼吸和哭泣,这些事件可能发生在人机交互中。
在不同的任务中将SenseVoice与最先进的音频事件检测模型BEATs和PANNs进行比较,包括环境声音分类(ESC50)、婴儿哭泣/笑声检测、咳嗽检测(Coswara)和家庭脱口秀事件检测。
- 识别准确率:SenseVoice-S 和 SenseVoice-L 能够识别语音中的音频事件,例如音乐、掌声和笑声。SenseVoice-L 还能够预测音频事件的起始和结束位置。
- 与其他模型的比较:SenseVoice 在音频事件分类或检测方面表现出色,尽管其他模型可能具有更好的 F1 分数。
S3 Tokenizer 保留语义信息
为了评估S3分词器保留语义信息的能力,我们比较了增强量化器的SenseVoice-L与其原始版本和Whisper-Large V3模型的识别性能。这些模型使用Common Voice zh-CN和en基准进行了评估。
识别准确率:S3 Tokenizer 在中英文测试集上均表现出稳健的识别性能,其中在 common voice zh-CN 集上,S3 Tokenizer 的错误率比 Whisper-Large V3 模型降低了 4.14%。
语音生成质量
我们通过检查内容一致性和说话者相似性来评估CosyVoice语音合成的质量。分别使用LibriTTS的“test-clean”子集和AISHELL-3的测试集来构建英语和中文的评估集。对于这些集中的每段文本,我们随机选择一段提示语音。使用Whisper-Large V3评估英语的内容一致性,使用Paraformer评估中文。通过计算生成语音和提示语音的说话者嵌入之间的余弦相似性来量化说话者相似性,这些嵌入是使用ERes2Net提取的。
内容一致性:CosyVoice 生成的语音与原始语音在内容上高度一致,与 ChatTTS 相比,WER 更低,插入和删除错误更少。说话人相似度:CosyVoice 生成的语音与原始语音的说话人相似度很高,表明其具有有效的语音克隆能力。
情绪可控性
情绪控制准确率:CosyVoice-instruct 在情感指令下表现出更高的情绪控制准确率,优于 CosyVoice-base 和 CosyVoice-instruct 无情感指令的情况。
数据生成器
数据质量:CosyVoice 生成的语音数据质量很高,可以作为其他任务(例如语音识别和语音翻译)的训练数据,从而提高模型性能。
应用场景
基于SenseVoice和CosyVoice两大模型,FunAudioLLM能够支持丰富多样的人机交互应用场景,包括:
- 多语言语音翻译:结合CosyVoice的音色和情感控制能力,实现多语言语音翻译的同时保留原始语音的音色和情感色彩。
- 情感语音聊天:利用SenseVoice的情感辨识能力,与用户进行带有情绪色彩的语音对话,提升交互的真实感和沉浸感。
- 互动播客:借助CosyVoice的自然语音生成能力,生成高质量的语音内容用于制作互动播客节目。
- 有声读物:结合SenseVoice和CosyVoice的优势,生成富有情感表达力的有声读物,为用户提供舒适的阅读体验。
此外,FunAudioLLM还通过开源方式,为开发者和研究人员提供了强大的工具,促进了语音技术的创新和应用。相关模型已在ModelScope和Huggingface等平台上开源,并在GitHub上发布了相应的训练、推理和微调代码。
模型体验
魔塔社区在线体验
体验的流程相对简单,传入需要识别的音频,选择需要识别的语言(这一步可选,默认auto自动识别),点击识别,生成结果。对于输入音频提供了三种方式,第一是直接使用右侧的Examples示例音频、二是上传本地音频文件、三是直接通过本地话筒直接输入。下面分别体验。
示例音频:
随意选择一个右侧的Examples示例音频,点击start进行识别即可。在识别之前可以通过预览音频进行音频的播放。
本地音频:
输入音频:
1、提供的示例音频会出现无法预览的情况,尤其是第一个的zh音频,后面的几个虽然可以正常预览,但只要点击稍快就会出现卡顿无法切换的问题。
2、通过上传本地音频文件或者话筒输入音频,识别的结果大概率会出现错误,也就是无法识别的情况,不晓得是模型服务在调测,还是啥情况,出现无法识别的概率非常高。
3、对于示例音频识别的准确度也不是很好,比如最后的三个示例音频,都是复杂场景下的,识别准确性就不好,出现多处词汇不正确。
第二段的示例音频识别同样存在上述问题,且一开始的音乐也没有识别到,还存在多处词汇错误,断句错误。
第三段粤语的识别就更加糟糕了,我基本上是对不上所识别的内容的。
作为语音生成的佼佼者,这部分体验功能就丰富很多了,在线模型提供了三种功能体验,分别是预置的语音生成、定制语音生成、高级语音生成。
预置语音生成
定制语音生成
高级语音生成
4、在语音合成模型体验时,发现预置的音色,不论是选择女声还是男声,合成的音频均是女声。尤其是采用示例文本二和三时。
第二处让我诧异的是,只有第一段示例文本中,选用日语男和粤语女可以将文本也转换成对应的语言,其他就不行。也就是采用日语男生成的音频就是日语的文本、采用粤语女生成的音频就是粤语的。
体验视频链接如下:https://www.alipan.com/s/5E75ogNC1wp
在体验定制语音生成时,发现一旦完成音色录制后,功能标签就无法点选了,且录制的音频也会在播放结束后消失。这种现象会在无操作大概2分钟后又恢复正常,不晓得啥情况。而在跨语种生成时,又会出现生成错误。
体验视频链接如下:https://www.alipan.com/s/1S33PjDEQME
在高级语音生成体验时,同样遇到了和预置语音生成时一样的问题,就是男声音色生成的音频皆是女声。
体验视频链接如下:https://www.alipan.com/s/G6GNwLxqTWZ
除了魔塔社区可以在线体验外,你还可以克隆到本地进行体验。目前FunAudioLLM 模型已经在趋动云『社区项目』上线,感兴趣的伙伴们可以点击链接前往实操体验。
模型对比
巨人网络 AI Lab 团队中的算法专家和语言学家共同努力,基于中国方言体系,构建了涵盖 20 种方言、超过 20 万小时的普通话和方言数据集。通过这一庞大的数据集,我们训练出了第一个支持多种普通话方言混说的 TTS 大模型 ——Bailing-TTS。Bailing-TTS 不仅能够生成高质量的普通话语音,还能够生成包括河南话、上海话、粤语等在内的多种方言语音。
Bailing-TTS (giantailab.github.io)
字节的Seed-TTS 是一种基于自回归 Transformer 的模型,该系统包含 4 个主要模块:语音 token 化器、token 语言模型、token 扩散模型和声学声码器。
Seed-TTS (bytedancespeech.github.io)
YourTTS以其高度定制化和对不同语言及口音的支持而闻名,擅长零样本多发音人文本转语音和声音转换。对于需要独特声音特性或适应多种语言和方言的文本转语音解决方案,YourTTS是一个理想选择。
VITS是一款融合了深度学习技术的文本转语音模型,其中包括对抗学习和变分自编码器。它基于GlowTTS模型构建,有效地提升了声音的质量和表现力。VITS特别适用于那些对高质量语音有严格要求的应用,如有声读物或高质量的语音助手。
Pheme,由PolyAI开发,专注于高效和会话式的语音生成。该模型旨在实现实时操作,非常适合于助手会话系统等应用。Pheme在生成自然、流畅的会话式语音的同时,保持了高效的性能。
PHEME: Efficient and Conversational Speech Generation. | pheme (polyai-ldn.github.io)
维度 | FunAudioLLM | Bailing-TTS | Seed-TTS | YourTTS | VITS | Pheme |
开发者/机构 | 阿里通义实验室 | 巨人网络AI Lab | 字节跳动 | Edresson | 北京大学、微软亚洲研究院 | PolyAI团队 |
技术架构 | SenseVoice+CosyVoice | 多层自回归变换器模型 | 高级TTS模型系列 | TensorFlow+Tacotron2+WaveGlow | Very Deep Inverted Residual Networks | Transformer优化 |
支持语言 | 50+种(含中文、英文、日语、粤语、韩语) | 普通话及多种方言 | 多语言 | 多语言及口音 | 多语言 | 多语言 |
方言支持 | ✓(粤语等) | ✓(如河南话、上海话、粤语等) | 未知 | 未知 | 未知 | 未知 |
生成质量 | 高质量,自然流畅 | 接近人类发音 | 难以与人类语音区分 | 高质量,自然流畅 | 高质量,流畅 | 高质量,对话式 |
应用场景 | 语音识别、音频生成、情感识别等 | 游戏配音、视频创作、方言文化传播 | 有声读物、虚拟助手、视频配音 | 无障碍阅读、虚拟助手、教育工具 | 有声读物、语音助手 | 语音助手、音频内容创作 |
情感识别 | ✓ | 未知 | ✓ | 未知 | 未知 | 未知 |
音色控制 | ✓(支持细粒度控制) | 未知 | ✓(支持多种语音属性控制) | 未知 | 未知 | 未知 |
数据效率 | 大量标注数据 | 大规模数据集 | 支持零样本上下文学习 | 未知 | 未知 | 少量数据训练 |
速度 | 高效(采用先进深度学习技术) | 未知 | 高效(并行推理) | 未知 | 高效(非自回归模型) | 高效 |
可扩展性 | ✓(支持不同应用场景和微调) | 未知 | ✓ | ✓(模块化设计) | ✓ | ✓ |
社区支持 | 开源项目,社区贡献 | 未知 | 字节跳动支持 | GitHub开源项目 | GitHub开源项目 | PolyAI团队支持 |
体验总结
FunAudioLLM作为一款由阿里巴巴集团Tongyi SpeechTeam推出的开源语音技术框架,旨在增强人类与大语言模型(LLMs)之间的自然语音交互能力。以下是对FunAudioLLM的体验测评总结:
优点
- 强大的多语言支持
- FunAudioLLM在语音识别和语音合成方面支持多种语言,包括中文、英文、日文、粤语和韩文等,极大地拓宽了其应用场景。这种多语言支持能力对于跨国企业和全球用户来说具有极高的价值。
- 高效的情感识别与合成
- SenseVoice模型具备出色的情感识别能力,能够在测试数据上达到或超过当前最佳情感识别模型的效果。同时,CosyVoice模型支持多语言、音色和情感控制,能够生成高度逼真的模拟音色,包括韵律、情感等细节,使得语音交互更加自然和生动。
- 低延迟与高并发处理能力
- FunAudioLLM采用先进的深度学习技术,如Transformer模型等,能够在较短的时间内完成音频处理任务,提高工作效率。同时,SenseVoice-Small模型采用非自回归端到端框架,推理延迟极低,适用于需要低延迟处理的场景。
- 细粒度控制与高度定制化
- CosyVoice支持以富文本或自然语言的形式对合成语音的情感和韵律进行细粒度控制,大大提升了生成语音在情感表现力上的细腻程度。这种高度定制化的能力使得FunAudioLLM能够满足不同用户的个性化需求。
- 广泛的应用前景
- 基于SenseVoice和CosyVoice两大模型,FunAudioLLM能够支持丰富多样的人机交互应用场景,如音色情感生成的多语言语音翻译、情绪语音对话、互动播客和有声读物等。这些应用场景的拓展为FunAudioLLM带来了更广阔的市场前景。
- 开源与可扩展性
- FunAudioLLM的开源特性使得其可以被广大开发者所利用和扩展。开发者可以根据自身需求对模型进行微调或优化,以适应不同的应用场景和需求。
缺点
除了上述体现的优点外,当前的版本还存在一些不足,比如SenseVoice 在低资源语言上的语音识别准确率较低、不支持流式语音识别。CosyVoice 支持的语言数量有限、需要明确的指令才能生成特定情绪和风格的语音、在唱歌方面表现也不佳。
综上所述,FunAudioLLM作为一款创新的语音技术框架,在语音识别、语音合成及情感识别等领域展现出了强大的技术实力和广泛的应用前景。通过其核心模型SenseVoice和CosyVoice的强强联合,为人机交互领域带来了革命性的变革。它不仅支持多种语言的快速理解和生成,还具备情感识别和音频事件检测等高级功能,有望推动语音技术的广泛应用和持续发展。