M21-E4 · α 的可用区间、推理路径与质量评分体系¶
| 状态 | ✅ 完成(二轮重做,2026-09-05;首轮 P6 11 条结论已废) |
| 一句话 | 在 160 条随机 ESD-zh test 上把 α 从 −1 扫到 5,三条推理路径对照,用四个有出处的指标 + 真实录音锚点界定可用区间、决定路由,并顺带给出质量评分体系(原 E1 并入) |
| 模型 | M20@420k outputs/m20d/ckpts/step160000.pt |
| 规模 | 160 条 × 13 α × 3 臂 = 6240 条,另 640 条锚点音频 |
正式推理链路已改(2026-09-10)
本页三臂对照里的 pa_interp 现在是所有 α 的正式链路(Method §4.3):ODE 只生成两端,F0 对数域插值对 α>1 用同一公式外推、不钳位、不线性相加;direct 任意 α 与 pa_clamp 降为对照臂,§3.3 的路由规则作废、只作记录。正式链路定义见 Method §4.3。代码统一到 m21_gen_lib.pa_mix / Gen.sample_pa(本页数据由此前的等价内联实现生成,α∈[0,1] 逐样本比对到量化精度一致)。
TL;DR¶
可用区间比首轮窄得多:严格标准下只有 α ∈ [1.0, 1.5];放宽后 [0.5, 1.5]。α=0 的中立化有 14% 的样本完全乱说,且强绑定说话人。
- ✅ α=1 → 1.5 是干净的外推区:UTMOS 2.66 → 2.35、CER ≤ 0.05、RA 1.00 → 1.51;α=1.25 与 α=1 几乎无差,多给 25% 强度
- ⚠️ α=0 中立化:CER 0.221(真实中立录音 0.009)。分布双峰——34% 完全正确、14% 基本乱说; 按说话人从 0.04 到 0.44,P6 那 11 条恰好落在好说话人上(首轮报 0.10)
- 🔍 音高对齐只在中段谷有效:α=0.25 / 0.5 各 +0.21 / +0.47 UTMOS(p<0.001),代价 CER +0.05 / +0.07; α=0.75 无效(p=0.71);α≥1 反而伤 −0.41 ~ −0.74。首轮"0.75 也走对齐"不成立
- ❌ 负 α 不可用(最好臂 CER ≥ 0.27);α ≥ 2 崩坏
- 路由(0.25/0.5 走对齐,其余直路)端到端 UTMOS 2.27 → 2.37,CER 0.090 → 0.106
1 质量评分体系(原 E1 并入)¶
四个指标,各有出处,全部对单条音频打分,全部 16 kHz:
| 指标 | 量什么 | 方法与出处 | 参考 |
|---|---|---|---|
| UTMOS ↑ | 音质(预测 MOS) | Saeki et al., UTMOS: UTokyo-SaruLab System for VoiceMOS Challenge 2022, Interspeech 2022;utmos22_strong |
真实中立录音 3.71 · 真实情感录音 2.76 |
| CER ↓ | 内容保真 | Paraformer-zh(Gao et al., Interspeech 2022,FunASR);去标点、小写后的字符编辑距离 | 真实录音 0.01–0.03 |
| SECS ↑ | 说话人保持 | WavLM-base-plus-sv x-vector 余弦(Chen et al., IEEE JSTSP 2022),参照 = 输入的情感录音 | 同一人的中立录音 0.886(不是 1.0) |
| RA | 情感强度 | 相对属性排序,见 E2;0 = 真实中立均值,1 = 真实情感均值 | 真实中立 0.08 · 真实情感 1.07 |
为什么 UTMOS 的参考是 2.76 而不是 3.71:UTMOS 对情感语音系统性低约 1 分(真实情感录音只有 2.76, 中立录音 3.71)。模型输出应与真实情感录音比,而不是与中立录音比。
RA 的适用前提:RA 建在 eGeMAPS 上,崩坏音频会产生离谱值(本轮 |RA| 超出 [−3, 5] 的 255/6240 条, 96% 落在 |α| ≥ 2 或 α = −1)。这些值判为退化、移出统计并计数。RA 只在 CER ≤ 0.1 左右的可懂音频上可解释。
2 评测设计¶
| 项 | 值 |
|---|---|
| 样本 | ESD-zh test 随机 160 条(四情感各 40,10 位说话人),与 E2 §4.1 / E7 同一批 |
| α 网格 | −1 / −0.5 / −0.25 / 0 / 0.25 / 0.5 / 0.75 / 1 / 1.25 / 1.5 / 2 / 3 / 5 |
| 三条路径 | direct:v = v_B + α·v_Δ 直接积分 · pa_interp:音高对齐混合——两端过 HiFT 后 WORLD 分解,只把 F0 对数插值并共享,谱包络/非周期各自保留,两端在共享 F0 上重建,再在 mel 域按 (1−α)/α 混合;F0 随 α 外推 · pa_clamp:同上但 F0 钳在 [0,1](α∈[0,1] 时两者相同) |
| 锚点 | 同批 160 条的真实中立 / 真实情感录音,训练目标两端 |
| 配对检验 | 同一条音频的两臂之差,配对 t 检验 |
| 规则(跑前定) | 可用:CER ≤ 0.10 且 UTMOS ≥ 真实情感录音 − 0.5(= 2.26);宽松:CER ≤ 0.15 且 UTMOS ≥ 2.0。路由:对齐臂须 ΔUTMOS ≥ +0.20、p < 0.01、ΔCER ≤ +0.07 |
3 结果¶
3.1 四指标 × 三臂¶

