# AWDE 实验总览与记录规范

> 维护规则：每次新增 AWDE 实验后，必须把本次实验的关键结果写到本文件最上方的“最新实验速查”中，并附上详细结果 md 路径。不要只把结果写在子实验目录里。

## 全局结果对比表

说明：

- 表中 AWDE 行使用各阶段正式选择准则选出的代表 checkpoint；少数阶段同时列出 Has0 最强点和回归/多分类主推荐点。
- `MAE` 越低越好，其余指标越高越好。
- TEXT paper 的 Acc/MAE/Corr/F1 来自 `/root/research/other/TEXT.pdf` 原文 Table 1；该表说明 Acc-2 和 F1 的两个数分别为 negative/non-negative（含 zero）与 negative/positive（不含 zero）设置。本地 TEXT 复现使用 `/root/exp/TEXT/VA_noE` 的 raw512 VA_noE 结果。
- `F1 (Has0/Non0)` 使用同一 checkpoint 的 `Has0_F1_score / Non0_F1_score`。
- TEXT run3 是 2026-05-25 手动提前停止后记录的 epoch 4 观察点；TEXT mean 按报告中三次结果计算。

| 类别 | 实验/基线 | 代表配置与选择口径 | Has0 | Non0 | F1 (Has0/Non0) | Acc-3 | Acc-5 | Acc-7 | MAE | Corr | 来源/备注 |
| --- | --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| TEXT | local run1 | raw512 VA_noE, valid Has0 | 0.8324 | 0.8649 | 0.8292/0.8659 | 0.6609 | 0.5130 | 0.4885 | 0.5872 | 0.7923 | `/root/exp/TEXT/VA_noE` |
| TEXT | local run2 | raw512 VA_noE, valid Has0 | 0.8452 | 0.8696 | 0.8442/0.8718 | 0.6924 | 0.5660 | 0.5510 | 0.5086 | 0.8047 | 本地 TEXT 最强单次 |
| TEXT | local run3 | epoch 4 手动停止观察点 | 0.8410 | 0.8643 | 0.8395/0.8663 | 0.6823 | 0.5581 | 0.5366 | 0.5248 | 0.8053 | 未完整 early stop |
| TEXT | local mean | run1/run2/run3 均值 | 0.8395 | 0.8663 | 0.8376/0.8680 | 0.6785 | 0.5457 | 0.5254 | 0.5402 | 0.8008 | 本地复现均值 |
| TEXT | TEXT paper | 论文报告值 | 0.8502 | 0.8657 | 0.8501/0.8685 | - | 0.5405 | 0.5229 | 0.5280 | 0.7860 | paper Table 1 |
| AWDE | `0615` h160 encoder-FRA | `enc_full_h160_lr5e5_b8_d15`, EMA composite | 0.8465 | 0.8861 | 0.8434/0.8869 | 0.7057 | 0.5888 | 0.5692 | 0.4812 | 0.8184 | 0615 test 端最强单次 |
| AWDE | `0615` mean | encoder-FRA 4-run mean | 0.8372 | 0.8780 | 0.8333/0.8784 | 0.7024 | 0.5837 | 0.5641 | 0.4876 | 0.8125 | 新 encoder 特征 4 卡适配 |
| AWDE | `0602-6` | `raw512_depth2_s08_b35`, EMA composite | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.7032 | 0.5851 | 0.5666 | 0.5038 | 0.7967 | 原方法 Full 正式主结果 |
| AWDE | `0603` | `eneu_final_short_shrink15_zheavy`, EMA zero-heavy composite | 0.8343 | 0.8652 | 0.8316/0.8665 | 0.6986 | 0.5748 | 0.5574 | 0.5103 | 0.7912 | Zero F1=0.6738 |
| AWDE | `0602-5` | `rescue_s08_b35_ema_comp`, EMA composite | 0.8337 | 0.8668 | 0.8303/0.8677 | 0.6980 | 0.5759 | 0.5576 | 0.5118 | 0.7918 | EMA/SmoothL1/composite 主线 |
| AWDE | `0602-4` | `deats_s10_b35_a10_p30_loss`, valid loss | 0.8399 | 0.8676 | 0.8380/0.8694 | 0.6836 | 0.5585 | 0.5430 | 0.5219 | 0.7879 | Directed EATS + loss selection |
| AWDE | `0602-3` | `eats_s08_b35_a10_p20`, valid Has0 | 0.8403 | 0.8632 | 0.8394/0.8657 | 0.6795 | 0.5561 | 0.5387 | 0.5232 | 0.7896 | EATS Corr 主推荐 |
| AWDE | `0602-3` | `eats_s12_b20_a10_p20`, valid Has0 | 0.8339 | 0.8608 | 0.8319/0.8626 | 0.6815 | 0.5636 | 0.5490 | 0.5189 | 0.7870 | 0602-3 MAE/Acc-5/7 最强 |
| AWDE | `0602-2` | `ta_k3_a10_p20`, valid Has0 | 0.8448 | 0.8542 | 0.8467/0.8587 | 0.6643 | 0.5353 | 0.5196 | 0.5482 | 0.7741 | TEXT-style temporal, Has0 最强 |
| AWDE | `0602-2` | `ta_k3_a15_p30`, valid Has0 | 0.8420 | 0.8580 | 0.8421/0.8611 | 0.6716 | 0.5413 | 0.5248 | 0.5397 | 0.7818 | 0602-2 主推荐 |
| AWDE | `0602` | `pre_a05_p20`, valid Has0 | 0.8437 | 0.8498 | 0.8462/0.8548 | 0.6675 | 0.5402 | 0.5214 | 0.5489 | 0.7720 | 0602 Has0 最强 |
| AWDE | `0602` | `pre_a10_p20`, valid Has0 | 0.8364 | 0.8654 | 0.8342/0.8670 | 0.6845 | 0.5593 | 0.5441 | 0.5250 | 0.7771 | pre-align gate 主推荐 |
| AWDE | `0601` | `prior20`, valid Has0 | 0.8371 | 0.8465 | 0.8375/0.8498 | 0.6587 | 0.5375 | 0.5224 | 0.5483 | 0.7556 | 外部融合权重 prior 有效 |
| AWDE | `0531` | NPU 跑通 best single, valid Has0 | 0.8309 | 0.8305 | 0.8331/0.8354 | 0.6587 | 0.5340 | 0.5194 | 0.5732 | 0.7299 | 工程跑通，Corr/Non0 弱 |

原 Full `0602-6` 主结果相对关键基线：

| 对比对象 | Has0 Delta | Non0 Delta | Acc-5 Delta | Acc-7 Delta | MAE Delta | Corr Delta |
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
| vs `0602-5` 主推荐 | +0.0073 | +0.0022 | +0.0092 | +0.0090 | -0.0080 | +0.0049 |
| vs TEXT paper | -0.0092 | +0.0033 | +0.0446 | +0.0437 | -0.0242 | +0.0107 |
| vs TEXT local run2 | -0.0042 | -0.0006 | +0.0191 | +0.0156 | -0.0048 | -0.0080 |
| vs TEXT local mean | +0.0015 | +0.0027 | +0.0394 | +0.0412 | -0.0364 | -0.0041 |

结论：`0602-6 raw512_depth2_s08_b35` 是 0615 前的原方法 Full 正式主结果。它已经超过 TEXT paper 的 Non0、Acc-5、Acc-7、MAE、Corr，也超过本地 TEXT run2 的 Acc-5、Acc-7、MAE；剩余短板主要是相对 TEXT run2/run3 的 Corr，以及相对 TEXT paper/run2 的 Has0。

## 论文报告口径：原 Full vs TEXT paper vs 0615

这一节只放论文写作最常用的口径：TEXT paper target、原 AWDE Full、Full 4-seed 均值，以及 0615 encoder-FRA 结果。MAE 越低越好，因此 MAE delta 为负表示 AWDE 更好。

