docs: 更新 README、删除过时文档(推理优化方案/superpowers 计划)
- README.md: 重写为简洁版(有效优化表、文件结构、评测环境) - 删除推理优化方案.md(内容已合并到 CLAUDE.md) - 删除 docs/superpowers/(过期实现计划) - 保留 EXPERIMENTS.md(实验记录模板)
This commit is contained in:
@@ -6,54 +6,72 @@
|
||||
|
||||
## 赛题
|
||||
|
||||
> [比赛主页](https://aistudio.baidu.com/competition/detail/1461) · [大赛官网](http://cti.baidu.com) · [提交结果](https://aistudio.baidu.com/competition/detail/1461/0/submit-result)
|
||||
> [比赛主页](https://aistudio.baidu.com/competition/detail/1461) · [大赛官网](http://cti.baidu.com) · [提交结果](https://aistudio.baidu.com/competition/detail/1461/0/submit-result) · [比赛规则](https://aistudio.baidu.com/competition/detail/1461/0/rules)
|
||||
|
||||
给定基于 Transformer 的生成式推荐广告排序模型(GRAB),在**不改变模型结构、不在测试集上训练**的前提下,极致优化推理性能。
|
||||
|
||||
量化、稀疏、剪枝明确允许。
|
||||
给定基于 Transformer 的生成式推荐广告排序模型(GRAB),在**不改变模型结构、不在测试集上训练**的前提下,极致优化推理性能。量化/稀疏/剪枝明确允许。
|
||||
|
||||
## 模型架构
|
||||
|
||||
```
|
||||
RepEncoder (28 slots × 512d Embedding)
|
||||
RepEncoder (28 slots × 512d Embedding) → segment_reduce → LayerNorm → Linear
|
||||
→ 8 层 Transformer (512d, 8 heads, Pre-LN)
|
||||
→ Multi-Head Attention
|
||||
→ SMoE FFN (8 experts, Top-2 gating)
|
||||
→ Multi-Head Attention (SDPA / Flash Attention)
|
||||
→ SMoE FFN (8 experts, Top-2 gating, k=2)
|
||||
→ Linear → Sigmoid → CTR
|
||||
```
|
||||
|
||||
~6.5M~11.3M 参数,基于 [GRAB](https://arxiv.org/abs/2602.01865) / [HSTU](https://arxiv.org/abs/2402.17152) 论文。
|
||||
|
||||
## 评分规则
|
||||
## 有效优化
|
||||
|
||||
> 详见 [比赛规则](https://aistudio.baidu.com/competition/detail/1461/0/rules)
|
||||
| # | 优化 | 原理 | 耗时 |
|
||||
|---|------|------|------|
|
||||
| 1 | FP16 量化 | 模型半精度 + Embedding FP32 | 152s |
|
||||
| 2 | Flash Attention | SDPA 数学等价替换 | 94.5s |
|
||||
| 3 | 消除 GPU 同步 | 移除 MoE mask.any() + searchsorted mask | 88.1s |
|
||||
| 4 | Expert 相似度合并 | 余弦相似度 >0.90 的 expert 合并 | 86.5s |
|
||||
| 5 | 稠密向量化 MoE | einsum 并行算 8 个 expert | PR#1 |
|
||||
| 6 | RepEncoder 融合查表 | 28 slot 拼单次 segment_reduce | PR#1 |
|
||||
|
||||
## 评分规则
|
||||
|
||||
| 维度 | 要求 | 不达标 |
|
||||
|------|------|--------|
|
||||
| 推理效率 | ≤ 5min,环境构建 ≤ 20min | **总分 0** |
|
||||
| 模型效果 | AUC ≥ 0.65,PCOC ∈ [0.85, 1.15] | **总分 0** |
|
||||
|
||||
## 优化路线
|
||||
## 评测环境
|
||||
|
||||
| 步骤 | 方案 | 预期加速 |
|
||||
|------|------|----------|
|
||||
| ✅ 第一版 | 接口对齐 + FP16 量化 | 229s → ~120s |
|
||||
| 🔲 第二版 | Flash Attention + torch.compile | ~120s → ~65s |
|
||||
| 🔲 第三版 | MoE 剪枝 + INT8 量化 | ~65s → ~30s |
|
||||
- **硬件**: NVIDIA A800 (80GB, SM80)
|
||||
- **软件**: Python 3.10 + PyTorch 2.6.0 + CUDA 12.4
|
||||
- **评测数据集 ≠ baseline 数据集**
|
||||
|
||||
## 提交
|
||||
|
||||
```bash
|
||||
cd 代码/code
|
||||
zip submit.zip infer.py requirements.txt build_env.sh
|
||||
zip submit.zip infer.py build_env.sh
|
||||
```
|
||||
|
||||
约束:不包含 `dataset/`、`ckpt.pt`,每天最多 10 次提交。
|
||||
约束:不包含 `dataset/`、`ckpt.pt`,包后缀 `.zip`,每天最多 10 次。
|
||||
|
||||
## 环境
|
||||
## 文件结构
|
||||
|
||||
- **本地**: `.venv` (Python 3.13, uv), 仅装 `numpy` + `tqdm` + `aistudio-sdk`
|
||||
- **服务端**: PyTorch 2.6.0 + CUDA 12.4,完整依赖见 `代码/code/requirements.txt`
|
||||
```
|
||||
代码/code/
|
||||
├── infer.py # 推理主脚本(提交核心)
|
||||
├── build_env.sh # 环境构建脚本
|
||||
├── requirements.txt # 服务端依赖(torch 2.6.0 + CUDA 12.4)
|
||||
├── EXPERIMENTS.md # 实验记录表
|
||||
└── bench.py # 本地测量脚本(不进提交包)
|
||||
|
||||
论文/
|
||||
├── GRAB.md / HSTU.md # 论文 OCR markdown
|
||||
└── imgs/ # 论文图片
|
||||
|
||||
代码/任务提交接口说明.md # 官方接口规范
|
||||
CLAUDE.md # 项目开发指引
|
||||
```
|
||||
|
||||
## 许可证
|
||||
|
||||
|
||||
Reference in New Issue
Block a user