直路(direct)主表:
| α | UTMOS | CER | RA | SECS | 判定 |
|---|---|---|---|---|---|
| −1.00 | 1.32 | 0.886 | 0.53 | 0.697 | ❌ |
| −0.50 | 1.72 | 0.602 | 0.22 | 0.826 | ❌ |
| −0.25 | 2.30 | 0.385 | 0.08 | 0.858 | ❌ |
| 0.00 | 2.58 | 0.221 | 0.09 | 0.874 | ⚠️ CER(见 §3.5) |
| 0.25 | 1.94 | 0.145 | 0.24 | 0.882 | ⚠️ 谷 |
| 0.50 | 1.61 | 0.080 | 0.58 | 0.902 | ⚠️ 谷 |
| 0.75 | 2.17 | 0.042 | 0.80 | 0.931 | 宽松 ✅ |
| 1.00 | 2.66 | 0.044 | 1.00 | 0.942 | ✅ |
| 1.25 | 2.61 | 0.046 | 1.25 | 0.941 | ✅ |
| 1.50 | 2.35 | 0.050 | 1.51 | 0.932 | ✅ |
| 2.00 | 1.69 | 0.068 | 1.85 | 0.902 | ❌ UTMOS |
| 3.00 | 1.47 | 0.173 | 2.05 | 0.839 | ❌ |
| 5.00 | 1.36 | 0.354 | 2.19 | 0.770 | ❌ |
| 真实中立录音 | 3.71 | 0.009 | 0.08 | 0.886 | |
| 真实情感录音 | 2.76 | 0.027 | 1.07 | 1.000 |
每格 n=160,标准误:UTMOS ≈ 0.03–0.04,CER ≈ 0.006–0.03,RA ≈ 0.05,SECS ≈ 0.003–0.01。
三臂全表见 outputs/m21/e4v2/analysis.json。
读法
- UTMOS 是双峰曲线:α=0 和 α=1 两个峰(2.58 / 2.66),α=0.5 谷底 1.61。峰值离真实情感录音(2.76)只差 0.1
- RA 一路单调到 α=5——强度旋钮本身不崩,崩的是音质和内容(α≥2 UTMOS < 1.7)。 α ≥ 2 的 RA 读数含大量退化值,不可解释
- SECS 在 α=1 达峰 0.942;α=0 为 0.874,与"同一人自己的中立录音"0.886 相当 ⇒ 中立化保住了说话人身份
- 负 α 的 RA 反而回升(α=−1 → 0.53):"反情感"不存在,模型只是离开了中立流形,RA 读到的是偏离
3.2 音高对齐帮不帮:同条配对差¶

