finish glm

This commit is contained in:
Logan Zou
2025-04-10 16:03:45 +08:00
parent d42ce92ab5
commit 945af52eff
3 changed files with 19 additions and 0 deletions

View File

@@ -143,6 +143,25 @@ GLM 通过优化一个自回归空白填充任务来实现 MLM 与 CLM 思想的
输入I <MASK> because you <MASK>
输出:<MASK> - love you; <MASK> - are a wonderful person
通过将 MLM 与 CLM 思想相结合,既适配逐个 token 生成的生成类任务,也迫使模型从前后两个方向学习输入文本的隐含关系从而适配了理解类任务。使用 GLM 预训练任务产出的 GLM 模型,在一定程度上展现了其超出同体量 BERT 系模型的优越性能:
![alt text](./figures/3-2.png)
不过GLM 预训练任务更多的优势还是展现在预训练模型时代,迈入 LLM 时代后针对于超大规模、体量的预训练CLM 展现出远超 MLM 的优势。通过将模型体量加大、预训练规模扩大CLM 预训练得到的生成模型在文本理解上也能具有超出 MLM 训练的理解模型的能力因此ChatGLM 系列模型也仅在第一代模型使用了 GLM 的预训练思想,从 ChatGLM2 开始,还是回归了传统的 CLM 建模。虽然从 LLM 的整体发展路径来看GLM 预训练任务似乎是一个失败的尝试,但通过精巧的设计将 CLM 与 MLM 融合,并第一时间产出了中文开源的原生 LLM其思路仍然存在较大的借鉴意义。
### 3GLM 家族的发展
在 GLM 模型(即使用原生 GLM 架构及预训练任务的早期预训练模型)的基础上,参考 ChatGPT 的技术思路进行 SFT 和 RLHF智谱于 23年 3月发布了第一个中文开源 LLM ChatGLM-6B成为了众多中文 LLM 研究者的起点。ChatGLM-6B 在 1T 语料上进行预训练,支持 2K 的上下文长度。
在 23年 6月智谱就开源了 ChatGLM2-6B。相对于一代ChatGLM2 将上下文长度扩展到了 32K通过更大的预训练规模实现了模型性能的大幅度突破。不过在 ChatGLM2 中,模型架构就基本回归了 LLaMA 架构,引入 MQA 的注意力机制,预训练任务也回归经典的 CLM放弃了 GLM 的失败尝试。
ChatGLM3-6B 发布于 23年 10月相对于二代在语义、数学、推理、代码和知识方面都达到了当时的 SOTA 性能,但是官方给出的技术报告说明 ChatGLM3 在模型架构上相对二代没有变化最主要的优化来源是更多样化的训练数据集、更充足的训练步骤和更优化的训练策略。ChatGLM3 的另一个重要改进在于其开始支持函数调用与代码解释器,开发者可以直接使用开源的 ChatGLM3 来实现 Agent 开发,具有更广泛的应用价值。
2024年 1月智谱发布了支持 128K 上下文,包括多种类型的 GLM-4 系列模型,评估其在英文基准上达到了 GPT-4 的水平。不过,智谱并未直接开源 GLM-4而是开源了其轻量级版本 GLM-4-9B 模型,其在 1T token 的多语言语料库上进行预训练,上下文长度为 8K并使用与 GLM-4 相同的管道和数据进行后训练。在训练计算量较少的情况下,其超越了 Llama-3-8B并支持 GLM-4 中所有工具的功能。
下表展示了 GLM 系列模型在基准集上的表现演进:
![alt text](./figures/3-3.png)
**参考资料**

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB