预训练语言模型中的Decoder-Only架构

Decoder-Only架构是当前大语言模型(如GPT、LLaMA、GLM)的核心设计,仅保留Transformer的解码器部分,通过自回归生成实现语言建模。其核心特点是单向注意力掩码,确保每个token仅依赖左侧上下文,适用于文本生成任务。


GPT系列模型的技术演进

GPT-1到GPT-3的演变

  • 模型规模:参数量从1.17亿(GPT-1)增长至1750亿(GPT-3),验证了缩放定律(Scaling Laws)的有效性。
  • 训练目标:基于最大似然估计的自回归语言建模,优化公式为:
    [ \mathcal{L} = -\sum_{t=1}^T \log P(x_t | x_{<t}) ]
  • 上下文窗口:从GPT-1的512 token扩展到GPT-3的2048 token,支持更长文本生成。

关键改进

  • 零样本/小样本学习能力通过大规模数据训练实现
  • 稀疏注意力(Sparse Attention)降低计算复杂度

LLaMA系列的高效设计

优化策略

  • 计算效率:采用RMSNorm替代LayerNorm,减少15%计算开销。
  • 激活函数:SwiGLU替代ReLU,提升梯度流稳定性。
  • 旋转位置编码(RoPE)
    公式表示为:
    [ \text{RoPE}(x, m) = x \cdot e^{im\theta} ]
    其中$\theta$为频率参数,避免绝对位置编码的局限性。

训练数据

  • 1.4万亿token的公开数据集(CommonCrawl、Wikipedia等)
  • 专注于提高单卡训练效率,支持消费级硬件推理

GLM的混合架构创新

双向与单向的融合

  • 自回归空白填充:随机遮盖文本片段,通过双向注意力重建内容,目标函数为:
    [ \mathcal{L} = -\sum_{x \in \text{mask}} \log P(x | x_{\text{unmasked}}) ]
  • 2D位置编码:区分上下文与生成位置,解决长文本连贯性问题。

应用场景

  • 支持填空、改写等判别式任务
  • 兼容对话生成等序列输出需求

关键实现细节对比

| 特性 | GPT-3 | LLaMA-2 | GLM-130B |
|--------------|----------------|---------------|---------------|
| 参数量 | 175B | 7B-70B | 130B |
| 位置编码 | 学习式 | RoPE | 2D-RoPE |
| 最大上下文 | 2048 token | 4096 token | 2048 token |
| 开源协议 | 闭源 | Apache 2.0 | 部分开源 |


实践中的训练技巧

数据预处理

  • 标准化文本清洗(去除重复、低质量内容)
  • 动态批处理(Dynamic Batching)平衡序列长度差异

硬件优化

  • 混合精度训练(FP16/FP32)结合梯度缩放
  • 模型并行(Tensor/Pipeline Parallelism)策略示例代码:
    # PyTorch模型并行示例  
    model = nn.parallel.DistributedDataParallel(
        model, device_ids=[local_rank], output_device=local_rank
    )
    

评估指标

  • 困惑度(Perplexity)
  • 下游任务微调(如SuperGLUE基准测试)

未来发展方向

  • 多模态扩展:文本与图像/音频的联合训练
  • 推理加速:KV缓存(Key-Value Cache)优化
  • 可控生成:基于强化学习的对齐方法(如RLHF)

该架构通过简化设计、专注生成任务,已成为大模型领域的主流范式,其开源生态(如HuggingFace集成)进一步推动了技术普及。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