跳转至

Open Questions 待决问题

想法、被搁置的实验、存疑的结论。发散用,不要求成熟。 状态:想法 / 已排期 / 进行中 / 已否决(附理由) / 已完成(移入 LOG) 被否决的留着不删。


A. 会改变结论的

G1 · 怎么度量「部分情感」?

状态:想法 · 🔴 最高优先级 —— 挡着所有混合类实验

emotion2vec 输出饱和的近 one-hot 分布,已证明结构上无法表达 「50% 悲伤 + 50% 惊讶」。后果:M3/M4 的混合结果都无法判定成败。

候选方向(均未评估):

方向 想法 风险
valence/arousal 回归探针 用连续维度替代离散类别 需要标注数据;与已发表口径不可比
声学量(F0 / 能量 / 语速) 直接测物理量,绕开分类器 只能说「变了」,说不了「是哪种情感」
人工配对比较(MOS-style) A/B 听测「哪个更像 X+Y 的混合」 成本高,但可能是唯一可信的
分类器的中间层表示 用 embedding 距离而非 argmax 未验证是否比输出层更有分辨率

约束:按既定决策,不替换已发表口径,只新增。

G2 · 混合音质为何全线不可用?

状态:想法

对齐修好后 CER 从 0.66 降到 0.053,但 UTMOS 仍只有 1.26–1.44(纯情感 3.29)。 说明还有别的东西坏了,尚未定位。 候选:

  • 速度场混合本身会缩范数(去相关 → 幅度衰减) → 需查 mel 的能量分布
  • HiFT 声码器对「非自然 mel」的鲁棒性
  • 混合破坏了 mel 的时频局部一致性(相位重建失败)

G3 · A 的情感身份藏在哪?

状态:想法

M5 的线索:主子空间不区分情感(弱证据)。 若成立,情感身份应在能量较低的方向。可做:去掉 top-k 主方向后看残差的情感专一性。

顺带能验证 \(L_{\text{ortho}}\) 无效的机制解释。


B. 已知缺陷,待修

B1 · OOD 泛化是最大短板

状态:想法

维度 现状 缺口
文本 OOD ✅ P6 held-out 同数据集同说话人风格,弱 OOD
说话人 OOD ⚠️ ESD 内部 未系统评测
数据集 OOD ❌ 全部结果在 ESD 上 最致命
语种 OOD ⚠️ 英文缺 3 个说话人 p6_test_en 缺 511 条

IEMOCAP 已申请到手但仍在 sai 未迁移(12.3 GB); inference_iemocap_transfer.py 已存在。这是最快能补的一块。

B2 · 数据不完整

ESD 说话人 0012–0014 完全缺失、0015 不完整(迁移最后 0.9 GB 未传完)。 影响:p6_test_en 1174/1685、esd_parallel 28570/33620。 中文完整(p6_test_zh 1710/1710),训练不受影响(用特征缓存)。

B3 · 分段 α 需要平滑过渡

\(\alpha\) 在切换点突变 → 速度场突变 → mel 不连续 → 可能有可听的咔哒声。 实现前必须带 cosine ramp(建议 8 帧 / 160 ms)。


C. 方法上的疑问

G4 · 分段 α 怎么切?

状态:✅ 已完成(2026-08-2x,见 M6) —— 下文保留当时的推理过程

M5 的数据表明:「前 K/2 vs 后 K/2」切在了最没结构的轴上 (去掉句首后前半/后半比值仅 1.026)。有结构的是句首 vs 句身(2.04× vs ~1.0)。

三个变体:

变体 切法 依据
句首/句身(推荐) \(\alpha_{\text{onset}}\)(前 10%)+ \(\alpha_{\text{body}}\) M5 能量分布
连续 \(\alpha(k)\) 自定义曲线 最通用
语言学单元 音节/词/短语边界 最可解释,需 MFA

这是唯一能绕开 G1 的想法

若只在句首加 \(\alpha\),则句首的声学量应变、句身不变 —— 可用 F0/能量直接验证,不依赖情感分类器。

G5 · 「直接加权」的基线该怎么做?

状态:🔄 退回未完成(2026-08-27) —— 原判「已完成」依据的是 M9 旧版,该实验已作废。 frozen 基线要不要重做、怎么做,并入 M9-R 的 A1 臂。

