跳转至

M21-E8 · 分段 α:强度能不能按时间定位

状态 ✅ 完成(二轮重做,2026-09-05)
一句话 前半句和后半句给不同的 α,检验三件事:GT 里情感在句子里怎么分布、生成的强度是否落在 α 指定的位置、分段相对同均值单段有没有额外代价
模型 M20@420k
规模 GT 统计 21,301 对;生成 160 条 × 8 组合 = 1280 条,对照取自 E4 同批直路输出

TL;DR

分段 α 的时间定位是精确的:每半句的强度 ≈ 该半句 α 对应的整句强度,无串扰。 但分段本身有 0.04–0.35 的 UTMOS 代价(相对两半各自单段的平均),CER 无额外代价。

  • 📊 GT(2.1 万对):情感残差在句子里前段略多(前半 52.8%),最后 1/4 明显最少(0.17–0.20,均匀应为 0.25)——"情感在句末更强"不成立
  • ✅ (0,1) 组合:前半 RA 0.08、后半 0.89;(1,0):0.96 / −0.06——强度落在 α 指定的那一半
  • ⚠️ 同均值下分段的 UTMOS 收益(+0.25 ~ +0.77 vs 单段 0.5)全部来自避开中段谷:把 0.75 拆成 (0.5, 1.0) 反而 −0.25
  • 🔍 分段有代价:观测 UTMOS 比"两半单段平均"低 0.04–0.35,前弱后强时代价最大;CER 无差(+0.00 ~ +0.06)

1 评测设计

项 值
GT 统计 data/m20_cache 全部 21,301 对 x1_emo − x1_neu,逐帧残差能量按 1/2 与 1/4 分段求占比
生成 逐帧 α 张量:前半帧 α_front、后半帧 α_back,直路积分;同 seed、同声码器(16 kHz)
组合 均值 0.5:(0,1) (0.25,0.75) (0.5,0.5) (0.75,0.25) (1,0);均值 0.75:(0.5,1) (1,0.5) (0.75,0.75)
对照 同批 E4 的单段 direct α=0.5 / 0.75 与 pa_clamp α=0.5 / 0.75
自检 (0.5,0.5) 与 (0.75,0.75) 必须与单段 α=0.5 / 0.75 逐条相同
指标 E4 §1 质量评分体系;RA 另对前半 / 后半音频分别打分
可加性 分段结果 − 两半各自单段 α 整句值的平均(同条配对)

自检通过:(0.75,0.75) 与单段 α=0.75 的 UTMOS 逐条差为 0.0000(n=160)。逐帧 α 路径与标量路径一致。

2 结果

E8

2.1 GT:情感在句子里怎么分布

情感 n 前 1/4 2/4 3/4 后 1/4 前半占比
Angry 5534 0.242 0.289 0.296 0.173 0.531
Happy 5437 0.270 0.275 0.275 0.181 0.545
Sad 4812 0.270 0.276 0.267 0.187 0.546
Surprise 5518 0.240 0.269 0.291 0.201 0.509
合计 21301 0.528(中位 0.526;后半更强的样本 39.1%)

四种情感一致:残差在中段最多、最后 1/4 最少(比均匀低 20–30%)。首轮 n=200 的 0.529 / 37% 与此完全一致。

2.2 强度是否落在 α 指定的位置

(前 α, 后 α) RA 前半 RA 后半 参照:整句单段 α 的 RA
(0.00, 1.00) 0.08 0.89 α=0 → 0.09 · α=1 → 1.00
(0.25, 0.75) 0.22 0.75 α=0.25 → 0.24 · α=0.75 → 0.80
(0.50, 0.50) 0.59 0.54 α=0.5 → 0.58
(0.75, 0.25) 0.84 0.13
(1.00, 0.00) 0.96 −0.06
(0.50, 1.00) 0.54 0.99
(1.00, 0.50) 1.00 0.50

每半句的 RA 与"该 α 作用于整句"的 RA 相差 ≤ 0.1 ⇒ 控制是局部的:一半的 α 不泄漏到另一半。 半句 RA 的标准误约 0.05;半句 eGeMAPS 比整句噪一些,但足够分辨。

2.3 分段的质量代价

组合 UTMOS CER vs 同均值单段 direct(配对 ΔUTMOS) vs 两半单段平均(ΔUTMOS / ΔCER)
(0.00, 1.00) 2.27 0.159 +0.66 (vs 0.5) −0.35 / +0.03
(0.25, 0.75) 1.86 0.106 +0.25 −0.19 / +0.01
(0.75, 0.25) 2.01 0.127 +0.40 −0.04 / +0.03
(1.00, 0.00) 2.38 0.188 +0.77 −0.24 / +0.06
(0.50, 1.00) 1.92 0.063 −0.25 (vs 0.75) −0.22 / +0.00
(1.00, 0.50) 2.05 0.064 −0.12 −0.09 / +0.00
对照 direct 0.5 / 0.75 1.61 / 2.17 0.080 / 0.042
对照 pa_clamp 0.5 / 0.75 2.08 / 2.16 0.147 / 0.088 +0.47 / −0.01

