李宏毅 AI 课程:语音基础模型
整理语音 token、神经 codec、分层生成、文本模型初始化和全双工交互。
文章目录
12 语音基础模型:从语音 token 到全双工交互
原始课件:
speech (v10).pptx(72 页)
1. 语音比文本多了什么
文本主要表达词语和句法;语音还包含:
- 说了什么(内容)。
- 谁在说(说话人身份)。
- 如何说(情绪、韵律、语速和音色)。
- 在哪里说(环境、噪声和空间信息)。
语音大型模型需要在理解和生成之间处理这些信息。只把语音转成文字会丢失说话人、情绪和声学细节;只预测波形又会让建模空间过大。
2. 语音 token 化
2.1 语义 token 与声学 token
- 语义/内容 token:更接近文字和语音内容,适合语言模型理解。
- 声学 token:包含音色、韵律和细节,适合语音重建。
一个实用系统常把两者分层建模:先预测内容,再预测声学细节。
2.2 自监督语音表示
典型流程是:
- 用语音编码器提取连续表示。
- 通过 K-means、向量量化(VQ)或产品量化离散化。
- 删除连续重复片段或使用 BPE 压缩序列。
- 将 token 输入语言模型训练。
该路线受到 wav2vec 2.0 等自监督学习的影响,相关评测包括 SUPERB、Codec-SUPERB 和 DASB。
2.3 神经音频 codec
神经 codec 使用编码器将波形压缩成离散码,再由解码器重建波形。EnCodec 的残差向量量化(RVQ)用多层码本逐步补充细节;SpeechTokenizer 则研究让不同层次 token 分别承担内容和声学信息。
相关研究:
- AudioLM:分层预测语义 token 和声学 token。
- EnCodec:高质量、低码率神经音频 codec。
- SpeechTokenizer:为语音语言模型设计层次化语音表示。
3. 语音生成的两种组织方式
3.1 分层自回归
AudioLM 和 VALL-E 先生成较高层的语义或音素信息,再生成声学 token。这种方法表达力强,但所有 token 依次生成时序列很长,延迟和流式性较差。
3.2 并行或多码本生成
为了缩短序列,可以在同一时间步并行生成多个声学码本,或使用延迟布局把不同码本错开。相关工作包括 arXiv:2402.05755、arXiv:2306.05284 和 Moshi 的分层声码设计。
并行生成提高速度,但码本之间存在条件依赖,需要设计掩码、延迟、联合损失或后处理保证声学一致性。
4. 离散 token 与连续生成
离散语音 token 方便复用语言模型,但量化会损失信息,码本设计也会决定内容和音色的分离程度。连续表示直接预测声学特征,可减少量化误差,却面临回归平均化、模式坍缩和长序列稳定性问题。
课件引用 arXiv:2406.11838、arXiv:2312.02116、arXiv:2403.05196 与 MELLE 讨论连续或混合语音生成路线。
5. 代表性语音语言模型
- Moshi:面向实时、全双工语音对话,采用多路离散音频 token 和延迟建模。
- GLM-4-Voice:将语音输入输出接入通用语言模型能力。
- Step-Audio:研究语音理解、对话和生成的一体化模型。
- Qwen2.5-Omni:统一处理文本、图像、音频和视频的全模态模型。
- Kimi-Audio:探索语音理解、对话和生成的统一建模。
- BreezyVoice:展示语言模型与语音生成模块结合的可控语音能力。
6. 用文本语言模型初始化语音模型
纯语音数据中的语言信息密度低,训练成本高。arXiv:2404.00685 量化了语音与文本在语言建模效率上的差异:需要大量语音时长才能承载与少量文本相当的语言内容。
因此常见路线是复用文本模型:
- 用语音编码器和投影层把语音表示映射到文本模型的嵌入空间。
- 先训练语音到文本的理解能力,再加入声学生成头。
- 保留文本模型的语言知识,通过少量语音监督学习对齐。
相关研究包括 DUAL/GSQA(2203.04911、2312.09781)和 TWIST。
7. 文本与语音的混合生成
7.1 级联式
先由语言模型生成文本,再由 TTS 模型转成语音。优点是语言能力强、工程成熟;缺点是无法真正流式交互,且文本决策会增加延迟。
7.2 联合或同时生成
Llama-Omni、Mini-Omni 和 Moshi 同时或交错生成文本、语音 token。这样可以在生成过程中开始播放,减少等待,但需要处理两个模态的同步、错误传播和终止条件。
7.3 文本对齐的语音 token
TASTE 代表一种路线:使用预训练语音编码器、聚合器和语音解码器,把语音内容对齐到文本语言模型的 token 空间,同时保留非内容声学信息。课件指出,这类表示的目标不是让每个 token 只含文字,而是在有限 token 数下优先保留对交互有用的信息。
8. 语音模型的训练阶段
- 无标注预训练:学习语音结构、说话人和声学模式。
- 语音—文本对齐:让语音编码器输出能被语言模型理解的表示。
- 监督指令微调:训练问答、转写、翻译、情绪和对话格式。
- 偏好或强化学习:优化自然度、礼貌性、事实性和响应时机。
- 实时与全双工训练:加入打断、停顿、抢话和环境噪声。
语音模型尤其容易遇到后训练遗忘:语音适配可能破坏原有文本指令遵循、JSON 输出或安全行为,因此要使用通用语言回放和多模态回归测试。
9. 全双工交互
半双工系统通常等待用户说完再回答;全双工系统允许双方同时说话,需要解决:
- 何时开始回应。
- 用户打断时是否停止生成。
- 背景噪声与回声如何处理。
- 轮次边界和沉默如何判断。
- 模型如何在听、想、说之间并行运行。
相关研究包括 arXiv:2203.16502、arXiv:2407.01911、Moshi,以及全双工评测 arXiv:2505.15957。评价指标不能只看识别准确率,还应测响应延迟、打断成功率、端点检测、重叠语音质量和对话自然度。
10. 重要方法与研究索引
| 方法 | 核心作用 | 对应研究 |
|---|---|---|
| 自监督语音表示 | 从无标注语音学习通用特征 | wav2vec 2.0、SUPERB |
| 神经音频 codec | 将波形压缩为可生成的离散码 | EnCodec |
| 语音分层 token | 分离内容与声学细节 | SpeechTokenizer |
| 分层语音生成 | 先语义后声学地生成语音 | AudioLM、VALL-E |
| 并行多码本生成 | 缩短声学 token 生成延迟 | arXiv:2402.05755 |
| 文本模型初始化 | 复用语言知识降低语音训练成本 | TWIST |
| 语音—文本对齐 | 把语音表示接入语言模型 | Llama-Omni、TASTE |
| 全双工对话 | 支持同时收听、思考和说话 | Moshi |
11. 本章结论
- 语音 token 设计决定语言模型能否同时保留内容、音色和韵律。
- 分层生成表达力强,但序列长;并行和延迟布局提高速度,但增加同步复杂度。
- 复用文本语言模型是降低语音训练成本、获得语言能力的关键路线。
- 真正的语音智能体还需要全双工、打断、情绪和环境感知,而不仅是语音转文字。