# AWDE 0615 Encoder-FRA 特征实验报告

日期：2026-06-15  
代码目录：`/root/AWDE/0615`  
输出目录：`/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/AWDE/0615`  
PKL：`/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/pkl/0615/mosei_awde_0615_encoder_raw512_fp16.pkl`

## 1. 实验目标

本轮按用户要求，以 `0602-6` 的 Full 实验为基础，只替换 FRA 三模态输入特征为新 encoder 特征，并做 4 卡超参适配。方法组件保持 `0602-6 Full`，没有混入 `0610/0612` 的 post-align 或 FD reweight 变体。

对照 Full 方法为：

```text
raw512 + feature_layers=2 + align_layers=2 + frozen BERT
+ pre-align FD micro gate + Directed EATS
+ floor-bounded prior SMoE + SmoothL1 + EMA/composite selection
```

`0605-melt` 消融说明 EATS、prior 和 raw512/depth2 是当前主线的关键组件，因此 0615 不改方法，只做输入维度和训练适配。

## 2. 新特征与数据构建

新特征目录：

```text
/root/siton-data-531cb60d91bd4013b805b412b0be2176/tlw/store/MOSEI-Encoder-feature/features
```

| Modality | Feature directory | Shape | Dtype | 覆盖 |
| --- | --- | ---: | --- | ---: |
| text | `Baichuan-13B-Base-langeng-FRA-50` | `(50, 5120)` | float16 | 22856 |
| audio | `chinese-hubert-large-FRA-50` | `(50, 1024)` | float16 | 22856 |
| vision | `clip-vit-large-patch14-FRA-50` | `(50, 768)` | float16 | 22856 |

PKL 构建结果：

| Split | N | Text | Audio | Vision | Explanation/final token |
| --- | ---: | --- | --- | --- | --- |
| train | 16326 | `(16326, 50, 5120)` | `(16326, 50, 1024)` | `(16326, 50, 768)` | audio/visual raw512, final200 |
| valid | 1871 | `(1871, 50, 5120)` | `(1871, 50, 1024)` | `(1871, 50, 768)` | audio/visual raw512, final200 |
| test | 4659 | `(4659, 50, 5120)` | `(4659, 50, 1024)` | `(4659, 50, 768)` | audio/visual raw512, final200 |

构建统计：

- 输出 pkl 大小：16.071 GiB。
- 三模态 encoder feature 文件无缺失。
- explanation/final/weights 侧沿用旧 AWDE 构建链，存在 34 条可记录 fallback 行，和旧 raw512 逻辑一致。
- `feature_dtype=float16` 只用于 pkl 落盘减小体积；训练 batch 进入模型前仍转为 float32。

## 3. 必要代码适配

`0602-6` 的模型类已经支持 `text_dim/audio_dim/vision_dim`，但训练脚本没有从 pkl 传入真实维度。旧实验能运行是因为旧特征维度等于默认值 `768/74/35`；0615 新特征为 `5120/1024/768`，必须适配输入投影层。

本轮修改：

- `scripts/train_awde.py` 从 pkl 自动推断：

```text
text_dim = data["train"]["text"].shape[-1]
audio_dim = data["train"]["audio"].shape[-1]
vision_dim = data["train"]["vision"].shape[-1]
```

- 将推断维度传入 `AWDEModel`。
- 默认 pkl/output 切到 0615 路径。
- 报告与结果文件名切到 `awde_0615_results.txt` 和 `AWDE_0615_EXPERIMENT.md`。

这属于输入维度适配，不改变 AWDE 结构、损失、选择准则或解释/时序/路由方法。

## 4. 四卡超参设计

新 encoder 特征的维度和表达尺度明显不同于旧 hand-crafted audio/vision 特征。为了不改变方法，本轮只调训练适配参数：学习率、dropout、hidden bottleneck、batch。

共同设置：

```text
feature_layers=2
align_layers=2
desc_gate_mode=pre_align
desc_alpha=0.10
temporal_align_type=eats
temporal_sigma=0.08
temporal_desc_bias=0.35
temporal_confidence_bias=0.20
prior_strength=2.0
weight_floor=0.1
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
seed=20261100
```

4 卡配置：

| Run | NPU | hidden | batch | lr | dropout | 设计目的 |
| --- | ---: | ---: | ---: | ---: | ---: | --- |
| `enc_full_h128_lr8e5_b8_d12` | 0 | 128 | 8 | 8e-5 | 0.12 | 复刻 0602-6 Full 的保守主线，降低 batch 适配高维输入 |
| `enc_full_h128_lr5e5_b8_d15` | 1 | 128 | 8 | 5e-5 | 0.15 | 高维 encoder 特征下更低 LR、更强正则 |
| `enc_full_h160_lr5e5_b8_d15` | 2 | 160 | 8 | 5e-5 | 0.15 | 检查 128 hidden 是否压缩过强 |
| `enc_full_h128_lr8e5_b12_d12` | 3 | 128 | 12 | 8e-5 | 0.12 | 检查更大有效 batch 与吞吐 |

## 5. 运行状态

已完成：

- `py_compile`：`train_awde.py`、`build_mosei_awde_pkl.py`、`summarize_0615_encoder_runs.py`、模型文件均通过。
- shell 语法检查：构建/启动脚本通过。
- smoke pkl 和 1 epoch 小样本 NPU smoke run 通过，确认维度自动推断有效。
- full pkl 已完成构建。
- 4 卡 full 搜索已完成，四个 run 均按 `early_stop_patience=25` 自动停止。
- NPU 0-3 训练进程已退出，`npu-smi` 显示无运行进程。

