S9 · T2 完全 OOD:IEMOCAP¶
| 批次 / 日期 | 第二批延伸 · 用户 09-11 提出补 IEMOCAP · 数据 09-12 到位并核验完整 |
| 延续自 | S7 的四层结构,本页是缺的第五层 T2 |
| 状态 | ✅ 完成(2026-09-12):33,132 条生成 + 打分,5,636 条可用样本 |
| 数据 | /data-phy/Zhengwei/IEMOCAP/IEMOCAP_full_release,26 GB,5 Session × 151 对话 × 10,039 条标注 utterance,与官方发布逐项对齐(151 个 EmoEvaluation 文件、151 个转写、10,039 个 wav) |
1 目的与用法¶
目的:S7 的 T1 层(CREMA-D / RAVDESS)虽然换了说话人,但仍是录音室朗读的固定短句,与训练数据的录制条件相近。IEMOCAP 是对话、即兴、有交叠与噪声、长句,是真正意义上的完全分布外。
在论文里怎么用:主结果表的最后一行,回答"这套强度控制在真实对话语音上还成不成立"。这是审稿人最可能追问的一层。
2 与前四层的差异(为什么它是 T2)¶
T0 / T1 / T2 的编号含义与五层数据集全貌见总表 · 评测数据集。
| 维度 | 训练(ESD) | T1(CREMA-D / RAVDESS) | T2(IEMOCAP) |
|---|---|---|---|
| 说话人 | 17 位,见过 | 未见 | 未见(10 位,5 Session × 男女各 1) |
| 语料 | 录音室朗读 | 录音室朗读 | 对话(即兴 + 剧本) |
| 句子 | 350 句固定 | 2–12 句固定 | 自由内容,中位 3.5 s、最长 34 s |
| 录音条件 | 干净单人 | 干净单人 | 有交叠、笑声、环境噪声 |
| 标签来源 | 演员按指定情感演 | 演员按指定情感与强度演 | 多名标注者事后投票,含未达成一致的条目 |
| 强度标注 | 无(只有情感类别) | 有(LO/MD/HI、normal/strong) | 无离散强度档,但有连续的 V/A/D 评分 |
3 数据筛选(已核算)¶
| 步骤 | 条数 |
|---|---|
| 全部标注 utterance | 10,039 |
| 去掉 xxx(标注者未达成一致)、fru / fea / dis / oth | −4,401 |
| 保留 ang / hap+exc / sad / sur / neu | 5,638 |
映射后的类别分布:
| 类别 | 条数 | 说明 |
|---|---|---|
| Neutral | 1,708 | 作锚点与中立参考 |
| Happy | 1,636 | hap 595 + exc 1,041(本领域常规合并) |
| Angry | 1,103 | |
| Sad | 1,084 | |
| Surprise | 107 | 太少,结论单独标注 n,不进汇总均值 |
另两个维度:即兴 3,003 / 剧本 2,635(分开报,即兴更自发、更难);151 个对话里 135 个含中立条目。
4 与前四层不同的三处处理(本层特有)¶
| 问题 | 处理 |
|---|---|
| 没有平行中立录音(ESD 有同人同句的中立版本,IEMOCAP 没有) | RA 锚点改用该说话人在本库内的全部中立条目的均值作 0 点、该说话人该情感条目的均值作 1 点;不做同句配对 |
| 长句(最长 34 s,371 条超 10 s) | 与其他层一致取整句,不裁剪;whisper 编码上限 30 s,超过 30 s 的条目剔除并记录条数 |
| 有交叠与噪声 | 不做降噪、不做 VAD 裁剪——保持"真实对话"的原样,这正是本层要测的;但 CER 会显著高于前四层,CER 只作层内相对比较,不跨层比 |
5 评测口径(与 S7 完全一致,除上面三处)¶
| 项 | 值 |
|---|---|
| 生成 | 正式链路(音高对齐混合)七档 α = 0 / 0.25 / 0.5 / 0.75 / 1.0 / 1.25 / 1.5 |
| 条件 | 在线抽取(whisper encoder + CAM++),与 T1 相同 |
| 指标 | UTMOS · CER(whisper-large-v3)· SECS · RA(归一)· EIT 三个成对准确率 · BWS 分 |
| 锚点 | 本库自己的真实中立 / 真实情感(按 §4 的说话人内均值口径) |
| 分层报告 | 按情感(Surprise 单列)× 按即兴/剧本 |
6 实验计划¶
| 阶段 | 内容 | 预估 |
|---|---|---|
| 1 | 解析 EmoEvaluation → 建清单 manifests/iemocap_eval.jsonl(含 utt、说话人、情感、时长、即兴/剧本、wav 路径) |
分钟级 |
| 2 | 生成:5,638 条 × 7 档,6 卡分片 | ~6 h |
| 3 | 打分:UTMOS / CER / SECS / RA | ~2 h |
| 4 | 分析并入 m21_s7_analyze.py 的第五层,回填 S7 §5 与跨层汇总 |
分钟级 |
可选降规模:若只为主结果表的一行,可每情感随机抽 300 条(Surprise 全取 107),共 1,207 条,生成约 1.5 h。建议先跑全量,因为这是审稿人最会追问的一层,n 大更稳。
7 结果(2026-09-12)¶
生成 33,132 条(3,928 条情感输入 × 7 档 + 锚点),6 卡约 6 h;打分 6 分片约 2.5 h。
分析并入 m21_s7_analyze.py 的第五层,产物 outputs/m21full/s7_analysis.json。
7.1 七档主表¶
| α | 0 | 0.25 | 0.5 | 0.75 | 1.0 | 1.25 | 1.5 | 真实中立 | 真实情感 |
|---|---|---|---|---|---|---|---|---|---|
| UTMOS ↑ | 2.13 | 1.90 | 1.78 | 1.88 | 1.98 | 1.85 | 1.62 | 2.40 | 2.21 |
| CER ↓ | 0.707 | 0.621 | 0.483 | 0.379 | 0.346 | 0.349 | 0.395 | 0.194 | 0.139 |
| SECS ↑ | 0.690 | 0.695 | 0.711 | 0.740 | 0.770 | 0.783 | 0.781 | 见下注 | 1.000(恒等) |
| RA | 0.30 | 0.37 | 0.46 | 0.61 | 0.79 | 0.95 | 1.16 | -0.10 | 0.42 |
| 归一 RA | 0.78 | 0.90 | 1.08 | 1.37 | 1.71 | 2.03 | 2.43 | 0 | 1 |
为什么 SECS 的锚点列是空的
SECS 比的是「生成音频 vs 该条的真实情感录音」。前四层里 raw_neu 锚点的参照是同句的真实中立录音(与情感录音是两条不同的录音),所以能给出有意义的基线(ESD-zh 0.887、RAVDESS 0.898)。
IEMOCAP 没有同句配对的中立录音,建清单时 raw_neu 的参照被设成了它自己,于是两个锚点都变成「自己跟自己比」,恒等于 1.000,没有信息量。
模型输出那七档的 SECS 是有效的(参照各自输入的真实情感录音);缺的只是「同说话人不同录音之间」的上界基线,所以本层的 0.77 只能与其他层横向比,不能判断它离该库的天花板有多远。补法见 §9。
7.2 可分性与刻度¶
| 指标 | 值 |
|---|---|
| EIT(α = 0.5 / 0.75 / 1.0) | W<M 0.80 · M<S 0.85 · W<S 0.87(n = 3,923,随机 50%) |
| BWS-auto(α = 0 / 0.5 / 1.0 / 1.5) | -0.64 · -0.14 · +0.06 · +0.72(n = 3,907,严格单调) |
7.3 分层¶
即兴 vs 剧本(RA):
| 输入类型 | 真实录音 | α=0 | α=0.5 | α=1.0 | α=1.5 | n |
|---|---|---|---|---|---|---|
| improvised 即兴 | 0.52 | 0.34 | 0.53 | 0.91 | 1.27 | 1,902 |
| scripted 剧本 | 0.32 | 0.27 | 0.39 | 0.67 | 1.05 | 2,019 |
即兴语音的输出强度始终高于剧本(α=1 时 0.91 vs 0.67),与真实录音的排序(0.52 vs 0.32)一致——模型读到了"这条本身有多情绪化",不只是情感类别。
按情感:
| 情感 | n(全档) | EIT W<S | RA@α=1 |
|---|---|---|---|
| Angry | 7,721 | 0.92 | 0.67 |
| Happy | 11,445 | 0.86 | 0.49 |
| Sad | 7,581 | 0.85 | 1.35 |
| Surprise | 749 | 0.85 | 0.73 |
Surprise 只有 107 条输入(749 条全档样本),单列不进均值。
8 结论¶
- 强度控制在真实对话语音上依然成立:归一 RA 从 0.78 单调升到 2.43,EIT 三个准确率 0.80 / 0.85 / 0.87(n = 3,923),BWS-auto 严格单调(−0.64 → +0.72)。这是本文最强的 OOD 证据——说话人、语料、说话风格、标签来源全都变了。
- 但整条刻度被抬高了:α=0 的归一 RA 是 0.78 而不是 0(前四层都在 0 附近),α=1 到 1.71。原因是本层的锚点跨度极小——该库真实中立 RA −0.10、真实情感 0.42,跨度只有 0.52,而 ESD 是 0.96。对话语音里"中立"和"情感"本来就没有朗读语料那么泾渭分明,归一后的数字会被放大,跨层比较要看 EIT 而不是归一 RA。
- 可懂度是本层的硬伤:α=1 的 CER 0.346,而该库真实录音本身就有 0.194(对话、交叠、背景噪声)。相对增量 +0.15 与 CREMA-D 同量级,但绝对值高到不能与前四层并列。
- 音色保持最弱:SECS 0.77(ESD 0.92、RAVDESS 0.83)。说话人分布外加上录音条件差,音色迁移的损失最明显。
- 即兴比剧本更有情绪、模型跟着走:这条支持"模型编码的是强度而非类别",与 CREMA-D 的 LO/MD/HI、RAVDESS 的 normal/strong 三处证据一致。
9 待补:SECS 的层内基线¶
本层缺「同说话人不同录音之间的 SECS」这个上界参照(原因见 §7.1 的注)。补法:对每条真实录音,从同一说话人的其他录音里随机取一条作参照,算两者的 SECS,取均值即本层的天花板。只需对已有音频重算 SECS,不必重跑生成,约十几分钟。补上后就能判断模型输出的 0.77 距该库上界还有多远。