| α | Δ UTMOS(对齐 − 直路) | p | Δ CER | 结论 |
|---|---|---|---|---|
| −1 / −0.5 | +0.08 / +0.08 | <0.001 | −0.42 / −0.29 | 救得动一点,但仍不可用 |
| −0.25 | −0.15 | <0.001 | −0.11 | 伤 |
| 0 | −0.27 | <0.001 | +0.02 | 伤 |
| 0.25 | +0.21 | <0.001 | +0.05 | ✅ 走对齐 |
| 0.50 | +0.47 | <0.001 | +0.07 | ✅ 走对齐 |
| 0.75 | −0.01 | 0.71 | +0.05 | 无效 |
| 1.0 | −0.41 | <0.001 | +0.02 | 伤 |
| 1.25 / 1.5 | −0.55 / −0.59(clamp) | <0.001 | +0.01 / +0.02 | 伤 |
音高对齐的作用是局部的:只在双梳齿最严重的 α=0.25–0.5 起效(机制见 pitch-align),
两端都伤。pa_clamp 在 α>1 比 pa_interp 少伤 0.1–0.15,但仍远不及直路。
3.3 路由与端到端¶
按 §2 规则:α ∈ {0.25, 0.5} 走音高对齐,其余走直路。
| 配置(α ∈ [0, 1.5] 七档均值) | UTMOS | CER | RA | SECS |
|---|---|---|---|---|
| 全 direct | 2.274 | 0.090 | 0.779 | 0.915 |
| 全 pa_interp | 2.075 | 0.127 | 0.816 | 0.890 |
| 全 pa_clamp | 2.110 | 0.123 | 0.784 | 0.892 |
| ★ 路由 | 2.371 | 0.106 | 0.775 | 0.909 |
路由比全直路 +0.10 UTMOS,CER +0.016。首轮(P6)报 +0.18 且把 0.75 也路由到对齐——0.75 那一档在 160 条上无差。
3.4 可用区间¶
| 规则 | 可用 α |
|---|---|
| 严格:CER ≤ 0.10 且 UTMOS ≥ 2.26(真实情感录音 − 0.5) | [1.0, 1.25, 1.5] |
| 宽松:CER ≤ 0.15 且 UTMOS ≥ 2.0(0.5 走对齐) | [0.5, 0.75, 1.0, 1.25, 1.5] |
编辑区 α < 1 在任一规则下都不完全可用:α=0 被 CER 卡住,α=0.25 两项都不过,α=0.5–0.75 只过宽松线。 干净的是重建与外推区 [1, 1.5]。
3.5 α=0 的内容错误:双峰且绑定说话人¶

| 值 | |
|---|---|
| CER 均值 / 中位 | 0.221 / 0.118 |
| 完全正确(CER = 0) | 34% |
| 基本乱说(CER > 0.5) | 14% |
| 按情感 | Angry 0.30 · Happy 0.27 · Sad 0.15 · Surprise 0.16 |
| 按说话人 | 0001 0.04 · 0002 0.06 · 0009 0.07 · 0004 0.12 · 0007 0.21 · 0010 0.23 · 0008 0.28 · 0003 0.31 · 0006 0.39 · 0005 0.44 |
同一批说话人在 α=1 的 CER 全部 ≤ 0.09 ⇒ 不是说话人本身难识别,是中立化对某些说话人失效。 M19 报"α=0 乱说治愈"(CER 1.24 → 0.19)建在 P6 上,P6 的说话人是 0001/0002/0008/0009/0010—— 其中三位恰是最好的三位。乱说没有治愈,只是被样本掩盖了一半。
3.6 试听(二轮,16 kHz)¶
每种情感各一条,取直路 α=0.5 的 UTMOS 最接近该情感中位数的样本(代表性,不挑好听的)。 每格下方的数字是该条的 UTMOS / CER。音高对齐在 α ∈ [0,1] 内 interp 与 clamp 相同,只列一列。
生气 · 0006_text00310_Angry · 「让人看上去就感到宽广,气魄非凡。」¶
| 真实中立录音 | 真实情感录音(输入) |
|---|---|
| α | 直路 direct | 音高对齐 |
|---|---|---|
| 0.00 | 2.03 / 0.71 |
— |
| 0.25 | 1.49 / 0.57 |
1.73 / 0.57 |
| 0.50 | 1.50 / 0.29 |
1.68 / 0.43 |
| 0.75 | 2.25 / 0.00 |
2.09 / 0.29 |
| 1.00 | 2.47 / 0.00 |
— |
| 1.25 | 2.44 / 0.00 |
— |
| 1.50 | 1.97 / 0.07 |
— |
高兴 · 0002_text00280_Happy · 「没有,不过,我们去了肯尼迪中心。」¶
| 真实中立录音 | 真实情感录音(输入) |
|---|---|
| α | 直路 direct | 音高对齐 |
|---|---|---|
| 0.00 | 2.85 / 0.00 |
— |
| 0.25 | 2.19 / 0.00 |
2.28 / 0.00 |
| 0.50 | 1.44 / 0.00 |
2.04 / 0.00 |
| 0.75 | 2.15 / 0.00 |
2.05 / 0.00 |
| 1.00 | 2.68 / 0.00 |
— |
| 1.25 | 2.56 / 0.00 |
— |
| 1.50 | 1.81 / 0.00 |
— |
悲伤 · 0007_text00350_Sad · 「陪你度过这漫长的黑夜。」¶
| 真实中立录音 | 真实情感录音(输入) |
|---|---|
| α | 直路 direct | 音高对齐 |
|---|---|---|
| 0.00 | 3.21 / 0.00 |
— |
| 0.25 | 2.41 / 0.30 |
2.86 / 0.30 |
| 0.50 | 1.77 / 0.30 |
2.72 / 0.20 |
| 0.75 | 2.58 / 0.20 |
2.64 / 0.20 |
| 1.00 | 3.37 / 0.20 |
— |
| 1.25 | 3.76 / 0.20 |
— |
| 1.50 | 3.50 / 0.20 |
— |
惊讶 · 0006_text00330_Surprise · 「这个我相信,我是登山爱好者。」¶
| 真实中立录音 | 真实情感录音(输入) |
|---|---|
| α | 直路 direct | 音高对齐 |
|---|---|---|
| 0.00 | 2.43 / 0.25 |
— |
| 0.25 | 1.43 / 0.33 |
2.14 / 0.33 |
| 0.50 | 1.44 / 0.00 |
1.62 / 0.25 |
| 0.75 | 2.34 / 0.00 |
2.01 / 0.00 |
| 1.00 | 2.83 / 0.00 |
— |
| 1.25 | 2.54 / 0.00 |
— |
| 1.50 | 2.23 / 0.00 |
— |
α=0 中立化:干净 vs 乱说(§3.5 的两个极端)¶
| 说话人 | 真实中立录音 | 模型 α=0 | 参考文本 → 识别结果 | |
|---|---|---|---|---|
| 干净 | 0009 | UTMOS 3.48 / CER 0.00 |
我们休息一下喝杯咖啡。 → 我们休息一下喝杯咖啡 | |
| 乱说 | 0007 | UTMOS 2.41 / CER 1.00 |
陪你度过这漫长的黑夜。 → 比语果的后面点一下a |
听点:① α=0.5 直路的电音,与同档音高对齐的差别;② α=1.25 与 α=1 几乎听不出差别但情感更足;③ α=1.5 开始有毛刺; ④ 乱说那条:音质(UTMOS)并不差,但内容完全换了——这就是 §3.5 说的"像人话但说不对"。
3.7 负 α 落在哪:声学空间的 UMAP¶
补充实验 S1(提案待验收,验收后本节数字回填到 S1)。