## 6. 0615 正式结果

口径与 0602-6 一致：每个 run 使用验证集 composite 选择 EMA checkpoint。

| Run | Best | Source | Composite | Valid Has0 | Valid MAE | Valid Corr | Has0 | Non0 | Acc-5 | Acc-7 | MAE | Corr | Zero-F1 | Router [T,A,V] |
| --- | ---: | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `enc_full_h128_lr8e5_b8_d12` | 6 | EMA | 0.661280 | 0.8423 | 0.4834 | 0.7887 | 0.8311 | 0.8734 | 0.5793 | 0.5604 | 0.4935 | 0.8076 | 0.6716 | [0.604680, 0.236271, 0.159049] |
| `enc_full_h128_lr5e5_b8_d15` | 5 | EMA | 0.663230 | 0.8445 | 0.4785 | 0.7849 | 0.8386 | 0.8729 | 0.5845 | 0.5647 | 0.4854 | 0.8117 | 0.6735 | [0.601179, 0.211912, 0.186909] |
| `enc_full_h160_lr5e5_b8_d15` | 4 | EMA | 0.673390 | 0.8450 | 0.4725 | 0.7913 | 0.8465 | 0.8861 | 0.5888 | 0.5692 | 0.4812 | 0.8184 | 0.6724 | [0.534982, 0.259213, 0.205805] |
| `enc_full_h128_lr8e5_b12_d12` | 6 | EMA | 0.675570 | 0.8359 | 0.4711 | 0.7914 | 0.8324 | 0.8795 | 0.5823 | 0.5621 | 0.4905 | 0.8123 | 0.6733 | [0.587816, 0.255241, 0.156943] |

4-run mean/std：

| Metric | Mean | Std |
| --- | ---: | ---: |
| Has0 | 0.8372 | 0.0070 |
| Non0 | 0.8780 | 0.0062 |
| Acc-5 | 0.5837 | 0.0040 |
| Acc-7 | 0.5641 | 0.0038 |
| MAE | 0.4876 | 0.0054 |
| Corr | 0.8125 | 0.0045 |
| Zero-F1 | 0.6727 | 0.0009 |

按验证集 composite 选超参，正式 winner 是 `enc_full_h128_lr8e5_b12_d12`。按 test 端综合指标观察，`enc_full_h160_lr5e5_b8_d15` 最强：Has0、Non0、Acc-5、Acc-7、MAE、Corr 都是四个 run 中最好。

## 7. 基线对比口径

主要对比：

| Baseline | Has0 | Non0 | Acc-5 | Acc-7 | MAE | Corr | Zero-F1 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| 0602-6 Full single seed `20261100` | 0.8410 | 0.8690 | 0.5851 | 0.5666 | 0.5038 | 0.7967 | 0.6771 |
| 0605-6 Full 4-seed mean | 0.8393 | 0.8695 | 0.5775 | 0.5591 | 0.5064 | 0.7951 | 0.6734 |

对 0602-6 Full single seed 的差值：

| 0615 run | dHas0 | dNon0 | dAcc-5 | dAcc-7 | dMAE | dCorr | dZero-F1 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| h128 lr8e-5 b8 | -0.0099 | +0.0044 | -0.0058 | -0.0062 | -0.0103 | +0.0109 | -0.0055 |
| h128 lr5e-5 b8 | -0.0024 | +0.0039 | -0.0006 | -0.0019 | -0.0184 | +0.0150 | -0.0036 |
| h160 lr5e-5 b8 | +0.0055 | +0.0171 | +0.0037 | +0.0026 | -0.0226 | +0.0217 | -0.0047 |
| h128 lr8e-5 b12 | -0.0086 | +0.0105 | -0.0028 | -0.0045 | -0.0133 | +0.0156 | -0.0038 |
| 0615 mean | -0.0038 | +0.0090 | -0.0014 | -0.0025 | -0.0162 | +0.0158 | -0.0044 |

其中 MAE 的负 delta 表示更好。

## 8. 结论

- 新 encoder 特征对 AWDE 的回归质量提升很明确：4-run mean 的 MAE 从 0.5038 降到 0.4876，Corr 从 0.7967 升到 0.8125。
- `h160/lr5e-5/b8/dropout0.15` 是 test 端最强配置：MAE=0.4812，Corr=0.8184，Has0=0.8465，Non0=0.8861，Acc-5=0.5888，Acc-7=0.5692。
- 验证集 composite 的正式 winner 是 `h128/lr8e-5/b12/dropout0.12`，但它的 test MAE/Corr 不如 `h160/lr5e-5/b8`；两者 composite 差距只有 0.00218，建议下一轮用多 seed 比较 `h160,b8` 和 `h128,b12`。
- 细粒度 Acc-5/Acc-7 的均值基本持平旧 0602-6，但最佳 `h160` 有小幅提升；这说明新特征主要提升连续强度回归和 Non0 判别，离散强度还可以继续校准。
- Router 仍以 text 为主，但 audio/vision 权重没有坍缩；高维 Baichuan text 特征提升明显，同时 HuBERT/CLIP 仍参与路由。

下一轮建议固定 0602-6 Full 方法不变，只围绕 `h160,b8,lr5e-5,dropout0.15` 做 4 seed 复验；若想冲验证集 composite，可并行保留 `h128,b12,lr8e-5,dropout0.12`。