| Method | 口径 | Has0 | Non0 | F1 (Has0/Non0) | Acc-5 | Acc-7 | MAE | Corr |
| --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| TEXT paper | 论文报告目标 | 0.8502 | 0.8657 | 0.8501/0.8685 | 0.5405 | 0.5229 | 0.5280 | 0.7860 |
| Original Full `0602-6` | single seed `20261100` | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.5851 | 0.5666 | 0.5038 | 0.7967 |
| Full `0605-6` mean | 4-seed mean | 0.8393 | 0.8695 | 0.8366/0.8706 | 0.5775 | 0.5591 | 0.5064 | 0.7951 |
| Encoder-FRA `0615` winner | valid composite winner, h128 b12 | 0.8324 | 0.8795 | 0.8278/0.8797 | 0.5823 | 0.5621 | 0.4905 | 0.8123 |
| Encoder-FRA `0615` test-best | h160 b8 | 0.8465 | 0.8861 | 0.8434/0.8869 | 0.5888 | 0.5692 | 0.4812 | 0.8184 |
| Encoder-FRA `0615` mean | 4-run mean | 0.8372 | 0.8780 | 0.8333/0.8784 | 0.5837 | 0.5641 | 0.4876 | 0.8125 |

相对 TEXT paper 的 delta：

| Method | dHas0 | dNon0 | dAcc-5 | dAcc-7 | dMAE | dCorr |
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
| Original Full `0602-6` | -0.0092 | +0.0033 | +0.0446 | +0.0437 | -0.0242 | +0.0107 |
| Full `0605-6` mean | -0.0109 | +0.0038 | +0.0370 | +0.0362 | -0.0216 | +0.0091 |
| Encoder-FRA `0615` winner | -0.0178 | +0.0138 | +0.0418 | +0.0392 | -0.0375 | +0.0263 |
| Encoder-FRA `0615` test-best | -0.0037 | +0.0204 | +0.0483 | +0.0463 | -0.0468 | +0.0324 |
| Encoder-FRA `0615` mean | -0.0130 | +0.0123 | +0.0432 | +0.0412 | -0.0404 | +0.0265 |

相对原 Full `0602-6` 的 delta：

| Method | dHas0 | dNon0 | dAcc-5 | dAcc-7 | dMAE | dCorr |
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
| Full `0605-6` mean | -0.0017 | +0.0005 | -0.0076 | -0.0075 | +0.0026 | -0.0016 |
| Encoder-FRA `0615` winner | -0.0086 | +0.0105 | -0.0028 | -0.0045 | -0.0133 | +0.0156 |
| Encoder-FRA `0615` test-best | +0.0055 | +0.0171 | +0.0037 | +0.0026 | -0.0226 | +0.0217 |
| Encoder-FRA `0615` mean | -0.0038 | +0.0090 | -0.0014 | -0.0025 | -0.0162 | +0.0158 |

论文写法建议：

- 原 Full `0602-6` 已经超过 TEXT paper 的 Non0、Acc-5、Acc-7、MAE、Corr，但 Has0 仍低 0.0092。
- 0615 encoder-FRA 后，AWDE 在 Non0、Acc-5、Acc-7、MAE、Corr 上优势扩大，尤其 MAE/Corr 提升明显。
- 0615 h160 单次几乎补齐 Has0 差距：Has0 只低 TEXT paper 0.0037，同时 Non0 +0.0204、Acc-5 +0.0483、Acc-7 +0.0463、MAE -0.0468、Corr +0.0324。
- 若论文主表只允许一个 AWDE 结果，保守口径用 `0615` 4-run mean；若展示 best single/run-level ablation，推荐列 `0615 h160` 作为 encoder-FRA 最强单次。

## 最新实验速查

### 2026-06-15 `0615`: Encoder-FRA features on 0602-6 Full

状态：4 卡 encoder-FRA 适配实验已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无运行进程。

目的：

```text
在不改变 0602-6 Full 方法的前提下，把旧 768/74/35 特征替换为新 encoder 特征 5120/1024/768，并做 4 卡超参适配。
```

代码目录：

```text
/root/AWDE/0615
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0615
```

pkl：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0615/mosei_awde_0615_encoder_raw512_fp16.pkl
```

关键文档：

```text
/root/AWDE/0615/AWDE_0615_ENCODER_FEATURE_RESULTS.md
/root/AWDE/0615/docs/AWDE_0615_ENCODER_FEATURE_PLAN.md
```

正式结果按 EMA validation composite 选择 best epoch：

| Run | Best | Composite | Has0 | Non0 | F1 (Has0/Non0) | Acc-5 | Acc-7 | MAE | Corr | Zero-F1 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| `enc_full_h128_lr8e5_b8_d12` | 6 | 0.661280 | 0.8311 | 0.8734 | 0.8267/0.8737 | 0.5793 | 0.5604 | 0.4935 | 0.8076 | 0.6716 |
| `enc_full_h128_lr5e5_b8_d15` | 5 | 0.663230 | 0.8386 | 0.8729 | 0.8351/0.8734 | 0.5845 | 0.5647 | 0.4854 | 0.8117 | 0.6735 |
| `enc_full_h160_lr5e5_b8_d15` | 4 | 0.673390 | 0.8465 | 0.8861 | 0.8434/0.8869 | 0.5888 | 0.5692 | 0.4812 | 0.8184 | 0.6724 |
| `enc_full_h128_lr8e5_b12_d12` | 6 | 0.675570 | 0.8324 | 0.8795 | 0.8278/0.8797 | 0.5823 | 0.5621 | 0.4905 | 0.8123 | 0.6733 |
| mean | - | - | 0.8372 | 0.8780 | 0.8333/0.8784 | 0.5837 | 0.5641 | 0.4876 | 0.8125 | 0.6727 |
| std | - | - | 0.0070 | 0.0062 | 0.0077/0.0061 | 0.0040 | 0.0038 | 0.0054 | 0.0045 | 0.0009 |

结论：

- 验证集 composite winner 是 `h128/lr8e-5/b12/dropout0.12`。
- test 端综合最强是 `h160/lr5e-5/b8/dropout0.15`，MAE=0.4812、Corr=0.8184、Has0=0.8465、Non0=0.8861。
- 相比原 Full `0602-6`，0615 mean 的 MAE 从 0.5038 降到 0.4876，Corr 从 0.7967 升到 0.8125；主要提升来自连续强度回归和 Non0 判别。

### 2026-06-04 `0605-6`: Full 4-seed seed audit for D3

状态：4 卡原方法 Full 4-seed 已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

目的：

```text
使用原方法 Full 跑 4 个 seed，其中包含 D3 使用的 seed=20261100，用于排除 D3 结果是否由 seed 差异造成。
```

代码目录：

```text
/root/exp/AWDE/0602-6
```

本轮输出目录：

```text
/root/exp/AWDE/0605-6
```

关键文档：

```text
/root/exp/AWDE/0605-6/AWDE_0605_6_FULL_4SEED_RESULTS.md
/root/exp/AWDE/0605-melt/AWDE_0605_MELT_METHOD_ABLATION_RESULTS.md
```

启动脚本：

```text
/root/exp/AWDE/0605-6/scripts/start_0605_6_full_4seed_npu4.sh
```

汇总脚本：

```text
/opt/conda/envs/tlw/bin/python /root/exp/AWDE/0605-6/scripts/summarize_0605_6_full_4seed.py
```

正式结果按 EMA validation composite 选择 best epoch：

| Run | Seed | Best | Composite | Has0 | Non0 | F1 (Has0/Non0) | Acc-5 | Acc-7 | MAE | Corr | Zero-F1 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| `full_seed_20261100` | 20261100 | 5 | 0.651960 | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.5851 | 0.5666 | 0.5038 | 0.7967 | 0.6771 |
| `full_seed_20261200` | 20261200 | 4 | 0.647000 | 0.8382 | 0.8657 | 0.8358/0.8671 | 0.5774 | 0.5596 | 0.5041 | 0.7949 | 0.6796 |
| `full_seed_20261201` | 20261201 | 7 | 0.654290 | 0.8390 | 0.8737 | 0.8359/0.8746 | 0.5669 | 0.5482 | 0.5148 | 0.7916 | 0.6616 |
| `full_seed_20261202` | 20261202 | 5 | 0.651040 | 0.8390 | 0.8696 | 0.8360/0.8704 | 0.5804 | 0.5619 | 0.5030 | 0.7972 | 0.6755 |
| mean | - | - | - | 0.8393 | 0.8695 | 0.8366/0.8706 | 0.5775 | 0.5591 | 0.5064 | 0.7951 | 0.6734 |
| std | - | - | - | 0.0012 | 0.0033 | 0.0012/0.0031 | 0.0077 | 0.0078 | 0.0056 | 0.0025 | 0.0081 |

同 seed `20261100` 对比：

| Method | Has0 | Non0 | F1 (Has0/Non0) | Acc-5 | Acc-7 | MAE | Corr | Zero-F1 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| Full seed 20261100 | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.5851 | 0.5666 | 0.5038 | 0.7967 | 0.6771 |
| D3 seed 20261100 | 0.8431 | 0.8707 | 0.8410/0.8721 | 0.5806 | 0.5613 | 0.5004 | 0.7998 | 0.6719 |
| D3 - Full | +0.0021 | +0.0017 | +0.0025/+0.0018 | -0.0045 | -0.0053 | -0.0034 | +0.0031 | -0.0052 |

结论：

- `full_seed_20261100` 完全复现 0602-6 Full 主结果，说明 0605-6 的 Full 配置与主线对齐。
- D3 与 Full 的差异不是由 seed 不同导致；同 seed 下 D3 仍表现为 MAE/Corr 略好，但 Acc-5/Acc-7 和 Zero-F1 略低。
- `temporal_desc_bias=0.35` 更像细粒度离散强度/zero 校准项，不是 MAE/Corr 的单调正收益项。后续建议扫描 `0.0/0.10/0.20/0.35`。

### 2026-06-04 `0605-melt`: D/E 方法消融

状态：4 卡方法消融已完成，D1/D2/D3/E1 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

代码目录：

```text
/root/exp/AWDE/0602-6
```

本轮输出目录：

```text
/root/exp/AWDE/0605-melt
```

pkl：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-6/mosei_awde_0602_6_raw512.pkl
```

