热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >OpenLLM | 预训练数据构造方法总结

OpenLLM | 预训练数据构造方法总结

来源:互联网 更新时间:2026-08-04 14:22

前言

大语言模型火到现在,很多人都会好奇:它到底是怎么拥有“说话”能力的?先从第一步说起——预训练。预训练的目标,就是教会模型“开口”:具备基本的语言表达能力,同时积累丰富的“知识”。更重要的是,预训练阶段的质量直接决定了模型在下游任务中的泛化表现。一个好的预训练不仅能让模型在SFT阶段更快收敛,还能帮助模型“不说假话”——也就是缓解幻觉问题。

LLM预训练的方法本身很简单:用负对数似然损失作为目标函数,让模型基于上文预测下一个token。但真正决定模型性能的,是训练数据的构成和处理方式。下面就从这两个方面展开。

数据来源

LLM预训练的数据来源大体上可以分为两大类:

通用数据

专业数据

。通用数据包括网页、图书、新闻、对话文本等,特点是规模大、多样性高、容易获取,对语言建模和泛化能力有重要支撑。而专业数据则涵盖多语言文本、科学文本、代码以及特定领域的数据,能有效提升模型在特定任务上的能力。下图展示了不同LLM所使用的数据类型占比——差异很大,但什么样的数据分布最优,目前还没有共识。

1. 通用数据

通用数据在训练数据中占比最高,主要包括网页、书籍、对话数据等,为LLM提供大规模、多样化的训练样本。

  • 网页数据

    :数量最多的一类。其中包含海量内容,让LLM获得多样化的语言知识并增强泛化能力。不过从网上爬取的网页既有高质量文本(如维基百科),也有大量低质量文本(如垃圾邮件),所以过滤和处理是重中之重。

  • 书籍数据

    :提供了广泛的词汇——专业术语、文学表达、各类主题词汇。这是唯一的长文本书面语来源,完整的句子和段落让LLM能学习上下文之间的关联。

2. 专业数据

专业数据占比虽然不高,但能显著提升LLM在特定任务上的表现。

  • 多语言数据

    :对增强模型的多语言理解和生成能力至关重要。通过混合训练多语言数据,LLM能在一定程度上自动构建不同语言之间的语义关联,从而提升机器翻译、多语言摘要和多语言问答等任务的能力。

  • 科学文本

    :包括论文、百科及其他资源,对提升科学知识理解能力很重要。但这类数据涉及众多专业领域,形式复杂,通常需要对公式、化学式、蛋白质序列等特殊符号进行预处理(比如用LaTeX语法表示公式)。

  • 代码

    :程序生成任务所必需。代码不仅包含本身,还有大量注释信息。与自然语言不同,代码是格式化语言,对应着长程依赖和准确的执行逻辑。主要来源包括编程问答社区(如Stack Exchange)和公共软件仓库(如GitHub)。

数据处理

收集好数据之后,下一步就是处理。大量研究表明,数据质量对LLM的影响极大——从实际经验来看,这一点感受非常深刻。数据处理通常包括去除低质量数据、重复数据、有害信息和个人隐私等。下图是常见的数据处理流程。

1. 质量过滤

低质量数据过滤方法主要分两类:基于分类器的方法和基于启发式的方法。

  • 基于分类器的方法

    :目标是训练文本质量判别模型,用于识别并过滤低质量数据。例如GPT-3、PaLM和GLaM都使用了该方法。GLaM采用基于线性特征哈希的线性分类器,效率很高,用一组精选文本训练,给高质量网页较高分数。

  • 基于启发式的方法

    :通过一组精心设计的规则来消除低质量文本,BLOOM和Gopher采用了这种方法。常见规则包括:

    • 语言过滤

      :如果只关注一种或几种语言,可以大幅过滤其他语言文本。
    • 指标过滤

      :利用评测指标过滤低质量文本。
    • 统计特征过滤

      :计算标点符号分布、符号占比、句子长度等统计特征进行过滤。
    • 关键词过滤

      :根据特定关键词集,识别并删除噪声或无用的元素。

2. 冗余去除

重复数据会降低LLM的多样性,并可能导致训练不稳定,所以必须处理。冗余去除在不同粒度上进行,包括句子、文档和数据集级别。

  • 句子级别

    :重复单词或短语的句子可能导致模型在预测时陷入重复循环。过滤方法包括提取并过滤文档中超过一定长度的相同字符串。
  • 文档级别

    :大多数LLM依靠文档之间的表面特征相似度(如n-gram重叠比例)来检测并删除重复文档。
  • 数据集级别

    :由于很多LLM的预训练数据包含GitHub、维基百科等公共数据集,同样需要从数据层面去除冗余。

3. 隐私消除

预训练数据大部分来自互联网,难免包含敏感或个人信息,存在隐私泄露风险——比如模型可能补全姓名、电子邮件、电话号码等。最直接的方法是基于规则,例如使用命名实体识别算法检测并删除或替换姓名、地址、电话号码等。

4. 词元切分

NLP里对单词进行计算,需要先构建词典,把单词转换成embedding。词表大小对模型性能影响很大:太小会导致未登录词比例高,太大则低频词向量难以充分学习。为解决未登录词问题,很多工作采用子词级别的表示。BPE是一种常见算法,词表包含最常见单词和高频子词,常见词直接匹配,罕见词可分解成多个词元。WordPiece也是类似思路的方法。

总结

熟悉LLM的人都知道,现有大模型在结构上其实大同小异,基本上都是Decoder-only或引入MoE结构——修改模型结构对性能提升的性价比并不高。而在训练过程中,数据准备和处理是工程量最大、花费人力最多的部分。随着LLaMA-3等新版本发布,可以明显看到:对于相同参数的模型,更多高质量数据带来的性能提升非常显著。所以在工业和学术研究中,围绕数据做文章无疑是最直接、性价比最高的方案。

预训练让LLM掌握了“知识”,但要让模型听懂人的语言指令、完成特定任务,还需要有监督微调(SFT)和人类反馈强化学习(RLHF)等步骤。后续我们将继续探讨这些内容。

参考文献:

[1] A Survey of Large Language Models.
[2] Language Models are Few-Shot Learners.
[3] PaLM: Scaling Language Modeling with Pathways.
[4] GLaM: Efficient Scaling of Language Models with Mixture-of-Experts.
[5] BLOOM: A 176B-Parameter Open-Access Multilingual Language Model.
[6] Scaling Language Models: Methods, Analysis & Insights from Training Gopher.
[7] Neural Machine Translation of Rare Words with Subword Units.
[8] Japanese and Korean voice search.

关于宇宙的好的网名有哪些
关于宇宙的好的网名有哪些

类型:角色扮演

大小:1

语言:简体中文

平台:互联网

游戏下载

热门手游

相关攻略

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc