wikiAudio11|Qwen3-TTS:低帧率多码本与双轨生成03|双轨主干与 MTP:跨帧状态、帧内预测与训练目标
6 分钟
0 次观看

03|双轨主干与 MTP:跨帧状态、帧内预测与训练目标

Qwen3-TTS-12Hz 把两种依赖分开处理:大主干沿音频时间推进,先预测当前帧首层码本;较小的 code predictor 读取主干状态与首层编号,生成其余码本。帧内生成结束后,整帧嵌入再汇总成为后续时间步的输入。

报告 §3.1从双轨架构描述文本与音频通道;官方实现的 12Hz 推理路径可直接追踪 past_hidden → code_predictor.generate → codec_hiddens.sum → 下一步输入。报告抽象与具体张量融合方式要分层阅读。

MTP 在这里承担帧内多码本生成,不应仅凭名字理解成“所有层一次独立并行预测”。

图 1|跨帧 Talker 与帧内 code predictor 的状态交接

图 1|跨帧 Talker 与帧内 code predictor 的状态交接

1. 一帧内的完整执行顺序

顺序模块读取输出
1时间主干文字条件、之前帧的汇总表示、时间历史隐藏状态与首层分布
2首层采样首层 logits当前帧第 0 层编号
3局部预测器主干隐藏状态+首层嵌入后续各层编号
4码本嵌入汇总当前帧全部编号下一时间步音频输入表示
5codec 解码完整帧或若干完整帧波形包

主干隐藏状态并不是音频 token;它是连续向量。把它与首层编号一起作为局部预测的起点,使后续层能同时知道较长语音上下文和当前粗编码。

2. 两条自回归轴对应两个状态范围

p(A∣X)=∏t=1Tp(at,0∣A<t,X)∏k=1K−1p(at,k∣ht,at,<k).p(A\mid X)=\prod_{t=1}^{T} p(a_{t,0}\mid A_{<t},X) \prod_{k=1}^{K-1}p(a_{t,k}\mid h_t,a_{t,<k}).
符号、形状与约定
符号解释与例值
XX文本及其他生成条件的统称。
AA全部语音码本编号,形状 [T,K]。
t,Tt,T音频帧索引和总帧数。
k,Kk,K码本层索引和总层数,12Hz 路线 K=16。
A<tA_{<t}当前帧之前的全部音频历史。
hth_t当前帧对应的时间主干隐藏状态。
at,<ka_{t,<k}当前帧已经生成的较前码本层编号。
∏,p\prod,p条件概率连乘;式子展示依赖分解,不是对源码每个特殊 token 的逐项展开。

用 2 帧、3 层教学例展开:先产生 a10,再局部产生 a11,a12;汇总第一帧,主干继续产生 a20,再产生 a21,a22。时间主干只推进两帧;局部仍有层内顺序。它降低大主干调用次数,没有消除所有串行依赖。

3. 文本与音频嵌入的融合实现

报告从通道组织解释双轨表示;本次读取的公开 12Hz 推理代码中,将各码本嵌入沿码本轴求和,再加上当前对应的文字隐藏向量,文字用完后加 tts_pad_embed。因此不宜把抽象“通道融合”机械画成某个固定 cat 调用。

张量示意形状操作
当前帧各层嵌入[B,K,D]沿 K 求和
音频汇总[B,1,D]保留时间轴长度 1
当前文字/文字 padding[B,1,D]同形状逐元素相加
主干下一步输入[B,1,D]与历史 KV cache 一起计算

例如两层音频嵌入 (1,0)、(0,2),文字向量 (0.5,0.5),汇总为 (1.5,2.5)。如果沿隐藏维求和变成两个标量,就破坏了整个主干接口。

4. 源码阅读地图

按以下职责查找函数,而不是直接从数千行模型文件第一行读到最后:

入口/变量阅读目标
forward_finetune真值 codec 序列如何构造帧内监督输入
past_hidden上一步返回的主干隐藏状态如何进入局部预测
code_predictor.generate残差层数、采样设置、局部生成范围
codec_hiddens.sum整帧嵌入如何形成下一步输入
past_key_values时间主干状态如何持续,而非每帧重算全文

训练可利用真实前序码本构造监督,推理则读取已生成编号。这种 teacher forcing 差别同时存在于时间轴和帧内轴,不能只检查首层交叉熵而忽略残差层预测。

调试时分别记录帧索引、码本层索引和局部生成计数,避免把三者当成一个 position。

5. 典型失败与边界

失败可能机制检查
第一帧正常,后面失真全帧汇总或历史反馈错误对照每步嵌入形状
固定音色细节异常码本层顺序错位编号送入配套 codec 重建
换句后延续上一声音时间状态未清空两请求独立运行对照
局部生成越长越慢将局部状态错误跨帧累积检查局部状态生命周期

分层生成的效率收益需要计入局部预测器;只统计主干时间会低估总成本。

继续 缓存与流式验证。

专题导航:TTS 总目录 · 上级章节 · 实验代码与实测记录

正在连接 GitHub 评论…