关键文档：

```text
/root/exp/AWDE/0605分析/AWDE_0605_METHOD_ABLATION_DESIGN.md
/root/exp/AWDE/0605-melt/AWDE_0605_MELT_METHOD_ABLATION_RESULTS.md
```

启动脚本：

```text
/root/exp/AWDE/0605-melt/scripts/start_0605_melt_npu4.sh
```

汇总脚本：

```text
/opt/conda/envs/tlw/bin/python /root/exp/AWDE/0605-melt/scripts/summarize_0605_melt_runs.py
```

Full 对照：

```text
awde_0602_6_raw512_depth2_s08_b35
```

共同设置：

```text
seed = 20261100
feature_layers = 2
align_layers = 2
loss = SmoothL1(beta=0.5)
EMA = true, ema_decay=0.997, ema_start_epoch=4
selection = valid Corr - 0.50 * valid MAE + 0.20 * valid Acc-5
early_stop_patience = 25
```

本轮改动：

| ID | 消融 | 参数改动 |
| --- | --- | --- |
| D1 | w/o temporal synchronizer | `--no-use_temporal_align --temporal_align_type none` |
| D2 | TEXT-style temporal conv | `--temporal_align_type text --temporal_kernel 3` |
| D3 | EATS w/o final-description bias | `--temporal_desc_bias 0.0` |
| E1 | w/o prior in SMoE | `--prior_strength 0.0` |

正式结果按 EMA validation composite 选择 best epoch，Delta 为 `Ablation - Full`：

| Run | Best | Composite | Has0 | Non0 | F1 (Has0/Non0) | Acc-5 | Acc-7 | MAE | Corr | Zero F1 | Key Delta |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| Full | 5 | 0.651960 | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.5851 | 0.5666 | 0.5038 | 0.7967 | 0.6771 | baseline |
| D1 | 7 | 0.650350 | 0.8379 | 0.8652 | 0.8354/0.8664 | 0.5772 | 0.5591 | 0.5164 | 0.7825 | 0.6761 | MAE +0.0126, Corr -0.0142 |
| D2 | 7 | 0.645580 | 0.8317 | 0.8599 | 0.8288/0.8611 | 0.5664 | 0.5482 | 0.5183 | 0.7855 | 0.6609 | Acc-5 -0.0187, Acc-7 -0.0184 |
| D3 | 5 | 0.658130 | 0.8431 | 0.8707 | 0.8410/0.8721 | 0.5806 | 0.5613 | 0.5004 | 0.7998 | 0.6719 | MAE -0.0034, Corr +0.0031, but Acc-5/7 lower |
| E1 | 7 | 0.662520 | 0.8401 | 0.8715 | 0.8372/0.8724 | 0.5774 | 0.5587 | 0.5041 | 0.7967 | 0.6768 | Acc-5 -0.0077, Acc-7 -0.0079 |

结论：

- D1/D2 支持 Directed EATS 是 AWDE 细粒度回归/强度判断的重要模块；关闭同步或替换成 TEXT-style temporal conv 都会损害 MAE、Corr、Acc-5、Acc-7。
- D2 是本轮最弱消融，说明传统 temporal conv 不能替代 explanation-attention soft anchor 驱动的 Directed EATS。
- D3 显示 EATS 内部 final-description bias 不是单 seed 下的单调正收益：MAE/Corr 略好，但 Acc-5/Acc-7 和 Zero-F1 下降。建议多 seed 或扫描 `temporal_desc_bias=0.10/0.20/0.35` 后再写强结论。
- E1 显示 Qwen prior 不是 MAE/Corr 的唯一来源，但能稳定 Acc-5/Acc-7 和 router 分布；去掉 prior 后 test router 从 Full 的 `[0.535673, 0.302060, 0.162267]` 变成 `[0.485216, 0.226345, 0.288439]`，视觉权重明显升高。

### 2026-06-04 `0602-6`: Long-Capacity raw512 + depth2 RESCUE

状态：4 卡长训练/容量实验已完成，4 个 run 均为 `completed`。

代码目录：

```text
/root/exp/AWDE/0602-6
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0602-6
```

pkl：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-6/mosei_awde_0602_6_raw512.pkl
```

关键文档：

```text
/root/exp/AWDE/0602-6/docs/AWDE_0602_6_LONG_CAPACITY_PLAN.md
/root/exp/AWDE/0602-6/docs/AWDE_0602_6_LONG_CAPACITY_RESULTS.md
/root/exp/AWDE/0605分析/AWDE_0605_METHOD_EXPERIMENT_DEEP_DIVE.md
/root/exp/AWDE/0605分析/AWDE_0605_METHOD_ABLATION_DESIGN.md
```

启动脚本：

```text
/root/exp/AWDE/0602-6/scripts/start_0602_6_npu4.sh
```

汇总脚本：

```text
/opt/conda/envs/tlw/bin/python /root/exp/AWDE/0602-6/scripts/summarize_0602_6_runs.py
```

核心改动：

- 重新构建 raw512 pkl：`text_clue=50`，`audio_clue=512`，`visual_clue=512`，`final_description=200`。
- 旧 AWDE pkl 的 audio/video explanation 只保留 200 token；0602-6 统计显示 audio/video raw explanation p50 约 460-470 词，旧设置会明显截断。
- `FeatureEncoder` 与 explanation-feature aligner 从 1 层加到 2 层。
- 保留 0602-5 已验证有效的 `SmoothL1(beta=0.5) + EMA + validation composite selection`。
- 长训上限提高到 `epochs=151`，`early_stop_patience=25`，用于确认 best epoch 是否只是训练不够导致。
- 同时做 raw200 depth2 control、raw512 depth2 exchange、raw512 depth1 BERT fine-tune 对照。

正式选择准则：

```text
selection_metric = composite
selection_mode = max
composite = valid_Corr - 0.50 * valid_MAE + 0.20 * valid_Mult_acc_5
loss = SmoothL1(beta=0.5)
use_ema = true
主线 ema_decay = 0.997
主线 ema_start_epoch = 4
early_stop_patience = 25
```

正式结果按 EMA validation composite 选择 best epoch：

| Run | Best | Source | Composite | Has0 | Non0 | F1 (Has0/Non0) | Acc-3 | Acc-5 | Acc-7 | MAE | Corr | Zero F1 | Mean Test Router Weights [T,A,V] |
| --- | ---: | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0602_6_raw512_depth2_s08_b35` | 5 | EMA | 0.651960 | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.7032 | 0.5851 | 0.5666 | 0.5038 | 0.7967 | 0.6771 | [0.535673, 0.302060, 0.162267] |
| `awde_0602_6_raw512_depth2_exchange_s08_b35` | 5 | EMA | 0.639960 | 0.8384 | 0.8687 | 0.8360/0.8702 | 0.6907 | 0.5690 | 0.5512 | 0.5072 | 0.7948 | 0.6649 | [0.553680, 0.294608, 0.151712] |
| `awde_0602_6_raw200_depth2_s08_b35_control` | 7 | EMA | 0.628860 | 0.8364 | 0.8657 | 0.8338/0.8670 | 0.6954 | 0.5709 | 0.5527 | 0.5147 | 0.7887 | 0.6700 | [0.467973, 0.325045, 0.206982] |
| `awde_0602_6_raw512_depth1_bertft_s08_b35` | 3 | EMA | 0.639340 | 0.8349 | 0.8616 | 0.8313/0.8618 | 0.6909 | 0.5739 | 0.5570 | 0.5143 | 0.7883 | 0.6843 | [0.462601, 0.346947, 0.190452] |

