baichuan-7B 是开源的大规模预训练模型,基于 Transformer 结构,在大约 1.2 万亿 tokens 上训练的 70 亿参数模型,支持中英双语,上下文窗口长度为 4096。
整体模型基于标准的Transformer结构,采用了和LLaMA一样的模型设计
-
位置编码:rotary-embedding是现阶段被大多模型采用的位置编码方案,具有更好的外延效果。虽然训练过程中最大长度为4096,但是实际测试中模型可以很好的扩展到5000个tokens上,如下图:
-
激活层:SwiGLU,Feedforward变化为(8/3)倍的隐含层大小,即11008
-
Layer-Normalization: 基于RMSNorm的Pre-Normalization
数据
- 原始数据包括开源的中英文数据和自行抓取的中文互联网数据,以及部分高质量知识性数据,总量超过10T。
- 参考相关数据工作,频率和质量是数据处理环节重点考虑的两个维度。基于启发式规则和质量模型打分,对原始数据集进行篇章和句子粒度的过滤。在全量数据上,利用局部敏感哈希方法,对篇章和句子粒度做滤重。
整体流程如下所示:
- 经过不断的调整和多轮测试,最终确认了一个在下游任务上表现最好的中英文配比。
- 使用了一个基于自动学习的数据权重策略,对不同类别的数据进行配比。
评论