当前位置: 首页 > news >正文

【大模型】ChatGLM训练框架

一、ChatGLM-1(初代)概览

ChatGLM-1 基于 GLM(General Language Model)设计,提出“自回归空格填充”策略,兼具双向理解与自回归生成能力,具备 NLU 和 NLG 双重优势。

二、GLM 预训练框架详解

GLM 框架的核心目标是打破自编码与自回归模型的壁垒,实现统一编码与生成。以下分模块详细说明:

1. 预训练目标:自回归空格填充(Autoregressive Blank Infilling)

  • 拆分与遮蔽:给定原始文本序列 x = [ x 1 , x 2 , … , x n ] x=[x_1, x_2,\ldots,x_n] x=[x1,x2,,xn],根据泊松分布 (λ≈3) 随机采样多个连续 spans,直到约 15% token 被遮蔽,生成:
    • Part A:剩余未遮蔽 tokens,顺序保持原状;
    • Part B:所有被 mask spans,以 [S]...tokens...[E] 标记,每个 span 前后包裹专用哨兵。
  • Span Shuffle:将 Part B 中的各个 span 顺序随机打乱,构造所有可能的排列集合 Z m Z_m Zm,使模型能学习不同上下文依赖排列
  • 自回归生成:对每种排列 z ∈ Z m z\in Z_m zZm,模型最大化:

L b l a n k = E z ∼ Z m [ ∑ i = 1 m log ⁡ p θ ( s z i ∣ x corrupt , s z < i ) ] \mathcal{L}_{\mathrm{blank}} = \mathbb{E}_{z\sim Z_m} \left[ \sum_{i=1}^m \log p_\theta(s_{z_i} \mid x_{\text{corrupt}}, s_{z_{<i}}) \right] Lblank=EzZm[i=1mlogpθ(szixcorrupt,sz<i)]

模型在预测当前第 i i i 个 span 时,可访问:

  • 双向可见:Part A 中所有 tokens
  • 单向可见:之前已预测的 spans s z < i s_{z_{<i}} sz<i

2. 二维位置编码(2D Positional Encoding)

  • 第一维:表示原始文本中的绝对位置(Part A 和被 mask spans 在原文中的起止位置)。
  • 第二维:表示在每个 span 内部的相对偏移,用于区分同一 span 中各 token 顺序。

两组位置编码分别映射至独立 embedding,然后相加到 token embedding 上,为 GLM 提供跨 span 与内部顺序双重位置信息。

3. Attention Mask 设计

  • Part A ↔ Part A:完全双向可见,保证编码器能力。
  • Part A ← Part B:Part B 中的 token 可见全体 Part A,获取上下文信息。
  • Part B 内部:遵循因果约束(Causal),仅可见自身及之前已生成 token,防止未来信息泄露。
  • Part B ↛ Part A:Part A 不可见 Part B,确保生成依赖只从 Part A 及已生成 spans。
    此设计使模型同时具备双向编码与自回归解码机制。

4. 采样与噪声策略

  • 泊松分布采样:选取 spans 长度符合 Poisson(λ),模拟多样化遮蔽长度。
  • 重复采样:对同一输入多次不同遮蔽,增强模型泛化。
  • Mask 比例:调控在 10%–20% 间最优,通常设为 15%。

5. 多目标扩展

为了兼顾长文本生成与短文本理解,GLM 在空格填充基础上,增加:

  1. 文档级 Seq2Seq:随机 mask 文档中 50%–100% 连续区域,以生成长段落;
  2. 句子级填空:完整句子为单元进行 mask,覆盖比例同样约 15%,用于下游 NLU 微调。
    总损失:

L b l a n k + β L d o c + γ L s e n t \mathcal{L}_{\mathrm{blank}} + \beta\mathcal{L}_{\mathrm{doc}} + \gamma\mathcal{L}_{\mathrm{sent}} Lblank+βLdoc+γLsent

其中超参 ( α , β , γ ) (\alpha,\beta,\gamma) (α,β,γ) 通过验证集调优。

6. 模型结构细节

在标准 Transformer Decoder 架构上做如下调整

  • LayerNorm 与残差重排:提高稳定性;
  • Unified LM-Head:单层线性映射输出所有词汇预测;
  • 激活函数:改用 GeLU。

整个模型通常为 28 层、hidden size 4096、head 数 16。

三、ChatGLM-2 与 ChatGLM-3 简要

核心继承:ChatGLM-2/3 在架构上沿用 GLM 解码思想,仅对位置编码、注意力机制、Norm、激活及推理优化。

  1. 位置编码:弃二维编码,启用 RoPE;
  2. 注意力:全因果(Decoder-only),不再区分 Part A/B;
  3. 推理优化:Multi-Query Attention + INT4 量化;
  4. 微调与对齐:人类偏好对齐(RLHF);
  5. ChatGLM-3:与 2 架构一致,词表与细节迭代。
http://www.lqws.cn/news/109189.html

相关文章:

  • R1-Searcher++新突破!强化学习如何赋能大模型动态知识获取?
  • 产品更新丨谷云科技ETLCloud 3.9.3 版本发布
  • Qiskit:量子计算模拟器
  • 深入理解汇编语言中的顺序与分支结构
  • 19-项目部署(Linux)
  • 新德通科技:以创新驱动光通信一体化发展,赋能全球智能互联
  • CAMEL-AI开源自动化任务执行助手OWL一键整合包下载
  • 依赖注入-@Resource和@Autowired
  • Java并发编程实战 Day 5:线程池原理与使用
  • EMQX 社区版单机和集群部署
  • HCIP(BGP综合实验)
  • 学习STC51单片机26(芯片为STC89C52RCRC)
  • 通过阿里云 DashScope API 调用通义千问
  • 51c大模型~合集134
  • Redis缓存-数据淘汰策略
  • 6.RV1126-OPENCV 形态学基础膨胀及腐蚀
  • Spring Boot整合Druid与Dynamic-Datasource多数据源配置:从错误到完美解决
  • 推荐一款PDF压缩的工具
  • 【AI News | 20250603】每日AI进展
  • Cursor + Claude 4:海外工具网站开发变现实战案例
  • 《Spring Bean 是怎么被创建出来的?容器启动流程全景分析》
  • 网络原理1
  • C++ 中的依赖注入(Dependency Injection)
  • MySQL的备份和恢复
  • 系统思考:短期利益与长期系统影响
  • 物联网通信技术全景指南(2025)之如何挑选合适的物联网模块
  • 纯色图片生成器
  • 【Typst】1.Typst概述
  • 互联网c++开发岗位偏少,测开怎么样?
  • LEAP模型能源需求/供应预测、能源平衡表核算、空气污染物排放预测、碳排放建模预测、成本效益分析、电力系统优化