raw512 + depth2 相对关键对照：

| 对照 | Has0 | Non0 | Acc-5 | Acc-7 | MAE | Corr | 结论 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| vs raw200 depth2 | +0.0046 | +0.0033 | +0.0142 | +0.0139 | -0.0109 | +0.0080 | raw512 是本轮最明确收益来源 |
| vs 0602-5 main | +0.0073 | +0.0022 | +0.0092 | +0.0090 | -0.0080 | +0.0049 | 0602-6 全指标超过上一主线 |
| vs raw512 depth2 exchange | +0.0026 | +0.0003 | +0.0161 | +0.0154 | -0.0034 | +0.0019 | raw512 下 exchange 不建议进主线 |
| vs raw512 depth1 BERT fine-tune | +0.0061 | +0.0074 | +0.0112 | +0.0096 | -0.0105 | +0.0084 | 当前 BERT fine-tune 配置不如 frozen BERT depth2 |

与 TEXT 对比：

| Method | Has0 | Non0 | F1 (Has0/Non0) | Acc-5 | Acc-7 | MAE | Corr |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| TEXT paper | 0.8502 | 0.8657 | 0.8501/0.8685 | 0.5405 | 0.5229 | 0.5280 | 0.7860 |
| TEXT local run2 | 0.8452 | 0.8696 | 0.8442/0.8718 | 0.5660 | 0.5510 | 0.5086 | 0.8047 |
| TEXT local mean | 0.8395 | 0.8663 | 0.8376/0.8680 | 0.5457 | 0.5254 | 0.5402 | 0.8008 |
| AWDE 0602-6 raw512 depth2 | 0.8410 | 0.8690 | 0.8385/0.8703 | 0.5851 | 0.5666 | 0.5038 | 0.7967 |

结论：

- 主推荐：`awde_0602_6_raw512_depth2_s08_b35`。
- 0602-6 说明之前 AWDE 与 TEXT 的输入容量不公平：TEXT local raw512 使用 512-token audio/video clue，旧 AWDE 只用 200-token raw explanation。
- raw512 depth2 是当前 AWDE 正式最强单次结果：Has0、Non0、Acc-5、Acc-7、MAE、Corr 全部超过 0602-5 主线。
- 相对 TEXT paper，AWDE 0602-6 除 Has0 外全部更好；相对本地 TEXT run2，AWDE 的 MAE、Acc-5、Acc-7 已经更好，Has0/Non0 很接近，Corr 仍低 0.0080。
- 长训本身不是主要收益来源：4 个 run 的 best epoch 分别是 5、5、7、3，最佳点仍在早期；真正有效的是 raw512 token + depth2 容量 + EMA/composite 选择。
- `/root/exp/AWDE/0605-melt` 是基于 0602-6 的后续方法消融，当前 D1/D2/D3/E1 仍在 running，暂不纳入正式总表；追踪命令为 `/opt/conda/envs/tlw/bin/python /root/exp/AWDE/0605-melt/scripts/summarize_0605_melt_runs.py`。

下一步：

- 固定 `raw512 + depth2 + frozen BERT + Directed EATS + floor-bounded prior SMoE + EMA/composite` 作为 AWDE-Full。
- 对 0602-6 主线跑多 seed，报告 mean/std，验证 MAE=0.5038、Corr=0.7967 是否稳定。
- 优先做 P0 方法消融：short clue、raw200、w/o final-description gate、w/o Directed EATS、TEXT-style temporal conv、w/o prior、w/o floor。
- 若继续追 Corr，可在 raw512 depth2 主线上调 composite 的 Corr 权重或单独做 valid Corr selection，目标是追近本地 TEXT run2/run3 的 Corr=0.8047/0.8053。

### 2026-06-03 `0603`: E-neutral cue for neutral-0 rescue

状态：4 卡超参实验已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

代码目录：

```text
/root/exp/AWDE/0603
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0603
```

pkl：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-4/mosei_awde_0602_4.pkl
```

关键文档：

```text
/root/exp/AWDE/0603/docs/AWDE_0603_E_NEUTRAL_METHOD_AND_HYPERPLAN.md
/root/exp/AWDE/0603/docs/AWDE_0603_E_NEUTRAL_RESULTS.md
/root/exp/AWDE/0603/docs/AWDE_0602_5_S08_B35_ZERO_REEVAL.json
```

启动脚本：

```text
/root/exp/AWDE/0603/scripts/start_0603_npu4.sh
```

汇总脚本：

```text
/root/exp/AWDE/0603/scripts/summarize_0603_runs.py
```

核心改动：

- 从 0602-5 最强主线 `s08_b35 + EMA/composite + SmoothL1` 派生。
- 新增 E-neutral cue：从 `final_description` 或 `final_description + audio_clue_short + visual_clue_short` 中统计 `calm / neutral / composed / steady / measured / objective / lecture / presentation` 等中性讲述词。
- 同时统计 polar emotion 词做抵消，构造 `[cue, log1p(neutral), log1p(polar), margin/10]`。
- cue 只进入 router calibration 与 neutral head，不把 final description 作为 value 注入。
- neutral head 学习 `round(label) == 0`，并对高 cue 样本提高 BCE 权重。
- 部分 run 使用 neutral shrink：`prediction = raw_prediction * (1 - strength * cue * P(neutral))`，让强中性证据温和拉向 0。
- selection composite 额外加入 `Zero_F1` 与 `Zero_recall`，直接优化“预测中性 0”的选择准则。
- 表中 `Mean Test Router Weights [T,A,V]` 是整个 test set 上样本级 router 输出权重的平均值；不是固定测试权重。每条视频仍使用各自的大模型 `fusion_weights` prior，并经 SMoE router 得到各自的 T/A/V 权重。

正式选择准则：

```text
use_ema = true
ema_decay = 0.995
ema_start_epoch = 3
selection_metric = composite
selection_mode = max
base composite = Corr - 0.50 * MAE + 0.20 * Mult_acc_5
zero composite = base + zero_f1_weight * Zero_F1 + zero_recall_weight * Zero_recall
early_stop_patience = 10
```

0602-5 主推荐 Zero 指标重评估：

| Run | Epoch | Test Has0 | Non0 | F1 (Has0/Non0) | Mult-5 | Mult-7 | MAE | Corr | Zero Recall | Zero Precision | Zero F1 | Zero Pred Rate |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| `awde_0602_5_rescue_s08_b35_ema_comp` | 7 | 0.8337 | 0.8668 | 0.8303/0.8677 | 0.5759 | 0.5576 | 0.5118 | 0.7918 | 0.7068 | 0.6344 | 0.6686 | 0.4608 |

正式结果按 EMA validation composite 选择 best epoch：

| Run | Best Epoch | Source | Composite | Valid Zero-F1 | Valid Zero-Recall | Test Has0 | Non0 | F1 (Has0/Non0) | Mult-5 | Mult-7 | MAE | Corr | Zero Recall | Zero Precision | Zero F1 | Zero Pred Rate | Mean Test Router Weights [T,A,V] |
| --- | ---: | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0603_eneu_final_router_bce_zsel` | 7 | EMA | 0.737516 | 0.6853 | 0.7198 | 0.8332 | 0.8654 | 0.8305/0.8668 | 0.5724 | 0.5527 | 0.5163 | 0.7896 | 0.7001 | 0.6286 | 0.6624 | 0.4606 | [0.534912, 0.294544, 0.170543] |
| `awde_0603_eneu_final_short_router_bce_zsel` | 8 | EMA | 0.725044 | 0.6861 | 0.7174 | 0.8367 | 0.8613 | 0.8342/0.8625 | 0.5675 | 0.5493 | 0.5213 | 0.7848 | 0.7109 | 0.6256 | 0.6655 | 0.4701 | [0.530023, 0.286263, 0.183714] |
| `awde_0603_eneu_final_short_shrink10` | 7 | EMA | 0.737620 | 0.6812 | 0.7126 | 0.8384 | 0.8638 | 0.8363/0.8653 | 0.5716 | 0.5512 | 0.5149 | 0.7929 | 0.6938 | 0.6316 | 0.6612 | 0.4544 | [0.552520, 0.283974, 0.163506] |
| `awde_0603_eneu_final_short_shrink15_zheavy` | 6 | EMA | 0.766284 | 0.6918 | 0.7353 | 0.8343 | 0.8652 | 0.8316/0.8665 | 0.5748 | 0.5574 | 0.5103 | 0.7912 | 0.7213 | 0.6321 | 0.6738 | 0.4720 | [0.469706, 0.343738, 0.186556] |

