机制
- Transformer相关——(7)Mask机制
- LLM中的Causal Mask就是Sequence Mask:LLM - Make Causal Mask 构造因果关系掩码
- Transformer升级之路:2、博采众长的旋转式位置编码
- NLP学习笔记15---Dropout、attention机制
训练
异构模型/数据并行:
- DistTrain: Addressing Model and Data Heterogeneity with Disaggregated Training for Multimodal Large Language Models:北大-异构模型和数据的分离训练框架
- DISTMM
训推混部:
- DiffusionPipe:优先
- GraphPipe: Improving Performance and Scalability of DNN Training with Graph Pipeline Parallelism
- Chimera: Efficiently Training Large-Scale Neural Networks with Bidirectional Pipelines (arxiv.org):双向PP
长序列:
MoE:
- FasterMoE:影子专家(训练时在线实时计算影子专家的收益,进行专家参数拷贝,减少跨设备Token传输)、细粒度调度(拆分All2All和计算,通信和计算部分掩盖)
- SMARTMoE:动态专家调度(离线构建仅专家放置可变的并行策略池,在线基于历史专家热度预测后续几百步热度,根据预测结果搜索更优的专家放置策略,评估收益,进行专家迁移调度)
重计算
- 重计算:大 Batch 训练特性-Document-PaddlePaddle Deep Learning Platform
- 通过重计算节省显存(Recomputation) — MegEngine 1.6 文档
微调
OpenAI O1带火了基于RLHF和思维链(COT)的微调/后训练方式。
- openr/reports/OpenR-Wang.pdf at main · openreasoner/openr · GitHub
- GitHub - GAIR-NLP/O1-Journey: O1 Replication Journey: A Strategic Progress Report – Part I
- GitHub - OpenRLHF/OpenRLHF: An Easy-to-use, Scalable and High-performance RLHF Framework
- ColossalAI/applications/ColossalChat/coati/trainer/ppo.py
- 初探强化学习 (boyuai.com)
弹性训练
- PyTorch弹性分布式训练
- Singularity: Planet-Scale, Preemptive and Elastic Scheduling of AI Workload:其他笔记
- ReCycle: Resilient Training of Large DNNs using Pipeline Adaptation:
建模
-
Calculon: a Methodology and Tool for High-Level Codesign of
Systems and Large Language Models
:代码 - [LLM]大模型显存计算公式与优化 - 知乎 (zhihu.com)
框架
模型
Llama, opensoraplan, deepseek
GLaM
谷歌,万亿MoE,谷歌|基于大型语言模型的大规模多语言浅融合
- Massively Multilingual Shallow Fusion with Large Language Models
- 提出在自动语音识别的浅层融合中使用大规模多语种语言模型(GLaM),在许多语言中取得了显著的改进。
- 尽管 GLaM 模型很大(1.9GB),但由于其 MoE 架构,其推理计算量与 140M 稠密语言模型相似。
- 每一层的专家都由一个门控网络控制,该网络根据输入数据激活专家。
- 当专家数增加时,每个decoding步(Token)动态选择2个专家,输出将是两个专家输出的加权组合。
- 共有 32 个 MoE 层,每个 MoE 层的 64 个专家,1.2T 的总参数。
- 推理期间每个令牌预测仅激活97B(1.2T 的 8%)参数的子网络,推理计算量基本恒定。
- 语音+文本多模态,语音-文本数据集,文本-文本数据集。
算子
FlashAttention利用GPU内存层次结构设计的策略,通过分块技术加速注意力计算,但导致了Softmax结果量化困难。INT8-FlashAttention论文通过证明SoftMax无需重量化,可以直接由计算得到,提升了计算性能。
(full-INT8)的推理速度与FP8类型的推理速度基本相同,但相比FP8-FlashAttention可兼容不支持FP8硬件如A100。并且INT8-FlashAttention采用的Per Token和Per Channel的量化方式计算精度相比FP8-FlashAttention版本可以提升10倍(误差8%->0.8%)。
我们在自适应精度里也提出了类似的Per Token量化,和分而治之的混精策略。可以参考该论文,尝试用在FlashAttention里。