一、前言
随着人工智能技术的快速发展,自然语言处理(NLP)领域取得了显著进步。LLaMA 系列模型作为其中的佼佼者,展示了令人瞩目的性能表现。本文将深入解析 LLaMA2 的模型架构、核心组件及其与 Transformer 架构的差异,帮助开发者更好地理解大语言模型的技术细节。
二、LLaMA 系列介绍
1. LLaMA 简介
LLaMA 由 Meta AI 于 2022 年发布,是一个开放且高效的大型基础语言模型。该系列包含 7B、13B、33B、65B 四种版本,训练数据集完全来源于公开数据,无定制数据集,token 化后总量约为 1.4T。其性能表现优异:13B 参数模型在多数基准测试中胜过参数量达 1750 亿的 GPT-3,且可在单块 V100 GPU 上运行;65B 参数模型则能媲美谷歌的 Chinchilla-70B 和 PaLM-540B。
2. LLaMA 1 与 LLaMA 2 对比
LLaMA2 是 Meta 最新开源的大型语言模型,相比前代有显著提升:
- 训练数据:达到 2 万亿 token,词汇覆盖范围更广。
- 上下文长度:从 2048 扩展至 4096 token,支持更长的文本理解与生成。
- 模型规模:包含 7B、13B 和 70B 三种版本,在各类基准测试中表现卓越。
- 技术改进:采用分组查询注意力机制(GQA),优化了内存使用与推理速度。
具体对比分析如下:
- 总 Token 数量增加 40%:LLaMA2 使用 2T token 训练,平衡了性能与成本,通过对真实来源过采样减少幻觉。
- 上下文长度翻倍:支持更长窗口,适用于长文档摘要及聊天历史管理。
- Grouped-query attention (GQA):允许在多头注意力中共享键值投影,降低缓存内存成本,使大模型在优化内存的同时保持性能。
三、LLaMA2 核心架构解析
1. 与 Transformer 架构的区别
Transformer 模型基于自注意力机制,包含编码器(Encoder)和解码器(Decoder)。而 LLaMA 仅使用了 Transformer 的解码器部分,采取 Decoder-only 结构,这是当前生成式语言模型的主流选择。
主要变化包括:
- 归一化:LayerNorm 替换为 RMSNorm。
- 注意力机制:Multi-Head Attention 换成了 Grouped Multi-Query Attention (GQA)。
- 位置编码:Positional Encoding 替换为 Rotary Position Embedding (RoPE)。
2. RMS Normalization 均方根标准化
为提高训练稳定性,LLaMA2 对每个 Transformer 层输入进行归一化,并使用 RMS Norm。RMS Norm 全称 Root Mean Square layer normalization,计算公式去掉了减去均值的部分:
$$\text{RMS}(x) = \sqrt{\frac{1}{n} \sum_{i=1}^{n} x_i^2}$$
相较于 Layer Norm,RMS Norm 简化了计算,可减少约 7%~64% 的计算时间,加快收敛速度并改善泛化能力。每一层的标准化操作调整输入数据的均值和方差,使其保持稳定数值范围。
3. Group Multi Query Attention 分组查询注意力
- MHA (Multi-Head Attention):Q、K、V 三部分具有相等数量的头,独立计算后汇总。
- MQA (Multi-Query Attention):保持 Query 头数,但 K 和 V 各只有一个头,所有 Query 共享同一组 KV。吞吐量提升 30%-40%,大幅降低参数量。
- GQA (Grouped-Query Attention):综合 MHA 与 MQA。Query 分为 G 组,每组共享一组 KV。当 G=1 时等效于 MQA,当 G=头数时等效于 MHA。这种机制在避免性能损失的同时利用推理加速。