要论证「可分离的 \(v\)」是必要的,需要四臂:波形加权 / mel 输出加权 / frozen 模型 + 共享状态速度混合 / 我们的。

这个实验有打脸风险

共享状态混合是 flow-matching 的通用性质,不需要微调。 若 frozen + shared-x 就能工作,claim 必须从「只有我们能做到」 改成「这是通用机制,我们的贡献是让它可控」。 正因为审稿人一定会问,才更该自己先做。

G6 · instruction 通道与我们的通道是否正交?

状态:✅ 已完成(见 M8) → F10、F12

代码事实:frontend_instruct2 = frontend_zero_shot + 删掉 llm_prompt_speech_token。 即 instruct 从文本注入情感,我们从声学 token注入 —— 正好是它删掉的那条。

可做:① instruct 能否表达「稍微/非常悲伤」这类强度(最便宜,先做) ② 与 \(\alpha\) 阶梯对比 ③ 组合使用。

混杂提醒:instruct 删掉声学 prompt 后音色只靠 flow 参考,SECS 大概率下降 —— 那是模式的固有代价,不是情感控制能力的差异。

G8 · \(\mathcal{L}_{\text{ortho}}\) 的形式该怎么改?(M11)

状态:✅ M11a 已完成(2026-08-26),M11b 已否决

M11a λ 扫描: \(\lambda\) 从 0 到 2.0,\(\mathcal{L}_{\text{ortho}}\) 单调降到 26%(0.1714 → 0.0443), cos_A_B −0.221 → −0.106 —— 正则完全可优化。 但情感 delta 只在 0.568–0.584 之间浮动,受控组数恒 7/12。

M11b(形式消融)因此否决:问题不在正则写得对不对, 而在「正交 ⇒ 情感解耦」这个前提不成立(与 F6 一致)。 换个形式仍然会正交得很好、仍然与情感无关。

下方保留当时的推理过程。

M10 修好了 \(A\) 的定义(训推一致、截断归零),\(\mathcal{L}_{\text{ortho}}\) 依然无效。 所以问题不在训练条件,在正则形式:

\[\mathcal{L}_{\text{ortho}} = \frac{1}{80^2}\sum_{i,j}\left(\hat{A}_i^\top \hat{B}_j\right)^2\]

三个可疑之处:

疑点 说明
非对角项占 98.75% 权重 \(i \neq j\) 的 6,320 对没有明确物理含义,却主导梯度
可行集受秩约束 归一化沿时间轴,故 \(\hat A_i,\hat B_j\in\mathbb{R}^{K}\)。要 \(L=0\) 需 \(\mathrm{rank}(A)+\mathrm{rank}(B)\le K\)。实测 \(K_g\) 均值 148(117–186),而 \(A,B\) 各 80 行 —— \(K<160\) 时满秩下几何不可行,必须有一方降秩
无能量加权 低能量通道与高能量通道等权,噪声通道被过度约束

先做剂量,再做形式 —— 顺序不能反

M11a(λ 扫描,优先):λ=0.01 时 \(\lambda\mathcal{L}_{\text{ortho}}\) 只占总损失的 0.19%(0.0017 / 0.9075)。一个从未获得过权重的正则项,其失效不能归因于形式。 必须先证明「任何 λ 都救不回来」,才能说问题在形式。M10 的结论目前在这一点上超出了证据。

λ ∈ {0, 0.1, 0.5, 2.0}(分别约占损失 2% / 9% / 27%),其余一切与 M10 相同。 门槛判据:\(\mathcal{L}_{\text{ortho}}\) 的轨迹能否压到 λ=0 曲线之下 —— λ=0.01 连这条都没做到。

M11b(形式消融,后做):仅在 M11a 全部落空时才有意义。 ① 仅对角项 \(\sum_i (\hat{A}_i^\top \hat{B}_i)^2\) ② 能量加权 ③ 沿通道轴归一化。

关键更正(2026-08-26):此前文档称「正则在推 \(A\to 0\)」,这是错的。 代码里 An = A / A.norm(dim=-1) 沿时间轴归一化,故 \(\mathcal{L}_{\text{ortho}}\) 对 \(A\) 的尺度不变 —— 把 \(A\) 缩小并不能降低该项。真正的逃逸路径是降秩, 不是降范数。~~因此 λ 扫描要盯的主指标是 \(A\) 的有效秩~~ —— 这个预测已被 M11a §9.4 证伪: λ=2.0 下 \(A\) 的有效秩不降反升(30.76 → 31.91),降秩的是 \(B\)(44.65 → 39.26)。 实际让路的是 \(A\) 的能量(−19%)与帧间一致性(−28%)。

G9 · grad_clip=1.0 是不是太紧了?

状态:想法 —— 由 M11a §9.5 发现

所有训练(含 v4)的 grad_norm 中位在 3.7–12.2,而 --grad_clip 默认 1.0 —— 100% 的步都被裁剪。

⚠️ 注意不要照搬 SGD 的直觉:优化器是 AdamW,更新量 \(m/(\sqrt v+\epsilon)\) 对梯度的均匀缩放不变,所以裁剪并不等于「把学习率除以 \(\lVert g\rVert\)」。 它的真实作用是拉平不同步之间的梯度幅度差。 (此处原先写成「有效步长 = lr/‖g‖」,已更正。)

待查的是:每步都被拉平,是否让 \(\mathcal{L}_{\text{FM}}\) 全程只降 8% —— 这是「训练是否充分」这个更大问题的一部分。

可做:① 把 clip 放到 5–10 或关掉,重跑 λ=0 与 λ=2.0 两臂,看 L_FM 的位移还剩多少 ② 或改用逐项梯度归一化,让两个目标的步长互不干扰。

注意:这不影响 M11a 的结论 —— 五组同样受此约束,组间对照仍然成立。

G10 · 训练起点/预算这类默认值必须显式确认

状态:教训(2026-08-28)

M10–M13 的所有"重训"都默认从 v4_epoch5.pt 继续,而用户要的是从基座重训。 后果:四轮实验中所有「vs v4」的行都混入了额外训练量,探针带 v4 印记, 需 M14 返工。

规则:提案必须显式列出并让用户确认——①起点 ckpt ②训练预算(步数/epoch 及其与 基线的换算) ③数据集版本。这三样任何一样靠"沿用上次"都可能整轮作废。

G7 · claim 的重心要不要换?

状态:🟡 待定(2026-08-27 从「已成必须」降级)

原判「必须换」的一半依据是 M9,该实验已作废、 F11 已挂起 —— 「α 控制不需要我们的训练」目前没有可靠证据。

但另一半依据没有受影响: M11a 证明 \(\mathcal{L}_{\text{ortho}}\) 与情感可控性无关(P4 已闭合), 且 F6 的情感专一性缺席跨全部 ckpt 成立。 所以「解耦正则」这条线仍然要放弃,「只有我们能做 α 控制」这条线等 M9-R。

原 claim 的两个支柱都塌了:①「我们做出了情绪调色板」—— 音质不可用、度量读不出; ②「只有我们的可分离 \(v\) 能做到」—— ~~未训练的模型也能调,受控组数还更多~~ ⚠️ 该证据已作废(M9 重设计),此支柱状态待定。

建议改成「我们揭示了情绪调色板为什么难,并给出了必要条件」—— F1/F3/F4 都是关于问题结构的发现, 证据强度高、负结果导向,不怕复现。


已决

决策 内容 何时可推翻
归一化目标 中性录音的时长 若改用平均时长
不设时长旋钮 \(\alpha\) 单独控制情感 若 claim 改为「\(\alpha\) 控音色 + 时长另设旋钮」—— 会让 M4 从消融变回候选
对齐方法 DTW,不上 MFA 若对齐质量成瓶颈
DTW 距离 用 mel 不用离散 token 实测 token 最优对齐下仅 5.61% 相同
锚点 2 分支直连;≥3 分支经 Neutral,允许权重为 0 —
\(K^*\) 夹紧 \([0.5\min, 2\max]\) 若 α 永远 ≤1.5 则不触发
评测口径 不自创指标,沿用 eval_suite.py 找到合适度量后新增,不替换
CER 引擎 必须 Paraformer,不用 whisper 顶替 —
可用 GPU 卡 7(2026-08-17 起) —

已否决(留档)

见 99 Graveyard。

讨论