结论：

- 主推荐：`awde_0603_eneu_final_short_shrink15_zheavy`。
- 相比 0602-5 主推荐，Zero Recall 从 0.7068 到 0.7213，Zero F1 从 0.6686 到 0.6738，MAE 从 0.5118 到 0.5103。
- `shrink15_zheavy` 的 Corr=0.7912，略低于 0602-5 的 0.7918；Mult-7=0.5574 与 0602-5 的 0.5576 基本持平。
- `shrink10` 的 Corr=0.7929，是本轮 Corr 最高，但 Zero F1=0.6612 低于 0602-5；如果目标是纯 Corr，可参考它的 epoch 7/8。
- final-only cue 不如 final+short+shrink，说明中性讲座词需要音频/视觉短 clue 补充，而不能只看 final description。
- 强化 zero composite 与 shrink 没有把预测全压成 0：最佳 run 的 Zero Pred Rate=0.4720，接近 0602-5 的 0.4608，属于温和增加 0 类覆盖。

下一步：

- 固定 `final_short + shrink15 + zero-heavy composite` 作为 E-neutral 主线。
- 若继续追求 Corr，可在该主线下降低 `neutral_shrink_strength=0.12` 或把 `composite_zero_f1_weight` 从 0.12 降到 0.10。
- 若继续追求 Zero Recall，可保持 shrink15，细搜 `neutral_cue_center=6.5/7.0/7.5` 与 `neutral_bce_weight=0.06/0.08/0.10`。

### 2026-06-03 `0602-5`: RESCUE EMA/composite checkpoint-window stabilization

状态：4 卡超参实验已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

代码目录：

```text
/root/exp/AWDE/0602-5
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0602-5
```

pkl：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-4/mosei_awde_0602_4.pkl
```

关键文档：

```text
/root/exp/AWDE/0602-5/docs/AWDE_0602_5_METHOD_DESIGN.md
/root/exp/AWDE/0602-5/docs/AWDE_0602_5_HYPERPLAN.md
/root/exp/AWDE/0602-5/docs/AWDE_0602_5_HYPER_RESULTS.md
```

启动脚本：

```text
/root/exp/AWDE/0602-5/scripts/start_0602_5_npu4.sh
```

汇总脚本：

```text
/root/exp/AWDE/0602-5/scripts/summarize_0602_5_runs.py
```

核心改动：

- 从 0602-4 Directed EATS 派生 0602-5 训练代码。
- 新增 EMA shadow weights，每个 epoch 同时评估 raw/EMA；epoch 1/2 只记录 raw，不参与正式选择，epoch 3 起正式按 EMA 选择。
- 新增 composite selection：`valid_Corr - 0.50 * valid_MAE + 0.20 * valid_Mult_acc_5`。
- 训练 loss 从 MSE 改为 SmoothL1(beta=0.5)。
- 新增 reliability-aware exchange 消融：低可靠 explanation-attention token 才加强跨模态补偿。
- 新增 auxiliary unimodal heads 消融：text/audio/vision repr 辅助回归监督。

正式选择准则：

```text
use_ema = true
ema_decay = 0.995
ema_start_epoch = 3
selection_metric = composite
selection_mode = max
early_stop_patience = 10
```

正式结果按 EMA validation composite 选择 best epoch：

| Run | Best Epoch | Source | Composite | Valid Loss | Valid Has0 | Test Has0 | Non0 | F1 (Has0/Non0) | Mult-5 | Mult-7 | MAE | Corr | Mean Test Router Weights [T,A,V] |
| --- | ---: | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0602_5_rescue_s10_b20_ema_comp` | 6 | EMA | 0.636740 | 0.306568 | 0.8284 | 0.8334 | 0.8676 | 0.8302/0.8686 | 0.5669 | 0.5484 | 0.5156 | 0.7862 | [0.582832, 0.234769, 0.182399] |
| `awde_0602_5_rescue_s08_b35_ema_comp` | 7 | EMA | 0.644800 | 0.301483 | 0.8413 | 0.8337 | 0.8668 | 0.8303/0.8677 | 0.5759 | 0.5576 | 0.5118 | 0.7918 | [0.515374, 0.300218, 0.184409] |
| `awde_0602_5_rescue_s10_b20_exchange_ema` | 6 | EMA | 0.631840 | 0.306168 | 0.8306 | 0.8403 | 0.8693 | 0.8379/0.8706 | 0.5669 | 0.5497 | 0.5137 | 0.7875 | [0.482198, 0.358847, 0.158955] |
| `awde_0602_5_rescue_s10_b20_uni_ema` | 9 | EMA | 0.632740 | 0.306797 | 0.8332 | 0.8296 | 0.8627 | 0.8260/0.8635 | 0.5654 | 0.5473 | 0.5250 | 0.7822 | [0.472695, 0.366115, 0.161190] |

结论：

- 正式主推荐：`awde_0602_5_rescue_s08_b35_ema_comp`，Test MAE=0.5118、Corr=0.7918、Mult-5=0.5759、Mult-7=0.5576，达到 0602-5 强目标。
- 0602-5 主结果超过 0602-4 正式最好 MAE=0.5219、Corr=0.7879，也超过 0602-4 非正式峰值 MAE=0.5147、Corr=0.7902。
- 二分类/Non0 候选：`s10_b20_exchange_ema`，Test Has0=0.8403、Non0=0.8693、MAE=0.5137、Corr=0.7875。
- reliability-aware exchange 对 Has0/Non0/MAE 有帮助，但未超过 `s08_b35_ema_comp` 的 Corr 和 Mult-5/7。
- auxiliary unimodal heads 在 epoch 5/6 有较好非正式回归点，但正式 composite 选择到 epoch 9 后 Test MAE/Corr 退化；暂不建议作为主线。

下一步：

- 固定 `s08_b35 + EMA/composite + SmoothL1` 作为新主线。
- 如追求 Has0/Non0，可在 `s08_b35` 上单独验证 reliability-aware exchange。
- 暂停 auxiliary unimodal heads，除非后续降低权重或只作为 warmup loss。
- 可轻量细搜 `ema_decay=0.99/0.995/0.997` 与 `ema_start_epoch=2/3/4`。

### 2026-06-02 `0602-4`: Directed EATS + valid loss selection

状态：4 卡超参实验已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

代码目录：

```text
/root/exp/AWDE/0602-4
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0602-4
```

