Transformer 与大语言模型学习笔记
Transformer 与大语言模型学习笔记
大语言模型是什么
大语言模型(Large Language Model,LLM)通常是在大量文本数据上训练的神经网络模型。许多生成式语言模型的核心训练目标,是根据前文预测下一个 token(文本片段)。
模型反复学习这种预测任务后,会形成对语言模式、知识关联和常见表达的统计性表示。它生成的内容是基于上下文逐步预测的结果,不等于像数据库那样逐条检索事实,也不保证每个答案都正确。
从文本到 token
模型通常不会直接把完整句子作为一个整体处理,而是先使用**分词器(tokenizer)**将文本切分为 token,再把 token 转换成数字 ID。
Token 可能是一个字、一个词、词的一部分或标点。不同模型的分词规则不同,因此:
- token 数量不等于中文字数或英文单词数。
- 模型能处理的上下文长度通常以 token 计量。
- 输入提示、对话历史和模型输出都会占用上下文窗口。
Transformer 的核心思路
Transformer 是许多现代语言模型采用的神经网络架构。它的重要机制是注意力(attention):在处理某个 token 时,模型可以根据当前任务和上下文,为其他 token 分配不同权重,从而利用相关信息。
例如,在“把书放在桌子上,因为它很稳”这句话中,模型需要利用上下文判断“它”更可能指向什么。注意力机制提供了建立 token 之间关系的一种方式,但模型是否能正确理解仍取决于训练和上下文。
一个简化的处理过程是:
- 将 token ID 转换为向量表示。
- 加入位置信息,使模型区分 token 的顺序。
- 通过多层注意力与前馈网络更新表示。
- 根据当前上下文计算下一个 token 的概率分布。
- 按生成策略选择一个 token,并将其加入上下文,继续生成。
许多生成式模型采用因果注意力,使当前位置只能使用之前的 token,而不能看到未来 token。
训练与生成
预训练
模型在大量文本上进行预训练,调整参数以提高下一个 token 的预测能力。预训练让模型获得通用的语言模式和知识关联,但训练数据的覆盖范围、质量与时间都会影响结果。
后训练
预训练之后,模型还可能经过指令微调、偏好优化或安全训练等阶段,以改善遵循指令、对话表达和特定任务表现。具体流程因模型而异。
推理与采样
生成时,模型为候选 token 计算分数,再通过解码策略选取下一个 token。温度等采样参数会影响输出的随机性:更低的温度通常让选择更集中,更高的温度可能让表达更多样,但并不直接提升事实准确性。
为什么模型会产生错误答案
语言模型优化的是训练目标,并不天然拥有事实核验机制。因此它可能:
- 把相似但不同的信息混在一起。
- 对缺少依据的问题生成听起来合理的内容。
- 使用过时或不完整的知识。
- 在复杂计算、长文本引用或模糊指令下出错。
流畅的表达不代表结论可靠。对重要内容,应要求模型展示可核查依据,并通过可信来源或实际运行结果进行验证。
上下文窗口与记忆
上下文窗口是模型一次处理的 token 范围,不等于永久记忆。对话历史如果没有被包含在当前输入中,模型就无法直接利用它;历史过长时,系统也可能需要截断或摘要。
实际产品可以在模型外保存用户偏好或资料,再按需加入输入,但这属于应用系统的记忆设计,不是模型自动拥有的无限记忆。
学习小结
- LLM 常通过预测下一个 token 学习语言模式,再根据上下文逐步生成内容。
- Transformer 的注意力机制用于建立上下文中不同 token 的关系。
- 生成结果是概率性输出,语言流畅并不等于事实正确。
- 上下文窗口、分词方式、解码策略和训练数据都会影响实际表现。
