LogoCookLLM文档
LogoCookLLM文档
首页CookLLM

原理精讲

词元化
Tokenization 基础BPE 算法详解GPT 系列 TokenizerBPE 训练工程化
模型架构
Transformer LM
从 token ids 到 logitsEmbedding 与 LM Head
Attention 机制
Self-Attention 到 GQAAttention Sink
位置编码
位置编码基础RoPE 数学推导RoPE 代码实现长度外推
GPU 编程基础
GPU 架构基础张量布局Triton 入门:向量加法
FlashAttention
Flash Attention 原理详解从朴素实现到 Auto-TuningBlock Pointer 与多维支持Causal Masking 优化Grouped Query Attention反向传播实现
分布式训练
数据并行ZeRO 优化器全分片数据并行张量并行流水线并行多维混合并行

动手训练

概述
预训练
预训练数据Tokenizer 训练模型架构数据流水线训练循环监控与验证
X (Twitter)
基础知识模型架构Attention 机制

Self-Attention 到 GQA

会员专享

从 Self-Attention 出发,依次拆开 Multi-Head、Causal Masking 与 GQA / MQA 的设计权衡

登录以继续阅读

这是一篇付费内容,请登录您的账户以访问完整内容。

Attention 机制

从 MHA / Causal / GQA,到 Attention Sink 与 Gated Attention,理解注意力机制的设计、缺陷与演进

Attention Sink

第一个 token 为什么吸走绝大部分注意力,这一现象的机制、代价,以及为何消除它要留到 Gated Attention

目录

什么是 Attention 机制
标准 Self-Attention 计算流程
PyTorch 参考实现
Multi-Head Attention (MHA)
为什么需要多头?
MHA 的结构
PyTorch 实现
MHA 的优势与挑战
Causal Attention(因果注意力)
什么是 Causal Attention?
数学表示
为什么需要 Causal Masking?
PyTorch 实现
Causal Masking 的性能机会
应用场景
Grouped Query Attention (GQA)
从 MHA 到 GQA 的演进
MHA 的内存问题
Multi-Query Attention (MQA)
Grouped Query Attention (GQA)
GQA 的数学原理
PyTorch 实现
三种机制的对比
总结