pkl：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-4/mosei_awde_0602_4.pkl
```

关键文档：

```text
/root/exp/AWDE/0602-4/docs/AWDE_METHOD_0602_4.md
/root/exp/AWDE/0602-4/docs/AWDE_0602_4_HYPERPLAN.md
/root/exp/AWDE/0602-4/docs/AWDE_0602_4_HYPER_RESULTS.md
```

启动脚本：

```text
/root/exp/AWDE/0602-4/scripts/start_0602_4_npu4.sh
```

汇总脚本：

```text
/root/exp/AWDE/0602-4/scripts/summarize_0602_4_runs.py
```

核心改动：

- 将 0602-3 的 EATS description bias 从共享 `bias(0.5 * (audio_tokens + vision_tokens), final_description)` 改为目标模态定向 bias。
- A->V 同步只使用 vision token 的 final-description relevance bias；V->A 同步只使用 audio token 的 final-description relevance bias。
- final description 仍只作为标量 bias/gate，不作为 value 注入，不拼接进模态特征。
- 正式 checkpoint 选择准则从 valid `Has0_acc_2` 改为 valid `loss` 最低。

正式选择准则：

```text
selection_metric = loss
selection_mode = min
early_stop_patience = 8
```

正式结果按验证集 loss 选择 best epoch：

| Run | Best Epoch | Valid Loss | Valid Has0 | Test Has0 | Non0 | F1 (Has0/Non0) | Mult-5 | Mult-7 | MAE | Corr | Mean Test Router Weights [T,A,V] |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0602_4_deats_s08_b20_a10_p20_loss` | 7 | 0.452173 | 0.8140 | 0.8315 | 0.8671 | 0.8279/0.8678 | 0.5490 | 0.5329 | 0.5349 | 0.7743 | [0.517352, 0.332362, 0.150287] |
| `awde_0602_4_deats_s08_b35_a10_p20_loss` | 4 | 0.441706 | 0.8290 | 0.8251 | 0.8605 | 0.8220/0.8620 | 0.5574 | 0.5405 | 0.5248 | 0.7839 | [0.469264, 0.343983, 0.186754] |
| `awde_0602_4_deats_s10_b20_a10_p20_loss` | 7 | 0.453122 | 0.8332 | 0.8382 | 0.8674 | 0.8347/0.8678 | 0.5621 | 0.5465 | 0.5225 | 0.7831 | [0.504425, 0.340423, 0.155152] |
| `awde_0602_4_deats_s10_b35_a10_p30_loss` | 4 | 0.431798 | 0.8381 | 0.8399 | 0.8676 | 0.8380/0.8694 | 0.5585 | 0.5430 | 0.5219 | 0.7879 | [0.471039, 0.371590, 0.157371] |

结论：

- 正式主推荐：`s10_b35_a10_p30_loss`，valid loss 最低，Test Has0=0.8399、Non0=0.8676、MAE=0.5219、Corr=0.7879。
- 正式多分类/均衡点：`s10_b20_a10_p20_loss`，Test Has0=0.8382、Non0=0.8674、Mult-5=0.5621、Mult-7=0.5465、MAE=0.5225。
- 0602-4 正式 Non0=0.8676 高于 0602-3 正式最好 0.8632，但正式 MAE/Corr 未超过 0602-3 的 MAE=0.5189、Corr=0.7896。
- 非正式观察点：`s10_b20` epoch 5 达到 MAE=0.5147、Corr=0.7902、Mult-5=0.5666、Mult-7=0.5514；`s08_b35` epoch 6 达到 Corr=0.7911。说明 directed EATS 有更强回归潜力，但 valid loss 仍会错过部分高回归 epoch。
- Has0 与回归仍分裂：`s08_b20` epoch 3 达到 Test Has0=0.8450，但 MAE=0.5776；`s10_b35` epoch 7 达到 Test Has0=0.8446，但 MAE=0.5650。

下一步：

- 固定 directed EATS，加入 EMA/SWA 或多 checkpoint averaging，目标是稳定保留 epoch 5/6 的回归窗口。
- 以 `s10_b20_a10_p20` 和 `s08_b35_a10_p20` 为下一轮主线；前者 MAE/Mult 更强，后者 Corr 更强。
- 不建议继续单纯强化 `prior_strength=3.0 + desc_bias=0.35`；它的正式 valid loss 最低，但非正式回归峰值不如 `s10_b20`。

### 2026-06-02 `0602-3`: EATS explanation-attention temporal synchronizer

状态：4 卡超参实验已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

代码目录：

```text
/root/exp/AWDE/0602-3
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0602-3
```

关键文档：

```text
/root/exp/AWDE/0602-3/docs/AWDE_METHOD_0602_3.md
/root/exp/AWDE/0602-3/docs/AWDE_0602_3_HYPERPLAN.md
/root/exp/AWDE/0602-3/docs/AWDE_0602_3_HYPER_RESULTS.md
```

核心改动：

- 新增 AWDE 专用时序同步模块 EATS：从 explanation-feature attention map 中提取 audio/video 软时间锚点和可靠性，再结合 final description relevance bias 做证据级跨模态同步。
- EATS 与 TEXT-style temporal alignment 无关：不使用 Conv1d 双向互门控，而是使用解释注意力时间质心、entropy reliability、time-distance bias 和 gated residual refinement。
- final description 仍只作为标量 gate/bias，不作为 value 注入，不拼接进模态特征。

正式结果按验证集 `Has0_acc_2` 选择 best epoch：

| Run | Best Epoch | Valid Has0 | Test Has0 | Non0 | F1 (Has0/Non0) | Mult-5 | Mult-7 | MAE | Corr | Mean Test Router Weights [T,A,V] |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0602_3_eats_s12_b35_a10_p20` | 3 | 0.8477 | 0.8373 | 0.8440 | 0.8407/0.8503 | 0.5287 | 0.5156 | 0.5626 | 0.7595 | [0.442395, 0.362320, 0.195285] |
| `awde_0602_3_eats_s08_b35_a10_p20` | 6 | 0.8391 | 0.8403 | 0.8632 | 0.8394/0.8657 | 0.5561 | 0.5387 | 0.5232 | 0.7896 | [0.485010, 0.345690, 0.169300] |
| `awde_0602_3_eats_s12_b20_a10_p20` | 5 | 0.8429 | 0.8339 | 0.8608 | 0.8319/0.8626 | 0.5636 | 0.5490 | 0.5189 | 0.7870 | [0.553079, 0.285104, 0.161818] |
| `awde_0602_3_eats_s12_b50_a15_p30` | 2 | 0.8418 | 0.8369 | 0.8478 | 0.8386/0.8526 | 0.5216 | 0.5063 | 0.5699 | 0.7641 | [0.414507, 0.395328, 0.190165] |

结论：

- 主推荐：`s08_b35_a10_p20`，正式 Corr=0.7896，明显高于 0602-2 最好正式 Corr=0.7818；MAE=0.5232。
- 回归/多分类最强：`s12_b20_a10_p20`，MAE=0.5189、Mult-5=0.5636、Mult-7=0.5490，超过 0602/0602-2 的正式最好点。
- Has0 未超过 0602-2 的 test Has0=0.8448；0602-3 的主要收益集中在 MAE/Corr/Mult-5/Mult-7。
- 非正式观察点：`s08_b35` epoch 5 达到 Corr=0.7911；epoch 8 达到 MAE=0.5151、Corr=0.7908。说明 EATS 的回归潜力被 valid Has0 选择准则低估。

下一步：

- 固定 EATS，跑 `selection_metric=loss, selection_mode=min` 或新增 valid Corr 选择准则。
- 细搜 `temporal_sigma=0.08/0.10/0.12` 与 `temporal_desc_bias=0.20/0.35`。

### 2026-06-02 `0602-2`: 加入 TEXT-style audio/video temporal alignment

状态：4 卡超参实验已完成，4 个 run 均为 `completed`。训练结束后 NPU 0-3 无训练进程。

代码目录：

```text
/root/exp/AWDE/0602-2
```

输出目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0602-2
```

关键文档：

```text
/root/exp/AWDE/0602-2/docs/AWDE_METHOD_0602_2.md
/root/exp/AWDE/0602-2/docs/AWDE_0602_2_HYPERPLAN.md
/root/exp/AWDE/0602-2/docs/AWDE_0602_2_HYPER_RESULTS.md
```

正式结果按验证集 `Has0_acc_2` 选择 best epoch：

| Run | Best Epoch | Test Has0 | Non0 | F1 (Has0/Non0) | MAE | Corr | Mean Test Router Weights [T,A,V] |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0602_2_ta_k3_a05_p20` | 12 | 0.8367 | 0.8489 | 0.8376/0.8530 | 0.5541 | 0.7606 | [0.518209, 0.300912, 0.180879] |
| `awde_0602_2_ta_k3_a10_p20` | 5 | 0.8448 | 0.8542 | 0.8467/0.8587 | 0.5482 | 0.7741 | [0.497221, 0.292166, 0.210613] |
| `awde_0602_2_ta_k5_a10_p20` | 7 | 0.8367 | 0.8572 | 0.8358/0.8598 | 0.5354 | 0.7780 | [0.514656, 0.313168, 0.172176] |
| `awde_0602_2_ta_k3_a15_p30` | 6 | 0.8420 | 0.8580 | 0.8421/0.8611 | 0.5397 | 0.7818 | [0.486807, 0.352919, 0.160274] |

结论：

- 主推荐：`ta_k3_a15_p30`，valid Has0=0.8520，本轮最高；test Corr=0.7818，略高于 0602 最好 Corr=0.7816。
- test Has0 最高：`ta_k3_a10_p20`，Has0=0.8448。
- `ta_k5_a10_p20` 在非正式选择点 epoch 5 达到 MAE=0.5249、Corr=0.7821，说明 temporal alignment 对回归指标有潜力，但本轮正式 checkpoint 仍按 valid Has0 选择。

### 2026-06-02 `0602`: pre-align final description gate

状态：4 卡超参实验已完成。

关键文档：

```text
/root/exp/AWDE/0602/docs/AWDE_METHOD_0602.md
/root/exp/AWDE/0602/docs/AWDE_0602_HYPERPLAN.md
/root/exp/AWDE/0602/docs/AWDE_0602_HYPER_RESULTS.md
```

代表结果：

| Run | Best Epoch | Test Has0 | Non0 | F1 (Has0/Non0) | MAE | Corr | Mean Test Router Weights [T,A,V] |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `awde_0602_pre_a05_p20` | 7 | 0.8437 | 0.8498 | 0.8462/0.8548 | 0.5489 | 0.7720 | [0.439884, 0.395303, 0.164813] |
| `awde_0602_pre_a10_p20` | 5 | 0.8364 | 0.8654 | 0.8342/0.8670 | 0.5250 | 0.7771 | [0.560964, 0.248913, 0.190122] |
| `awde_0602_pre_a15_p30` | 10 | 0.8358 | 0.8580 | 0.8341/0.8598 | 0.5273 | 0.7816 | [0.500382, 0.347291, 0.152327] |

结论：

- `a05_p20` 主打 Has0，Has0=0.8437，接近 TEXT run2 的 0.8452。
- `a10_p20` 主打 Non0/MAE/Acc-5/Acc-7，Non0=0.8654、MAE=0.5250。
- `a15_p30` Corr 最高，Corr=0.7816。

### 2026-06-01 `0601`: prior/gate/lr/hidden_dim 超参搜索

状态：4 卡超参实验已完成。

关键文档：

```text
/root/exp/AWDE/0601/docs/AWDE_0601_HYPER_RESULTS.md
```

最佳配置：

```text
run_name = awde_0601_prior20
prior_strength = 2.0
desc_alpha = 0.15
lr = 1e-4
hidden_dim = 128
best_epoch = 7
```

结果：Has0=0.8371，Non0=0.8465，MAE=0.5483，Corr=0.7556。

### 2026-05-31 `0531`: AWDE NPU 跑通与卡点修复

状态：4 seed NPU 实验已完成。

关键文档：

```text
/root/exp/AWDE/0531/docs/AWDE_0531_NPU_RESULTS.md
```

关键结论：

- CPU 慢是路径选择错误导致，本机应走 Ascend NPU。
- `nn.TransformerEncoderLayer` 在 NPU 上会触发 CPU fallback，已改成显式 `MultiheadAttention + FFN + LayerNorm`。
- best single Has0=0.8309，mean Has0=0.8265，Corr 仍低于 TEXT。

## 新实验记录模板

每次新实验完成后，把下面模板复制到“最新实验速查”的最上方：

```text
### YYYY-MM-DD `实验名`: 一句话说明改动

状态：
代码目录：
输出目录：
pkl：
启动脚本：
汇总脚本：
方法文档：
结果文档：

核心改动：
- 

正式选择准则：
- selection_metric =
- selection_mode =
- early_stop_patience =

结果表：
| Run | Best Epoch | Has0 | Non0 | F1 (Has0/Non0) | Acc-3 | Acc-5 | Acc-7 | MAE | Corr | Weights [T,A,V] | Status |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- | --- |

结论：
-

下一步：
-
```

## 用户原始方法思路记录

用户核心想法：

1. 音视频模态解释先经过 BERT 编码，再和音视频模态特征对齐。
2. 解释做 Q，模态特征做 K/V。这部分和 TEXT 的思路相似。
3. 音视频解释很详细、很长，因此解释 token 长度设置为 200。
4. 最终描述由提示词要求生成，内容应包含对情绪识别最有用的线索。
5. 使用最终描述对每个模态内部的特征做微提权。
6. 提权不能把最终描述特征直接重复拼进模态特征，避免过拟合。
7. 理想设计是：只对最终描述中涉及、且本模态能对得上的内容微提权；最终描述中其他不属于本模态的部分不应出现在该模态特征中。
8. 最终用 SMoE 融合三模态。
9. 融合权重来自外部融合权重文件，只使用权重，不使用其中的最终预测。
10. 每个模态融合权重至少为 0.1；若某模态低于 0.1，则从其他模态按比例挪出质量，保证总和仍为 1。
11. 0602-2 以后加入 TEXT 的 audio/video temporal alignment，用作音视频对齐增强。
12. 0602-3 新增 EATS，用 explanation-feature attention 的软时间锚点做 audio/video 证据级时序同步，与 TEXT-style 模块无关。
13. 0602-4 将 EATS 的 final-description relevance bias 改为目标模态定向：A->V 只偏置 vision token，V->A 只偏置 audio token，避免 audio/vision 解释 token 下标被错误假设为一一对应。

当前 AWDE 实现对应关系：

- Explanation-Feature Alignment：解释 token 作为 Q，模态 token 作为 K/V。
- Description Micro-Reweighter：最终描述只产生模态内部 token 标量 gate，不作为 value 注入，不拼接到模态特征中。
- ModalPriorSMoE：三模态 `[text, audio, vision]` 作为专家，外部融合权重作为 router log-prior。
- floor-bounded routing：用 `floor + residual_mass * softmax(logits)` 保证每个模态权重大于等于 0.1 且总和为 1。
- 0602-2 的 TextTemporalAlignment：放在解释对齐之后、池化之前，只对 audio/video token 做双向门控残差时序对齐。
- 0602-3 的 EATS：放在解释对齐之后、池化之前；从 audio/video align attention 中提取软时间锚点与可靠性，再结合 final description relevance bias 做跨模态证据同步。
- 0602-4 的 Directed EATS：保留 0602-3 的时序锚点与可靠性，但 A->V 使用 vision target bias、V->A 使用 audio target bias；最终描述仍只作为标量 bias，不作为 value 注入。

## 论文与方法参考

重点阅读论文目录：

```text
/root/research/other
```

用户特别指定论文：

```text
/root/research/other/ALMT.pdf
/root/research/other/AMTE.pdf
/root/research/other/DEVA.pdf
/root/research/other/FINE.pdf
/root/research/other/TEXT.pdf
```

写论文时的定位：

- AWDE 不是声明一个完全全新的模块，而是把现有思路组合到解释驱动多模态情绪识别中。
- 提权模块可写成 description-guided token reweighting / micro-reweighting。
- 融合模块可写成 floor-bounded prior SMoE。
- 0602-2 的时序模块可写成 TEXT-style audio/video temporal alignment。

## 固定路径与数据状态

实验根目录：

```text
/root/exp/AWDE
```

各实验代码目录：

```text
/root/exp/AWDE/0531
/root/exp/AWDE/0601
/root/exp/AWDE/0602
/root/exp/AWDE/0602-2
/root/exp/AWDE/0602-3
/root/exp/AWDE/0602-4
/root/exp/AWDE/0602-5
/root/exp/AWDE/0602-6
/root/exp/AWDE/0603
/root/exp/AWDE/0605-melt
```

大文件与结果根目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE
```

数据集目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/data/MOSEI
```

重要数据文件：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/data/MOSEI/aligned_50.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/data/MOSEI/unaligned_50.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/data/MOSEI/mosei_unaligned_50_reason.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/data/MOSEI/mosei_unaligned_50_reason_vl3.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/data/MOSEI/mosei_unaligned_50_va_noe_raw512.pkl
```

