3、生成式大语言模型技术原理

什么是生成式大语言模型?

生成式大语言模型(如 GPT)通过预测下一词的概率来生成文本,这类似于搜索引擎的自动补全功能:

  • 输入一个词或句子,模型预测下一个词的概率分布。
  • 选择概率最高的词作为输出,依次重复,直到生成完整的文本。

Transformer 架构的核心

生成式大语言模型的基础是 Transformer 架构,它由 2017 年的论文 Attention Is All You Need 提出。自此,Transformer 成为文本领域的主流架构,被广泛应用于 OpenAI 的 GPT、清华的 GLM、百度的 Ernie 等模型中。

Transformer 的两个核心组件:

  1. 编码器(Encoder):将输入序列转换为抽象表示。
  2. 解码器(Decoder):根据抽象表示生成输出序列。

模型处理流程

1. 编码器(Encoder)

Token 化

  • 文本被分解为基本单位,称为 Token。
    • 短词通常为一个 Token,长词可能被拆分为多个 Token。
    • 每个 Token 被映射为一个整数 ID,方便计算机处理。

嵌入层(Embedding Layer)

  • 将 Token ID 转换为多维向量(Google向量维度为512 / GPT-3为12288)。
    • 向量表达了 Token 的语法、语义信息及其与其他 Token 的关系。
    • 向量空间中语义相似的词距离较近,无关词距离较远。

位置编码(Positional Encoding)

  • 为向量添加位置信息,帮助模型理解词语顺序。
    • 例如,”我喜欢苹果” 和 “苹果喜欢我” 顺序不同,意义也不同。

自注意力机制(Self-Attention)

  • 计算每个词与输入序列中所有词的相关性,赋予不同的注意力权重:
    • 相关性高的词权重大,模型更关注这些词。
    • 结果不仅包含词本身的信息,还融合了上下文信息。

多头自注意力机制(Multi-Head Attention)

  • 使用多个自注意力模块,每个模块关注不同的特征,如动词、情感、命名实体等。
  • 多头机制支持并行计算,大幅提高效率。

前馈神经网络(Feedforward Neural Network)

  • 对自注意力输出进行进一步处理,增强模型的表达能力。

编码器堆叠

  • 多个编码器堆叠在一起,每层独立学习不同的特征。

2. 解码器(Decoder)

生成流程

  1. 接收编码器的抽象表示和已生成的文本作为输入。
  2. 使用 带掩码的自注意力机制
    • 仅关注当前词及其前面的词,确保生成过程符合时间顺序。

多头注意力机制

  • 关注编码器输出与解码器生成词之间的关联,将输入序列的信息融入输出中。

词汇表概率分布

  • 经过线性层和 Softmax 层,将解码器输出转换为词汇表中每个词的概率分布。
  • 选择概率最高的词作为下一个输出。

生成结束

  • 持续生成,直到输出表示结束的特殊 Token。

Transformer 的变种

  1. 仅编码器模型(自编码器)

    • 保留编码器部分,适用于理解任务(如掩码语言建模、情感分析)。
    • 示例:BERT、RoBERTa。
  2. 仅解码器模型(自回归模型)

    • 保留解码器部分,擅长文本生成任务(如对话、续写)。
    • 示例:GPT 系列。
  3. 编码器-解码器模型(序列到序列模型)

    • 同时保留编码器和解码器,适用于序列转换任务(如翻译、总结)。
    • 示例:T5、BART。

总结

  1. 生成原理
    • 通过预测下一词的概率,逐步生成完整文本。
  2. 关键技术
    • 自注意力机制:捕捉词与上下文之间的关系。
    • 多头注意力:并行关注多种语义特征。
    • 位置编码:理解文本顺序。
  3. 局限性
    • 模型无法判断输出内容的真实性,可能生成“幻觉”信息。
      [up主专用,视频内嵌代码贴在这]