| 项 | 值 |
|---|---|
| 表示 | eGeMAPS z 分(与 RA 同空间),剔除极端 α 下数值退化的维后剩 63 维 |
| 拟合 | UMAP(cosine,n_neighbors 30)只在真实录音 + α ∈ [0, 1.5] 上拟合;负 α 与 α ≥ 2 只作投影,避免它们自己撑开坐标 |
| 右图 | 每档 α 的 160 条输出到最近一条真实录音的平均距离;虚线 = 真实录音彼此的最近邻距离(4.54),即"在流形上"的基准 |
| α | −1 | −0.5 | −0.25 | 0 | 0.5 | 1 | 1.5 | 2 | 5 |
|---|---|---|---|---|---|---|---|---|---|
| 到最近真实录音 | 11.3 | 7.6 | 6.7 | 5.5 | 6.6 | 4.5 | 5.7 | 7.4 | 10.4 |
读法
- α=1 的输出就落在真实语音流形上(4.51 vs 基准 4.54);α=0 略远(5.47),α=0.5 有一个小凸起(6.64)——正是 §3.1 的中段谷
- 负 α 单调地离开流形(6.7 → 7.6 → 11.3),而且离真实中立和真实情感同时变远(右图两条彩线一起上翘)。 它没有走向任何真实语音会出现的区域——"反情感"不是一个方向,只是离开数据流形。§3.1 里负 α 的 RA 回升(0.08 → 0.53)由此得到解释:RA 读到的是偏离,不是"更强"
- α ≥ 2 的另一侧同理(7.4 → 10.4),两端对称地出流形,可用区间就是流形附近那一段
全量复核(M21-F,2026-09-10)
汇总页 补充 S7(提案待验收,验收后回填)。
全量 zh test 1276 条(直路 7 α + 音高对齐 4 α;负 α 与 α≥2 未重跑,见 M21-F §2)。图:m21_e4_curves_full.png / m21_e4_paired_full.png / m21_e4_alpha0_full.png。
| α | 0 | 0.25 | 0.5 | 0.75 | 1.0 | 1.25 | 1.5 |
|---|---|---|---|---|---|---|---|
| UTMOS | 2.55 | 1.88 | 1.61 | 2.16 | 2.67 | 2.63 | 2.36 |
| CER | 0.250 | 0.167 | 0.083 | 0.049 | 0.047 | 0.047 | 0.050 |
| RA | 0.07 | 0.22 | 0.53 | 0.75 | 0.94 | 1.16 | 1.44 |
| SECS | 0.873 | 0.882 | 0.899 | 0.928 | 0.939 | 0.936 | 0.925 |
锚点:真实中立 UTMOS 3.68 / CER 0.016;真实情感 UTMOS 2.74 / CER 0.030 / RA 1.03。 与 160 条版逐格差均在 2 个标准误内;严格可用区间仍为 [1.0, 1.5](UTMOS 阈 2.24)。
音高对齐配对差(1276 条):α=0.25 +0.269(ΔCER +0.054)、0.5 +0.460(ΔCER +0.079)、0.75 +0.034(p<0.001 但 <0.05 量级,实际无用)、1.0 −0.384。 按跑前规则(ΔCER ≤ +0.07)0.5 档差 0.009 出线,路由只剩 0.25:端到端 UTMOS 2.267 → 2.305。若把阈值放到 0.10 则 0.25/0.5 都走对齐:UTMOS ≈ 2.37、CER ≈ 0.118。结论:对齐在 0.5 处 +0.46 音质换 +0.08 CER,是否划算由使用场景定,页面两种都列。
α=0 乱说(1276 条,每人 ≈ 127 条):均值 0.250、中位 0.154、完全正确 32%、乱说(>0.5)18%。 按说话人:0009 0.06、0001 0.09、0002 0.09、0004 0.21、0007 0.24、0003 0.30、0008 0.30、0010 0.31、0005 0.44、0006 0.45; 按情感:Angry 0.30、Happy 0.25、Sad 0.15、Surprise 0.28。三位好说话人(0009/0001/0002 ≤ 0.09)与两位差说话人(0005/0006 ≈ 0.44)的分野在 128 条/人下成立,不是 16 条时的噪声。
4 结论¶
| 项 | 结论 |
|---|---|
| 可用区间 | 严格 [1.0, 1.5];宽松 [0.5, 1.5]。编辑区 α<1 不完全可用 |
| α=0 中立化 | ⚠️ CER 0.221,双峰(34% 完美 / 14% 乱说),按说话人 0.04–0.44。首轮"已治愈"是 P6 说话人构成的假象 |
| 音高对齐 | 只在 α=0.25 / 0.5 有效(+0.21 / +0.47),α≥1 反而伤 0.4–0.7 |
| 路由 | 0.25/0.5 走对齐 ⇒ 端到端 UTMOS +0.10、CER +0.016 |
| 外推 | α=1.25 几乎零代价多给 25% 强度;1.5 仍可用;2 崩 |
| 负 α | ❌ 不可用;"反情感"不存在——UMAP 显示负 α 同时远离真实中立与真实情感,只是离开流形(§3.7) |
| 说话人保持 | α=0 的 SECS 0.874 ≈ 同一人中立录音 0.886 ⇒ 中立化不丢人 |
| 指标 | RA 只在可懂音频上可解释;4.1% 退化值集中在 |α|≥2 |
5 复现¶
source scripts/env.sh
for s in 0 1 2 3; do CUDA_VISIBLE_DEVICES=$s $PY emo/exp/M17_editor/m21_e4_gen.py --shard $s --nshard 4 & done; wait
bash emo/exp/M17_editor/run_m21v2_score.sh e4v2 0 1 2 3 # UTMOS/CER/SECS(GPU)+ RA(CPU)
$PY emo/exp/M17_editor/m21_e4_analyze.py
产物:outputs/m21/e4v2/{manifest_*,score_*,ra}.jsonl、analysis.json;锚点 outputs/m21/anchors_zh.*.jsonl。
订正记录(2026-09-05)
首轮(2026-09-01)建在 [E4 旧版] 的 P6 11 条、24 kHz 上,以下结论已被本轮取代:
「可用区间 [0, 1.5]」→ 严格 [1, 1.5];「α=0 MOS 2.86 / CER 0.10」→ 2.58 / 0.221;
「0.75 走对齐 +0.09」→ 无差(p=0.71);「路由 +0.18 MOS」→ +0.10;
「负 α 上音高对齐反而更稳」→ 方向成立(CER −0.29~−0.42)但仍不可用。
情感指标从 emotion2vec 换为 RA(E2)。首轮旧音频保留在 outputs/m21/e4/。