模态特征目录，当前机器上已确认存在：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/MOSEI-features
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/MOSEI-features/mosei-text-FRA
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/MOSEI-features/mosei-audio-FRA
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/MOSEI-features/mosei-video-FRA
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/MOSEI-features/Baichuan-13B-Base-langeng-FRA
```

用户原始设想中提到 Chinese-HuBERT-large-FRA 和 CLIP-ViT-FRA；当前已验证的 store 目录名称是上面这些，后续如需要更换特征，应先重新 `find`/`ls` 确认具体目录名。

两模态解释目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputs2
```

关键解释文件：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputs2/mosei_qwen3_omni_audio_loudnorm_raw_explanations.jsonl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputs2/mosei_qwen3_omni_video_raw_explanations.jsonl
```

最终描述目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputE
```

关键最终描述文件：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputE/mosei_qwen3_omni_final_descriptions.jsonl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputE/提示词.txt
```

融合权重文件：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputs2/mosei_qwen3_omni_modal_fusion_weights.jsonl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/outputs2/mosei_qwen3_omni_modal_fusion_weights_errors.jsonl
```

注意：用户最早给的融合权重路径是 `mosei_qwen3_omni_modal_fusion_weights_errors.jsonl`。训练 pkl 构建时应确认实际使用的是可用权重还是 errors 文件，避免误用错误日志。

pkl 文件：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0531/mosei_awde_0531.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0601/mosei_awde_0601.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602/mosei_awde_0602.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-2/mosei_awde_0602_2.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-3/mosei_awde_0602_3.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-4/mosei_awde_0602_4.pkl
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-6/mosei_awde_0602_6_raw512.pkl
```

状态：

- 0531 的 `mosei_awde_0531.pkl` 是实际 4.9G pkl。
- 0601、0602、0602-2 的 pkl 都是指向 0531 pkl 的软链接，避免重复复制 4.9G 大文件。
- 0602-3、0602-4 的 pkl 也是指向旧 200-token AWDE pkl 的软链接，避免重复复制 4.9G 大文件。
- 0602-5、0603 使用 `/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-4/mosei_awde_0602_4.pkl`。
- 0602-6 使用新构建的 raw512 pkl：`/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0602-6/mosei_awde_0602_6_raw512.pkl`，audio/video raw explanation token 长度为 512。

## 服务器与运行环境

当前服务器：

```text
OS user = root
workspace = /root
python = /opt/conda/envs/tlw/bin/python
accelerator = Ascend 910B, 4 NPUs
```

NPU 状态检查命令：

```bash
npu-smi info | sed -n '1,120p'
```

2026-06-02 0602-2 训练结束后状态：

```text
NPU 0-3 Health OK
No running training processes found
idle HBM around 3.4-3.6GB
```

训练时常见状态：

```text
每卡 HBM 约 4.8-5.0GB
AICore 常见 50%-66%
单 epoch 约 100-120 秒
```

重要经验：

- 本机没有 CUDA 路线，不能依赖 `nvidia-smi`。
- 训练脚本应支持 `--device npu:0/1/2/3`。
- `auto` 设备选择应优先 NPU。
- frozen BERT 应保持 `eval()`，避免 no_grad 下仍有 dropout。
- 避免直接使用可能触发 NPU fallback 的 fused TransformerEncoderLayer。

## 标准实验目录结构

每个新实验建议按如下结构：

```text
/root/exp/AWDE/{date_or_name}
├── docs
│   ├── AWDE_METHOD_{date_or_name}.md
│   ├── AWDE_{date_or_name}_HYPERPLAN.md
│   └── AWDE_{date_or_name}_HYPER_RESULTS.md
├── model
│   ├── awde_layers.py
│   └── awde_model.py
├── scripts
│   ├── build_mosei_awde_pkl.py
│   ├── start_{date_or_name}_npu4.sh
│   ├── summarize_{date_or_name}_runs.py
│   └── train_awde.py
└── reports
```

对应 store 输出：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/{date_or_name}
```

每个 run 输出至少应有：

```text
status.json
train_log.jsonl
best_awde_no_bert.pt
awde_*_results.txt
AWDE_*_EXPERIMENT.md
*.npu.log
```

## 标准训练配置

目前默认稳定配置：

```text
epochs = 101
batch_size = 32
eval_batch_size = 32
lr = 1e-4
weight_decay = 1e-4
hidden_dim = 128
heads = 4
dropout = 0.1
weight_floor = 0.1
selection_metric = Has0_acc_2
selection_mode = max
early_stop_patience = 8
torch_threads = 8
no_cache = true
desc_gate_mode = pre_align
route_kl_weight = 0.0
```

常用 4 卡启动方式：

```bash
tmux new-session -d -s awdeXXXX_npu4 "bash -lc '/root/exp/AWDE/XXXX/scripts/start_XXXX_npu4.sh'"
```

进程检查：

```bash
ps -ef | rg 'AWDE/.*/scripts/train_awde.py' | rg -v rg
```

汇总检查：

```bash
/opt/conda/envs/tlw/bin/python /root/exp/AWDE/XXXX/scripts/summarize_XXXX_runs.py
```

## 历史实验脉络

### 0531

目标：跑通 AWDE，修复 CPU/NPU 路径和算子 fallback。

核心结果：

```text
best single Has0 = 0.8309
mean Has0 = 0.8265
mean Corr = 0.7380
```

问题：Corr/Non0 明显弱于 TEXT。

### 0601

目标：搜索 prior_strength、desc_alpha、lr、hidden_dim。

核心结果：

```text
best = awde_0601_prior20
Has0 = 0.8371
Non0 = 0.8465
MAE = 0.5483
Corr = 0.7556
```

结论：`prior_strength=2.0` 明显有效；`hidden_dim=256 + lr=3e-4` 不适合作为主线。

### 0602

目标：把 final description gate 前移到模态内部 token，形成 pre-align gate。

核心结果：

```text
a05_p20: Has0 = 0.8437
a10_p20: Non0 = 0.8654, MAE = 0.5250, Corr = 0.7771
a15_p30: Corr = 0.7816
```

结论：pre-align gate 是有效主线；KL 路由约束不适合作为主配置。

### 0602-2

目标：在 0602 基础上加入 TEXT-style audio/video temporal alignment。

核心结果：

```text
ta_k3_a15_p30: valid Has0 = 0.8520, test Has0 = 0.8420, Corr = 0.7818
ta_k3_a10_p20: test Has0 = 0.8448
ta_k5_a10_p20: formal Corr = 0.7780; non-formal epoch 5 Corr = 0.7821, MAE = 0.5249
```

结论：temporal alignment 对 Corr/MAE 有潜力，但按 valid Has0 选 checkpoint 时不一定选到回归最优点。

### 0602-3

目标：设计并验证与 TEXT-style 无关的 AWDE 专用 EATS 时序同步模块。

核心结果：

```text
s08_b35_a10_p20: formal Corr = 0.7896, MAE = 0.5232
s12_b20_a10_p20: formal MAE = 0.5189, Mult-5 = 0.5636, Mult-7 = 0.5490
s08_b35_a10_p20 non-formal epoch 5 Corr = 0.7911
s08_b35_a10_p20 non-formal epoch 8 MAE = 0.5151, Corr = 0.7908
```

结论：EATS 明显提升 MAE/Corr/Mult-5/Mult-7，但正式 Has0 没超过 0602-2 的 test Has0=0.8448。valid Has0 选择准则会低估 EATS 的回归潜力。

## 后续实验建议

优先方向：

1. 固定 0602-3 的 EATS，改 selection：
   - `selection_metric=loss, selection_mode=min`
   - 或新增 valid Corr 选择准则。
2. 细搜 EATS 的 `temporal_sigma=0.08/0.10/0.12` 与 `temporal_desc_bias=0.20/0.35`。
3. 固定 `desc_gate_mode=pre_align`，围绕 `desc_alpha=0.08/0.10/0.12` 与 `prior_strength=1.5/2.0/2.5` 搜索。
4. 对 `s08_b35_a10_p20` 以回归选择准则重跑，验证 epoch 5/8 的 Corr=0.7911、MAE=0.5151 是否可稳定成为正式结果。

不建议：

- 不建议继续加 `route_kl_weight=0.05` 作为主线，0602 已显示会拉低 Non0/MAE。
- 不建议优先扩大到 `hidden_dim=256 + lr=3e-4`，0601 显示强度指标会明显变坏。