全部配对差 p < 0.001(除标注外)。

两层读法

  1. 同均值比较:均值 0.5 的分段都比单段 0.5 好——但单段音高对齐(+0.47)也一样好, 而均值 0.75 的分段比单段 0.75 差。⇒ 收益不是分段带来的,是避开了 α=0.5 的谷; 一旦拆出来的某一半落进谷里((0.5, 1.0)),就亏
  2. 可加性比较:把分段与"两半各自单段的平均"比,UTMOS 一律偏低 0.04–0.35, 前弱后强的组合代价最大((0,1) −0.35,(0.25,0.75) −0.19),前强后弱几乎无代价((0.75,0.25) −0.04)。 CER 无额外代价(≤ +0.06,且与两半 CER 的平均一致)⇒ 分界处没有产生新的内容错误

2.4 看图:分段 α 的 mel 谱

补充实验 S3(提案待验收)。

E8 mel

两条样本(生气 0008_text00040、悲伤 0006_text00210,取分段效果最清楚且 α=0 可懂的),每条六行:真实中立录音、直路 α=0、直路 α=1、 分段 (前 0, 后 1)、分段 (前 1, 后 0)、直路 α=0.5 均匀对照。白虚线是句中点;右上角是该条前/后半的 RA。

  • 分段 (0, 1):白线左边的谐波结构、能量分布与 α=0 那行一致,右边与 α=1 那行一致;RA 前/后 −0.61 / 0.99(生气)、−0.50 / 0.71(悲伤)
  • 分段 (1, 0):镜像;RA 0.57 / −0.92、1.15 / −0.05
  • 均匀 α=0.5:整句处于两者之间,谐波"发虚"(中段谷的双梳齿),RA 前后半相近(0.34 / 0.59、0.51 / 0.65)
  • 分界处没有可见的断裂或爆音,与 §2.3 "分界不引入额外 CER" 一致

全量复核(M21-F,2026-09-10)

汇总页 补充 S7(提案待验收,验收后回填)。 全量 1276 条 × 8 组合(M21-F)。图 m21_e8_seg_full.png。自检 (0.75,0.75) ≡ 直路 0.75:n=1276,|ΔUTMOS| = 0.0000。

组合 RA 前半 / 后半 UTMOS vs 同均值单段(ΔUTMOS) 可加性(ΔUTMOS / ΔCER)
(0.00, 1.00) 0.08 / 0.83 2.25 +0.64 -0.36 / +0.024
(0.25, 0.75) 0.23 / 0.72 1.83 +0.22 -0.19 / +0.013
(0.75, 0.25) 0.79 / 0.08 1.96 +0.35 -0.06 / +0.027
(1.00, 0.00) 0.89 / -0.10 2.35 +0.74 -0.26 / +0.050
(0.50, 1.00) 0.52 / 0.89 1.89 -0.26 -0.25 / +0.001
(1.00, 0.50) 0.94 / 0.43 2.06 -0.10 -0.08 / +0.004

时间定位、避谷解释、可加性三条结论与 160 条版完全一致,数字差在 0.03 以内。

3 结论

项 结论
自然强度包络 前半略多(52.8%),句尾 1/4 最少;四情感一致;n=21,301
时间定位 ✅ 精确:半句 RA ≈ 对应 α 的整句 RA,误差 ≤ 0.1,无串扰
分段收益 ⚠️ UTMOS 收益全部来自避谷;分段本身有 0.04–0.35 代价(前弱后强最大)
内容 ✅ 分界不引入额外 CER
用法建议 分段 α 是表达工具(把强度放在想放的位置),不是音质工具;两半都应落在 E4 可用区间内

4 复现

source scripts/env.sh
$PY emo/exp/M17_editor/m21_e8_gt.py                                   # GT 21301 对(CPU)
for s in 0 1; do CUDA_VISIBLE_DEVICES=$((s+4)) $PY emo/exp/M17_editor/m21_e8_gen.py --shard $s --nshard 2 & done; wait
bash emo/exp/M17_editor/run_m21v2_score.sh e8v2 4 5                   # 含 --halves
$PY emo/exp/M17_editor/m21_e8_analyze.py
订正记录(2026-09-05)

首轮(P6 11 条,24 kHz)的五组合表与"情感分"(emotion2vec)已废; 结论方向一致(前段略强、收益来自避谷),本轮补上时间定位的直接证据、可加性检验与均值 0.75 的对照。

讨论